Dedicated headless linux server crashes when client builds pre-built attractions
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 16.2k
- Forks
- 1.9k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 80
Description
Operating System
Ubuntu 20.04.6 LTS + Pterodactyl 1.11.7
OpenRCT2 build
OpenRCT2 0.4.16
Base game
RollerCoaster Tycoon 2
Area(s) with this issue?
This bug is specific to multiplayer, This issue has to do with park objects and/or asset packs
Describe the issue
I run a headless openrct2-server from my pterodactyl panel. The host-server is located in a datacenter.
The egg I use I got from here: https://github.com/HaseoTM/parkervcp-eggs/tree/master/game_eggs/tycoon_games/openrct2
I have succeded to
a) Start the server
b) Connect to the server from my pc at home
c) Build stuff and play normally.
Though, opening the "Build Ride" menu and selecting a pre-built custom-design, the game starts stuttering and in 90+% of cases the server crashes, only giving the error in the console:
"ERROR[/__w/OpenRCT2/OpenRCT2/src/openrct2/actions/BannerSetStyleAction.cpp:62 (Query)]: Banner not found for bannerIndex 13"
After which, as I said, the server crashes most of the time. As soon as the pre-built custom-design is placed or removed from selection, the server and with it the client game runs smoothly again with no issues. Freestyle building also gives no issue whatsoever.
Unfortunately, the error logs dont save the error-message which I have given above or any other error message. This might be a different issue though. So this console error message is the only thing I can add in regards to that.
Steps to reproduce
-
Use Pterodactyl
-
Install the openrct2 egg from https://github.com/HaseoTM/parkervcp-eggs/tree/master/game_eggs/tycoon_games/openrct2
-
Run the dedicated headless server on pterodactyl
-
Connect to the server with a client from a different machine
-
Select and place pre-built custom coaster designs.
-
Server stutters and crashes when the pre-built custom coaster design is selected on the client.
Attachments
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the multiplayer crash with a headless server and a pre-built custom coaster, then inspect the BannerSetStyleAction.cpp:62 error and available server logs. Compare the banner and park-object state when the design is selected; done means the server no longer stutters or crashes and the relevant error is covered by a reproducible test or documented verification.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- game-dev, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100