PDA

View Full Version : Technical issues: The platform system explained



TrustyJam
04-20-2020, 02:50 PM
Hello everyone,

In the wake of the last few weeks of posts by our community highlighting some of the issues they are currently (and have been for a long time) experiencing in the alpha we felt we needed to explain to you all what is being done in order to fix them. We therefore asked Philipp - the other part of our programming team not focusing on the artillery, to explain what he primarily has been up to since the alpha was released on Steam Early Access.

The Platform System

Hey, I am Philipp and one of the Programmers on the War of Rights Team.
I have mainly worked on core systems like Game rules, Spawning or Networking to name a few.
For quite a while now, since January last year, I have been focused on a rather large and difficult undertaking that we deemed necessary to make developing War of Rights easier and allow us to deliver a viable online multiplayer experience. That being a completely new Platform / ”Lobby” system.

What is it?

The job of the Platform system is to handle all functionality relating to a “Platform” the game is currently running on.

Some of the crucial features being:

- Authentication
- Matchmaking and Server discovery
- Connection handling between client and server
- Platform related data exchange (Usernames, Clans, etc.)
- Chat

And some of the less crucial ones:

- Friends/Clans/Groups
- Ability to join games your Friends/Clan/Groups are on
- Rich status display about what you are doing to other (i.e. “Attacking on map x for side y”)
- Statistics
- “User generated content” (Icons, server banners, etc.)

Why is it?

Right now, our online functionalities are being handled by a library that was designed for ps3/xbox360 era p2p style gaming, onto which we added the functionality required for steam servers. Since we released into early access this has been an ongoing headache. It makes it far too difficult for our small team to debug issues relating to connection failures and other connectivity issues. Adding new functionality is also a pain every time and might cause more issues down the line. In short, our current solution is not viable if we want to keep expanding on it.

What does it solve?

A completely new implementation allows us to separate all online functionality into its own module and focus on solving issues that have plagued the game since early access release, which we so far are barely even able to reproduce, let alone debug.

Some of the issues that this will fix or help us fix are:

- Stuck on establishing context
- Random disconnects
- Failure to reconnect to a server
- Failure to connect to a server
- Server mass drops
- Servers not showing up in the list
- Connections to other players staying active after disconnecting
- Lighten the load on the game networking module and thread

What does it allow us to do?

Apart from allowing us to properly debug and fix all our connection issues, it also allows us to implement some planned features as well as hypothetical features down the line so we don’t need to rip everything apart each time we want to add something.

Some of the planned features are:

- Proper error messaging for networking related issues. This includes a description of why a join attempt my have failed or a message that tells you why you have been kicked/banned of a server.
- Integrate with steams friend system so that you can join your friends and groups directly from the steam client.
- Integrate with a backend service that allows us to supplement user data with our own persistent data. This makes it possible to integrate the company tool into the game itself.
- Backer reward cosmetics

Some hypothetical features this system allows us to implement without an insane amount of work:

- Cross battle persistent data
- Game events
- Server slot reservation based on company or event
- Expanding to other platforms in the future (Epic, xbox, playstation, switch, phone, microwave)
- Platform cross-play

Why is this taking so long?

As you might imagine, this is a huge amount of work for a small team like ours and involves threading, networking, serialization, and other fun stuff.
The key here is to get it right and build a sustainable framework that is maintainable as well as extensible. This includes designing it to allow for easy integration of the different Platform Apis. (Steam being the main one, but lan also needs to be implemented for internal testing).

So, finding a combination of tools and learning them has been quite a challenge, but we hope to release the first iteration of this soon, and alleviate some of those ongoing connectivity woes.

Galahad
04-20-2020, 02:57 PM
Thanks Trusty! Nice to hear about things being worked on behind the scenes

Maximus Decimus Meridius
04-20-2020, 03:07 PM
finally,

thank you for this update. it is great to hear what is going on behind the scenes and that it will be a possible fix for a bunch of problems, it is also great to see that it will be a base of a lot great features. please keep your work AND such dev updates up.


PS:

I would like to buy a microwave that can run WoR. Do you deliver them with a Civil War look?

ATOMBaneblade
04-20-2020, 03:21 PM
What baffles me is that it took this community shit storm to get you to do this! Why was this not done from the start? It would have saved lots of time on your end and on the communities end and would have soothed the headaches of many community leaders, Company member and public player over the state of your project. Is this an acknowledgement that you guys have communicated poorly in the past? Is this a one time PR stunt to calm the community and then go back to business as usual? Or have you guys learned the lesson that communication with your community is something important and will now do this more frequently?

