Now this serves as sort of a tutorial/guide on how an application such as this can be hosted. This way the game server itself won't need to provide this with it's own HTTP server. I've configured NGINX to proxy to This is done so even if codebase (the server/world IP) is set to world1, it will still download the gamepack.jar from the central server. Just make sure (unless you use Docker), you set your application to listen to 127.0.0.1, not 0.0.0.0. I will also mention that the local applications aren't directly exposed to the public, so I didn't bother with enabling HTTPS for them. ( certbot does all the work for you when generating the certs) I've configured NGINX to proxy HTTP traffic to HTTPS for each of the domains below, and generated an SSL cert with certbot for them. It uses the HTTP server for providing information/stats on the world, that is used by the central server's world list. The game world is listening to game connections on 43594 and HTTP connections on 8080. The central server is listening for HTTP requests on port 8081 Installed NGINX to listen on port 80 and 443, as well as certbot to generate SSL certificates with Let's Encrypt. Ĭurrently I hosted these two applications on one VPS to test, and the way I've done it is: It's also capable of specifying a specific ID, just like worlds endpoint. Can also throw on / - Provides a list of definitions/configs from the loaded cache, currently supported types are: items, objects and npcs. Provides a list of (online) worlds in JSON format, to be used by websites etc. Provides the gamepack.jar to the client, especially important for RuneLite, since it uses it for injection, and it needs to be compatible with the current RuneLite version. This will be used by the game/world server to download the cache, unless one is manually provided. Provides the cache as a download, when called, it will check for a cache.zip file in the temporary directory, and create a zip if it doesn't already exist. Reads the cache like the game server does, so it can serve information from the game cache. In the future the central server might get Js5 capability as well, so it could get the client loaded up and ready to login to chosen world. The central server will read the game cache just like the world/game server will, so it can in the future do operations to the cache centrally for each game/world server to inherit. This is by no means completed and will probably have some flaws, so be ware if you borrow the source code! Just pushed the code I wrote for the central server. #01 - NPC updating & few Dodian NPC spawns in Yanille All the side panel tabs are positioned correctly for all the game frames. Opening up the "All Settings" interface works, but none of the settings in it work yet. Switching game frame generally works (from the quick settings tab). NPCs are visible & standing still with idle animation Rest of the client packets are just empty, and does nothing. Also feel free to correct things that appear to be wrong! Started listing some useful features/information below. However you can skip most parts about it. The tutorial should work fine with this release as well. If you struggle to set this project up, you can refer to my tutorial: Right now this project is very early in development, thus I'm not providing any detailed setup instructions here. I've started to write some documentation on the project including setting it up and what features it has. This should get you setup with a basic server on OSRS #201 revision, including RuneLite (OpenOSRS).ĭisclaimer! Some of the information here might end up being outdated while the project development progresses. This also means I have a project setup that is more straight forward to setup.' I've decided to keep majority of the code revolving around Dodian open source.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |