Page 1 of 1

Need info about client-server communication

PostPosted: 03 Feb 2020, 22:36
by Fedora
Hello there!
I'm trying to develop a client for the Xmage server (because I want to test some things and I need a MTG Engine).
I've been reading the Wiki on Github and reading some of the code, but I couldn't find much documentation about how the client and the server communicates.

So far I have seen in Mage/src/main/java/mage/constants/PlayerAction.java there is an enum for events, and in Mage. Common/src/main/java/mage/remote/SessionImpl.java there is the code used to open a session via Sockets (and an option for HTTP, I believe?)

I would appreciate if someone pointed me at some documentation about this, or gave me an idea about where to start looking at to try to comprehend this. I'm not a Java programmer nor an native english speaker, so pardon me in advance.

Thanks! :)

Re: Need info about client-server communication

PostPosted: 09 Feb 2020, 11:39
by JayDi
Xmage uses jboss remoting library (version 2). It's socket communication with binary objects transfer (java binary serialization). Search github issues by "graphql" for more related topics and links.