Hi all, the new update is out! If you want to know what new features it has, I've described in it a lot of detail [here], [here], and [here]. I currently spend most of my free time hunting bugs and seeing if all works as intended. Most of the hardcore playtesters don't seem to be online a lot these days, so I'm mostly doing it by myself for now.
About finding and fixing bugs: the update before this one had a 'Reset account' button as a new feature. As it name suggests, it resets your progress on the server you are playing on and lets you start over. Player JoeyXtreme (from the [starter guide]) noticed that this button didn't always work. I tested it a bit on his account, and it indeed discovered it didn't work, but only on some servers and only on some accounts... weird. Discovering what caused the problem was an interesting journy. These are the steps that led to the killing of the bug:
- I noticed that it only happened on servers where a lot of people had played previously, so I decided to explore that. I made one server look a like a lot of players had played before, and another look as if had been started up for the first time... and yes! The reset button didn't work on the first server, but did work on the second.
- While playing around with all this, I discovered that on these servers, it only happened for the players that came latest. So if a server kept track of 100 players, player 8 had no problems, but player 88 had. I tried to find the boundary (so how many players exactly need to have come before you before the reset button stops working), and after some trial and error I discovered this boundary was between 9 and 10.
- Some hard thinking followed, but then it hit me: it had something to with 2-digit player numbers. This makes sense, because the 'reset account' code indeed uses the player numbers. What Olvand does when you hit the reset button is sending a message to the server, which the server decodes as 'reset the account for player x'. The x stands for your player number. I had a look at the server code, and there it was: the server only used the first digit it received, not the whole number. So that's why there were no problems for early players (0 - 9). Another bug killed! Hurray!
Besides playtesting the current update, I've also already started working on the next. One thing I'm working on is an exciting secret which I'll reveal later, the other thing is the beginning of real towns in Olvand! It's a bit boring programming-wise, but the results will hopefully be worth it. I mean, come on... TOWNS!