*Update 6-19* It's working! I've updated these instructions. I'll try and keep my server up for you to play. So go ahead and playtest. There are still errors to fix, probably for Cheerpj but native too. The world is still under construction. I plan on finishing it up this year at least by winter. I believe I set this up properly and I'm safe from hackers. This is awesome! Tailscale hides your IP address from me too so your safe but that prevents the "bannedIP" feature from working.
I thought I'd do a write up on how to setup your own server.
1. Download https://github.com/ZabinX/DuskRPG go to (code) click "Download ZIP".
2. Install Tailscale https://tailscale.com/ Go into "machines" and click "..." change the machine name to something like "dusk". Then go into "DNS" tab and use the random name generator to get a better Tailnet name. Generate a authentication key like this. Go to "settings" tab, then "keys", then "generate auth key...", then click button for "use this key to authenticate more than one device", and then finally "generate key". Put the key in "client.html" in the /DuskCheerpj/wwwClient directory.
3. Edit the "prefs" file inside /DuskCheerpj/conf. Change 'dusk.comet-richter.ts.net" to "yourmachine.yourTailnet.ts.net".
4. Install Java 8 (I'm using 17 and it works) and start the server like this. Command prompt:
cd C:\Users\drago\Documents\DuskCheerpj
java -jar Duskserver.jar
5. Put the client on a http server: Command prompt:
cd C:\Users\drago\Documents\DuskCheerpj\wwwClient
http-server -p 8080
6. Now funnel the client to the internet and serve the Dusk server port to your Tailnet. Administrator command prompt:
tailscale funnel --bg 8080
tailscale serve --tcp=2222 tcp://localhost:7474
7. Go to your new website and click "client.html" to start the game. Connect to server using your Tailnet IPv4 address and port 2222.
That's it! Pretty easy. Here's couple pics from my Android phone. I will have to fix the GUI layout for mobile a little but that's easy. I tried playing on the phone and couldn't barely walk. This can be fixed with some arrow buttons.