glob2-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [glob2-devel] Revive Glob2 with a kickstarter


From: Linus Probert
Subject: Re: [glob2-devel] Revive Glob2 with a kickstarter
Date: Tue, 17 Dec 2013 08:01:11 +0100

I've got some experience with embedding Lua in C/C++, it's easy in C and works well with C++. Lua on the other hand is really nice working in, if possible one should work towards writing the core engine in C/C++ and then implementing the logic of the game in Lua, that way ugly code in the game logic has less of an impact. The largest perk with this though, is that the code for the game logic doesn't leak.

Cloning the original glob2 into such a code structure would be a good start and we wouldn't have to wait for design decisions and discussions before coding since the original is the template. Once that is done one could focus on evolving the game only now the codebase is easier and less costly to work with.

//Linus


On Tue, Dec 17, 2013 at 5:54 AM, Leo Wandersleb <address@hidden> wrote:
> Regarding network communication: I'm not familiar with the way glob2
> handles that now. That said, I'd generally suggest communicating state
> changes for the whole game between clients, maybe managed by a
> dedicated server. ZeroMQ [1] combined with Google Protocol Buffers
> [2], for example, has proven well for handling the communication for
> this kind of task.

glob2 uses deterministic behavior that is expected to be simulated on all
clients identically, reducing the amount of network traffic to the human
actions. This approach certainly has its academic value but turned out to be
fatal as it bound the game speed to the slowest client's speed and caused big
syncing trouble when one client had connection issues. Also by its nature all
clients had to know all game state and only because people plaid fair, the fog
of war was not lifted above the enemy base, so yeah, consider the current
network design as obsolete.

The only part that might not be obsolete is that games have to run off the
meta/handshake server once the game starts, meaning that one of the clients
should take the role of the server to be scalable. Alternatively servers should
be dedicated machines like it is common in FPS servers, but the meta server
should be able to handle many such servers dynamically.


_______________________________________________
glob2-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/glob2-devel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]