-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Add Multi-Looping Roller Coaster ride type #20810
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
Conversation
Why not just "Triangle Track" or "Tri Rail Track". IMG means "Image" to me, I think the name is confusing and like I've said before, it might make sense for the Gerstlauer track to have its own sprites. |
We could name it that, but this would group flat and square with triangle rather than keeping them far apart, that's why I used a prefix. |
I'm really not a fan of removing the boosters from the Giga RC as that's a vanilla feature from RCTC, the launched lift hill can be removed as it was a recent OpenRCT2 addition but i firmly believe the boosters should stay as they're a part of vanilla RCTC and have been in OpenRCT2 for nearly 7 years. |
I disagree. Sometimes buffing and nerfing is necessary. I believe RCTC added this to allow for the creation of newer rides. Really cool, but it should have had its own ride type instead. It's why I am only removing it if it's available on another ride using the same track type. Loading a TD6 will still be able to load in just fine without cheats. It just doesn't allow for building new rides with said elements, there's different ride types for that. IMO a necessary evil to keep the game balanced and fun. |
The boosters have been in OpenRCT2 for a while but they were an OpenRCT2 addition, boosters weren't a thing in vanilla RCT2 (they were in RCT1, but I don't think the giga coaster existed in that game). It's a bit silly for the giga to have boosters available by default, I think they always should have been hidden behind the cheat. It's just not a feature this ride type ever had, and not only does it have boosters but they are the most powerful in the game - and it's already a bit of an OP ride type as it was. It seems to me that the boosters were probably added with coasters like Maverick or Taron in mind, so if we're adding a new ride type that would better fit those, it makes sense to drop the boosters from the giga. |
The boosters were not an OpenRCT2 addition, they were added to the giga coaster in RCT Classic which is a form of vanilla RCT2. They were later added to OpenRCT2 for feature parity with RCTC once OpenRCT2 got boosters reimplemented. |
I think that we should drop that parity in favour of a better and more balanced implementation. I do not want people to be making Top Thrill 2 on the Giga, I want them to use the LSM Launched Roller Coaster for that, otherwise creating new ride types for this, which are gameplay changers, not creativity changers, would be completely redundant. |
RCTC is not vanilla, it is a reimplementation similar to OpenRCT2. RCTC added very few new features over the vanilla game, it mostly reworked the UI, but the boosters were an addition in both RCTC and OpenRCT2. The boosters are not present in RCT2 code, and adding them before the NSF required a dirty hack. They probably wouldn't have been added so early if it weren't for RCTC having them. Removing them from the default track list wouldn't compromise the ability to load RCTC saves, we're not suggesting dropping the booster pieces entirely, just making it so they require cheats to build. |
Hmmm, well after that i'm convinced. But would it be a bit much to ask around the community before making this change? It's a rather drastic change to a vanilla coaster so while i'm now fine with it i feel like it would be a good idea to get more thoughts as this seems like a change that could annoy/confuse a lot of people. Asides from that i'm fine with this now. |
Do we? I was going to say the height limit should not be that high ... like 200ft max or possibly less. I was thinking of the LSM launch coaster as more Taron or Maverick style, rather than TT2 which is a conversion of a hydraulic launch. That's why I was saying, should it be based on the Mack or the Intamin? Because if it's Intamin, there is a case for a very high height limit, but if TT2 was built new today it would almost certainly have the newer style track, so I think even then it makes sense to set the height limit lower especially in order to distinguish it from a future hydraulic launch coaster, which would get a stupid high height limit. You wouldn't be able to build TT2 on the giga without cheats, because giga doesn't get verticals and any triple launch requires cheats. And if you're using hacks, the distinction is moot, and people can use whatever ride type they want, except that using the LSM launched coaster would give you the more modern brake style. |
A big problem is that ride stats are tied to ride type rather than layout to an unreasonable extent, which is why the giga can get really good stats even if you just build a family coaster with it. So, having one ride type representing both the smaller layouts focused on turns, inversions, etc, and the really big height and speed focused coasters like Red Force, may be undesirable even if they could technically be considered the same ride type IRL. That's why I originally envisaged having a separate "mega coaster" ride type with the new style track, much higher height limit, better stats ... and also higher build cost. But then there's the argument that this is too many similar types. |
I am not sure how polling that would really change the opinion. Many people don't like change, even if it's for the better. I will ask Marcel's opinion on the matter as he mostly plays the game without cheats, and rather with exploits. |
The string ids seem to be separated from the rest of the ride type names/description strings, shouldn't the names be on STR_0097 and STR_0098 and the descriptions on STR_0607 and STR_0608 respectively? |
Oh I didn't realize there was space there! |
No, make it higher, that's very low and will feel too limited. I'm not sure that it should be lower than the LIM launched coaster, which is 170ft. You could also consider 205ft, the height of the highest Mack example,or 180ft, the height of the highest Intamin coasters that use the tri track. Actually, there aren't many Intamin rides over 180ft even including the newer track style and I think Red Force is the only one that exceeds 200ft (and TT2 if you count that). So I'd say the limit should not be higher than 200ft, and shouldn't be lower than 170ft) |
Falcons Flight will feature LSMs on sloped track. And it will possibly have an inversion. So is it a giga? Or an LSM launched coaster? |
As will not be surprising to some of you, I think that the boosters should stay as they are a vanilla feature. Yes I know that Classic came after OpenRCT2 and that it's not technically RCT2 vanilla, but people in the community generally mean "anything in RCT2 or RCTC" when they say vanilla. Plenty of people move from Classic to OpenRCT2 and stripping away the giga booster is a weird thing to do in my opinion. Yes, I know it'll remain available with the "enable all drawable track pieces" cheat, but you shouldn't need cheats to do that. Yes it is a bit overpowered, but not that much more overpowered compared to just using a chain lift and a bit of a longer station to fit more trains (or just use block brakes). If this is done for game balance, then there are much more overpowered/extreme things that should also be changed, but at that point you're just changing how the entire game works, which means less and less parity with the original, which is a bad thing. My point here is that I just don't see much reason to remove the boosters from the standard track piece set from a balance perspective. Most of those who use it for a few overpowered ride designs already know plenty of other, more effective ways, to break the game anyway. The launched lift hill can go by the way, that one is even more overpowered and not vanilla in any sense of the word. |
probably a mixture of multiple ride types. Either way it uses a different track type. |
Seems like unnecessary changes that don’t really move the game forward. I always found it silly the game had inverted shuttle coaster and compact suspended coaster. I don’t see how this adds to the user experience by limiting design. |
I 100% disagree with you on that. The limitless possibilities is exactly why I cannot play Planet Coaster, they give me too much creative freedom to the point it becomes difficult to work with. And removing all challenge from a game also removes the fun from scenarios, for which this is the entire intention. If you want to create a park in RCT2 which looks super realistic you can already do that with cheats. This is just an addition for gameplay. |
PR is still looking for review, as karst said |
@@ -497,6 +498,8 @@ constexpr std::string_view MUSIC_OBJECT_SUMMER = "rct2.music.summer"; | |||
constexpr std::string_view MUSIC_OBJECT_TECHNO = "rct2.music.techno"; | |||
constexpr std::string_view MUSIC_OBJECT_WATER = "rct2.music.water"; | |||
constexpr std::string_view MUSIC_OBJECT_WILD_WEST = "rct2.music.wildwest"; | |||
constexpr std::string_view MUSIC_OBJECT_ACID = "openrct2.music.acid"; | |||
constexpr std::string_view MUSIC_OBJECT_MECHANICAL = "rct2.music.mechanical"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I saw something in another PR regarding waiting to add new music until some kind of fallback was established. Has that been established?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think it has, and personally, thinking about it. I am not sure if it's really necessary to have fallbacks. People can clear out the entire list of music if they wanted to. These rides are going to have to be cheated in at this point in time anyway. I don't think it's too terrible to have them be empty if the music object isn't available.
Though perhaps similarly to the scenery groups, the ride object can select a music object when it uses it as default? Except you can still uncheck it again if you wanted to. (UX thing)
Is there a concern that Intamin-Mack triangle track will be confused with other types of triangle track? I would argue "Lattice" is a better descriptor than InMa, same with the flat track. |
Maybe. I am not sure what we'd need to call it. But since we are going to have the flat, the triangle and square supports in a future PR I kinda want them to all use the same naming scheme so we can see they're part of the same group of tracks. |
They're all diagonal lattice frame tracks, so I would say that Lattice is a good descriptor for all of them. |
LatticeFlat Like this? |
Yes, I like those names. |
Probably gonna do this change in a seperate PR.
It would be very bad for people that plays RCT Classic, as in there, you were allowed to do it without the cheats in newly build rides. The change should be dependent of how you want to play the scenarios, so people wanting the rct2 experience would not see either, but RCT Classic have boosters still, no allowing the base game origin (let's say someone used RCT Classic instead of RCT2 to link his game, noticing something not available for him to use in OpenRCT2 that was available in Classic, he would find it really sad... Either that or propose a modified giga coaster [which could be a compatibility ride]) |
There will always be differences between different versions of games. That's why they're not the same game. |
Something I was thinking about recently, since there has been talks on splitting the LSM Launched Coaster into two types, one focused on inversions and tights turns and the other on high speeds and altitudes, how about making the latter a "backport" of the RCT3 Strata Coaster? The Strata could have faster boosters and launch, much higher support limit (the Giga already has a limit of 418ft so something around or a little under 500ft would be best to further differentiate the two types), better EIN (and stricter stat requirements) but no inversions or lifts and it would be much more expensive, maybe even more than the Air Powered since Kingda Ka is one of the most expensive coasters ever made. Sorry, I'm just spitballing here but that's what came to my mind when I read these comments:
|
It might be an idea to give the hydraulic launch rc access to boosters |
The idea has been suggested before, but I'm not sure if it's worth having a separate ride type just for the strata coaster. RCT3 did have a distinction, but it wasn't done well. The RCT3 strata coaster, as I remember, did not get access to large steep to flat, which made it impossible to actually build a strata that peeps would ride (you were better off with the Stormrunner coaster for that). If you're making the strata a separate ride type, there needs to be some reason to use it over the hydraulic launch coaster. Of course, that doesn't mean we can't implement a strata ride type better. But I get the impression that the reason RCT3 had two ride types is not because they felt they ought to be separate, but because the strata coaster came first and they added the somewhat improved "Stormrunner coaster" in the expansions, which was better in every way and made the strata coaster pretty much obsolete. I think there are a few arguments in favour of the strata coaster being separate. One is that the strata coasters both have unique trains, with a more streamlined profile than those used on the other accelerators. The TTD style trains, having lapbars, could get an airtime bonus which makes sense for a strata but I do not think the accelerator coaster in general should get it, so that would be a difference. The other case is that the game's stat calculation just sucks, so you can't necessarily optimize the stat calculation for such a wide variety of layouts. In order to allow for TTD style layouts on the hydraulic launch coaster, the minimum drop requirement will have to be set to 1, which could be abused at the other end of the scale to make really tiny layouts that still get reasonable stats. A strata ride type, if it was separate, could have a high minimum drop height requirement to somewhat offset the fact that it only needs one drop. But, I don't really think this is enough reason to make them separate, especially as actual 400ft coasters are rarely built in game, so the strata coaster if it existed would mostly be used for smaller rides that could just as well be built with the hydraulic launch coaster. Even if the strata were to get a height limit much higher than the hydraulic launch coaster, this would rarely actually be used, most people would build them half the size. And they are the same ride type IRL, the stratas are just bigger. So I was thinking of adding only one hydraulic launch coaster, with height and speed limits that allow you to build a strata with it. |
That's true but I think it's mostly because RCT 1 and 2 doesn't have a type that allows for a good Strata Coaster, and I believe that a lot of players must have tried to build one at least once. Only in OpenRCT2 with cheats are you able to make a proper one. The Twister doesn't have a launched mode and the Classic boosters aren't strong enough for it to complete even a flat-to-vertical + 90° turn + vertical-to-flat section, and the Giga can't go vertical. In 3 where it was its own type it was very common to see coasters inspired by Kingda Ka and TTD, albeit with rough slope transitions leading to the top hats.
I'm not knowledgeable on how the game code handles the stat requirements, but I know that with certain types you can forego completing certain requirements if the ride has at least one inversion. Maybe if the coaster meets certain conditions which allow us to infer it's supposed to be a Strata type, like having a >300ft drop and a certain minimum speed or length, then it can forego the otherwise harsher requirements that would be in place for smaller hydraulic launch coasters? |
|
I was also thinking this was the right course of action. I will create a separate PR for the Multi looping afterwards. X7 has made an Intamin train that's also used on the LSM launch coaster. It's "Mega coaster train" on this page: https://x123m3-256.github.io/RCT2/CustomRides/ The other LSM coaster train we'd need permission from Mack Rides for, who we will ask Thursday at IAAPA. I agree if there's too much backlash after lets say a year we could revert the decision to lock away the boosters. |
Working notes (please ignore)
|
I singled out and rebased here. I haven't been able to test yet if I made any mistakes https://github.com/karst/OpenRCT2/tree/lsm-launch-new Update: Thru testing, the rebased branch works as intended. |
- Feature: [#20810] New ride type: LSM Launched Roller Coaster. - Improved: [#22937] Add banked sloped turns and many other pieces to the Corkscrew, Hypercoaster and Lay-down Roller Coaster. - Improved: [#22967] Add medium and large half loops to the Wooden and Classic Wooden Roller Coasters. - Improved: [#23010] Make AppImage compatible with Ubuntu 22.04 and Debian Bookworm again. - Change: [#20810] Giga Coaster boosters and launched lift hill track pieces are now locked behind cheats. - Fix: [#21221] Trains use unbanked sprites on flat to gentle diagonal banked track pieces. - Fix: [#22615] Crash when drawing Space Rings with an invalid ride entry. - Fix: [#22633] Crash when drawing loading screen with an outdated g2.dat. - Fix: [#22908] Crash when passing through a door from an invalid wall type. - Fix: [#22918] Zooming with keyboard moves the view off centre. - Fix: [#22920] Crash when sacking a staff member. - Fix: [#22921] Wooden RollerCoaster flat to steep railings appear in front of track in front of them. - Fix: [#22962] Fuzzy horizontal-to-vertical line transitions in charts. - Fix: [#23009] Scenarios from RCT Classic (.sea files) are not included in the scenario index. - Fix: [#23015] Crash when loading a save game when the construction window is still open. - Fix: [#23018] Crash when loading a new game when the construction window is still open. - Fix: [#23023] Large scenery clearance height interpreted as negative when greater than 127. - Fix: [#23044] "remove_unused_objects" command causes blank peep names. - Fix: [#23048] Map generator allows map sizes out of range through text input. - Fix: [#23058] [Plugin] Changing window colours doesn’t trigger the window to be fully redrawn. - Fix: [#23085] LIM Launched Roller Coaster medium half loops clip into each other when built back-to-back.
- Feature: [OpenRCT2#20810] New ride type: LSM Launched Roller Coaster. - Improved: [OpenRCT2#22937] Add banked sloped turns and many other pieces to the Corkscrew, Hypercoaster and Lay-down Roller Coaster. - Improved: [OpenRCT2#22967] Add medium and large half loops to the Wooden and Classic Wooden Roller Coasters. - Improved: [OpenRCT2#23010] Make AppImage compatible with Ubuntu 22.04 and Debian Bookworm again. - Change: [OpenRCT2#20810] Giga Coaster boosters and launched lift hill track pieces are now locked behind cheats. - Fix: [OpenRCT2#21221] Trains use unbanked sprites on flat to gentle diagonal banked track pieces. - Fix: [OpenRCT2#22615] Crash when drawing Space Rings with an invalid ride entry. - Fix: [OpenRCT2#22633] Crash when drawing loading screen with an outdated g2.dat. - Fix: [OpenRCT2#22908] Crash when passing through a door from an invalid wall type. - Fix: [OpenRCT2#22918] Zooming with keyboard moves the view off centre. - Fix: [OpenRCT2#22920] Crash when sacking a staff member. - Fix: [OpenRCT2#22921] Wooden RollerCoaster flat to steep railings appear in front of track in front of them. - Fix: [OpenRCT2#22962] Fuzzy horizontal-to-vertical line transitions in charts. - Fix: [OpenRCT2#23009] Scenarios from RCT Classic (.sea files) are not included in the scenario index. - Fix: [OpenRCT2#23015] Crash when loading a save game when the construction window is still open. - Fix: [OpenRCT2#23018] Crash when loading a new game when the construction window is still open. - Fix: [OpenRCT2#23023] Large scenery clearance height interpreted as negative when greater than 127. - Fix: [OpenRCT2#23044] "remove_unused_objects" command causes blank peep names. - Fix: [OpenRCT2#23048] Map generator allows map sizes out of range through text input. - Fix: [OpenRCT2#23058] [Plugin] Changing window colours doesn’t trigger the window to be fully redrawn. - Fix: [OpenRCT2#23085] LIM Launched Roller Coaster medium half loops clip into each other when built back-to-back.
Release v0.4.16 - Feature: [OpenRCT2#20810] New ride type: LSM Launched Roller Coaster. - Improved: [OpenRCT2#22937] Add banked sloped turns and many other pieces to the Corkscrew, Hypercoaster and Lay-down Roller Coaster. - Improved: [OpenRCT2#22967] Add medium and large half loops to the Wooden and Classic Wooden Roller Coasters. - Improved: [OpenRCT2#23010] Make AppImage compatible with Ubuntu 22.04 and Debian Bookworm again. - Change: [OpenRCT2#20810] Giga Coaster boosters and launched lift hill track pieces are now locked behind cheats. - Fix: [OpenRCT2#21221] Trains use unbanked sprites on flat to gentle diagonal banked track pieces. - Fix: [OpenRCT2#22615] Crash when drawing Space Rings with an invalid ride entry. - Fix: [OpenRCT2#22633] Crash when drawing loading screen with an outdated g2.dat. - Fix: [OpenRCT2#22908] Crash when passing through a door from an invalid wall type. - Fix: [OpenRCT2#22918] Zooming with keyboard moves the view off centre. - Fix: [OpenRCT2#22920] Crash when sacking a staff member. - Fix: [OpenRCT2#22921] Wooden RollerCoaster flat to steep railings appear in front of track in front of them. - Fix: [OpenRCT2#22962] Fuzzy horizontal-to-vertical line transitions in charts. - Fix: [OpenRCT2#23009] Scenarios from RCT Classic (.sea files) are not included in the scenario index. - Fix: [OpenRCT2#23015] Crash when loading a save game when the construction window is still open. - Fix: [OpenRCT2#23018] Crash when loading a new game when the construction window is still open. - Fix: [OpenRCT2#23023] Large scenery clearance height interpreted as negative when greater than 127. - Fix: [OpenRCT2#23044] "remove_unused_objects" command causes blank peep names. - Fix: [OpenRCT2#23048] Map generator allows map sizes out of range through text input. - Fix: [OpenRCT2#23058] [Plugin] Changing window colours doesn’t trigger the window to be fully redrawn. - Fix: [OpenRCT2#23085] LIM Launched Roller Coaster medium half loops clip into each other when built back-to-back.
Release v0.4.16 - Feature: [OpenRCT2#20810] New ride type: LSM Launched Roller Coaster. - Improved: [OpenRCT2#22937] Add banked sloped turns and many other pieces to the Corkscrew, Hypercoaster and Lay-down Roller Coaster. - Improved: [OpenRCT2#22967] Add medium and large half loops to the Wooden and Classic Wooden Roller Coasters. - Improved: [OpenRCT2#23010] Make AppImage compatible with Ubuntu 22.04 and Debian Bookworm again. - Change: [OpenRCT2#20810] Giga Coaster boosters and launched lift hill track pieces are now locked behind cheats. - Fix: [OpenRCT2#21221] Trains use unbanked sprites on flat to gentle diagonal banked track pieces. - Fix: [OpenRCT2#22615] Crash when drawing Space Rings with an invalid ride entry. - Fix: [OpenRCT2#22633] Crash when drawing loading screen with an outdated g2.dat. - Fix: [OpenRCT2#22908] Crash when passing through a door from an invalid wall type. - Fix: [OpenRCT2#22918] Zooming with keyboard moves the view off centre. - Fix: [OpenRCT2#22920] Crash when sacking a staff member. - Fix: [OpenRCT2#22921] Wooden RollerCoaster flat to steep railings appear in front of track in front of them. - Fix: [OpenRCT2#22962] Fuzzy horizontal-to-vertical line transitions in charts. - Fix: [OpenRCT2#23009] Scenarios from RCT Classic (.sea files) are not included in the scenario index. - Fix: [OpenRCT2#23015] Crash when loading a save game when the construction window is still open. - Fix: [OpenRCT2#23018] Crash when loading a new game when the construction window is still open. - Fix: [OpenRCT2#23023] Large scenery clearance height interpreted as negative when greater than 127. - Fix: [OpenRCT2#23044] "remove_unused_objects" command causes blank peep names. - Fix: [OpenRCT2#23048] Map generator allows map sizes out of range through text input. - Fix: [OpenRCT2#23058] [Plugin] Changing window colours doesn’t trigger the window to be fully redrawn. - Fix: [OpenRCT2#23085] LIM Launched Roller Coaster medium half loops clip into each other when built back-to-back.
The LSM Launched coaster portion of this PR has been merged, leaving only the multi-looping coaster. I’m not entirely sure if that warrants its own type, and neither does it X7, judging by a recent message of his: https://discord.com/channels/264137540670324737/992015068197814272/1380182631806800012 As such, I’ll close this PR. Should a good reason to have it anyway come up, we can of course revisit this. |
This PR does the following things:
To do
If you wish to test in game here's two of X7's objects with edited ride type fields.
Test Objects.zip