🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Client/server connection for mobile game

Started by
3 comments, last by hplus0603 2 years, 6 months ago

Hello.

I am new to game development and i want to create multiplayer mobile game on unity.

I do not know programming so i am going to hire programmers to make game for me, but first i have to know about some details about it. I would like to make massive real time multiplayer game with more then 16 players ingame. As i was suggested i should make client/server based game.

So should i develop the game first and then make client/server connection or should i start programming client/server based game from the beginning?

As i said i am going to hire a programmers so if one of them will make a game itself will i be able to find another programmer which will be able to make client/server connection with it? or should i give first programmer some rules to follow in order to make job easier for second one? Will second programmer be able to code client/server connection on the game developed by another person?

If you have some suggestions for me you can share them, as i am beginner it would be helpful.

Thank you in advance.

Advertisement

What kind of game is it? It's very common to use servers for multiplayer games, but sometimes the game can be demanding in a way that needs more servers or for the clients to talk to oneanother.

Please talk about your idea with sw architects first, and flesh out a design from there.

GiorgiDev said:
So should i develop the game first and then make client/server connection or should i start programming client/server based game from the beginning?

Make the Tic-Tac-Toe game first with simple WebSockets connection or something like this. You can host your server side on free Heroku or OpenShift. This is some impotent details if you use SocketIO: https://forum.unity.com/threads/can-i-connect-unity-app-with-node-js-server.403695/#post-3421521

But I prefer the 'ws' module (https://www.npmjs.com/package/ws) now instead of socketIO. You can make the server side using this book: Multiplayer Game Development with HTML5 It describes hot to make Tic-Tac-Toe and Classic Snake games with multiplayer.

This is simple example that I host on Heroku: https://github.com/8Observer8/mouse-click-js​ Instruction how to host on Heroku:

On the Heroku website, in the upper right corner, select "New" -> "Create new app":

6e285b7b-923e-4838-b06d-4174f19884e4-image.png

Type in the name of the game and select the region for the server and click the "Create app" button:

7053047e-b0a5-4cb1-b55b-8412e0a66a94-image.png

On the "Deploy" tab, click the "Connect to GitHub" button:

b0b053c2-30aa-4290-ba66-02c6b02d2e8a-image.png

A field will appear where you need to enter the name of the repository, click "Search":

ba0a6066-4d76-4449-9125-22d773984b33-image.png

A "Deploy Branch" button will appear, which downloads the application from GitHub, or you can click the "Enable Automatic Deploy" button, which will enable automatic download from GitHub whenever you do a "git push" on your computer.

The application will be deployed and you will have a link to the application.

GiorgiDev said:
So should i develop the game first and then make client/server connection or should i start programming client/server based game from the beginning?

The way that a game is implemented is generally totally different for multiplayer games, compared to single-player games. Thus, you should build the game as multiplayer from day one.

If you contract out development, make sure that the contractors have shipped working multiplayer games before already, else you will be paying (expensively!) for them to run into all the land mines and mistakes that are a necessary part of the learning process.

GiorgiDev said:
if one of them will make a game itself will i be able to find another programmer which will be able to make client/server connection with it?

That does not work.

GiorgiDev said:
should i give first programmer some rules to follow in order to make job easier for second one?

In general, if you want a bigger team, that should be done in parallel, such that the team members can collaborate and share development decisions. Serial development across different programmers for a code base generally does not work well.

GiorgiDev said:
multiplayer mobile game

A phone is a very small interaction surface. A 16-player game might have a lot of trouble just showing the status of your team members and opponents, depending on game design. If there already exists a game with similar design / player count, then that would hopefully help serve as illustration for the development team, so make sure all of the restrictions and what can be done are agreed ahead of time, else you will likely see a lot of change costs and time overruns.

Also, for mobile games, a successful company will end up spending 10x as much on marketing, as they spend on development. Thus, if you plan to spend $100,000 to develop the game (which is on the cheap side for outsourcing a multiplayer turn-based game) then you should expect to pay $1,000,000 for marketing to make your money back. It also helps to have a good understanding of the market you're targeting, and how to reach it, or to find a reliable marketing person who has been successful at it before, to help you.

enum Bool { True, False, FileNotFound };

This topic is closed to new replies.

Advertisement