Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (539)
Games in Android Showcase (133)
games submitted by our members
Games in WIP (603)
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  
  I would like your opinion on sending commands  (Read 425 times)
0 Members and 1 Guest are viewing this topic.
Offline achap1989

Senior Newbie


Medals: 1



« Posted 2014-03-30 17:34:31 »

As the title states I want your opinion.   I am making a mutliplayer game to get better with java, and I am improving but I need your assistance.  What do you think the best way to send a command from client to server?  I was thinking output.write    and placing a switch case on the server end.   However with adding a chat feature this will end up causing problems.  This being said, what do you guys think is the best way to proceed?
Offline matheus23

JGO Kernel


Medals: 114
Projects: 3


You think about my Avatar right now!


« Reply #1 - Posted 2014-03-30 18:02:04 »

You could look into Kryonet, which is a very good java library for sending objects over the internet.

With Kryonet you'd simply send an object (yes, an instance of a java class) describing your Command you want to send and on the other side you'd chain a couple of [icode]if (sentObject instanceof SomeKindOfClass)[icode] to distinguish between chat commands and anything else.

The advantage over simple text output is that you don't need to serialize something like numbers. If you'd send a position update for example, with simple text networking it would look like this:
Sent text: "Position x:10 y:20" and you'd need to break it up in parts (e.g. "Position", "x:10", "y:20") and then you would need to care about String->Number conversion, etc.

With Kryonet it would look like this:
1  
2  
3  
4  
public class PositionUpdate {
    public int x;
    public int y;
}

And you could simply send that, and it would even be in a binary format Smiley

See my:
    My development Blog:     | Or look at my RPG | Or simply my coding
http://matheusdev.tumblr.comRuins of Revenge  |      On Github
Offline achap1989

Senior Newbie


Medals: 1



« Reply #2 - Posted 2014-03-30 18:18:22 »

Alright, I will take a look at it, thank you.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

rwatson462 (38 views)
2014-12-15 09:26:44

Mr.CodeIt (31 views)
2014-12-14 19:50:38

BurntPizza (62 views)
2014-12-09 22:41:13

BurntPizza (99 views)
2014-12-08 04:46:31

JscottyBieshaar (60 views)
2014-12-05 12:39:02

SHC (74 views)
2014-12-03 16:27:13

CopyableCougar4 (77 views)
2014-11-29 21:32:03

toopeicgaming1999 (138 views)
2014-11-26 15:22:04

toopeicgaming1999 (127 views)
2014-11-26 15:20:36

toopeicgaming1999 (38 views)
2014-11-26 15:20:08
Resources for WIP games
by kpars
2014-12-18 10:26:14

Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50
java-gaming.org 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‑gaming.org
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!