Update log
Full Touhou Volleyball Danmaku update
The complete published notes, normalized for clean reading and source attribution.
Extracted changes
- Compatibility
- Server
- Fixes
Around last month, I had a public playtest to test out the 2v2 online functionality, and we're going to do it again. The game is about to reach version 1.100 very soon and I'll have more details on that very very soon but right now I have this final task, to get online 2v2 in a working state. The last playtest was unfortunately a failure due the game not being optimized to handle 2v2. But what the last playtest did was succeed in giving me insight on what it is that I must do to get it to work properly. After much planning and updating of the code, online is now ready for another public test on Sunday, which is tomorrow as of writing this. This does come across as short noticed but that's because time is flying by so quickly, and this is the only time I have left. So I'm going to outline all the details about this next online playtest so anyone who wants to join in can be ready.
First, the next online beta build will need a password just like last time. Send me a message here on Steam or on twitter and I'll provide you with the password. Second, there is a chat group on Steam dedicated to this playtest, which you will receive a link to join, unless you are otherwise alredy a part of it. Third, I will be live streaming the playtest on the Steam store page of the game, which you can find in the Broadcast tab.
Now I want to talk about about how the game was designed for online play. I'll try to explain it as simple as I can. As far as how the game works online, the original design was for 1v1 since I only had 2 computers to work with, and I figured it's best to just do 1v1 for now and work on 2v2 later. The result is that 1v1 works remarkable well. I managed to have a match against players around the world and only experienced a few hiccups here and there, but the result was astounding. I can't take all the credit however as Steam is doing most of the hard work with their online infrastructure. Regardless, online for 1v1 was a success, so it was time for 2v2. Unfortunately, that didn't pan out as well as it turns out that my optimization for 2v2 was not enough. It still used the 1v1 model but it was clear that it needed more to compensate for two extra players.
I had recorded footage of the 2v2 playtest and after going through the footage, I noticed a few things that was causing issue:
It kept disconnecting after a few minutes.
The first two players were being prioritized over the third and fourth player.
The lower the position the player was, the more it struggled to receive and send data over the network.
Remote players on each player's computers were being ignored by the ball.
Knowing these were the issues, it became clear what the source of the problem was, the players and the ball, so I had to come up with a plan of action for each of those separately. Here's how I fixed it starting with the players.
To give you and idea of how 1v1 worked, I made this visual that oversimplifies the process.
It's nothing more than player 1 sending data to player 2 and vice versa. It's as simple as that and it worked wonderfully. But now let us look at what happened
Source
