Closed rsypen closed 2 weeks ago
No need to rewrite xmage client code (e.g. GUI). It's can use old libs. Server communication layer must be rewritten/replaced with new libs to support real time multiplatform communication. After that new clients and services may be done like global web chat, stats viewer, games viewer or notification service.
Replace JBoss remoting
Agree.
H2 -> SQlite
Client no need SQL database. It's can use any storage or nosql db.
I agree, there is no need to rewrite existing XMage desktop client codebase. Did I mention that? 😄
@LevelX2 old post about jboss -> netty:
Also there is still a branch (we need to merge the changes of the last monthes still) that replaces JBoss by netty created by BetaSteward last year. https://github.com/magefree/mage/tree/Network_Upgrade http://netty.io/
But as I used this (netty) version some month ago (2015-09) to install it on the public server, there were some severe problems after some hours. I had to restart the server to get it working again. Also there were happening disconnects, maybe some less than with the JBoss version (but I'm not sure about that). So I decided to return to the old code base with JBoss to have a more stable release.
But maybe it's worth to give it a new try.
An alternate way to go to improve the network situation could also be to find out and fix the reason(s) the reconnect after a disconnect does not work half of the time. This would aready improve the situation a lot. But it's very hard to get that problems clear. So we are always looking for developers that have knowledge about network protocols/handling, that can analyse / fix that problems.
Multiplatform (desktop + mobile + web) will be supported by multi-platform game engine (godot as game engine and socket io as network layer). Current java client can be used for windows, mac and linux (including steam decks and other linux compatible hardware), but not for mobile or web.
It’s useless to replace or migrate to new libraries for keeping potentially shared code between different game clients. But it can be migrated as standard project refactor/refreshing (bugs fixing, stability improving, etc).
Hello there,
For quite some time I'm working on new XMage client capable of targeting many platforms not only desktops. Currently I'm struggling with deploying my early alpha version on Android.
There are following reasons behind that which I discovered so far
To allow development of new clients targeting many platforms all of above points should be considered. Here are some of my suggestions that could be applied to make XMage Android client working.
I think that most of required effort is focused around replacing JBoss remoting to modern framework, others shouldn't be hard to change/apply.
I'd really appreciate to hear what XMage developers think about it. I can help making any necessary changes to XMage codebase.
r.