Jump to content
  • Advertisement
Sign in to follow this  
aspiringdeveloper1334

Where can I learn to create a server for a homebrew game for my own console

This topic is 860 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I want to create a very simple console maybe like Snes or a dos console and then create servers to play online for 2d games I know I've said I want to do many things but I just want to see how far out this is
I would like to create a portable online console

Share this post


Link to post
Share on other sites
Advertisement

Er... right. Yeah, that's a bit of a far shot buddy.

Seeing as you want to make your own console, I'm going to assume that you know something about digital logic, driver  programming, etc.

The first step is you need to be sure that your console can support two different internet protocols. TCP, and UTP. Luckily the console doesn't have to support the WWW protocols (HTTP, FTP, etc)
 

Once you get to that point... it's a matter of knowing what endianess your system is. And then you can make a server. The process is similar to making one for PC I am sure.


Once you get to this point. It's pretty difficult, but no where near as difficult as the previous parts. I don't know of any resources that actually talk about how to make a server. And I've searched through google for other users in the past. Your best bet is to just browse GDC...

Edited by Tangletail

Share this post


Link to post
Share on other sites

If you are planning to do everything yourself I'd say it's a very ambitious project. And the fact you ask the question so broadly shows me, that you lack the experience to accurately estimate the effort that will need to go into it.

 

On the other hand you could just take a Raspberry Pi, stick a screen on it and put it in a case together with some buttons and then program it with PyGame. 

 

As for the server programming, it makes no difference if it's for PC games or console games. How you program one depends entirely on what the game needs. Which is why I have to ask: Why do you need a server at all? If you build only one console for yourself there would be no real benefit. 

Share this post


Link to post
Share on other sites

I would recommend looking in to Raspberry Pi to set up the server using LAMP stack,

 

use a reasonable NAS or free NAS for storage,

 

You also need to look in to web based applications that you can control.

 

Fiddle around with MEME64 at first and see if you can world your way around to allowing others access, Than you can apply that same trick to build your own game library based on the emulator(s) you are using for your desired game.

 

If it makes any sense...sort of. Be sure not to step on anyone's toes while doing it. Read up the license agreements of anything that you are using, in this process.

Share this post


Link to post
Share on other sites

Well, I'd recommend starting this once you're comfortable with a language that has a native networking API, then learning that API. Once you understand how socket connections actually work then you can have a much more enlightened discussion about client/server interaction.

 

If you know C or C++ then the starting point for learning about sockets is Beej: http://beej.us/guide/bgnet/

If you want to get in-depth then you can check out the first two books in the TCP/IP illustrated series (old but still quite relevant):

 

Sockets essentially transmit and receive streams or packages of raw bytes, so you need to be to the point that you're comfortable working with raw data representations. Endianness is a concern, but BSD socks (and the other APIs that are based on it) has functions for translating from network order to local order reliably.

Share this post


Link to post
Share on other sites

If you can make a video game console, you shouldn't have any trouble figuring out how to make a server. By comparison, it's quite trivial.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!