At the moment being, this is not a full-fledged server, but a core with basic features to build upon. Target feature level is a tournament server.
I discuss development of this server at Vint Discord server, a Tanki X server reimplementation community. You can ask questions there, but if you have an issue, first describe the steps you have taken (don’t just say, "I can’t run the server").
-
JDK 23, Eclipse Temurin is recommended.
The server uses JVM system properties for configuration. You need to set:
-
res.rootto theoutdirectory of the resource generator. -
res.urlto publicly accessible URL of the resources server (e.g.,http://127.0.0.1:5192for local). -
config.urlto publicly accessible URL of the config server (e.g.,http://127.0.0.1:5191for local). -
game.urlto publicly accessible endpoint of the game server (e.g.,127.0.0.1:5190for local).
Prefix properties with run. to pass them to the server when running with run Gradle task.
Example:
./gradlew run \
-Drun.res.root=$(realpath ../resource-generator/out)
-Drun.res.url=http://127.0.0.1:5192 \
-Drun.config.url=http://127.0.0.1:5191 \
-Drun.game.url=127.0.0.1:5190You may configure log levels using KOTLIN_LOG environment variable with syntax
similar to RUST_LOG: root_log_level,my.package=log_level.
- Standalone Flash Player / Ruffle
-
-
http://127.0.0.1:5191/play.swfwhich will automatically redirect URL similar to one below. Parameters are passed as URL parts, i.e.,/play.swf/lang=ru/debug=true/autologin=username:passwordbecause of bad client design.
-
Optional query parameters:
-
lang- client language, defaults toen. -
debug- whether to enable (useless?) debug mode, defaults tofalse. -
autologin=username:password- automatically log in with the given username and optional password.
|
Warning
|
Game is unplayable on Ruffle because:
|
Licensed under GNU Affero General Public License, version 3.0 or later (LICENSE or https://www.gnu.org/licenses/agpl-3.0.html).
In short, you must make the entire source code available to your users if you host this server for anybody. If you copy substantial part of the code, your project becomes a derivative work, and you must also license it under AGPLv3. Read more about AGPLv3.
To clear misconceptions, distributing a .jar file is not enough, you must provide the source code used to build it.
