- Worldwide Rush - Modding Update
- Hi everyone!
- The second major update for Worldwide Rush is out now!
- It took us way too long for this update, but we wanted it to be as accessible as possible. The amount of already available mods proves it was worth it. Now everyone should be able to enjoy and create mods.
- Here are the main features:
- In-game modding with UI
- In-game support for Steam Workshop
- Improved passengers pathfinding, making them much smarter in large saves
- Modding
- Modding is here for everyone to enjoy. Explore the workshop, add new cities, vehicles or change the game rules. The first step is done. Modding will be further improved in the upcoming major updates. Like always, there is so much to add.
- Check out the modding guide if you want to make your own mod:
- Modding Basics
- Worldwide Rush 的一篇指å—
- 作者:Cocoseinius
- Instructions on how to use the Worldwide Rush modding systems.
- Passengers Pathfinding
- I also wanted to mention the pathfinding improvements. There were many complaints from players that passengers fail to find paths with multiple transfers in large save files. From the feedback save files, it was mostly long-distance paths. There were multiple attempts where I tried to solve this issue in the past and they always came up short. Mostly because I tried to improve the existing A* pathfinding solution, which in itself was flawed.
- The main problem was that A* looks through too many combinations to find the correct path. For a smaller game, that would not be an issue, because when I increase max search time, the path is always found. But making pathfinding expensive is not a solution when you literally need to transfer thousands of passengers per frame.
- In some cases, you could save calculations, but that would use too much memory. Secondly, cities that stop accepting travelers would require constant recalculations. Playing with dynamic weights, like cities with large hubs getting more attention, improved the situation a bit.
- Basically, for a long time, all improvements would postpone the problem. But then I figured out a solution. It is obvious now, but it took a lot of time for my brain, poor thing. Cities store all possible connections that are made by vehicles that stop in that city. So I made a second layer that calculates all possible connections for 6 stops. Now this on its own is expensive in both calculations and memory, but I figured if used sparingly, it could be the solution. Because if cities have a list of all possible cities that can reach it with saved information on how many stops, I can feed that into the A* pathfinding and ignore paths that lead to nothing.
- That alone was not enough. My benchmark save went from 120 fps to 10 fps or so. The next thing I added was a distance requirement so that only long trips would use this system. On top of that, I made the city connection calculation multithreaded, on demand, in between updates, and only ever so often. This, together with further A* integration, allowed me to reach the old 120 fps, but this time all paths are found.
- I celebrated inside, pushed the solution, and did not make a big deal out of it, because there was always someone 1 day later to prove me wrong. Players are talented like that. But it seems complaints were over, and it works? Passengers can travel around the world, transferring through multiple stations in 10k+ vehicles saves without any performance impact. I hope it stays that way.
- We hope you will enjoy the update!
- Here is the full changelog:
- Bugfixes:
- Fixed some crashes
- Fixed some AI vehicle selection bugs thanks to Infixo
- Fixed path calculations being asymmetrical thanks to Infixo
- Fixed first share not being correctly owned on the game start
- Fixed AI being able to take more loans than allowed in some cases
- Fixed world names not being translated when pressing on Continue in the main menu
- Fixed text box last word selection
- Changes:
- Improved passengers pathfinding
- Updated localization
- Additions:
- Added modding systems
- Added modding browse UI
- Added modding editing UI
- Added Steam Workshop integration
- Added Steam Workshop modding browse support
- Added in-game modding reload systems
- Added mod header and description editing
- Added defaults modding to change in-game rules
- Added currency modding
- Added sprite modding for UI
- Added texture modding
- Added vehicle company modding
- Added all vehicle types modding
- Added vehicle graphics modding
- Added play region modding
- Added city modding
- Added prebuilt roads modding
- Added prebuilt rails modding
- Added sea paths modding
- Added vehicles visibility slider