Skip to content

Do not add new music styles to old parks automatically#21043

Merged
Gymnasiast merged 1 commit into
OpenRCT2:developfrom
Gymnasiast:fix/music-style-defaults
Jul 6, 2024
Merged

Do not add new music styles to old parks automatically#21043
Gymnasiast merged 1 commit into
OpenRCT2:developfrom
Gymnasiast:fix/music-style-defaults

Conversation

@Gymnasiast

Copy link
Copy Markdown
Member

For some reason, newly introduced music styles were added to existing SV4 and SV6 files. This didn’t make a great deal of sense, as we always leave the object selection intact as much as possible. (E.g. we don’t add new land types or station styles or anything else either.)

While investigating, it also seems like SV4, SV6, TD4 and TD6 loading still assumes that the music IDs are fixed, which hasn’t been the case for a long time. This is something I’d want to investigate further and maybe address in a future PR.

@Gymnasiast Gymnasiast changed the title Do not add new music styles to old park automatically Do not add new music styles to old parks automatically Dec 3, 2023
@AaronVanGeffen

Copy link
Copy Markdown
Member

This appears to have been added intentionally: #19785

@karst

karst commented Dec 3, 2023

Copy link
Copy Markdown
Member

This was an intentional change, and it's currently also part of the release checklist for openmusic.

@karst

karst commented Dec 3, 2023

Copy link
Copy Markdown
Member

If you can somehow separate it from SV6/SV4 idm, but for the scenarios I definitely would like to keep it this way.

The reason we decided on enabling them by default is because it doesn't change anything balance wise about the game, and it used to not be an object type, but you were able to add two custom music tracks without cheating.

@Gymnasiast

Gymnasiast commented Dec 3, 2023

Copy link
Copy Markdown
Member Author

I understand the reasoning, but I still think it would be wise to reconsider. I think it should only be done for new scenarios. But if the general opinion of the players is that it should be kept, I’m not going to kick up a fuss. (Not that I should do so anyway.)

@IntelOrca

Copy link
Copy Markdown
Contributor

Adding to saved games was not intentional (otherwise it would have mentioned SV4/SV6 in the changelog).
Thus this PR only reverts the change, and does not fix the problem. Only scenarios should get the new styles.

@Gymnasiast

Copy link
Copy Markdown
Member Author

I meant that I think that the new music styles should only be selected when creating a new scenario, and loading from a SV4/SC4/SV6/SC6 should not. That is what my PR does, so from that perspective this PR does fix it. But judging from the reactions, I doubt many people would agree.

@IntelOrca

Copy link
Copy Markdown
Contributor

Oh okay, it is cleaner to not add the stuff...

But I guess the problem is that people kept asking how they add the new music. Not enough people seem to be aware or familiar with the object selection window and it is a bit of hack to do something fairly common. Do you have some alternative solutions?

@Gymnasiast

Copy link
Copy Markdown
Member Author

I think it would be a good idea to make it easier for the user to add new music styles to any game. E.g. have a button near the music dropdown to add more styles (which would then show the whole list of installed music, allowing the user to just pick a few extra ones). That would work for any style, not just official ones. I think that is a better solution overall, it gives the user more control over their saves while also making it easier for them to add new music, regardless of where it comes from.

@karst

karst commented Dec 3, 2023

Copy link
Copy Markdown
Member

I like that idea. Could be done after #20980 is merged.
Perhaps it could have a button that opens a locked down version of the object selector that only allows seeing the ride music tab? Or something similar, a sidetab that is a small version of the ride music object selector.

@ocalhoun6

ocalhoun6 commented Dec 5, 2023

Copy link
Copy Markdown
Contributor

Not enough people seem to be aware or familiar with the object selection window and it is a bit of hack to do something fairly common. Do you have some alternative solutions?

Might be nice to have a simplified/easy method for adding objects in general, not just for music... (Maybe a plugin could do this?)

Like in a few different windows:

  • ride selection
  • scenery selection
  • music selection (within a ride's window)
  • terrain selection

In each of those windows, somewhere in the UI, you could put a [+] or "Get more" button. And if you click that button, it opens a simplified version of the object selection window, showing only objects of that type and only allowing you to add more objects of that type, with all the other features of the object selection window hidden behind an 'advanced mode' button that would open up the full object selection window.

That would be easy to use and fairly intuitive -- anywhere you see a selection of objects to use in your park, you could have the [+] button somewhere next to it, which allows to to add more options to be used for that type of object.

@karst karst added the discussion Some input from team members is wanted. label Dec 13, 2023
oxzi added a commit to oxzi/nixpkgs that referenced this pull request Jan 13, 2024
- https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.6
- https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.7

Updating to 0.4.6 resulted some headaches, as suddenly lots of errors
about missing music objects were thrown and old maps were not loadable.
This was also mentioned in NixOS#263025.

Today I git bisect'ed OpenRCT2's source between 0.4.5 and 0.4.6, finding
5adbea9ac829b76507543e4c09b2000138ffbbcf as the culprit, which origins
in OpenRCT2/OpenRCT2#19785. From there I got to OpenRCT2/OpenRCT2#21043
which addresses this very issue and fixes it by undoing the original
change next to some later changes. This PR is now included as a patch
and, et voilà, OpenRCT2 works again!

Closes NixOS#263025.
@oxzi oxzi mentioned this pull request Jan 13, 2024
13 tasks
@github-actions

Copy link
Copy Markdown

This pull request has been marked as stale and will be closed in 14 days if no action is taken. To keep it open, leave a comment or remove the stale-pr label. If you're awaiting feedback from a developer, please send us a reminder (either here or on Discord).

@github-actions

Copy link
Copy Markdown

This pull request has been marked as stale and will be closed in 14 days if no action is taken. To keep it open, leave a comment or remove the stale-pr label. If you're awaiting feedback from a developer, please send us a reminder (either here or on Discord).

@github-actions

Copy link
Copy Markdown

This pull request has been marked as stale and will be closed in 14 days if no action is taken. To keep it open, leave a comment or remove the stale-pr label. If you're awaiting feedback from a developer, please send us a reminder (either here or on Discord).

@733737

733737 commented Apr 17, 2024

Copy link
Copy Markdown
Contributor

keep open

@github-actions

Copy link
Copy Markdown

This pull request has been marked as stale and will be closed in 14 days if no action is taken. To keep it open, leave a comment or remove the stale-pr label. If you're awaiting feedback from a developer, please send us a reminder (either here or on Discord).

@AaronVanGeffen

Copy link
Copy Markdown
Member

This PR came up in an unrelated discussion tonight. It's been open for a while, and I think we should come up with a decision.

I meant that I think that the new music styles should only be selected when creating a new scenario, and loading from a SV4/SC4/SV6/SC6 should not. That is what my PR does, so from that perspective this PR does fix it.

This would have my preference as well. Adding more music to a scenario is something that the scenario creator can take into consideration. For sandbox games, they can be added through the object selection window. I'd prefer that over forcing extra objects in as well.

Perhaps #20980 can expand on this, as suggested. Admittedly, though, I'm not a big fan of the UI it introduces. That PR, too, has been stale for a while, so I'd prefer not to have this PR depend on the other.

@Gymnasiast Gymnasiast force-pushed the fix/music-style-defaults branch from 9ea1384 to 2287c08 Compare July 6, 2024 16:49
@AaronVanGeffen AaronVanGeffen added this to the v0.4.12 milestone Jul 6, 2024
@AaronVanGeffen AaronVanGeffen removed the discussion Some input from team members is wanted. label Jul 6, 2024
@Gymnasiast Gymnasiast enabled auto-merge (squash) July 6, 2024 16:52
@Gymnasiast Gymnasiast merged commit 9d8d455 into OpenRCT2:develop Jul 6, 2024
@karst

karst commented Jul 6, 2024

Copy link
Copy Markdown
Member

I definitely much prefer adding a custom ride music selector to the game, as that's basically what was already possible in the base game with CUSTOM1 and CUSTOM2. I think #20980 should be fixed first. That should have some space left over for a selector (which opens up a limited version of the object selector), which can be added in another PR.

@Gymnasiast Gymnasiast deleted the fix/music-style-defaults branch July 6, 2024 20:31
@Gymnasiast

Copy link
Copy Markdown
Member Author

That is the plan, yes. I am aware there is a need to easily add styles.

Could you create an issue for it? Makes it easier to keep track.

janisozaur added a commit that referenced this pull request Jul 7, 2024
- Feature: [#622] Add option to align the top toolbar buttons horizontally centred (off by default).
- Feature: [#20263] Ability to increase the size of the map in the (0, 0) direction.
- Feature: [#21714] [Plugin] Costume assignment is now tailored to each staff type.
- Feature: [#21853] Enlarged UI mode.
- Feature: [#21893, #22065] On launch, the game now indicates what system is being initialised.
- Feature: [#21913] [Plugin] Allow precise and safe control of peep animations.
- Feature: [#22046] [Plugin] Add interface for crashed vehicle particle.
- Feature: [#22085] [Plugin] The result of actions that create banners now includes the bannerIndex.
- Feature: [#22087] [Plugin] Expose guests’ favourite rides to the plugin API.
- Feature: [#22090] [Plugin] Allow writing of paused state in non-networked settings.
- Feature: [#22140] Add option to automatically close dropdown menus if Enlarged UI is enabled.
- Feature: [#22150] [Plugin] Expose monthly expenditure history to the plugin API.
- Feature: [#22210] [Plugin] Peeps can now be made stationary or completely frozen.
- Feature: [#22210] [Plugin] The direction in which a peep is facing can now be manipulated.
- Improved: [#19870] Allow using new colours in UI themes.
- Improved: [#21774] The Alpine Coaster now supports using the alternative colour schemes.
- Improved: [#21853] Dropdowns now automatically use multiple columns if they are too tall for the screen.
- Improved: [#21981] Rendering performance of the map window has been improved considerably.
- Improved: [#21981] The map window now defaults to showing as much of the map as fits the screen.
- Improved: [#21983] Taking a screenshot now shows a message again, closing when taking another.
- Improved: [#22026] The options window now stays centred when window scaling is changed.
- Improved: [#22060] [Plugin] The scroll wheel can now be used to modify spinner widget values in custom/script windows.
- Improved: [#22065] Joining a network game now indicates progress using coaster trains.
- Improved: [#22075] [Plugin] Plugins can now use G1 Icons.
- Improved: [#22084] The game now temporarily pauses while the load/save window is open.
- Improved: [#22217] See-through items are ignored again in viewport/pointer interaction.
- Improved: [objects#238] Add preview image for invisible queue.
- Improved: [objects#329] Add RCT1AA lay-down coaster trains (for import only).
- Change: [#7248] Small mini-maps are now centred in the map window.
- Change: [#20240] Heavy snow and blizzards now make guests buy and use umbrellas.
- Change: [#21043] The new music styles are no longer added to old parks automatically.
- Change: [#21214] Wacky Worlds and Time Twister’s scenario names now match their park names.
- Change: [#21991] UI themes JSON now use colour names and a translucency bool, instead of a number (old themes still work).
- Change: [#22057] Reorder Time Twister’s scenarios and adjust their difficulty classification.
- Change: [#22173] Patrol path selection is visible over existing patrol paths.
- Change: [#22196] Make track navigation buttons holdable.
- Change: [#22227] [Plugin] Ride prices are now constrained for plugins as well.
- Fix: [#13234] Vehicle weight sometimes wrong after using Remove All Guests cheat.
- Fix: [#13294] Map corners are cut off in some directions (original bug).
- Fix: [#14630] Non-ASCII thousands and decimal separators not processed correctly.
- Fix: [#21496] Some RCT1 scenery is hidden after saving and reloading.
- Fix: [#21533] Support glitches on Hybrid Coaster.
- Fix: [#21974] No reason specified when attempting to place benches, lamps, or bins on path with no unconnected edges (original bug).
- Fix: [#21987] [Plugin] API cannot handle negative removal prices.
- Fix: [#22008] Uninverted Lay-down roller coaster uses the wrong support type.
- Fix: [#22012] [Plugin] Images on ImgButton widgets cannot be updated.
- Fix: [#22121] Some news items in the “Recent Messages” window have the wrong text colour.
- Fix: [#22152] [Plugin] Negative signed integers are truncated.
- Fix: [#22161] Using arrow keys in textboxes crashes the game.
- Fix: [#22174] Cheats are reset when starting a server.
- Fix: [#22185] Intensity and nausea are incorrectly sorted in the rides list after ratings invalidation.
- Fix: [#22226] Red traffic light shows incorrect sprite when pressed.
- Fix: [objects#323] Incorrect wall boundaries on large WW/TT scenery objects.
- Fix: [objects#331] Incorrect hover car capacity string.
- Fix: [objects#334] Incorrect school bus capacity string.
- Fix: [objects#337] Swan Boats use an incorrect third remap colour (original bug).
florensie added a commit to florensie/nixpkgs that referenced this pull request Jul 13, 2024
github-actions Bot pushed a commit to NixOS/nixpkgs that referenced this pull request Jul 20, 2024
https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.12

Changes from OpenRCT2/OpenRCT2#21043 are now upstreamed, so the patch was removed here.

(cherry picked from commit a4b0afd)
CorySanin added a commit to CorySanin/OpenRCT2 that referenced this pull request Feb 3, 2025
Release v0.4.12

- Feature: [OpenRCT2#622] Add option to align the top toolbar buttons horizontally centred (off by default).
- Feature: [OpenRCT2#20263] Ability to increase the size of the map in the (0, 0) direction.
- Feature: [OpenRCT2#21714] [Plugin] Costume assignment is now tailored to each staff type.
- Feature: [OpenRCT2#21853] Enlarged UI mode.
- Feature: [OpenRCT2#21893, OpenRCT2#22065] On launch, the game now indicates what system is being initialised.
- Feature: [OpenRCT2#21913] [Plugin] Allow precise and safe control of peep animations.
- Feature: [OpenRCT2#22046] [Plugin] Add interface for crashed vehicle particle.
- Feature: [OpenRCT2#22085] [Plugin] The result of actions that create banners now includes the bannerIndex.
- Feature: [OpenRCT2#22087] [Plugin] Expose guests’ favourite rides to the plugin API.
- Feature: [OpenRCT2#22090] [Plugin] Allow writing of paused state in non-networked settings.
- Feature: [OpenRCT2#22140] Add option to automatically close dropdown menus if Enlarged UI is enabled.
- Feature: [OpenRCT2#22150] [Plugin] Expose monthly expenditure history to the plugin API.
- Feature: [OpenRCT2#22210] [Plugin] Peeps can now be made stationary or completely frozen.
- Feature: [OpenRCT2#22210] [Plugin] The direction in which a peep is facing can now be manipulated.
- Improved: [OpenRCT2#19870] Allow using new colours in UI themes.
- Improved: [OpenRCT2#21774] The Alpine Coaster now supports using the alternative colour schemes.
- Improved: [OpenRCT2#21853] Dropdowns now automatically use multiple columns if they are too tall for the screen.
- Improved: [OpenRCT2#21981] Rendering performance of the map window has been improved considerably.
- Improved: [OpenRCT2#21981] The map window now defaults to showing as much of the map as fits the screen.
- Improved: [OpenRCT2#21983] Taking a screenshot now shows a message again, closing when taking another.
- Improved: [OpenRCT2#22026] The options window now stays centred when window scaling is changed.
- Improved: [OpenRCT2#22060] [Plugin] The scroll wheel can now be used to modify spinner widget values in custom/script windows.
- Improved: [OpenRCT2#22065] Joining a network game now indicates progress using coaster trains.
- Improved: [OpenRCT2#22075] [Plugin] Plugins can now use G1 Icons.
- Improved: [OpenRCT2#22084] The game now temporarily pauses while the load/save window is open.
- Improved: [OpenRCT2#22217] See-through items are ignored again in viewport/pointer interaction.
- Improved: [objects#238] Add preview image for invisible queue.
- Improved: [objects#329] Add RCT1AA lay-down coaster trains (for import only).
- Change: [OpenRCT2#7248] Small mini-maps are now centred in the map window.
- Change: [OpenRCT2#20240] Heavy snow and blizzards now make guests buy and use umbrellas.
- Change: [OpenRCT2#21043] The new music styles are no longer added to old parks automatically.
- Change: [OpenRCT2#21214] Wacky Worlds and Time Twister’s scenario names now match their park names.
- Change: [OpenRCT2#21991] UI themes JSON now use colour names and a translucency bool, instead of a number (old themes still work).
- Change: [OpenRCT2#22057] Reorder Time Twister’s scenarios and adjust their difficulty classification.
- Change: [OpenRCT2#22173] Patrol path selection is visible over existing patrol paths.
- Change: [OpenRCT2#22196] Make track navigation buttons holdable.
- Change: [OpenRCT2#22227] [Plugin] Ride prices are now constrained for plugins as well.
- Fix: [OpenRCT2#13234] Vehicle weight sometimes wrong after using Remove All Guests cheat.
- Fix: [OpenRCT2#13294] Map corners are cut off in some directions (original bug).
- Fix: [OpenRCT2#14630] Non-ASCII thousands and decimal separators not processed correctly.
- Fix: [OpenRCT2#21496] Some RCT1 scenery is hidden after saving and reloading.
- Fix: [OpenRCT2#21533] Support glitches on Hybrid Coaster.
- Fix: [OpenRCT2#21974] No reason specified when attempting to place benches, lamps, or bins on path with no unconnected edges (original bug).
- Fix: [OpenRCT2#21987] [Plugin] API cannot handle negative removal prices.
- Fix: [OpenRCT2#22008] Uninverted Lay-down roller coaster uses the wrong support type.
- Fix: [OpenRCT2#22012] [Plugin] Images on ImgButton widgets cannot be updated.
- Fix: [OpenRCT2#22121] Some news items in the “Recent Messages” window have the wrong text colour.
- Fix: [OpenRCT2#22152] [Plugin] Negative signed integers are truncated.
- Fix: [OpenRCT2#22161] Using arrow keys in textboxes crashes the game.
- Fix: [OpenRCT2#22174] Cheats are reset when starting a server.
- Fix: [OpenRCT2#22185] Intensity and nausea are incorrectly sorted in the rides list after ratings invalidation.
- Fix: [OpenRCT2#22226] Red traffic light shows incorrect sprite when pressed.
- Fix: [objects#323] Incorrect wall boundaries on large WW/TT scenery objects.
- Fix: [objects#331] Incorrect hover car capacity string.
- Fix: [objects#334] Incorrect school bus capacity string.
- Fix: [objects#337] Swan Boats use an incorrect third remap colour (original bug).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants