Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #9970: Wait for quarter load fails #9987

Merged
merged 1 commit into from
Sep 28, 2019
Merged

Conversation

aw20368
Copy link
Contributor

@aw20368 aw20368 commented Sep 14, 2019

Two commits:

  • First commit only fixes the bug. Brings behaviour in line with vanilla.
  • Second commit contains a refactor. This change will make rides will actually wait for >= 25% load (described in Wait for quarter load fails #9970), unlike vanilla.

Will squash if both commits approved.
Assuming network version bump + changelog entry (can repro in v0.0.5).

src/openrct2/ride/Vehicle.cpp Outdated Show resolved Hide resolved
@Gymnasiast
Copy link
Member

I have decided to cherry-pick the fix while we sort out the refactor. Could you rebase this PR?

@aw20368 aw20368 force-pushed the fix/9970 branch 2 times, most recently from 004dd80 to 3cb2644 Compare September 24, 2019 01:14
@aw20368
Copy link
Contributor Author

aw20368 commented Sep 24, 2019

Done. Rebased and addressed review.

Copy link
Contributor

@duncanspumpkin duncanspumpkin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. What a pain that cs decided that 0 would be a quarter and 4 would be any load. Would make it more sensible if it was 0 for any load and 1 for a quarter.

@aw20368
Copy link
Contributor Author

aw20368 commented Sep 24, 2019

Does the refactor need another network version bump? It'll change when a train can leave (by a little bit).

@ZehMatt ZehMatt added the network version Network version needs updating - double check before merging! label Sep 24, 2019
@ZehMatt
Copy link
Member

ZehMatt commented Sep 24, 2019

If it changes the mechanics then it should be done or the game will diverge during multiplayer if you have two different versions.

Refactor code for vehicles waiting for a specific load level.
Original code rounded the target load down, changed to round up.
@Gymnasiast Gymnasiast dismissed ZehMatt’s stale review September 28, 2019 18:50

Author has made the changes requested (taking out doubles)

@Gymnasiast Gymnasiast merged commit ff1698b into OpenRCT2:develop Sep 28, 2019
janisozaur added a commit that referenced this pull request Oct 28, 2019
- Feature: [#9285] Remember current group in scenario list window.
- Feature: [#9918] Increase image list capacity by about 100k units.
- Change: [#1349] Increase the number of ride music played simultaneously from 2 to 32.
- Fix: [#4927] Giant screenshot cut off at bottom and top.
- Fix: [#7572] Queue paths connect to regular paths through fences.
- Fix: [#7690] Problem with guests freezing on certain tiles of path.
- Fix: [#7883] Headless server log is stored incorrectly if server name contains CJK in Ubuntu
- Fix: [#8136] Excessive lateral G penalty is too excessive.
- Fix: [#8584] Duck spawning function does not check tiles with x or y coordinate of 0..64 (Original bug)
- Fix: [#9179] Crash when modifying a ride occasionally.
- Fix: [#9533] Door sounds not playing.
- Fix: [#9574] Text overflow in scenario objective window when using CJK languages.
- Fix: [#9603] Don't render audio when master volume is turned off.
- Fix: [#9625] Show correct cost in scenery selection.
- Fix: [#9669] The tile inspector shortcut key does not work with debugging tools disabled.
- Fix: [#9675] Guest entry point limit can be bypassed in scenario editor.
- Fix: [#9683] Cannot raise water level if part of the tool's area of effect is off of the map.
- Fix: [#9684] Entering custom size for water/land tool allows confirmation with main enter key, but not numpad enter key.
- Fix: [#9690] The keyboard shortcut for rotating the game view can be set to Enter or KP Enter, but not both.
- Fix: [#9717] Scroll bars do not render correctly when using OpenGL renderer.
- Fix: [#9729] Peeps do not take into account height difference when deciding to pathfind to a ride entrance (original bug).
- Fix: [#9902] Doors/Portcullis do not check to make sure doors are open causing double opens.
- Fix: [#9926] Africa - Oasis park has wrong peep spawn (original bug).
- Fix: [#9953] Crash when hacked rides attempt to find the closest mechanic.
- Fix: [#9955] Resizing map in while pause mode does not work and may result in freezes.
- Fix: [#9957] When using 'no money' cheat, guests complain of running out of cash.
- Fix: [#9970] Wait for quarter load fails.
- Fix: [#9994] Game action tick collision during server connect and map load.
- Fix: [#10017] Ghost elements influencing ride excitement.
- Fix: [#10036] Do not allocate large chunks of memory for save file classification.
- Fix: [#10106] Ride circuits should not be used for modes that do not support it.
- Fix: [#10149] Desync in headless mode with rides that create smoke particles.
- Improved: [#9466] Add the rain weather effect to the OpenGL renderer.
- Improved: [#9987] Minimum load rounding.
- Improved: [#10125] Better support for high DPI screens.
XplosiveLugnut pushed a commit to XplosiveLugnut/OpenRCT2 that referenced this pull request Apr 27, 2020
Refactor code for vehicles waiting for a specific load level.
Original code rounded the target load down, changed to round up.
XplosiveLugnut pushed a commit to XplosiveLugnut/OpenRCT2 that referenced this pull request Apr 27, 2020
- Feature: [OpenRCT2#9285] Remember current group in scenario list window.
- Feature: [OpenRCT2#9918] Increase image list capacity by about 100k units.
- Change: [OpenRCT2#1349] Increase the number of ride music played simultaneously from 2 to 32.
- Fix: [OpenRCT2#4927] Giant screenshot cut off at bottom and top.
- Fix: [OpenRCT2#7572] Queue paths connect to regular paths through fences.
- Fix: [OpenRCT2#7690] Problem with guests freezing on certain tiles of path.
- Fix: [OpenRCT2#7883] Headless server log is stored incorrectly if server name contains CJK in Ubuntu
- Fix: [OpenRCT2#8136] Excessive lateral G penalty is too excessive.
- Fix: [OpenRCT2#8584] Duck spawning function does not check tiles with x or y coordinate of 0..64 (Original bug)
- Fix: [OpenRCT2#9179] Crash when modifying a ride occasionally.
- Fix: [OpenRCT2#9533] Door sounds not playing.
- Fix: [OpenRCT2#9574] Text overflow in scenario objective window when using CJK languages.
- Fix: [OpenRCT2#9603] Don't render audio when master volume is turned off.
- Fix: [OpenRCT2#9625] Show correct cost in scenery selection.
- Fix: [OpenRCT2#9669] The tile inspector shortcut key does not work with debugging tools disabled.
- Fix: [OpenRCT2#9675] Guest entry point limit can be bypassed in scenario editor.
- Fix: [OpenRCT2#9683] Cannot raise water level if part of the tool's area of effect is off of the map.
- Fix: [OpenRCT2#9684] Entering custom size for water/land tool allows confirmation with main enter key, but not numpad enter key.
- Fix: [OpenRCT2#9690] The keyboard shortcut for rotating the game view can be set to Enter or KP Enter, but not both.
- Fix: [OpenRCT2#9717] Scroll bars do not render correctly when using OpenGL renderer.
- Fix: [OpenRCT2#9729] Peeps do not take into account height difference when deciding to pathfind to a ride entrance (original bug).
- Fix: [OpenRCT2#9902] Doors/Portcullis do not check to make sure doors are open causing double opens.
- Fix: [OpenRCT2#9926] Africa - Oasis park has wrong peep spawn (original bug).
- Fix: [OpenRCT2#9953] Crash when hacked rides attempt to find the closest mechanic.
- Fix: [OpenRCT2#9955] Resizing map in while pause mode does not work and may result in freezes.
- Fix: [OpenRCT2#9957] When using 'no money' cheat, guests complain of running out of cash.
- Fix: [OpenRCT2#9970] Wait for quarter load fails.
- Fix: [OpenRCT2#9994] Game action tick collision during server connect and map load.
- Fix: [OpenRCT2#10017] Ghost elements influencing ride excitement.
- Fix: [OpenRCT2#10036] Do not allocate large chunks of memory for save file classification.
- Fix: [OpenRCT2#10106] Ride circuits should not be used for modes that do not support it.
- Fix: [OpenRCT2#10149] Desync in headless mode with rides that create smoke particles.
- Improved: [OpenRCT2#9466] Add the rain weather effect to the OpenGL renderer.
- Improved: [OpenRCT2#9987] Minimum load rounding.
- Improved: [OpenRCT2#10125] Better support for high DPI screens.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
network version Network version needs updating - double check before merging!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants