Czego potrzebujesz
- System operacyjny: 64-bitowy Linux dla kroków poniżej. OpenRCT2 publikuje przenośne wersje dla Linuksa dla Debiana bookworm i trixie oraz Ubuntu noble i resolute.
- Zapisany park: serwer hostuje istniejący plik zapisu. Sam nie wystartuje z pustego scenariusza.
- Sieć: domyślnie port TCP 11753, otwarty w zaporze maszyny i przekierowany na routerze, jeśli siedzisz za NAT.
- Gra dla graczy: README OpenRCT2 mówi, że do gry potrzebne są oryginalne pliki RollerCoaster Tycoon 2, które kupisz na Steamie lub GOG.com. Nasz serwer działa bez nich.
OpenRCT2 jest darmowy i otwartoźródłowy, więc płacisz za maszynę, prąd i łącze, a nie za oprogramowanie.
Opcja 1: hostuj sam
Działa to na starym komputerze, domowym serwerze albo maszynie wirtualnej w chmurze. Opcje wiersza poleceń pochodzą ze strony man OpenRCT2 i jego strony wiki o trybie wieloosobowym, a kroki pobierania odpowiadają naszemu skryptowi instalacyjnemu.
Linux (przykład: Debian 12)
- Pobierz przenośną wersję. Wybierz plik dla swojej dystrybucji z najnowszego wydania OpenRCT2. Dla Debiana 12 (bookworm) nazwa pliku kończy się na
Linux-bookworm-x86_64.tar.gz.
mkdir ~/openrct2-server && cd ~/openrct2-server
curl -L -o OpenRCT2.tar.gz "<the download link of that file>"
tar -xvf OpenRCT2.tar.gz
Archiwum rozpakowuje się do folderu OpenRCT2, w którym jest openrct2-cli.
- Zainstaluj biblioteki, jeśli się nie uruchamia. Jeśli
openrct2-cli zatrzymuje się z komunikatem „error while loading shared libraries” (na przykład libicuuc.so.72), systemowi brakuje biblioteki, z którą zlinkowana jest przenośna wersja. To pakiety Debiana 12, które nasz skrypt instalacyjny dodaje dla wersji bookworm:
sudo apt install libicu72 libfontconfig1 libfreetype6 libpng16-16 libzip4
- Umieść zapisany park w folderze, nad którym masz kontrolę, na przykład
~/openrct2-server/ServerData/save/save.park. Możesz użyć zapisu z własnej gry.
- Uruchom serwer.
--port ustawia port, a --user-data-path ustawia folder, w którym jest config.ini:
cd ~/openrct2-server
./OpenRCT2/openrct2-cli host ServerData/save/save.park --port 11753 --user-data-path ~/openrct2-server/ServerData/
Dodaj --password <password>, żeby wymagać hasła przy dołączaniu. Bez --port według strony man OpenRCT2 używany jest port domyślny, 11753.
- Otwórz port. Zezwól na TCP 11753 w zaporze (z ufw:
sudo ufw allow 11753/tcp) i przekieruj go na routerze do tej maszyny.
- Dołącz. W grze otwórz Tryb wieloosobowy, kliknij New Server i wpisz adres serwera. Aby użyć innego portu, dopisz go po adresie, na przykład
203.0.113.10:22050. Z wiersza poleceń klient może użyć openrct2 join <address> --port 11753.
Żeby serwer działał po wylogowaniu, wiki OpenRCT2 opisuje jednostkę systemd, /etc/systemd/system/openrct2.service, w której ExecStart uruchamia openrct2-cli host na twoim zapisie, a potem systemctl daemon-reload, systemctl enable openrct2.service i systemctl start openrct2.service. Ta sama strona wiki wymienia oficjalny kontener Dockera, openrct2-docker, jako jeden z najprostszych sposobów uruchomienia serwera dedykowanego.
Inne ustawienia
Zachowanie serwera jest zapisane w config.ini w --user-data-path. Klucze zarządzane przez nasz panel to między innymi network.maxplayers, network.server_name, network.default_password, network.advertise, network.pause_server_if_no_clients, general.autosave i general.autosave_amount. W kodzie źródłowym OpenRCT2 wartości domyślne to 16 graczy, advertise włączone i pause_server_if_no_clients wyłączone.
Jak zostać adminem
Wiki OpenRCT2 opisuje jeden sposób: dołącz do serwera klientem, wpisz network.players w terminalu samego serwera dedykowanego, żeby znaleźć swój indeks gracza, a potem ustaw swoją grupę na admina poleceniem network.players[1].group = 0 (użyj swojego indeksu). Potem możesz zarządzać uprawnieniami z poziomu gry.
Opcja 2: hostuj w PlayNHost
Wynajem eliminuje kroki z zaporą, przekierowaniem portów i pobieraniem. Oprogramowanie serwera i jego port są ustawione za ciebie.
- Wybierz plan. Otwórz stronę hostingu serwera OpenRCT2 i porównaj plany (KIDDIE, FAMILY i COASTER w chwili pisania, na 16, 32 i 64 graczy). Kliknij Utwórz serwer przy planie albo Dostosuj plan, jeśli strona to oferuje, i sfinalizuj zamówienie. Ceny się zmieniają, więc sprawdź je na tej stronie.
- Poczekaj na instalację. Dostaniesz e-mail „serwer gotowy”, a serwer pojawi się na panel.playnhost.com. Na karcie Console panel uznaje serwer za uruchomiony, gdy wypisze
Listening for clients on.
- Otwórz Ustawienia, potem Ustawienia gry. Te pola obowiązują przy każdym starcie serwera:
- Nazwa serwera i Hasło serwera: nazwa, którą widzą gracze, i hasło do dołączenia. Wyczyść hasło, żeby serwer był otwarty.
- Maks. graczy: ustawiane na liczbę graczy twojego planu przy tworzeniu serwera.
- Plik zapisu: park do wczytania, domyślnie
ServerData/save/save.park.
- Wczytaj ostatni autozapis: zobacz uwagę poniżej.
- Odstęp autozapisu i Liczba przechowywanych autozapisów: jak często serwer robi autozapis i ile autozapisów trzyma.
- Ogłaszaj serwer i Pauzuj serwer, gdy nie ma klientów: oba domyślnie wyłączone na naszych serwerach. W naszych testach wpis na publicznej liście serwerów OpenRCT2 z naszych serwerów się nie udaje, więc zostaw Ogłaszaj serwer wyłączone i niech gracze dołączają po adresie.
- Opis serwera: pokazywany, gdy gracze najadą myszką na twój serwer na liście. Powitanie serwera: wiadomość wysyłana każdemu graczowi, który dołącza.
- Zrestartuj. Gdy panel pokaże „Zapisano. Serwer musi się zrestartować, zanim zmiany zaczną działać.”, kliknij Zrestartuj teraz i poczekaj na linię gotowości.
- Wgraj własny park (opcjonalnie). Otwórz kartę Files, wgraj swój plik
.park (nazwa pliku bez spacji), ustaw Plik zapisu na jego ścieżkę i wyłącz Wczytaj ostatni autozapis, żeby został wczytany. Dopóki opcja jest wyłączona, każdy restart wczytuje ten plik od nowa; gdy serwer zrobi autozapis twojego nowego parku, włącz ją z powrotem, żeby zachować postępy między restartami.
- Dołącz. W OpenRCT2 otwórz Tryb wieloosobowy, kliknij New Server, wpisz adres i port swojego serwera z panelu, a potem Hasło serwera, jeśli je ustawisz.
Co nasza konfiguracja robi za ciebie
- Linia gotowości. Panel uznaje serwer za uruchomiony, gdy log pokazuje
Listening for clients on.
- Port i ustawienia. Przy każdym starcie panel zapisuje port twojego serwera w
network.default_port, razem z nazwą, hasłem, liczbą graczy oraz ustawieniami ogłaszania, pauzy, autozapisu i logowania czatu i akcji. Ręczne zmiany tych kluczy w ServerData/config.ini są nadpisywane przy następnym starcie, więc zmieniaj je w Ustawienia gry.
- Park startowy. Instalacja pobiera domyślny
save.park do ServerData/save, jeśli żadnego nie ma, żeby nowy serwer mógł od razu wystartować.
- Autozapis wygrywa domyślnie. Przy włączonym Wczytaj ostatni autozapis każdy start wczytuje najnowszy plik w
ServerData/save/autosave/ zamiast Plik zapisu. Dzięki temu twoje postępy zostają między restartami. Oznacza to też, że inny Plik zapisu jest ignorowany, dopóki nie wyłączysz tego ustawienia.
- Wersje. Ustawienie Wersja OpenRCT2 domyślnie ma wartość
latest. Tag wydania od v0.4.15 wzwyż, zapisany dokładnie tak jak na stronie wydań OpenRCT2, na przykład v0.5.7, przypina wersję. Jest czytany tylko podczas instalacji serwera: restart nie zastosuje zmiany, nawet jeśli panel zaproponuje go po zapisaniu. Żeby przenieść istniejący serwer na inną wersję, otwórz zgłoszenie do wsparcia, a zainstalujemy go dla ciebie od nowa.
- Console. Karta Console pokazuje log serwera. Tekst wpisany tam nie trafia do gry, więc krok admina z
network.players opisany wyżej nie zadziała w tym miejscu.
Własny hosting czy wynajem: uczciwe porównanie
- Koszt. Własny: oprogramowanie jest darmowe, a płacisz za sprzęt, prąd i łącze albo za maszynę wirtualną w chmurze. Wynajem: miesięczna opłata zależna od planu. Zobacz aktualne plany.
- Dostępność. Własny: tak niezawodny jak twoja maszyna, prąd i domowy internet, i musi być włączony, gdy znajomi budują. Wynajem: działa na sprzęcie hostingodawcy, nie na twoim komputerze.
- Ekspozycja sieciowa. Własny: gracze łączą się z twoim publicznym IP, a ty dbasz o zaporę i router. Wynajem: twoje domowe IP nie bierze w tym udziału.
- Potrzebne umiejętności. Własny: wiersz poleceń, przekierowanie portów i konfiguracja usługi lub Dockera. Jak najbardziej do zrobienia i dobry sposób na naukę. Wynajem: panel WWW z polami formularza.
- Aktualizacje. Własny: pobierz nowe wydanie i podmień folder. Wynajem: serwer zachowuje wersję, z którą został zainstalowany (
latest w tamtej chwili, chyba że ustawisz Wersja OpenRCT2), a wsparcie instaluje go od nowa, gdy chcesz inną.
Własny hosting jest dla ciebie, jeśli jakaś maszyna i tak działa całą dobę, a sieci nie są ci obce. Wynajem jest dla ciebie, jeśli wolisz nie zajmować się sprzętem.
Częste problemy i rozwiązania
Plik wykonywalny z wydania się nie uruchamia
Przyczyna: systemowi brakuje biblioteki, z którą zlinkowana jest przenośna wersja, na przykład libicuuc.so.72.
Rozwiązanie: w Debianie 12 zainstaluj libicu72 libfontconfig1 libfreetype6 libpng16-16 libzip4 albo użyj oficjalnego kontenera Dockera.
Znajomi nie mogą się połączyć
Przyczyna: port jest zamknięty w zaporze albo nieprzekierowany na routerze.
Rozwiązanie: otwórz TCP 11753 (albo własny port) w obu miejscach i dopisz port po adresie, jeśli nie jest domyślny.
Serwer ciągle wczytuje stary park (PlayNHost)
Przyczyna: Wczytaj ostatni autozapis jest włączone, więc wczytywany jest najnowszy autozapis zamiast Plik zapisu.
Rozwiązanie: wyłącz Wczytaj ostatni autozapis, a potem zrestartuj.
Twoje zmiany w config.ini znikają (PlayNHost)
Przyczyna: to klucz, który panel zapisuje przy każdym starcie.
Rozwiązanie: zmień go zamiast tego w Ustawienia gry.
FAQ
Czy mogę hostować serwer OpenRCT2 za darmo?
Tak. OpenRCT2 jest darmowy i otwartoźródłowy. Nadal płacisz za maszynę, prąd i internet, a serwer musi działać, gdy ludzie grają.
Jakiego portu używa OpenRCT2?
Domyślnie TCP 11753. Zmienisz go przez --port albo w config.ini.
Ilu graczy może dołączyć?
Domyślna wartość network.maxplayers to 16. Nasze plany są na 16, 32 i 64 graczy.
Czy mogę zacząć zupełnie nowy scenariusz na serwerze?
Nie na naszym: Plik zapisu musi wskazywać istniejący plik .park, a domyślnie wczytywany jest park startowy. Wgraj własny park, żeby to zmienić.
Czy potrzebuję oryginalnych plików RollerCoaster Tycoon 2?
Gracze tak: README OpenRCT2 mówi, że gra ich wymaga. Nasz serwer działa bez nich.
Gotowy budować razem? Zobacz plany serwera OpenRCT2.