### Description Implements and closes #86 ### Game Robocraft ### Please confirm - [x] I am the legal owner or represent the owner of all work submitted - [x] I consent to my submission being added to this FOSS project - [ ] This PR used LLMs to generate some or all of the code changes Reviewed-on: https://git.ngram.ca/OpenJam/rc-servers/pulls/90 Co-authored-by: NG (Graham) <ngniusness@gmail.com> Co-committed-by: NG (Graham) <ngniusness@gmail.com>
OpenJam Servers
A collection of open source servers for Robocraft
Usage
NOTE: Please refer to the latest release for more detailed instructions for accessing the public OpenJam servers.
To get the Robocraft client to use these servers, place this servenvmulti.config file in the game files.
You may need to change the activegroup from dev to ngram (or another group name depending on which servers you want to connect to).
Before you can login the first time, you will need to create an account through the rc_auth (aka authUrl) server: http://<rc_auth server address>:<port (maybe)>/register (unless you've enabled automatic sign ups)
Privacy
The minimum amount of data is (and should be) collected to provide the expected functionality. This means no data is collected or logged except some debug log messages in development versions. Some personal identifiers, such as IP addresses and session tokens, are sent but only exist ephemerally. The Robocraft servers store the minimum account info possible. This includes username, vehicle data, user configuration data, and other non-identifying gameplay data. If email and/or Steam account identifier are provided during registration, those are also stored. This information is all associated with a unique user identifier. The current PC's MAC address is also sent to the server (this is a Robocraft client feature, it is not recorded by any server).
Development
Please refer to the wiki.
Contributing
If you can program or are learning Rust, pull requests are appreciated! If you can't and would prefer not to learn, reporting issues is also welcome.
Note: New users cannot create repositories on this git server and so can't create pull requests. If you're interested in contributing code, please ask NGnius to lift that restriction on your account.
If you'd like to discuss, join the Signal group for the project.
AI/LLMs
Pull requests which contain LLM-generated changes must disclose this and will be subject to a more intensive review process. LLM use is discouraged because it introduces a larger burden on project maintainers and has lasting negative external consequences. Maintainers (users with repository write access) are not permitted to use LLMs. AI, as understood by the modern definition/marketing, does not exist.
Acknowledgements
A big thanks to the RC15 team for their work on reverse-engineering early Robocraft .NET assemblies. Thanks to KptKosmit91 (a RC15 team member) for giving me a working battle arena team base. Thanks to RandomScientist for hooking me up with a deobfuscated assembly. Without them, progress would have been too slow and frustrating.
Thanks for the moral support from community members who reached out and the few IRL people who I went into unnecessary detail with.