| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| servers:linux:games:2009scape_localhost [2025/01/17 16:02] – [Media] Sean Rhone | servers:linux:games:2009scape_localhost [2025/12/06 19:26] (current) – [Dependencies] Sean Rhone |
|---|
| ===== Prerequisites ===== | ===== Prerequisites ===== |
| |
| * [[linux;distros;fedora_workstation_gnome|Fedora Workstation]] | * [[linux;distros;opensuse_tumbleweed_gnome|openSUSE Tumbleweed (GNOME)]] |
| |
| ===== Notes ===== | ===== Notes ===== |
| |
| * For a game client, see [[games:linux:rt4_client_runescape_530|RT4 Client]] | * For a game client, see [[games:linux:rt4_client_runescape_530|RT4 Client]] |
| |
| ===== Resources ===== | |
| |
| * [[https://forum.2009scape.org/viewtopic.php?t=1038-singleplayer-server-rt4-client-master-branches-scripts-and-desktop-start-launchers-on-windows-linux|2009Scape Forums]] | |
| |
| ====== Dependencies ====== | ====== Dependencies ====== |
| * https://gitlab.com/2009scape/2009scape#prerequisites | * https://gitlab.com/2009scape/2009scape#prerequisites |
| |
| sudo dnf install git git-lfs temurin-11-jdk | sudo zypper install git-core git-lfs java-17-openjdk-headless java-25-openjdk-headless |
| | |
| | ===== Java Priority ===== |
| | |
| | * ''/usr/lib64/jvm/jre-25-openjdk/bin/java'' |
| | |
| | sudo update-alternatives --config 'java' |
| |
| ====== Download Source ====== | ====== Download Source ====== |
| ====== Initial Build ====== | ====== Initial Build ====== |
| |
| cd ~/'Projects/2009Scape-Server/src/Server' && JAVA_HOME='/usr/lib/jvm/temurin-11-jdk' ~/'Projects/2009Scape-Server/src/Server/mvnw' 'clean' | * 5 minutes i5-8400H ((2025/10/21: ''04:18 min'')) |
| |
| cd ~/'Projects/2009Scape-Server/src/Server' && JAVA_HOME='/usr/lib/jvm/temurin-11-jdk' ~/'Projects/2009Scape-Server/src/Server/mvnw' 'package' | cd ~/'Projects/2009Scape-Server/src/Server' && JAVA_HOME='/usr/lib64/jvm/java-17-openjdk-17' ~/'Projects/2009Scape-Server/src/Server/mvnw' 'clean' 'package' -DskipTests |
| |
| ====== Settings ====== | ====== Settings ====== |
| |
| * Last commit: [[https://gitlab.com/2009scape/2009scape/-/commit/317b4e9b5c330c6492663631d3edca9794dfc2f9|August 10, 2024]] ''317b4e9b'' | * Last commit: [[https://gitlab.com/2009scape/2009scape/-/commit/dfb53cfa03fff99374e60875e01a16f10d995749|November 25, 2025]] ''dfb53cfa'' |
| * [[https://gitlab.com/2009scape/2009scape/-/commits/master/Server/worldprops/default.conf?ref_type=heads|New commits check]] | * [[https://gitlab.com/2009scape/2009scape/-/commits/master/Server/worldprops/default.conf?ref_type=heads|New commits check]] |
| * [[https://gitlab.com/2009scape/2009scape/-/blob/master/Server/worldprops/default.conf?ref_type=heads|Upstream worldprops/default.conf]] ([[https://gitlab.com/2009scape/2009scape/-/raw/master/Server/worldprops/default.conf?ref_type=heads|raw]]) | * [[https://gitlab.com/2009scape/2009scape/-/blob/master/Server/worldprops/default.conf?ref_type=heads|Upstream worldprops/default.conf]] ([[https://gitlab.com/2009scape/2009scape/-/raw/master/Server/worldprops/default.conf?ref_type=heads|raw]]) |
| | * [[https://gitlab.com/2009scape/2009scape/-/blob/master/Server/src/main/core/game/worldevents/holiday/HolidayRandoms.kt|HolidayRandoms.kt]] |
| |
| rm -v -f ~/'Projects/2009Scape-Server/src/Server/worldprops/default.conf' | mkdir -p ~/'Projects/2009Scape-Server/conf' && nano ~/'Projects/2009Scape-Server/conf/localhost.conf' |
| | |
| nano ~/'Projects/2009Scape-Server/src/Server/worldprops/default.conf' | |
| |
| <code> | <code> |
| [server] | [server] |
| | log_level = "detailed" |
| # Server | |
| log_level = "verbose" | |
| write_logs = true | |
| msip = "localhost" | |
| secret_key = "2009scape_development" | secret_key = "2009scape_development" |
| | write_logs = false |
| | msip = "127.0.0.1" |
| preload_map = false | preload_map = false |
| |
| # Accounts | |
| use_auth = false | use_auth = false |
| persist_accounts = false | persist_accounts = false |
| noauth_default_admin = false | noauth_default_admin = false |
| daily_accounts_per_ip = 3 | daily_accounts_per_ip = 3 |
| |
| # Watchdog | |
| watchdog_enabled = false | watchdog_enabled = false |
| connectivity_check_url = "localhost" | connectivity_check_url = "localhost" |
| |
| [database] | [database] |
| |
| # MySQL | |
| database_address = "localhost" | |
| database_port = "3306" | |
| database_name = "2009scape" | database_name = "2009scape" |
| database_username = "2009scape" | database_username = "2009scape" |
| database_password = "x" | database_password = "x" |
| | database_address = "127.0.0.1" |
| | database_port = "3306" |
| |
| [integrations] | [integrations] |
| |
| # Grafana Analytics? | |
| grafana_logging = false | grafana_logging = false |
| grafana_log_path = "@data/logs" | grafana_log_path = "@data/logs" |
| |
| [world] | [world] |
| | name = "2009Scape (::1)" |
| # localhost | name_ge = "2009Scape" |
| | debug = false |
| | dev = false |
| | start_gui = false |
| | daily_restart = false |
| | world_id = "1" |
| | country_id = "0" |
| | members = true |
| | activity = "2009Scape Classic." |
| | pvp = false |
| | enable_default_clan = false |
| | enable_bots = false |
| | motw_identifier = "0" |
| motw_text = "Welcome to your localhost server!" | motw_text = "Welcome to your localhost server!" |
| show_rules = false | new_player_location = "2524,5002,0" |
| new_player_announcement = false | home_location = "3222,3218,0" |
| allow_token_purchase = false | |
| autostock_ge = false | autostock_ge = false |
| bots_influence_ge_price = false | allow_token_purchase = false |
| | skillcape_perks = false |
| | increased_door_time = false |
| | enable_botting = false |
| | max_adv_bots = 100 |
| enable_doubling_money_scammers = false | enable_doubling_money_scammers = false |
| | wild_pvp_enabled = false |
| | jad_practice_enabled = false |
| | enable_global_chat = false |
| | ge_announcement_limit = 500 |
| | enable_castle_wars = false |
| personalized_shops = false | personalized_shops = false |
| enable_default_clan = false | bots_influence_ge_price = false |
| | verbose_cutscene = false |
| # Jagex-like | show_rules = false |
| | revenant_population = 0 |
| i_want_to_cheat = false | i_want_to_cheat = false |
| default_xp_rate = 1.0 | |
| runecrafting_formula_revision = 530 | |
| allow_slayer_reroll = false | |
| better_agility_pyramid_gp = false | better_agility_pyramid_gp = false |
| better_dfs = false | better_dfs = false |
| enhanced_deep_wilderness = false | new_player_announcement = false |
| skillcape_perks = false | inauthentic_candlelight_random = false |
| jad_practice_enabled = false | ######################################## |
| | holiday_event_randoms = true |
| # Holiday (only enable one or none) | |
| force_halloween_randoms = false | force_halloween_randoms = false |
| force_christmas_randoms = true | force_christmas_randoms = true |
| | ######################################## |
| # PVP | runecrafting_formula_revision = 530 |
| pvp = false | enhanced_deep_wilderness = false |
| wild_pvp_enabled = false | wilderness_exclusive_loot = false |
| revenant_population = 30 | xp_rates = false |
| | ironman = false |
| # Server config | shooting_star_ring = false |
| debug = false | ring_of_wealth_teleport = false |
| dev = false | second_bank = false |
| start_gui = false | player_commands = false |
| daily_restart = false | boosted_trawler_rewards = false |
| smartpathfinder_bfs = true | |
| enable_botting = false | |
| motw_identifier = "0" | |
| ge_announcement_limit = 500 | |
| increased_door_time = false | |
| enable_castle_wars = false | |
| verbose_cutscene = false | |
| holiday_event_randoms = true | |
| enable_bots = false | |
| max_adv_bots = 100 | |
| new_player_location = "2524,5002,0" | |
| home_location = "3222,3218,0" | |
| | |
| # World | |
| name = "2009Scape (::1)" | |
| world_id = "1" | |
| country_id = "0" | |
| members = true | |
| name_ge = "2009Scape" | |
| activity = "2009Scape Classic." | |
| |
| [paths] | [paths] |
| |
| # Paths | |
| data_path = "data" | data_path = "data" |
| bot_data = "@data/botdata" | |
| cache_path = "@data/cache" | cache_path = "@data/cache" |
| | store_path = "@data/serverstore" |
| | save_path = "@data/players" |
| configs_path = "@data/configs" | configs_path = "@data/configs" |
| | logs_path = "@data/logs" |
| | bot_data = "@data/botdata" |
| eco_data = "@data/eco" | eco_data = "@data/eco" |
| grand_exchange_data_path = "@data/eco" | grand_exchange_data_path = "@data/eco" |
| logs_path = "@data/logs" | |
| object_parser_path = "@data/ObjectParser.xml" | object_parser_path = "@data/ObjectParser.xml" |
| save_path = "@data/players" | |
| store_path = "@data/serverstore" | |
| |
| # Drop Tables | |
| rare_drop_table_path = "@data/configs/shared_tables/RDT.xml" | rare_drop_table_path = "@data/configs/shared_tables/RDT.xml" |
| gem_drop_table_path = "@data/configs/shared_tables/GDT.xml" | |
| herb_drop_table_path = "@data/configs/shared_tables/HDT.xml" | |
| cele_drop_table_path = "@data/configs/shared_tables/CELEDT.xml" | cele_drop_table_path = "@data/configs/shared_tables/CELEDT.xml" |
| allotment_seed_drop_table_path = "@data/configs/shared_tables/ASDT.xml" | |
| uncommon_seed_drop_table_path = "@data/configs/shared_tables/USDT.xml" | uncommon_seed_drop_table_path = "@data/configs/shared_tables/USDT.xml" |
| | herb_drop_table_path = "@data/configs/shared_tables/HDT.xml" |
| | gem_drop_table_path = "@data/configs/shared_tables/GDT.xml" |
| rare_seed_drop_table_path = "@data/configs/shared_tables/RSDT.xml" | rare_seed_drop_table_path = "@data/configs/shared_tables/RSDT.xml" |
| | allotment_seed_drop_table_path = "@data/configs/shared_tables/ASDT.xml" |
| |
| # End</code> | # End</code> |
| |
| ===== Server Start ===== | ===== Server Start ===== |
| |
| * [[games:linux:rt4_client_runescape_530#scape_localhost|RT4 Client Desktop Action Server]] | |
| |
| mkdir -p ~/'Projects/2009Scape-Server/scripts' && nano ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh' && chmod +x ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh' | mkdir -p ~/'Projects/2009Scape-Server/scripts' && nano ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh' && chmod +x ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh' |
| |
| cd ~/'Projects/2009Scape-Server/src/Server' | cd ~/'Projects/2009Scape-Server/src/Server' |
| '/usr/lib/jvm/temurin-11-jdk/bin/java' -jar ~/'Projects/2009Scape-Server/src/Server/target/server-'*'-jar-with-dependencies.jar' | |
| | export _JAVA_OPTIONS='--sun-misc-unsafe-memory-access=allow --enable-native-access=ALL-UNNAMED -Djava.net.preferIPv6Addresses=false' |
| | |
| | '/usr/lib64/jvm/java-25-openjdk-25/bin/java' -jar ~/'Projects/2009Scape-Server/src/Server/target/server-'*'-jar-with-dependencies.jar' '../../conf/localhost.conf' |
| |
| # End</code> | # End</code> |
| |
| ===== Server Update ===== | ===== Server Update ===== |
| |
| * [[https://gitlab.com/2009scape/2009scape/-/commits/master|Commits History]] | |
| * [[games:linux:rt4_client_runescape_530#scape_localhost|RT4 Client Desktop Action Server-Update]] | |
| |
| mkdir -p ~/'Projects/2009Scape-Server/scripts' && nano ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh' && chmod +x ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh' | mkdir -p ~/'Projects/2009Scape-Server/scripts' && nano ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh' && chmod +x ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh' |
| #!/bin/bash | #!/bin/bash |
| |
| git -C ~/'Projects/2009Scape-Server/src' reset --hard | git -C ~/'Projects/2009Scape-Server/src' reset --hard 'origin/master' |
| git -C ~/'Projects/2009Scape-Server/src' pull origin 'master' --rebase | git -C ~/'Projects/2009Scape-Server/src' pull origin 'master' --rebase |
| |
| cd ~/'Projects/2009Scape-Server/src/Server' | cd ~/'Projects/2009Scape-Server/src/Server' |
| JAVA_HOME='/usr/lib/jvm/temurin-11-jdk' ~/'Projects/2009Scape-Server/src/Server/mvnw' 'clean' 'package' -DskipTests | |
| |
| notify-send -i ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' '2009Scape worldprops copy/paste in 3 seconds...' | export JAVA_HOME='/usr/lib64/jvm/java-17-openjdk-17' |
| sleep '3' | |
| gio open 'https://wiki.realmofespionage.xyz/servers:linux:games:2009scape_localhost#settings' | ~/'Projects/2009Scape-Server/src/Server/mvnw' 'clean' 'package' -DskipTests |
| rm -f ~/'Projects/2009Scape-Server/src/Server/worldprops/default.conf' | |
| nano ~/'Projects/2009Scape-Server/src/Server/worldprops/default.conf' | unset 'JAVA_HOME' |
| |
| notify-send -i ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' '2009Scape localhost server update complete' | zenity --title '2009Scape Updater' --text 'localhost server update complete' --icon ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' --timeout '2' --info |
| |
| # End</code> | # End</code> |
| |
| ===== Save Data Back-up ===== | ===== Save Data Back-up ===== |
| |
| * [[games:linux:rt4_client_runescape_530#scape_localhost|RT4 Client Desktop Action Saves]] | |
| |
| mkdir -p ~/'Projects/2009Scape-Server/scripts' && nano ~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh' && chmod +x ~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh' | mkdir -p ~/'Projects/2009Scape-Server/scripts' && nano ~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh' && chmod +x ~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh' |
| #!/bin/bash | #!/bin/bash |
| |
| tar -cvzf ~/'Downloads/'$(date +%Y-%m-%d-%s)'-2009Scape-Server-localhost-Saves.tar.gz' -C ~/'Projects/2009Scape-Server/src/Server/data' 'players' | tar -czf ~/'Downloads/'$(date +%Y-%m-%d-%s)'-2009Scape-localhost-Saves.tar.gz' -C ~/'Projects/2009Scape-Server/src/Server/data' 'players' |
| sync | |
| notify-send -i ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' '2009Scape Save Data Backed-up Successfully to Downloads' | zenity --title '2009Scape Save Backup' --text 'Save Data Backed-up to Downloads' --icon ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' --timeout '1' --info |
| |
| # End</code> | # End</code> |
| ====== Quick Commands ====== | ====== Quick Commands ====== |
| |
| ===== Execute ===== | ===== Save Restore ===== |
| |
| ===== Server ===== | * ''src/Server/data/players/espionage724.json'' |
| | |
| cd ~/'Projects/2009Scape-Server/src/Server' && '/usr/lib/jvm/temurin-11-jdk/bin/java' -jar ~/'Projects/2009Scape-Server/src/builddir/server.jar' | |
| | |
| ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh' | |
| | |
| ptyxis --standalone --title='2009Scape Server — ' -- ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh' | |
| | |
| ===== Update ===== | |
| | |
| * [[https://gitlab.com/2009scape/2009scape/-/commits/master|Commits History]] | |
| | |
| git -C ~/'Projects/2009Scape-Server/src' reset --hard && git -C ~/'Projects/2009Scape-Server/src' pull origin 'master' --rebase && cd ~/'Projects/2009Scape-Server/src/Server' && mvn 'clean' && cd ~/'Projects/2009Scape-Server/src' && ~/'Projects/2009Scape-Server/src/build' -g -c 'g' -q && cd ~ && sync | |
| | |
| ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh' | |
| | |
| ptyxis --standalone --title='2009Scape Server Updater — ' -- ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh' | |
| | |
| ===== Save Data Back-up ===== | |
| | |
| tar -cvzf ~/'Downloads/'$(date +%Y-%m-%d-%s)'-2009Scape-Server-localhost-Saves-manual.tar.gz' -C ~/'Projects/2009Scape-Server/src/Server/data' 'players' | |
| | |
| ~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh' | |
| |
| mkdir -p ~/'Projects/2009Scape-Server/src/Server/data/players' && gio open ~/'Projects/2009Scape-Server/src/Server/data/players' | mkdir -p ~/'Projects/2009Scape-Server/src/Server/data/players' && gio open ~/'Projects/2009Scape-Server/src/Server/data/players' |
| |
| ===== File Manager ===== | |
| |
| ==== Root ==== | |
| |
| **** | |
| |
| gio open ~/'Projects/2009Scape-Server/src' | |
| |
| ==== Saves ==== | |
| |
| **** | |
| |
| gio open ~/'Projects/2009Scape-Server/src/Server/data/players' | |
| |
| ====== Resources/TODOs ====== | |
| |
| * https://github.com/2009scape/2009Scape-mobile/issues/13 | |
| * https://gitlab.com/2009scape/2009scape/-/raw/master/Server/worldprops/default.conf?ref_type=heads | |
| * https://gitlab.com/2009scape/singleplayer/windows/-/raw/master/game/worldprops/default.conf | |
| * https://gitlab.com/2009scape/2009scape/-/blob/master/Server/src/main/core/game/system/config/ServerConfigParser.kt#L66 | |
| * https://gitlab.com/2009scape/2009scape/-/blob/master/Server/src/main/core/game/world/GameSettings.kt#L120 | |
| * ''noauth_default_admin'' to ''true'' if ''::to'' needed/stuck | |
| * Pest Control and Mining Star bots auto-still appear with bots disabled in conf (bots disabled stops auto-spawn bots at Lumbridge/seemingly general areas) | |
| |