[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: network game ?

On Sunday 27 August 2006 3:24 am, Henk Jonas wrote:
> Dave Fancella wrote:
> > If I were doing network game, I'd want it to look something like this:
> >
> > * Client-server
> > * Both players give orders to their pieces and send these orders to the
> > server * Server resolves the orders (some potentially complex initiative
> > system would be used to resolve conflicts)
> > * Server checks victory conditions, productions, repairs, etc.
> > * Server sends a complete update (probably a savegame) to each client
> But this doesn't mean that a peer-to-peer mode shouldn't exist. Sending
> the play-by-email infos as packet over any possible transport layer
> (email, TCP/IP, Bluetooth, IRDA) from one client to the other wouldn't
> be a big deal but brings up a lot of fun.

The only real issue is cheating.  :)  I've been so quiet here because I've 
been putting a lot of time into armagetron, and one serious problem we've had 
over there is people trying to cheat.  Now, we don't have a big problem with 
it because the server has always been the rulekeeper, but had the guy that 
wrote it originally gone with a peer-to-peer mode from the beginning, well, 
it could be a lot worse.

Between two friends who want to have a good game, there's no reason a 
peer-to-peer mode wouldn't work, and it lets you take care of a lot of the 
basic networking stuff before moving on to more advanced stuff.

But for a public server available for all to play, the server needs to enforce 
the rules, resolve combat, etc.  Long-range, though.  Just something to keep 
in mind.  :)

Other things to think about:

Multi-player mode.  When you only have two players, it's perfectly reasonable 
to have each take their turn in sequence, but when you have 6 players that's 
quite unreasonable.  I don't recall if Jens ever said (in my presence, 
anyway) if he thought Crimson fields would ever be more than 2 players, so 
maybe it doesn't matter.

I've been playing a bit of freeciv lately and it's got some good things and 
some bad things.  I like that everybody takes their turn at once, 
presses "turn done" and the next turn starts when everybody's pressed "turn 
done".  I don't like that since everybody moves at the same time, you could 
move real quickly and wipe out somebody's army while they're reading popup 
dialogs telling them what their scientists have discovered.  So in Crimson 
Fields I'd like to see it work where everybody takes their turn at the same 
time, presses turn done, and then the server resolves all the commands it's 
given based on a predictable (even if complex) initiative system.  So you 
might command a tank to move <here>, but on it's way it encounters an enemy 
tank.  What does it do?  Does it attack the enemy tank?  I think they should 
immediately attack each other, and I think that's a fair way to resolve it.  
Maybe someone else disagrees.  :)

Maybe an initiative system would work where you give each unit a modifier 
based on its strength, veteran status, and speed, and then pick a random 
number that's modified according to the modifier.  Then sort descending and 
go through each one looking for orders and trying to execute them.