Olvand is a little multiplayer sandbox RPG, where the players live in self-built towns and can go on all kinds of adventures together. Imagine living with your friends in a small town in the mountains, or creating a new group of friends in a pub in the metropole you all live in. There will be several mini-games the inhabitants of a server can play together, among which will be combat based games like King of the Hill or Capture the Flag. You will be able to play against other people in your city, or as a city against another city, or as a whole server against another server. The combat works with self-built guns, in which all kinds of powers can be combined to create unique effects.

Post news Report RSS Doing the boring work: fixing multiplayer for the cave AI

I've been mostly busy fixing multiplayer bugs. In this blog I tell you why and how.

Posted by on

Hi all! One thing about technology that really keeps surprising me, is the fact that for some things, people simply 'expect' some things to work, while they are endlessly amazed by others. To take an exmaple from my daytime job as a language technologist: Google Translate is by far the best piece of machine translation there has ever been, while all I hear people say about it is that it 'doesn't work really well'. On the other hand, smartphone keyboards that predict what people are going to say keep surprising their users every day. Or, from the area of speech technology: people get annoyed when speech recognition doesn't put on screen exactly what they say... but are already baffled when the text-to-speech module produces something that more or less sounds human-like-ish.

So, to summarize, we have two kinds of technical problems: the problems where the solution will amaze people, and the problems that people never realized were a problem. Fortunately, creating games largely falls into the first category... except for its multiplayer aspect. When I hit the multiplayer button in some game, I just expect it to work, and get annoyed when it doesn't.

And this is a classic mistake I made while developing the new AI for caves, which I told you about in [so] [much] [detail]: I only tested it with a single player, all the time assuming that it would work for multiplayer as well. So when I started testing that earlier this week, kind of assuming there would only be some minor issues to fix, I unfortunately discovered the whole thing came crashing down when a second player even _entered_ the cave. Oops :( .


So that's the thing I'm forcing myself to work on these days. I say forcing, yes, because working on something you thought was already working isn't really interesting - and the fact that multiplayer player fixes are really annoying to test when you're alone only makes it worse. To give you an idea of the things I'm fixing:

* The server should keep track of the AI in the cave for each player INDIVIDUALLY - so when player A lets the server know a monster succesfully reached a particular location, that doesn't mean it also happened for player B.

* The monsters should continously be aware of ALL players around it. So if they kill player A, they should go on chasing player B.

* When a monster gets into a particular state, like frozen or invisible, that should be visible to everyone in the cave.

Etcetera, etcetera. To fully focus on getting all this working (and also because there isn't much interesting to tell), I'll stop myself from blogging until this work is done. Stay tuned!


If you want more development, see [twitter] or [facebook]. If you want to be a tester, you can subscribe on[olvand.com].

Post comment Comments
dhoeke
dhoeke - - 6 comments

Keeping everything synced is really one of the major challenges in multiplayer coding, I guess. Even industry studios have their issues with this from time to time. Keep it up! :-)

Reply Good karma Bad karma+3 votes
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: