- Feature: [#4418] Allow steep slopes on the side-friction roller coaster.
- Feature: [#7726] Add shortcut to advance one tick.
- Feature: [#7956, #7964] Add sprite font glyphs for Hungarian and some Czech letters.
- Feature: [#7971] Toolbox option to open custom content folder.
- Feature: [#7980] Allow data path for RCT1 to be specified by a command line argument.
- Feature: [#8073] Auto-upload minidumps to backtrace.io (optional, MSVC/Windows only)
- Feature: [#8078] Add save_park command to in-game console.
- Feature: [#8080] New console variable "current_rotation" to get or set view rotation.
- Feature: [#8098] Glyph for Russian rouble sign.
- Feature: [#8099] Add Powered Launch mode to Inverted RC (for RCT1 parity).
- Feature: [#8190] Allow building footpaths on 'corner down' terrain.
- Feature: [#8191] Allow building on-ride photos and water S-bends on the Water Coaster.
- Feature: [#8259] Add say command to in-game console.
- Feature: [#8374] Add replay system.
- Feature: [#8377] Add option to adjust amount of autosaves to keep.
- Feature: [#8458] Add sprite sorting benchmark.
- Feature: [#8583] Add boosters to water coaster.
- Feature: [#8648] Add optional chat button to top toolbar in multiplayer games.
- Feature: [#8652] Add network window including a graph for data usage visualisation.
- Feature: [#8670] Add ability to download missing objects when loading a park.
- Change: [#7961] Add new object types: station, terrain surface, and terrain edge.
- Change: [#8222] The climate setting has been moved from objective options to scenario options.
- Change: [#8718] Allow TARMAC object to be removed when running the `remove_unused_objects` command.
- Change: [#8718] No longer require the generic scenery groups and tarmac footpath to be checked when creating a scenario.
- Change: [#8734] Disable kick button in multiplayer window when unable to use it.
- Fix: [#3832] Changing the colour scheme of track pieces does not work in multiplayer.
- Fix: [#4094] Coasters with long flat-to-steep pieces offer them in diagonal mode (original bug).
- Fix: [#5684] Player list can desync between clients and server and can crash.
- Fix: [#6191] OpenRCT2 fails to run when the path has an emoji in it.
- Fix: [#7439] Placement messages have mixed strings
- Fix: [#7473] Disabling sound effects also disables "Disable audio on focus loss".
- Fix: [#7536] Android builds fail to start.
- Fix: [#7689] Deleting 0-tile maze gives a MONEY32_UNDEFINED (negative) refund.
- Fix: [#7828] Copied entrances and exits stay when demolishing ride.
- Fix: [#7945] Client IP address is logged as `(null)` in server logs.
- Fix: [#7952] Performance drop caused by code refactor.
- Fix: [#7954] Key validation fails on Windows due to non-ASCII user / player name.
- Fix: [#7975] Inspection flag not cleared for rides which are set to never be inspected (original bug).
- Fix: [#7985] Giant Screenshot ignores 'Map rendering' settings.
- Fix: [#7987] Broken track designs increase money by MONEY32_UNDEFINED.
- Fix: [#7991] Scenery and footpaths on Construction Rights tiles can be deleted using Clear Scenery.
- Fix: [#8034] Vanilla sprites are broken when making screenshots from command line.
- Fix: [#8045] Crash when switching between languages.
- Fix: [#8062] In multiplayer warnings for unstable cheats are shown when disabling them.
- Fix: [#8090] Maze designs saved incorrectly.
- Fix: [#8101] Title sequences window flashes after opening.
- Fix: [#8120] Crash trying to place peep spawn outside of map.
- Fix: [#8121] Crash Renaming park with server logging enabled.
- Fix: [#8139] Buying land costs money when the game is in "no money" mode.
- Fix: [#8141] Attempting to build entrance/exit on station 2 does not work.
- Fix: [#8142] Reliability of mazes and crooked houses can go below 100%.
- Fix: [#8187] Cannot set land ownership over ride entrances or exits in sandbox mode.
- Fix: [#8200] Incorrect behaviour when removing entrances and exits that are on the same tile.
- Fix: [#8204] Crash when tile element has no surface elements.
- Fix: [#8264] Rides and scenery placeable outside of map with ZC and Sandbox mode enabled.
- Fix: [#8335] Rides with arbitrary ride types can crash the game when they break down.
- Fix: [#8358] Infinite loop when changing vehicle count on stopped ride.
- Fix: [#8402] Crash closing a window in some cases.
- Fix: [#8431] Crash when game action logging is enabled.
- Fix: [#8433] Crash if master server response is not valid JSON.
- Fix: [#8434] Crash if curl_easy_init fails.
- Fix: [#8443] Crash when selecting the current vehicle for ride that has none available.
- Fix: [#8456] Junior booster track piece doesn't connect properly.
- Fix: [#8464] Crash on game shutdown.
- Fix: [#8469] Crash modifying colour on hacked rides.
- Fix: [#8508] Underground roto-drop is not going up.
- Fix: [#8555] Multiplayer window text limits are not computed properly.
- Fix: [#8572] Steel Twister track pieces ID 64 and 65 drawn incorrectly.
- Fix: [#8585] Part of track missing on air powered vertical coaster.
- Fix: [#8588] Guest list scrolling breaks above ~2000 guests.
- Fix: [#8591] Game loop does not run at a consistent tick rate of 40 Hz.
- Fix: [#8647] Marketing campaigns check for entry fees below £1 (original bug).
- Fix: [#8653] Crash when peeps attempt to enter a ride with no vehicles.
- Fix: [#8720] Desync due to boats colliding with ghost pieces.
- Fix: [#8739] Savegame from original game crashes when cruising through map.
- Fix: [#8742] Access violation in vehicle_update_sound_params.
- Fix: [#8804] Raising water shows money effect at the bottom rather than new height.
- Fix: [#8811] Some fields in the sv6 save file not being copied correctly.
- Fix: [#8824] Invalid read in footpath_chain_ride_queue.
- Improved: [#2940] Allow mouse-dragging to set patrol area (Singleplayer only).
- Improved: [#7730] Draw extreme vertical and lateral Gs red in the ride window's graph tab.
- Improved: [#7930] Automatically create folders for custom content.
- Improved: [#7980] Show the full path of the scenario in the scenario select window.
- Improved: [#7993] Allow assigning a keyboard shortcut for opening the tile inspector.
- Improved: [#8107] Support Discord release of RCT2.
- Improved: [#8491] Highlight entrance and exit with different colours in track design previews.
- Improved: Almost completely new Hungarian translation.
- Removed: [#7929] Support for scenario text objects.
* Fix#8264: Rides and scenery placeable outside of map with ZC and Sandbox mode enabled
map_can_construct_with_clear_at first checks whether it is inside the map, and then checks gCheatsDisableClearanceChecks, making earlier checks for gCheatsDisableClearanceChecks unnecessary.
* Increase network version
This was a regression from #7435 which introduced threads and caused JNI
to misbehave and fail to load our expected classes. Provide a workaround
based on the description in https://stackoverflow.com/a/16302771 which
stores a main thread's class loader and uses that in neighbouring
threads.
The sprite_remove in Sprite.cpp tries to find itself inside the quadrant.
It does not find itself, and because the rest of the code assumes that it will always find it
The normal code tries to set the value of the next_in_quadrant so that whoever points at it, will now point at its next sprite.
But because it didn't find whoever was pointing to it, it would set the pointer to SPRITE_INDEX_NULL to its next sprite.
This would lead to cycles in the linked list
The reason that the sprite was not found is that during the entry of a ride, the position of a peep is set to LOCATION_NULL
Exiting a ride sets it back to whatever the location is of an exit.
However stopping a ride that still has people in it would go wrong, as the people are removed from the ride through ride_remove_peeps
This function was called during the PaintWindows.
The fact that this function is called during the painting is the problem, because of the tweening:
Before painting all the positions are stored (Which would at that point be the LOCATION_NULL), during the painting
the peep would be removed from the ride, setting their location to the enrance/exit
After painting is done all the positions are restored again, so the patched position is forgotten and then it would be
removing a sprite with location LOCATION_NULL and that goes wrong
The fix is to have the window update outside of paint
Enable gzip, but only for local save, as GitHub will accept
gzip-compressed files even if they don't advertise it explicitly. Update
changelog and GitHub issue template to reflect that.
- Feature: [#5993] Ride window prices can now be set via text input.
- Feature: [#6998] Guests now wait for passing vehicles before crossing railway tracks.
- Feature: [#7658] Add option to always use system file browsing window.
- Feature: [#7694] Debug option to visualize paths that the game detects as wide.
- Feature: [#7713] The virtual floor now takes land ownership rights into account.
- Feature: [#7771] Danish translation.
- Feature: [#7797, #7802, #7821, #7830] Add sprite font glyphs for Danish, Norwegian, Russian, Turkish, Catalan and Romanian.
- Feature: [#7848] Add a master volume slider to audio options screen.
- Feature: [#7868] Placing scenery while holding shift now scales appropriately with zoom levels.
- Feature: [#7882] Auto-detect Steam and GOG installations of RCT1.
- Feature: [#7885] Turkish translation.
- Fix: [#3177] Wrong keys displayed in shortcut menu.
- Fix: [#4039] No sprite font glyph for German opening quotation mark.
- Fix: [#5548] platform_get_locale_date_format is not implemented for Linux.
- Fix: [#7204] Object source filters do not work for RCT1, AA and LL.
- Fix: [#7440] Memory leak. All system memory used.
- Fix: [#7462] Guest window goes beyond the map edge on a spiral slide.
- Fix: [#7533] Screenshot is incorrectly named/file is not generated in CJK language.
- Fix: [#7628] Always-researched items can be modified in the inventory list.
- Fix: [#7643] No Money scenarios with funding set to zero.
- Fix: [#7653] Finances money spinner is too narrow for big loans.
- Fix: [#7673] Vehicle names are cut off in invention list.
- Fix: [#7674] Rides show up as random numbers in guest's ride list.
- Fix: [#7678] Crash when loading or starting a new game while having object selection window open.
- Fix: [#7683] 'Arbitrary ride type' dropdown state is shared between windows.
- Fix: [#7697] Some scenery groups in RCT1 saves are never invented.
- Fix: [#7711] Inverted Hairpin Coaster allows building invisible banked pieces.
- Fix: [#7734] Title sequence not included in macOS builds as of 0.2.0 release.
- Fix: [#7756] Steam RCT2 path not correctly checked on macOS and Linux.
- Fix: [#7765] Crash when opening ride list window on Windows Vista.
- Fix: [#7773] Once research has been completed, player is still charged for research.
- Fix: [#7786] Crash when importing a track design.
- Fix: [#7793] Duplicate private keys generated.
- Fix: [#7817] No sprite font glyph for interpunct.
- Fix: [#7823] You can build mazes in pause mode.
- Fix: [#7804] Russian ride descriptions are cut off.
- Fix: [#7872] CJK tooltips are often cut off.
- Fix: [#7895] Import of Mega Park and the RCT1 title music do not work on some RCT1 sources.
- Improved: [#7899] Timestamps in the load/save screen are now displayed using local timezone instead of GMT.
- Improved: [#7918] Better RCT2 detection if both disc and GOG/Steam versions are installed.
Note that this currently, this isn't implemented in the C++ standard
library. This means that date_order() will always return no_order,
causing this function to always return the default
DATE_FORMAT_DAY_MONTH_YEAR, as is the case before this commit too.
Once date_order() will be properly implemented in the standard library
someday, it will however start returning the right order for the current
locale, causing this function to start working as intended.
It has been reported that Windows Vista crashes in LCMapStringEx when
using LOCALE_NAME_INVARIANT even though it is documented as supported.
As a counter measure, use LOCALE_NAME_USER_DEFAULT for the time being.
While OpenRCT2 already had code to look up the Steam path on macOS and Linux, it didn't look in the correct directory. This meant that it wouldn't detect the presence of RCT2, even if the user had downloaded it via the Steam Console.
SDL_GetScancodeName doesn't actually translate the scancode to the physical key, so first we need to convert the scancode to a keycode and then turn the keycode into a string.
* Fix#7673: Vehicle names cut in invention list
The string formatting was formatting based on the size of the
pointer to the buffer, not the buffer itself, this truncated all
vehicle names to 8 characters.
* Adjust Long Vehicle Names For Vertical Scrollbar
The ellipsis in long vehicle names were being cut off by
the scrollbar. Reduced the string formatting length by
vertical scrollbar size - 1. The extra 1 is for the fact
that the second column starts + 1 from the middlepoint of the box.
On large loans in the millions (e.g. Alton Towers / BPB), the loan
amount can extend that it runs over the loan spinner widget. This change
enlarges the loan box to allow for large loans.
- Feature: [#1417] Allow saving track designs for flat rides.
- Feature: [#1675] Auto-rotate shops to face footpaths.
- Feature: [#3473] Add button in ride window's maintainance tab to refurbish the ride.
- Feature: [#6510] Ability to select edges or a row of tiles by holding down Ctrl using the land tool.
- Feature: [#7187] Option for early scenario completion.
- Feature: [#7266] Make headless instances use an interactive terminal with access to the in-game console API.
- Feature: [#7267] Leverage more historical data in Finances window.
- Feature: [#7316] Cheat to allow freezing all staff
- Feature: [#7332] Keyboard shortcuts for view path issues and cutaway view.
- Feature: [#7348] Add large half loops to the Vertical Drop Roller Coaster.
- Feature: [#7459] Allow opening and closing of parks that use no money.
- Feature: [#7579] New horizontal +/- spinner widgets to make adjusting values easier.
- Fix: [#2053] When clearance checks are disabled, a track piece ghost can remove non-ghost track pieces.
- Fix: [#2611] Some objects show (undefined string) instead of a description in Korean.
- Fix: [#3596] Saving parks, landscapes and tracks with a period in the filenames don't get their extension.
- Fix: [#5210] Default system dialog not accessible from saving landscape window.
- Fix: [#6134] Scenarios incorrectly categorised when using Polish version of RCT2.
- Fix: [#6141] CSS50.dat is never loaded.
- Fix: [#6647] Changelog window causes FPS drop.
- Fix: [#6938] Banner do not correctly capitalise non-ASCII characters.
- Fix: [#7176] Mechanics sometimes fall down from rides.
- Fix: [#7303] Visual glitch with virtual floor near map edges.
- Fix: [#7313] Loading an invalid path with openrct2 produces results different than expected.
- Fix: [#7327] Abstract scenery and stations don't get fully See-Through when hiding them (original bug).
- Fix: [#7331] Invention list in scenario editor crashes upon removing previously-enabled ride/stall entries.
- Fix: [#7341] Staff may auto-spawn on guests walking outside of paths.
- Fix: [#7354] Cut-away view does not draw tile elements that have been moved down on the list.
- Fix: [#7358] Peeps and staff entering rides still have the slope speed penalty set.
- Fix: [#7382] Opening the mini-map reverts the size of the land tool to 1x1, regardless of what was selected before.
- Fix: [#7402] Edges of neigbouring footpaths stay connected after removing a path that's underneath a ride entrance.
- Fix: [#7405] Rides can be covered by placing scenery underneath them.
- Fix: [#7418] Staff walk off paths with a connection but no adjacent path.
- Fix: [#7434] Diagonal ride segments cannot be deleted if they are isolated.
- Fix: [#7436] Only the first 32 vehicles of a train can be painted.
- Fix: [#7480] Graphs skip values of 0.
- Fix: [#7505] Game crashes when trying to make path over map edge while having clearance checks disabled.
- Fix: [#7528] In park entrance pricing tab, switching tabs happens on mouse-down instead of mouse-up
- Fix: [#7544] Starting a headless server with no arguments causes the game to freeze.
- Fix: [#7571] Hovering a ride design over scenery or tracks will give tons of money.
- Improved: [#2989] Multiplayer window now changes title when tab changes.
- Improved: [#5339] Change eyedropper icon to actual eyedropper and change cursor to crosshair.
- Improved: [#5832] Resize tile inspector automatically when selecting a tile element.
- Improved: [#6221] The scenario editor's invention list is now resizeable.
- Improved: [#7069] The arbitrary ride type selection dropdown is now sorted orthographically, and has its spinners removed.
- Improved: [#7302] Raising land near the map edge makes the affected area smaller instead of showing an 'off edge map' error.
- Improved: [#7435] Object indexing now supports multi-threading.
- Improved: [#7510] Add horizontal clipping to cut-away view options.
- Improved: [#7531] "Save track design" dropdown now stays open.
- Improved: [#7548] Ctrl-clicking with the tile inspector open now directly selects an element and its tile.
- Improved: [#7555] Allow setting the Twitch API URL, allowing custom API servers.
- Improved: [#7567] Improve the performance of loading parks and the title sequence.
- Improved: [#7577] Allow fine-tuning the virtual floor style.
- Improved: [#7608] The vehicle selection dropdown is now sorted orthographically.
- Improved: [#7613] Resizing the staff window now resizes the name and action columns too.
- Improved: [#7627] Allow scrolling up and down on spinners to change their values.
Mimic vanilla RCT2:
- If the isolated track is the last piece on the ride, delete and
set the construction mode to a straight piece. Rotate said piece
45 degrees anti-clockwise.
- If other track still exists, delete and rotate as above but
set the track type to station-platform.
- If banked, set track type to the turn that entered the previous
orientation. For example, north west banked track would continue
with a banked 45 degree turn starting facing west.
The problem was that when placing a ride ghost, some clearance checks are performed to see if nothing stands in the way, and if it does, it tries to raise the ride to a height where it's possible to place. When this happens, it removes all ghost track pieces that have already been placed, and tries at the next height. With clearance checks disabled, this check was still performed, while it should ignore clearance altogether.
Fixes#7313: Loading an invalid path with openrct2 produces results different than expected
Do not load title sequences in headless mode and prevent use of null audio mixer when ride music is stopped.
Staff placement code has been modified to only count guests who are on path tiles.
If all guests in the park are off paths, then the park entrance is used as a fallback.
Instead of breaking the loop when running into an element that's above the clip height, only skip it - the next element may still be below the clip height.
The check for the first tile could be removed entirely. The screen gets cleared every frame when the clip height flag is set already.
The reason the file dialog failed to open (on Windows at least) is that the dialog would be used to save a file, yet a folder was provided as the default path. This commit attempts to append a logical filename to the path, including an extension.
- Feature: [#2893] Object selection filters for items from RCT1, Added Attractions and Loopy Landscapes.
- Feature: [#3505] Allow up to 1024 items per scenery tab.
- Feature: [#3510] Auto-append extension if none is specified.
- Feature: [#3994] Show bottom toolbar with map tooltip (theme option).
- Feature: [#4184] Add command and cheat to alter the date.
- Feature: [#4906] Add follow sprite command to title sequences.
- Feature: [#4984] Add option to highlight path issues: full bins, vandalism & vomit.
- Feature: [#5826] Add the show_limits command to show map data counts and limits.
- Feature: [#6078] Game now converts mp.dat to SC21.SC4 (Mega Park) automatically.
- Feature: [#6125] Path can now be placed in park entrances.
- Feature: [#6181] Map generator now allows adjusting random terrain and tree placement in Simplex Noise tab.
- Feature: [#6235] Add drawing debug option for showing visuals when and where blocks of the screen are painted.
- Feature: [#6290] Arabic translation (experimental).
- Feature: [#6292] Allow building queue lines in the Scenario Editor.
- Feature: [#6295] TrueType fonts are now rendered with light font hinting by default.
- Feature: [#6307] Arrows are now shown when placing park entrances.
- Feature: [#6313] Add keyboard shortcut for toggle gridlines.
- Feature: [#6324] Add command to deselect unused objects from the object selection.
- Feature: [#6325] Allow using g1.dat from RCT Classic.
- Feature: [#6329] Render level crossings when the Miniature Railway crossed a path.
- Feature: [#6338] Virtual floor to help positioning objects vertically.
- Feature: [#6353] Show custom RCT1 scenarios in New Scenario window.
- Feature: [#6411] Add command to remove the park fence.
- Feature: [#6414] Raise maximum launch speed of the Corkscrew RC back to 96 km/h (for RCT1 parity).
- Feature: [#6433] Turn 'unlock all prices' into a regular (non-cheat, persistent) option.
- Feature: [#6516] Ability to search by filename in the object selection window.
- Feature: [#6530] Land rights tool no longer blocks when a tile is not for purchase.
- Feature: [#6568] Add smooth nearest neighbour scaling.
- Feature: [#6651, #6658] Integrate Discord Rich Presence.
- Feature: [#6709] The New Ride window now shows available vehicles for a ride type.
- Feature: [#6731] Object indexing progress is now reported via command line output.
- Feature: [#6779] On-ride photo segment for Splash Boats.
- Feature: [#6838] Ability to auto-pause server when no clients are connected.
- Feature: [#7031] Better support for displaced ride entrances and exits.
- Feature: Add search box to track design window.
- Feature: Allow using object files from RCT Classic.
- Feature: Title sequences now testable in-game.
- Feature: Vehicles with matching capabilities are now always switchable.
- Feature: Add search box to track design window.
- Feature: Add load scenario command to title sequences.
- Fix: [#816] In the map window, there are more peeps flickering than there are selected (original bug).
- Fix: [#996, #2589, #2875] Viewport scrolling no longer shakes or gets stuck.
- Fix: [#1185] Close button colour of prompt windows does not match.
- Fix: [#1833, #4937, #6138] 'Too low!' warning when building rides and shops on the lowest land level (original bug).
- Fix: [#2254] Edge scrolling horizontally now has the same speed as vertical edge scrolling.
- Fix: [#2607] Rain rendered incorrectly in additional viewport.
- Fix: [#3171] Guests entering from the corner of the tile in Amity Airfield (original bug).
- Fix: [#3330] Current number of passengers overflows when over 255 (original bug).
- Fix: [#4760] Asia - Great Wall of China and South America - Rio Carnival have incorrect guest entry points (original bug).
- Fix: [#4953, #6277] Unable to advertise to master servers over IPv6.
- Fix: [#4991] Inverted helices can be built on the Lay Down RC, but are not drawn.
- Fix: [#5190] Cannot build Wild Mouse - Flying Dutchman Gold Mine.
- Fix: [#5224] Multiplayer window is not closed when server shuts down.
- Fix: [#5228] Top toolbar disappears when opening SC4 file.
- Fix: [#5261] Deleting a banner sign after copy/pasting it will crash the game.
- Fix: [#5398] Attempting to place Mini Maze.TD4 results in weird behaviour and crashes.
- Fix: [#5417] Hacked Crooked House tracked rides do not dispatch vehicles.
- Fix: [#5445] Patrol area not imported from RCT1 saves and scenarios.
- Fix: [#5585] Inconsistent zooming with mouse wheel.
- Fix: [#5609] Vehicle switching may cause '0 cars per train' to be set.
- Fix: [#5636] Pausing the game shows mute button as active.
- Fix: [#5741] Land rights indicators disappear when switching views.
- Fix: [#5761] Mini coaster doesn't appear despite being selected.
- Fix: [#5788] Empty scenario names cause invisible entries in scenario list.
- Fix: [#5809] Support Steam RCT1 file layout when loading CSG images.
- Fix: [#5838] Crash when saving very large track designs.
- Fix: [#5901] Placing peep spawn not synced across multiplayer.
- Fix: [#6101] Rides remain in ride list window briefly after demolition.
- Fix: [#6114] Crash when using a non-LL CSG1.DAT.
- Fix: [#6115] Random title screen music not random on launch.
- Fix: [#6118, #6245, #6366] Tracked animated vehicles not animating.
- Fix: [#6129] Guest List summary not updating after a ride rename.
- Fix: [#6133] Construction rights not shown after selecting buy mode.
- Fix: [#6188] Viewports not being clipped properly when zoomed out in OpenGL mode.
- Fix: [#6193] All rings in Space Rings use the same secondary colour.
- Fix: [#6196, #6223] Guest's energy underflows and never decreases.
- Fix: [#6198] You cannot cancel RCT1 directory selection.
- Fix: [#6199] Inverted Hairpin Coaster vehicle tab is not centred.
- Fix: [#6202] Guests can break occupied benches (original bug).
- Fix: [#6251] Splash Boats renders flat-to-25-degree pieces in tunnels incorrectly.
- Fix: [#6261, #6344, #6520] Broken pathfinding after removing park entrances with the tile inspector.
- Fix: [#6271] Wrong booster speed tooltip text.
- Fix: [#6293] Restored interface sounds while gameplay is paused.
- Fix: [#6301] Track list freezes after deleting track in Track Manager.
- Fix: [#6308] Cannot create title sequence if title sequences folder does not exist.
- Fix: [#6314] Imported SV4 files do not mark their scenarios as completed.
- Fix: [#6318] Cannot sack staff that have not been placed.
- Fix: [#6320] Crash when CSS1.DAT is absent.
- Fix: [#6331] Scenery costs nothing in track designs.
- Fix: [#6358] HTTP requests can point to invalid URL string.
- Fix: [#6360] Off-by-one filenames when exporting all sprites.
- Fix: [#6388] Construction rights tool erroneously enabled in some RCT1 scenarios even when no rights are available.
- Fix: [#6413] Maze previews only showing scenery.
- Fix: [#6423] Importing parks containing names with Polish characters.
- Fix: [#6423] Polish characters now correctly drawn when using the sprite font.
- Fix: [#6445] Guests' favourite ride improperly set when importing from RCT1 or AA.
- Fix: [#6452] Scenario text cut off when switching between 32 and 64-bit builds.
- Fix: [#6460] Crash when reading corrupt object files.
- Fix: [#6481] Can't take screenshots of parks with colons in the name.
- Fix: [#6500] Failure to load resources when config file is missing.
- Fix: [#6547] The server log is not logged if the server name contains CJK.
- Fix: [#6593] Cannot hire entertainers when default scenery groups are not selected (original bug).
- Fix: [#6657] Guest list is missing tracking icon after reopening.
- Fix: [#6803] Symbolic links to directories are not descended by FileScanner.
- Fix: [#6830] Crash when using mountain tool due to ride with no ride entry.
- Fix: [#6833] Shops in corrupted files not imported correctly.
- Fix: [#6846] Zoom level in some ride overview windows was erroneously set too high.
- Fix: [#6904] Manually added multiplayer servers not saved.
- Fix: [#7003] Building sloped paths through flat paths with clearance checks off causes glitches.
- Fix: [#7011] Swinging and bobsleigh cars going backwards swing in the wrong direction (original bug).
- Fix: [#7042, #7077] Paths sometimes disconnect when building them with clearance checks off.
- Fix: [#7125] No entry signs not correctly handled in pathfinding.
- Fix: [#7223] Vehicle mass not correctly recalculated when using remove all guests cheat.
- Fix: [#7229] Exploding guests cheat causes rides to get stuck and freezes game.
- Fix: [#7295] peep_should_go_on_ride_again() checked balloon colour instead of toilet need.
- Fix: [#7301] Sprite compiler dithering checks transparency of wrong pixel.
- Fix: Infinite loop when removing scenery elements with >127 base height.
- Fix: Ghosting of transparent map elements when the viewport is moved in OpenGL mode.
- Fix: Clear IME buffer after committing composed text.
- Fix: RCT1 mazes with wooden fences not imported correctly.
- Fix: Title sequence editor now gracefully fails to preview a title sequence and lets the user know with an error message.
- Fix: When preset title sequence fails to load, the preset will forcibly be changed to the first sequence to successfully load.
- Fix: Remove consecutive thoughts about a ride being demolished.
- Fix: Water raft vehicles stop spinning when going up slopes.
- Fix: Incorrect spin is applied to coasters on S-bends and other turns.
- Improved: [#5962] Use AVX2 instruction set where supported, resulting in a performance boost.
- Improved: [#5964] Use SSE 4.1 instruction set where supported, resulting in a performance boost.
- Improved: [#6186] Transparent menu items now draw properly in OpenGL mode.
- Improved: [#6218] Speed up game start up time by saving scenario index to file.
- Improved: [#6242] Prevent scenery aging and grass growth causing tile invalidation unless necessary - slight performance boost.
- Improved: [#6423] Polish is now rendered using the sprite font, rather than TTF.
- Improved: [#6746] Draw friction wheels instead of chain lift on Looping Roller Coaster stations.
- Improved: Load/save window now refreshes list if native file dialog is closed/cancelled.
- Improved: Major translation updates for Japanese and Polish.
- Improved: Added 24x24, 48x48, and 96x96 icon resolutions.
- Technical: [#6384] On macOS, address NSFileHandlingPanel deprecation by using NSModalResponse instead.
- Technical: [#6772] RCT2 interop removed.
Prior to the previous commit, signs could be duplicated by pasting them using the tile inspector, which results in some funky behaviour. A duplicated sign refers to the same banner index (which in turn refers to the same user string ID), making the player unable to modify it. Deleting it would previously even crash the game.
This commit looks for such signs when loading a scenario, and attempts to fix them, by creating a new banner entry (and user string if one is used).
This fix will make swinging rides like the suspended swinging coaster and the bobsleigh coaster back to the outside of corners when moving backwards (For example during a rollback). This was an original bug in RCT2.
The game will now check for the number of entries in CSG1.DAT. If it's too few, it will now no longer try using its sprites, but print out a warning instead.
Added new smart follow variable to window to more intuitively follow
sprites that may not be directly followable at all times.
Follow sprite is now canceled when dragging the screen but not
scrolling. This is only relevant when testing title sequences in game.
Select sprite button is now disabled in the title menu.
Sprites are now identified based on their name. Excess identification
information is not given as it'd clutter up the screen and is not
necissary with the viewbox in the command editor.
New command goes by LOADSC in script files and in the enumeration.
Scenarios are stored using the internal also used for localisation.
Scenarios selected can only be scenarios to originally come with one of
the games or expansions.
Modified Scenario Select window to have a mode just for title editor
scenario selection.
This feature existed in the original RCT1/2 games but was not present in
the latest development commit.
The original shortcut for this key was '7', placing it between the
"Invisible people toggle" (6) shortcut and the "Height marks on land
toggle" (8). This commit preserves as much as possible, using
placeholder comments that signify the relevant values which this
feature actually uses where this is not possible.
The guest tracking icon is hidden on the guest list if it's in
PAGE_SUMMARISED mode. Closing then reopening the window reset it back to
INDIVIDUAL mode but did not restore the icon state.
Shaking while at the edge of the map has been completely eliminated. In
order to do this, comparison with tile height was also removed which
fixed a few outlier cases.
The main cause was viewport axis were only being set if it's respective
isometric axis was at the boundary, instead of either isometric axis.
Viewport no longer gets stuck which was related to the shaking in the
end. (#2875)
Refactored viewport_update_position. I moved
viewport_set_underground_flag above the bounds checking function since
it had no relation to it. (#996, #2589)
Scrolling on the map edge with arrow keys or mouse edge will now go the
same speed in both directions. (#2254)
Added changelog entry.
Land rights tool no longer cares if part of the available land is
unavailable for purchase. It will not even through an error when none of
the tiles are available. Just like other tools.
Added a changelog entry.
This increments the network version.
* Change how current title sequence is handled. It can either be
previewing a title sequence, or playing the preset.
* LoadMM and LoadRCT1 now save when script is saved.
* No more infinite failing to load loops.
* No more crashing when attempting to display "no save selected" in
title editor.
* Title editor now gracefully fails to preview a title sequence and lets
the user know with a context error.
* When preset title sequence fails to load, the preset will forcibly be
changed to the first sequence to successfully load.
Added changelog entries for last two items.
Title sequences can now be played back in-game, allowing for much easier
editing.
Improved title sequence playback in general. Clicking play while on a
different title sequence will play the new one. Clicking stop will make
the title screen go back to the config title sequence. And the closing
the title sequence window will also make the game go back to the config
title sequence, and reload the sequence if it was modified.
Changes made to title sequences in-game are now correctly loaded in the
title screen.
Starting a title sequence within the editor will now always reset it
even if it's the current playing sequence. (Not for playing in the
editor though).
Get Location in title sequence command editor now has 100% accuracy
compared to before
where it would usually get some offset value.
Added `get_map_coordinates_from_pos_window` which will allow getting the
viewport coordinates of a specific window even if the input coordinates
are under another window. This has use with getting 2D positions from
the main window without the other windows getting in the way.
Options window will now always specify the config title sequence in the
dropdown and not the current title sequence.
Made a global variable `gLoadKeepWindowsOpen`, in game.h to keep windows
open when loading a park. When loading a title sequence park in-game.
The sequence player will force-close all park-specific windows ahead of
time.
Skipping while testing title sequences no longer needs to reload the
park if the current playback position is already before the target
position and ahead of the load position.
Added changelog entry.
Fixes issue #6481 where taking a screenshot of a park with a colon in
its name on Windows was causing the screenshot data to get written as an
alternate data stream.
This patch replaces any colons with hyphens in screenshot filenames on
Windows.
Can now update park entrance path by placing path over the middle tile.
Updating the path costs money just like normally replacing a path.
Updating the path type can only be done in sandbox mode or in the
scenario editor.
Fixes Splash Boats 25deg-down-to-flat tunnel rendering. This is based on
flat-to-25deg-up (but opposite).
Wrap Splash Boats fix in an ifdef for TestPaint.
Check the gParkEntrance locations after loading from file and clear those locations for which there is no longer a park entrance map element.
Resolves path finding problems in parks caused, for example, be deleting a park entrance using the tile inspector.
Fixes#6261, #6344, #6520.
`ScenarioFileIndex`'s `Serialize` and `Deserialize` now read and write each
individual value of a `scenario_index_entry` instead of the entire struct
at once. Thus the difference in pointer sizes of `highscore` on different
architecture builds will not cause issues with `scenarios.idx`.
Issue caused by using max where min was intended.
This also reverts an earlier change in capping the energy target, since it seems to max out at 255, unlike energy itself.
The scenario repository did not correctly handle custom RCT1 scenarios.
They were not listed, but if they existed, an empty entry would appear in the scenario list.
This fixes both issues, and also prints a warning message, should this ever happen again.
Add drawing debug option for showing visuals when and where blocks of the screen are painted.
This will currently only work in hardware display drawing engine.
The Space Rings attraction used the secondary colour of the first ring no matter if the colours are set to all the same or different per ring. Now it uses the right colour for each ring.
This is an original bug likely introduced by trying to save processing
time by assuming that since the display list can not be drawn that it
can stop processing. But as this loop also handles reseting flashing
peeps it will leave peeps un processed
- Feature: [#5815] Add cheat to ignore research status and access rides/scenery not yet invented.
- Feature: [#5857] Keyboard shortcut for clear scenery.
- Feature: [#5877] Allow up to 16 stations to be synchronised
- Feature: [#5970] The Bobsleigh Roller Coaster now supports on-ride photos.
- Feature: [#5991] Allow all tracked rides that can be tested without guests to the Track Designer
- Fix: [#2127, #2229, #5586] Mountain tool cost calculation
- Fix: [#3589] Crash due to invalid footpathEntry in path_paint
- Fix: [#3852] Constructing path not clearing scenery on server.
- Fix: [#4455] Crash in window_sign_invalidate due to original bug
- Fix: [#4715] Fix OpenGL rendering of water when zoomed. See #5890.
- Fix: [#4931] Crash in path_paint - footpathentry was null
- Fix: [#5629] Issue with tower ride modes approach to station - incorrect sum caused sawtooth in velocity
- Fix: [#5768] Prevent loading non-existent title sequences.
- Fix: [#5858] Crash when using custom ride with no colour presets.
- Fix: [#5865] Ride preview flickering on uneven terrain or mid air.
- Fix: [#5872] Incorrect OpenGL rendering of masked sprites
- Fix: [#5880] Leaving bumper cars without building causes assertion.
- Fix: [#5890] Fix zoomed OpenGL rendering of special sprites with primary and secondary colours.
- Fix: [#5912] Negative queue when moving entrance in paused state.
- Fix: [#5920] Placing guest spawn doesn't do anything every 3rd click
- Fix: [#5939] Crash when importing 'Six Flags Santa Fe'.
- Fix: [#5977] Custom music files not showing up in music list
- Fix: [#5981] Ride list doesn't update after using quick demolish.
- Fix: [#5984] Allow socket binding to same port after crash
- Fix: [#5998] Staff not getting paid / no loan interest.
- Fix: [#6026] 'Select ride to advertise' dropdown does not display all items.
- Fix: [#6052] Unable to place entrance/exit on certain ride types.
- Fix: [#6071] Quick demolish can delete protected ride.
- Fix: [#6111] Mute button always visible in editor.
- Fix: [#6113] Track preview shows incorrect highest drop height.
- Improved: [#2223] Change mountain tool to ignore higher surrounding tiles.
- Improved: [#4301] Leading and trailing whitespace in player name is now removed.
- Improved: [#5859] OpenGL rendering performance
- Improved: [#5863] Switching drawing engines no longer requires the application to restart.
- Improved: [#6003] Doors placed on tracks will now work with all vehicles
- Improved: [#6037] Autosaves are now stored in a subfolder
- Improved: The land tool buttons can now be held down to increase/decrease size.
- Improved: Dropdowns longer than 32 items overflow into columns.
- Improved: Ride Type option in ride window is now a dropdown.
- Improved: "About OpenRCT2" window redesigned, now contains OpenRCT2 info and access to changelog
Mistake made due to a missunderstanding of how the software renderer works. At this point in the software renderer the primary and secondary colours are already calculated into the palette so can be ignored. In opengl the colours still need to be passed to the command queue. Fixes#4715 as well.
Update changelog
- Feature: [#1399 (partial), #5177] Add window that displays any missing/corrupt objects when loading a park
- Feature: [#5056] Add cheat to own all land.
- Feature: [#5133] Add option to display guest expenditure (as seen in RCTC).
- Feature: [#5196] Add cheat to disable ride ageing.
- Feature: [#5504] Group vehicles into ride groups
- Feature: [#5576] Add a persistent 'display real names of guests' setting.
- Feature: [#5611] Add support for Android
- Feature: [#5706] Add support for OpenBSD
- Feature: OpenRCT2 now starts up on the display it was last shown on.
- Feature: Park entrance fee can now be set to amounts up to £200.
- Improved: Construction rights can now be placed on park entrances.
- Improved: Mouse can now be dragged to select scenery when saving track designs
- Fix: [#259] Money making glitch involving swamps (original bug)
- Fix: [#441] Construction rights over entrance path erased (original bug)
- Fix: [#578] Ride ghosts show up in ride list during construction (original bug)
- Fix: [#597] 'Finish 5 roller coasters' goal not properly checked (original bug)
- Fix: [#667] Incorrect banner limit calculation (original bug)
- Fix: [#739] Crocodile Ride (Log Flume) never allows more than five boats (original bug)
- Fix: [#837] Can't move windows on title screen to where the toolbar would be (original bug)
- Fix: [#1705] Time Twister's Medieval entrance has incorrect scrolling (original bug)
- Fix: [#3178, #5456] Paths with non-ASCII characters not handled properly on macOS.
- Fix: [#3346] Crash when extra long train breaks down at the back
- Fix: [#3479] Building in pause mode creates too many floating numbers, crashing the game
- Fix: [#3565] Multiplayer server crash
- Fix: [#3681] Steel Twister rollercoaster always shows all track designs
- Fix: [#3846, #5749] Crash when testing coaster with a diagonal lift in block brake mode
- Fix: [#4054] Sorting rides by track type: Misleading research messages
- Fix: [#4055] Sort rides by track type: Sorting rule is not really clear (inconsistent?)
- Fix: [#4512] Invisible map edge tiles corrupted
- Fix: [#5009] Ride rating calculations can overflow
- Fix: [#5253] RCT1 park value conversion factor too high
- Fix: [#5400] New Ride window does not focus properly on newly invented ride.
- Fix: [#5489] Sprite index crash for car view on car ride.
- Fix: [#5730] Unable to uncheck 'No money' in the Scenario Editor.
- Fix: [#5750] Game freezes when ride queue linked list is corrupted.
- Fix: [#5819] Vertical multi-dimension coaster tunnels drawn incorrectly
- Fix: Non-invented vehicles can be used via track designs in select-by-track-type mode.
- Fix: Track components added by OpenRCT2 are now usable in older scenarios.
- Technical: [#5047] Add ride ratings tests
- Technical: [#5458] Begin offering headless build with reduced compile- and run-time dependencies
- Technical: [#5755] Title sequence wait periods use milliseconds
- Technical: Fix many desync sources
Add more defensive checks for when there are no objects loaded.
- Do not open footpath window if there are no footpath objects loaded.
- Prevent crash in scenery window if no scenery groups loaded.
Implement 'missing objects' window
Basic implementation of 'bad objects' window
Add new object_load_error.c
Add object_load_error.c
Faffing about
String stuff
Stuff
Get window basically displaying
Proper col header for object
Display object types
Display file name and explanatory message
Probably about time I added myself to the dev list
Cleanup and comments
Make bad object window work with SC6
Fix whitespace, string IDs, flip core function sense
Fix spacing in string_ids.h
Fix string ID snafu
Fix HasNoInvalidObjects() sense
Attempt to refactor this to pass data properly
Move typedefs to separate header
Fix up signatures
Add park_load_result_types.h
Clean up includes and remnants of prev implementation
Split duplication into function, free invalid entries list on close
Use pointer for object_validity_result param
Fixup string IDs
Use LoadObject() directly
Use dependency injection, fix string termination
Xcode fix, make helper function static
Fix buffer overrun and memory leak
Use SDL for clipboard functionality
Fix function & variable declarations
Rework editor_read_s6() to use new park load result type
Update changelog for #5624
[ci skip]
Fix mem leak, function signature and whitespace
This fixes the following things:
- The objective was not available when using money (despite it being used on such scenarios in RCT1)
- The scenario editor set the 'partially finished flag' on every single ride
- The scenario editor did not check if there were five finished roller coasters
- When checking the goal, there was no check if the ride was a roller coaster
- When checking the goal, there was no check if the ride was one of the roller coasters to be completed
* Add ride groups
* Convert ride groups to C++
* Fix linking and crashes in Xcode
* Comment out .field syntax to make Visual Studio happy
* Fix alignment, fix changelog, cleanup
* Properly save ride group index in the ride object repository and bump its version
* Fix fallback behaviour when the ride entry is not available or not invented
* Fix include
* Rename RideGroup to RideGroupManager, add const, cleanup
* Break after finding matching ride group
Implement "Own all land" cheat into cheat window
Restore only valid peep spawn points
Code improvements
Update to use PEEP_SPAWN / PARK_ENTRANCE defines
- Feature: [#1730] Keyboard shortcuts for track construction.
- Feature: [#2060, #5282] Heightmap loader
- Feature: [#5110] The tile inspector can now be used in multiplayer.
- Feature: [#5305] Add scenery eye dropper tool.
- Feature: [#5370] Ride operating mode can be set from the console.
- Feature: [#5415] Add mute toolbar button (as seen in RCT1 and Locomotion).
- Improved: [#5254] Scenario option changes are now synchronised over multiplayer.
- Improved: [#3288] Added server description and greeting textboxes to the start server menu.
- Improved: [#3502] Track previews display at higher zoom level for large layouts.
- Improved: [#5055] Implement 'quick demolish' for rides.
- Improved: [#5137] Removing all guests no longer closes the rides and removes the vehicles.
- Improved: [#5163] Minor tile inspector improvements and fixes.
- Improved: [#5222] Add Catalan language.
- Improved: [#5351] Giga Coaster and Steel Twister RC boosters now use the correct sprites.
- Improved: Looping RC and Corkscrew RC now use booster sprites from RCT1's CSG1.DAT if available.
- Improved: Scenario options are now synced in multiplayer.
- Improved: Remove duplicate ride penalty for closed rides.
- Improved: Make shortcut keys window larger and resizable.
- Removed: known_issues.txt no longer used, check issue tracker on GitHub.
- Fix: [#1992] Felicity Anderson Cheat can crash the game, as well as blocking queues.
- Fix: [#4493] Provide tooltip for disabled price field.
- Fix: [#4689] Object selection tabs sometimes flicker.
- Fix: [#4913] Server greeting displaying local setting.
- Fix: [#4972] Map window not updated properly when shrinking map from Map Generation window.
- Fix: [#5004] Peeps in parks imported from RCT1 show abnormalities.
- Fix: [#5014] Research not imported from RCT1 correctly.
- Fix: [#5032] Booster speed is not saved in TD6.
- Fix: [#5140] Headless server should save default users.json.
- Fix: [#5150] --openrct-data-path sets user data path instead of OpenRCT2 data path.
- Fix: [#5169] Parks containing packed objects fail to open.
- Fix: [#5199] "Force a breakdown" debugging tool isn't hidden in multiplayer.
- Fix: [#5188] Clicking on a Magic Carpet doesn't open the ride window.
- Fix: [#5218] Scale RCT1 park value objectives.
- Fix: [#5219] Game crashes when opening 'misc' tab in options.
- Fix: [#5238] RCT1 import: Rides are initially free when placing them.
- Fix: [#5252] Correct typo in Conger Eel Coaster description.
- Fix: [#5265] Queue line TVs not detected properly.
- Fix: [#5271] Keyboard shortcuts window isn't large enough (for some languages).
- Fix: [#5284] Mechanic is called to fix a ride that's outside his patrol area.
- Fix: [#5285] Intro always plays even if play_intro = false.
- Fix: [#5299] Scenario editor crash when placing peep spawn.
- Fix: [#5318] Using the bulldozer tool on under-construction paths results in unlimited free money.
- Fix: [#5325] Game crashes if encountering an invalid ride type during research.
- Fix: [#5345] Correct typos in descriptions for Top Spin and Splash Boats.
- Fix: [#5350] Steel Twister RC and Giga Coaster boosters are underpowered, Junior Roller Coaster boosters overpowered compared to RCTC.
- Fix: [#5357] "Assertion failed!" after guest with name 'Emma Garrell' exits/enters ride.
- Fix: Walls do not import from RCT1 correctly in pause mode.
- Fix: Extraneous window tabs show up on MacOS 10.12.
- Fix: Potential for integer overflow in ride length.
- Fix: Vehicles erroneously removed when removing all guests.
- Technical: INI configuration file now case-insensitive.
- Technical: Remove version build from msbuild & NSIS.
- Feature: [#3355] Allow loading of parks from URLs.
- Feature: [#4673] Add paint Z clipping.
- Feature: [#4901] Allow entertainers' costume changes even in absence of required scenery.
- Feature: [#4916] FreeBSD support.
- Feature: [#4963] Add boosters (from RCT1 and RCTC).
- Feature: [#5113] Entertainers are now hired with a random costume.
- Improved: [#4847] Guest / staff pathfinding.
- Improved: [#4938] Checksum calculations speeded up.
- Improved: [#5007] Vehicles and functioning rides are now imported when loading SC4 / SV4 parks.
- Improved: Guests and staff are now imported when loading SC4 / SV4 parks.
- Fix: [#4571] Only start autosave timer after update or game command.
- Fix: [#4584] Junior Coaster diagonal flat-to-steep slopes not drawn.
- Fix: [#4929] Changing TTF language crashes game.
- Fix: [#4944] Game crashes upon selecting objects in scenario editor.
- Fix: [#4951] Scenarios are not recorded as completed from a saved game.
- Fix: [#4968] Completing a scenario does not save the name that is entered.
- Fix: [#4996] Objects unloaded after loading landscape.
- Fix: [#5003] Able to remove entrance/exit of unedittable rides (such as in Volcania).
- Fix: [#5096] Failure to open parks with out of bounds sprite coordinates.
- Fix: [#5114] Some entertainer costumes never select-able.
This is the first fully implemented version of OpenRCT2. RCT2.EXE is no
longer required.
- Feature: Ability to disable rendering of weather effects and gloom
- Feature: New view option: "See-Through Paths"
- Feature: Add cheat to reset date.
- Feature: Add OpenGL drawing engine.
- Feature: Implementation of the user-defined currency
- Feature: Extended tile inspector.
- Feature: Add ride console command for diagnostics and changing vehicle
type.
- Feature: Allow selecting corners when using the mountain tool.
- Feature: Allow setting ownership of map edges.
- Feature: Allow up to 255 cars per train.
- Feature: Importing SV4 and SC4 files with rides.
- Feature: Filter Object Selection Window by "Selected only" and
"Non-selected only"
- Feature: Allow raising terrain to 64 in-game units.
- Feature: Assymmetric-key-based authorisation and assignment storage.
- Feature: Add Norwegian translation.
- Feature: Add cheat to disable littering.
- Feature: Add Cheat to disable plant aging.
- Feature: Add Cheat that allows any track piece to use a chain lift.
- Feature: Add Console command to set vehicle friction.
- Feature: Add console command to set scenario initial cash.
- Feature: Objects are scanned from the user directory as well as the
RCT2 directory.
- Feature: Objects directory is scanned recursively.
- Feature: Optionally zoom in towards the cursor rather than the screen
centre.
- Change: The maximum height of Junior Roller Coasters is now 14 units,
like it was in RCT1.
- Improved: Pathfinding algorithm.
- Improved: Performance and reliability of loading objects.
- Improved: Screenshots are now saved with the name of the park and the
current date and time.
- Improved: More accurate frame rate calculation
- Improved: In-game file dialog now shows more formats (sv6, sc6, sv4,
etc.)
- Improved: Joining multiplayer will not redownload custom objects
- Removed: BMP screenshots.
- Removed: Intamin and Phoenix easter eggs.
- Fix: [#933] On-ride photo price sometimes gets reset to £2 when using
'same price in whole park' (original bug).
- Fix: [#1038] Guest List is out of order.
- Fix: [#1238] Track place window does not fully adjust to custom colour
scheme.
- Fix: [#2042] Guests entering queues are immediately annoyed when many
entertainers are around (original bug).
- Fix: [#2081] Game hangs when track has infinite loop.
- Fix: [#2754] Dragging scrollview fails when scaled.
- Fix: [#3210] Scenery window scrolls too far.
- Fix: [#3282] Launched Freefall ride ratings are fixed for Downward
Launch (original bug).
- Fix: [#3307] Ride music and sound has degraded since RCT2.
- Fix: [#3344] Build new ride window can be opened in scenario editor.
- Fix: [#3347] Ride windows are auto-positioned below the HUD when using
RCT1 lights.
- Fix: [#3352] Assertion triggered while fixing surface tiles.
- Fix: [#3361] Missing Twister coaster piece.
- Fix: [#3418] Launched freefall restraints are drawn incorrectly when
up (original bug).
- Fix: [#3451] Renaming staff is a guest command.
- Fix: [#3635] Inspecting sidewalk path crashes game.
- Fix: [#3735] Advertisement campaign window bug.
- Fix: [#3771] Crash when kicking player in multiplayer.
- Fix: [#3824] Segfault when passing invalid arguments to ride set type.
- Fix: [#3858] Tooltip shown when hovering over title logo.
- Fix: [#3915] Restore horizontal and vertical scrollbar behaviour from
RCT2 when clicking on one of the scrollbars.
- Fix: Lay-down Roller Coasters from RCT1 saves are imported with an
incorrect vehicle type (not reported).
- Fix: High lateral G-forces penalty applied too early (not reported).
- Technical: Multiplayer groups are now stored in JSON format.
- Technical: MinGW builds dropped support for Windows XP
- With this change screenshot file names have the following pattern:
save file name + + YYYY-MM-DD hh-mm-ss + .png
- To get the correct date and time the method platform_get_time and platform_get_date are rewritten and to a version for UTC and a version for local time. This change gave the opportunity to simplify the code generating file names for autosaves.
- SOUND_WINDOW_OPEN is now the new "shutter" sound when taking screenshot.
- Omit appending the tag on to the version string if the tag is a version, e.g. v0.0.4.
- Only push tags, develop branch or specific push branches to OpenRCT2.org