skeezix
Internal Development
I'm planning on someday adding a head to head mode in one of my existing games. Its on my action list, but a lot of other things come up first since I've always rather filed this under 'nice to have' and 'a lot of peopel want it, but wouldn't actually do it, due to limited access to wifi while on the go and hard to find people at the right times' and such. Still, with panda having built in easy wifi, its a lot more feasible than on the earlier machines (and with iphone and such, also easy for that platform..)
If I proceed, then a first cut would be a very naive netplay .. for a turn based wargame, its essentially batch up the game state, send it across wire, they do their turn, and send the state back, etc. Essentially could use the serialization code in the existing save-game system.
Thats brute force, and naive (Assuming people are not trying to cheat), but should be relatively easy and doable.
For 'real games', netcode tends to be very complex.. validating people are using 'official' binaries (checksum, random code checks, code comparison between players), encrypting traffic, verifying datafiles seem unhacked (avoid item duping and making, etc), and so on. I really have no interest in combatting that sort of thing.. too much effort.
Some questions..
- is netplay a 'big thing' that peopel really want, and actually use? (as opposed to really want, and don't actually use)
- can I get away with a naive approach, or will people right away get into the xml/plaintext datafiles and h4x0r it all up?
- can you get away with 'enter your mates IP here', or do you need a basic matching system day one?
- can I get away without worrying about people 'gaming the system'; set up two versions and 'play themselves' so they can get 'free experience and lootz'? ie: In my world, if people want to cheat themselves, feal free. If they want to cheat the other guy, the other guy can pick better friends
For now, my thought is simple single-matchup play; you fire up the game, load up your save, go to the 'lets go online' option and enter a target IP for another guy in the same mode (he selects Wait-mode while you selected Startup-mode, whatever) and then do a single match. Afgter match is over, maybe an option to 'do another match', to save you reconnecting again.
*shrug*
jeff
For that matter, I should add netplay to an ST emu so we can all play Empire head to head. Then again, mnaybe DOSBox would run Empire Deluxe with netplay.. oh man, the glee!
If I proceed, then a first cut would be a very naive netplay .. for a turn based wargame, its essentially batch up the game state, send it across wire, they do their turn, and send the state back, etc. Essentially could use the serialization code in the existing save-game system.
Thats brute force, and naive (Assuming people are not trying to cheat), but should be relatively easy and doable.
For 'real games', netcode tends to be very complex.. validating people are using 'official' binaries (checksum, random code checks, code comparison between players), encrypting traffic, verifying datafiles seem unhacked (avoid item duping and making, etc), and so on. I really have no interest in combatting that sort of thing.. too much effort.
Some questions..
- is netplay a 'big thing' that peopel really want, and actually use? (as opposed to really want, and don't actually use)
- can I get away with a naive approach, or will people right away get into the xml/plaintext datafiles and h4x0r it all up?
- can you get away with 'enter your mates IP here', or do you need a basic matching system day one?
- can I get away without worrying about people 'gaming the system'; set up two versions and 'play themselves' so they can get 'free experience and lootz'? ie: In my world, if people want to cheat themselves, feal free. If they want to cheat the other guy, the other guy can pick better friends
For now, my thought is simple single-matchup play; you fire up the game, load up your save, go to the 'lets go online' option and enter a target IP for another guy in the same mode (he selects Wait-mode while you selected Startup-mode, whatever) and then do a single match. Afgter match is over, maybe an option to 'do another match', to save you reconnecting again.
*shrug*
jeff
For that matter, I should add netplay to an ST emu so we can all play Empire head to head. Then again, mnaybe DOSBox would run Empire Deluxe with netplay.. oh man, the glee!