Multiplayer Programming and ServerI've been looking in the market for server rental services where you pay by the hour and I found out that at
amazon web services you get one year for free. Of course the machines you can have for free are crap, but the advantage of this being a turn based strategy is that CPU use is minimal. I only care about connection speed, and it's fast enough. It's easy to say that while I have only one match running at a time
But the main purpose of me talking about this particular subject is that if there's someone out there that wants to know the learning steps from "I don't know shit about multiplayer programming" to "I know barely enough to make turn-based game client and servers" this is how I did it (not necessarily in this order):
- Understand the TCP IP features of SFML. Understand blocking and non-blocking functions, that's very important. You will probably use non-blocking in your "serious" games.
- Understand what is a client and what is a server. This last one is an overloaded word, it can mean both the machine (or virtual machine) that runs a software or the software itself, so that's not confusing at all.
- Understand how to access another machine using FTP, SCP and SSH protocols. You only need to learn how to use the softwares that provide such services really, such as Putty (for SSH) and WinSCP if you are using windows.
- Understand basic commands on Unix machines. Try it out at amazon web services (
not a sponsor) - Don't start with your game. Make a chat first. Then make a tic-tac-toe. Then make a tic-tac-toe match making server.
Once you have all this knowledge you know barely enough to make a multiplayer turn-based game client and server.
Other stuffNow I think I have all the tools I need to finish the game. I've got the music (
@JeffPenny), the game client and server, the
pointlesswars.com domain and the motivation.
Latest work done: got started on the in-game menu... making volume sliders is not that easy, have some appreciation please.