Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (636)
Games in Android Showcase (178)
games submitted by our members
Games in WIP (687)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Best way to go about networking  (Read 1702 times)
0 Members and 1 Guest are viewing this topic.
Offline roland
« Posted 2011-09-17 01:12:10 »

Hi, I am aiming for my next game to be a proper multiplayer online game.
I have used sockets before and understand how they work, but I am not sure about the best way to build my game.

Should I build both server and client at the same time, whenever I change something in the client make sure it works in the server? or can I implement the networking after I have the game running in single player?

I don't especially want to duplicate lots of code from my client and stick it in my server. Is there a way to make the client do most of the game processing, and the server just relay messages, adding and kicking players, and handle important variables like damage etc so it isn't as easily hacked?

Offline ra4king

JGO Kernel

Medals: 409
Projects: 3
Exp: 5 years

I'm the King!

« Reply #1 - Posted 2011-09-17 01:49:49 »

To prevent hacking and modifications of the game, it is a usual design to have the server do all the work and the clients be the graphical front-end of all the relayed data from the server.

EDIT: Have you looked into KryoNet? It is a very solid networking library that does all the low-level socket legwork for you.

Offline roland
« Reply #2 - Posted 2011-09-18 04:59:42 »

Thanks Smiley
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline ilikeleprechauns

Innocent Bystander

« Reply #3 - Posted 2011-09-24 00:57:47 »

If you are planning to create a large online game that many people will play at the same time, you can avoid having a server do all the work by distributing the work across the network of users. As for hacking, you could have the game scan a nearby user's output for discrepancies and send out a message for other connected copies of the game to check it. Then if it is found to be strange, have that user booted out of the network.
Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

Dwinin (72 views)
2015-11-07 13:29:08

Rems19 (81 views)
2015-10-31 01:36:56

Rems19 (78 views)
2015-10-31 01:32:37

williamwoles (107 views)
2015-10-23 10:42:59

williamwoles (93 views)
2015-10-23 10:42:45

Jervac_ (110 views)
2015-10-18 23:29:12

DarkCart (135 views)
2015-10-16 00:58:11

KaiHH (117 views)
2015-10-11 14:10:14

KaiHH (157 views)
2015-10-11 13:26:18

BurntPizza (172 views)
2015-10-08 03:11:46
Rendering resources
by Roquen
2015-11-13 14:37:59

Rendering resources
by Roquen
2015-11-13 14:36:58

Math: Resources
by Roquen
2015-10-22 07:46:10

Networking Resources
by Roquen
2015-10-16 07:12:30

Rendering resources
by Roquen
2015-10-15 07:40:48

Math: Inequality properties
by Roquen
2015-10-01 13:30:46

Math: Inequality properties
by Roquen
2015-09-30 16:06:05

HotSpot Options
by Roquen
2015-08-29 11:33:11 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!