Java, Java everywhere. There were a lot of null pointer issues to say the least.
This is going to be brief - the install is relatively quick. Basically I followed the guide 2009scape had on their website.
The only real gotcha as a part of the entire install is ensuring to have an X11 session flag passed to the ssh session to open intellij-idea-community ide.
Xampp was easy to install with a
wget from the site.
There’s also a
run.sh command in the project to make sure the project is built properly.
Install is pretty easy - need to make sure to allow access to phpmyadmin via
# since XAMPP 1.4.3 <Directory "/opt/lampp/phpmyadmin"> AllowOverride AuthConfig Limit # Require local Require all granted # <- Need this line ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </Directory>
Running the Game
Start the Management Server and Server
./run.sh --build server Server/worldprops/default.json ./run/sh ms
scp -r email@example.com:/home/ubuntu/testscape/Server/data/cache /home/jack/.runite_rs/runescape/
From the client I’ve had to remove the cache a few times.
Also it looks like there’s a null pointer error when trying to load the character in the client gui.
I had to run many
-rlcache in the management server and delete
~/.cache from the client side.
The problem I ran into that won’t load the character.
java.lang.NullPointerException at core.game.system.mysql.impl.PlayerSQLHandler.create(PlayerSQLHandler.java:80) at core.game.system.mysql.SQLEntryHandler.read(SQLEntryHandler.java:76) at core.game.node.entity.player.info.portal.PlayerSQLManager.parse(PlayerSQLManager.java:78) at core.game.node.entity.player.info.PlayerDetails.parse(PlayerDetails.java:114) at core.game.node.entity.player.info.PlayerDetails.getDetails(PlayerDetails.java:136) at core.game.system.communication.ClanRepository.get(ClanRepository.java:376) at core.game.system.communication.ClanRepository.get(ClanRepository.java:359) at core.game.system.communication.CommunicationInfo.sync(CommunicationInfo.java:259) at core.game.node.entity.player.info.login.LoginConfiguration.sendGameConfiguration(LoginConfiguration.java:225) at core.game.node.entity.player.info.login.LoginConfiguration.configureGameWorld(LoginConfiguration.java:135) at plugin.interaction.inter.LoginInterfacePlugin$1.pulse(LoginInterfacePlugin.java:38) at core.game.system.task.Pulse.update(Pulse.java:80) at core.game.world.PulseRunner$Runner.run(PulseRunner.kt:55) at core.worker.MajorUpdateWorker.run(MajorUpdateWorker.kt:28) at core.worker.MajorUpdateWorker$start$1.run(MajorUpdateWorker.kt:21) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
The 2009scape discord basically told me nothing as they don’t support setting up our your own instance of the game.
That somewhat left me stranded.
I tried using the launcher, but also couldnt get it to work with my private instance. I may circle back on this in a few months of development. I’ve always wanted a private runescape server..