I genuinely almost cried tears of joy that something like this was posted now...FINALLY some information <3. But the fact that it took all of this time and effort to do this is frustrating and disturbing.

Johnny Walker
04-20-2020, 03:43 PM
Hi thanks a lot for this update, if you would do such updates more often, there would be no shitstorm.
We just want to know as a community where you have problems and where you are working on it.

Kind Regards

Colonel H. Richter
TGV Commander
Legion Staff Officer

Dane Karlsen
04-20-2020, 04:12 PM
Great post. Clear and at the front of the forum, for those who don't want to go searching the forums or listening to interviews in order to find the answers they are searching. And in addition to that nice to hear about more of the awesome work you guys are doing these days. I am very much looking forward to the next updates!

_petko
04-20-2020, 04:15 PM
Yes! Finally I would be able to play on my microwave oven.

TrustyJam
04-20-2020, 08:21 PM
Great update. Definitely recommend posting this information on the actual website for people who don't troll the forums like we hardcore people do.

Thanks for the recommendation. :)

It will be part of the field report/patch notes released in conjunction with the artillery release. We will likely also add the first view of cav which we posted a few months ago to it to just be sure that everyone's fully up to date. The work presented is not really a new reveal. We've been mentioning the lobby/platform system a number of times throughout the year and a half which it has been in development and we've also had Philipp write one or two explanatory posts about it earlier, but this is the first time it has been worded as precisely as it has above - and probably also given the space that a programming task of this scale deserves.

We're happy that this is appreciated by you and we will make sure to post somewhat regular updates as to its progress if its development should take several more months before it is ready (which I'd say is quite likely although we don't have any ETA's regarding its completion).

- Trusty

Johnny Walker
04-20-2020, 09:00 PM
Thanks for the recommendation. :)

It will be part of the field report/patch notes released in conjunction with the artillery release. We will likely also add the first view of cav which we posted a few months ago to it to just be sure that everyone's fully up to date. The work presented is not really a new reveal. We've been mentioning the lobby/platform system a number of times throughout the year and a half which it has been in development and we've also had Philipp write one or two explanatory posts about it earlier, but this is the first time it has been worded as precisely as it has above - and probably also given the space that a programming task of this scale deserves.

We're happy that this is appreciated by you and we will make sure to post somewhat regular updates as to its progress if its development should take several more months before it is ready (which I'd say is quite likely although we don't have any ETA's regarding its completion).

- Trusty

Yes exactly this accuracy of the information is what the community wants to see because it's the only way they can feel what's happening and that you are taking care of their concerns and fears

Kind Regards

Colonel H. Richter
TGV Commander
Legion Staff Officer

Jagdmann
04-20-2020, 09:16 PM
Thanx Trusty and Phillip on this Dev. Update. That`s what I and I guess a big portion of the community was hoping for. Please keep these coming specially when you feel the next game update/Field report could take some more time than planned. Keeping the community informed and thus kinda involved is very worth the time you may have invested for this Report.
Keep these coming, please.

Thanx again gents!

Axon
04-21-2020, 03:43 AM
Thank you for the update! I'd love to see more of these kinds of posts!

Rondorf13
04-21-2020, 07:05 AM
Thanks for the recommendation. :)

It will be part of the field report/patch notes released in conjunction with the artillery release. We will likely also add the first view of cav which we posted a few months ago to it to just be sure that everyone's fully up to date. The work presented is not really a new reveal. We've been mentioning the lobby/platform system a number of times throughout the year and a half which it has been in development and we've also had Philipp write one or two explanatory posts about it earlier, but this is the first time it has been worded as precisely as it has above - and probably also given the space that a programming task of this scale deserves.

We're happy that this is appreciated by you and we will make sure to post somewhat regular updates as to its progress if its development should take several more months before it is ready (which I'd say is quite likely although we don't have any ETA's regarding its completion).

- Trusty
Several more months? WTF are you all doing? Taking the money people donated and partying? You have been working on arty and bugs for several months already. NO updates in the game!!!!! You all had a patch fix to stop people from seeing kills in the game logs within days and we cannot even get simple bugs fixed in several months. We want your game to succeed. But, in this direction you are sinking your own ship. I have seen a 20 year old game have more active players than yours.

TrustyJam
04-21-2020, 09:14 AM
Several more months? WTF are you all doing? Taking the money people donated and partying? You have been working on arty and bugs for several months already. NO updates in the game!!!!! You all had a patch fix to stop people from seeing kills in the game logs within days and we cannot even get simple bugs fixed in several months. We want your game to succeed. But, in this direction you are sinking your own ship. I have seen a 20 year old game have more active players than yours.

I’m referring to the completion of the platform system described above, the biggest programming undertaking we have ever done - not the artillery patch.

- Trusty

Redleader
04-21-2020, 12:49 PM
I’m referring to the completion of the platform system described above, the biggest programming undertaking we have ever done - not the artillery patch.


Thx Trusty & Philipp for the update.

I'm presuming both these 'bigger' projects are being worked on at the same time, what does this mean for the integration in the long run ?
We are aware this is a 'small' team in 'gaming terms', how do the 'devs' look unto the future ?
Any ETA on arty ? (not to set a date when it's coming, but more to know when it's not coming… like not Q2 for example)

TrustyJam
04-21-2020, 01:01 PM
Thx Trusty & Philipp for the update.

I'm presuming both these 'bigger' projects are being worked on at the same time, what does this mean for the integration in the long run ?
We are aware this is a 'small' team in 'gaming terms', how do the 'devs' look unto the future ?
Any ETA on arty ? (not to set a date when it's coming, but more to know when it's not coming… like not Q2 for example)

Our programming team consists of two programmers. Philipp has been working on the platform system since january 2019 and Mike has been working on the transport/artillery/cavalry system since april 2019.

As you can see, these are major projects, each taking more than a year so we don’t feel comfortable giving any kind of estimates for them due to their complexity.

The artillery update is shaping up well though with a lot of tasks having been completed the past week. We still have one or two release blockers however (one of them being a failure in the item system, sometimes not properly removing the round from you when you insert it into the barrel, resulting in you being able to use that "ghost round" to reload other guns without having to return to the limber chest and pick up a new one - this is game breaking as this allows you to circumvent the limited amount of rounds in the limber chests in a skirmish area).

- Trusty

MK81
04-21-2020, 01:24 PM
Thanks for the post Trusty, Philipp did a good job on the info update. I suppose if the team are learning how to do build the new platform as well as tie it in with other external systems it explains the timeframes.

Also, really glad to see that we'll be getting more of these kind of posts.

Just a quick cheeky question, have the scheduled recordings for the artillery audio samples been carried out yet?

Maximus Decimus Meridius
04-21-2020, 01:30 PM
The artillery update is shaping up well though with a lot of tasks having been completed the past week. We still have one or two release blockers however (one of them being a failure in the item system, sometimes not properly removing the round from you when you insert it into the barrel, resulting in you being able to use that "ghost round" to reload other guns without having to return to the limber chest and pick up a new one - this is game breaking as this allows you to circumvent the limited amount of rounds in the limber chests in a skirmish area).

- Trusty

Every Arti officer would disagree that this is a gamebreaking bug :D
sounds interesting but as an infantry officer i would not like to get annihilated due to infinite arti ammo :D
whats the other one?

what i did not really get:

will be the new platform delivered with the artillery update or to a different time?


thanks for sharing

TrustyJam
04-21-2020, 01:37 PM
Thanks for the post Trusty, Philipp did a good job on the info update. I suppose if the team are learning how to do build the new platform as well as tie it in with other external systems it explains the timeframes.

Also, really glad to see that we'll be getting more of these kind of posts.

Just a quick cheeky question, have the scheduled recordings for the artillery audio samples been carried out yet?

Yes, that's what philipp has spent a lot of time on this past year and a half. :)

No, the first artillery release will feature a great deal of placeholder sounds - you can thank the coronavirus for that. :P


Every Arti officer would disagree that this is a gamebreaking bug :D
sounds interesting but as an infantry officer i would not like to get annihilated due to infinite arti ammo :D
whats the other one?

what i did not really get:

will be the new platform delivered with the artillery update or to a different time?


thanks for sharing

Theoretically they could be released at the same time as we have no ETA for either. That's taking theory to the extreme though - it is vastly more likely that artillery is released well before the platform system is fully implemented.

- Trusty

DIABLOG
04-22-2020, 01:28 AM
So lets assume arty is in like a month, from then how long will it take for platform to be released? But I am excited and hope this will bring some good changes to the game.

Exorf
04-22-2020, 01:39 AM
Thanks for the update!

Dman979
04-22-2020, 10:25 AM
No, the first artillery release will feature a great deal of placeholder sounds - you can thank the coronavirus for that. :P

- Trusty

I suggest recording a member of the development team shouting "KABLOOIE!" for the firing placeholder.

Best,
Dman979

MK81
04-22-2020, 09:04 PM
Cheers for the response Trusty, I figured the virus would have prevented some of the development targets on the schedule such as external recording. Just something to look forward to in the future I suppose.

DIABLOG
04-23-2020, 02:52 PM
If the "Ghost Round" will be used at least make a limited amount, and I am saying this as an artillery officer it will be overpowered.

Stone
04-24-2020, 05:48 PM
Speaking of limited rounds, is it possible to know how many rounds each chest will hold and what the break down of that ammo is? The last picture I seen of the model I was able to count 25 rounds.

A. P. Hill
04-24-2020, 07:11 PM
3 inch guns will carry 50 per chest.
12 pounders will carry 32.

The ammo chest did not change size, but the interiors changed based on the rounds, thus their number.

These are the exact numbers the originals carried.

DIABLOG
04-24-2020, 08:22 PM
I am fairly certain we will only have a limber for now until horse artillery comes out

Würm
04-24-2020, 11:15 PM
Just saw the Update. YES! PLEASE!

Oleander
04-25-2020, 04:59 PM
I am fairly certain we will only have a limber for now until horse artillery comes out

Pretty sure I've asked the question before and they said the caissons could be moved by hand, and were available to resupply. I might be remembering that wrong since its been forever.

A. P. Hill
04-25-2020, 06:00 PM
I am fairly certain we will only have a limber for now until horse artillery comes out

Caisson and their availability have absolutely nothing to do with Horse Artillery. Caissons were used by all artillery whether horse or foot mounted.

Les
08-08-2020, 08:14 PM
Any news on these fixes? Since a month or two ago I have the problem where I'm stuck on establishing context.
I reached out twice with a bug report to the devs, but no answer.

TrustyJam
08-14-2020, 03:40 AM
Any news on these fixes? Since a month or two ago I have the problem where I'm stuck on establishing context.
I reached out twice with a bug report to the devs, but no answer.

We're very close to be able to begin the test phase.

- Trusty

papadragon297
09-08-2020, 10:47 PM
Hey,
I've never actually made a forum account to post anything on any game but I bit the bullet simply because I love this game so much with only 4.5 hours clocked in (despite the numerous crashes and seemingly fundamental aspects of the game not working).
I am reluctant to ask this but alas. I know it's only been 3 weeks since the last update you, TrustyJam, have blessed us with but I was wondering if there were any new developments. Specifically in regards to the stuck on 'establishing context' bug.
I was able to play only for a short while before I am met with neverending establishing of context for every game in any server.
I almost wish it hadn't worked from the get go. Its as if I was teased and now taunted.
Yes you guys are an indie company with little manpower but the game is on steam for $35.
I was going to see about a refund once I saw how long this game has been in development but was swayed when I saw how timely and informative your updates on this issue have been. I love that. You guys do care. This coupled with the truly marvelous masterpiece you guys have created ( when it works) is why I'm writing here.

Keep up the good work! Maybe hire some backup ( not to put Phillip down but it's a big endeavour. Bit of more than one can chew? I can only guess the size of Phillips cojones)

Any news is appreciated.

Cheers,
A passionate maybe over zealous fan

Midnite
09-15-2020, 10:01 PM
Excited to see this release! Looking forward to watching this game grow.

luvvt2004
09-27-2020, 10:01 PM
So excited! Love this game and thank you for all your hard work!

UCS_Researcher
10-09-2020, 01:53 PM
We're very close to be able to begin the test phase.

- Trusty

Good news!

HolyRomanSloth
10-10-2020, 02:55 AM
We're very close to be able to begin the test phase.

- Trusty

Can't Wait!

Tweakalicious
10-22-2020, 07:30 PM
Super exciting! Thanks for all the hard work!

Sgt.Nightfire
10-22-2020, 08:16 PM
A 198.5 mb update just downloaded, :cool:

HolyRomanSloth
10-22-2020, 09:55 PM
A 198.5 mb update just downloaded, :cool:

This is a reversion to an updated sound system which wasn't working out, they are going back to the old system. There will be a much larger announcement when the platform system comes out.

Sgt.Nightfire
10-23-2020, 11:28 PM
Like this one:
https://steamcommunity.com/games/424030/announcements/detail/2944751149961195630