Jump to content

X7123M3-256

Members
  • Posts

    1082
  • Joined

  • Last visited

Posts posted by X7123M3-256

  1. 3 hours ago, CharlieP said:

    @X7123M3-256 showed me how to change friction. Is there any way to find out what its default setting is and are there any other similar variables?

    No command is implemented to show the current friction value. It would be a bit awkward because I took a shortcut with implementing the friction command - friction is actually set per-car, not per ride. So you'd have a different friction value for vehicle to show. You could cut that down by assuming all trains have the same friction value - it is a pretty safe assumption but it isn't necessarily the case. If you only want to reset to default, you can just double close and reopen the ride. If you want to know exactly what the default value was, easiest way is to take a look at the rides .DAT file.

     

    The only other command that acts on rides is "rides set type" for changing track and vehicle types. I implemented a command to change the speed and acceleration of powered rides, but it never got merged. If you want to know all the console commands, the best place to look is in console.c, since it's always up to date and there doesn't seem to be much documentation on this.

    • Like 1
  2. 1 hour ago, TCE said:

    You may be correct. Those trams were listed under custom when I was going through my rides, though. Not sure, lol.

    There are modified versions of some expansion objects that remove the expansion pack flag - this makes them exporting so that people without the expansion packs can open the park. That might be why it's showing as custom, especially if that object appears to be listed twice.

    • Like 1
  3. Now that the game is fully implemented, I'm working on adding the missing track pieces required for the Intamin LSM train and other Intamin layouts. So far, all I've got is verticals, but it's a start (note, the vertical to steep piece is not implemented but the train hides it; the Twister track is acting as a stand in until I have an appropriate sprite):

     

    gigavertical.png

    • Like 2
  4. 59 minutes ago, YoloSweggLord said:

    I think you're my new favorite person. :)

    Also, will we be using some of recurious' work in this? I know he mentioned contacting Gymnast about the diagonal log flume sprites.

    Recurious' work is of much better quality than anything I can produce. He draws them by hand, pixel by pixel. But I intend to develop the method I used to render the RMC track instead - it will not produce anywhere near as good a result (the output looks as bad as my rides because it's the same renderer), but once implemented it's much faster to generate the pieces, and with this method, once I've done the pieces for the giga track, it would be trivial to add them to another track style. The main things that need changing are:

     

    • The original renderer was based on defining a profile for the tie and then extruding it along the track profile. Extending this to cover complex geometry like the Intamin track isn't easy - and I soon realized it was entirely pointless, as it would be better to treat the track profile as a non-linear transformation of a straight track piece. This method is actually easier to implement, and can trivially handle any track geometry.
    • I had previously assumed that the sprites were split up according to the tiles they cover. This is not the case; I don't know how it's done but I suspect it's done in screen space. This is the major unknown, and will probably be the factor that determines whether this is at all successful.

    I expect Recurious will probably get his pieces implemented before I can get anything working, because he already has the sprites. I don't have a good track record of actually finishing projects like this.

    • Like 2
  5. I meant altogether new track pieces (like diagonal loops), not new sprites for those already in the game. That isn't to say that adding existing elements to more track types isn't a good idea - and now that almost all the track paint is implemented, we should be able to start doing that to a lot more rides. I'm planning to take a look at the giga coaster track - I'd really like to add inversions and verticals to it.

    • Like 2
  6. 57 minutes ago, Pales said:

    What sort of restrictions do we have?

    Right now, the game is still dependent on the vanilla code, which means we can't change the data structures used to represent the map, and are therefore subject to all the existing limits they impose. We cannot remove the limit on loaded objects, placed map elements, total rides, train count, station count, sprites, and many other things. We also can't implement new ride types or track pieces, or anything else that cannot be saved in the existing format. Dependence on the original code also means that the game can only run properly on x86.

    However, it's getting close to the point where the game will no longer include any vanilla code. At that point, it's a question of what we want to change, rather than what we can. Some things would require more work than others. The developers aim to remain compatible with save files from vanilla, which means that even if the save format changes there will be limits on how drastically it can differ - some hacks rely on the specific manner in which RCT2 handles map elements.

     

    28 minutes ago, Pales said:

    Do you think it will be possible to amend sprites? For example, roller coaster designs do not have ladders. Would this be something that could be introduced, is it even possible?

    Changing and adding sprites is already possible - the fast forward button and junior coaster steep-to-flat piece are sprites that were not present in vanilla. At this point, any change to the game that doesn't touch the save format can probably already be implemented.

    • Like 4
  7. Yup, absolutely.  There are two ways to do it:

    • Make the train one car shorter than it would otherwise be and then change the zero car subtype back to a normal car. You will also need to set the capacity back to 4 to get guests to board it.
    • Make the zero car invisible. This has some difficulties; the Twister coaster does not have an invisible car type, which isn't itself a problem because you can use the invisible car from any other object you have loaded (most single car coasters have them).

    I'm not sure which of these I'd prefer - the main difference is that an invisible car would give you control over the spacing between the trains, but also, your train is one car longer than it appears to be which affects friction (you can adjust this though).

     

    Alterations to friction, capacity, and subtype may take place after the trains have been spawned and you may find that easier. If you want to change spacing, it is easiest to do it while the train is being created (i.e actually in vehicle_create_train).  If you do it after that, it will have no effect.

    All of these hacks will be reset if you respawn the trains - I usually create a seperate branch with the modifications needed to perform this hack. Then, if I need to redo it later I can switch back easily.

    • Like 1
  8. I was more asking, if you've just implemented straight track and you just want to test that before moving on, is there a way? Can you just fill in the others with no-ops for testing? Or do you have to implement every one fully before you can test any of them?

  9. 1 hour ago, da_user said:

    Broke the object limits  would have been the first thing I would have broken ;-)

    In which case, you would have added nothing until you were ready to ditch vanilla code entirely. Which was the way OpenTTD was done, but it also means there would still be no reason to use OpenRCT2 over vanilla, which would mean less people interested in the project and so less people contributing to it (original version of OpenTTD was all done by one person and not released until it was fully implemented in C). While it'd be cool to have a codebase that's based entirely on the unmodified RCT2 executable for the sake of seeing how things were originally done, I think that implementing features as soon as possible has been crucial to the success of the project.

  10. So, it's a case of dealing with each track piece, rather than each coaster? Is the code to draw a given track piece more or less identical for each coaster type that uses it (barring the wooden and bobsled, of course)? Is it a case of replacing the game's draw functions track piece by track piece, or do you need to have them all replaced before you can switch to using the new code? What's the general process for working on this - I'm interested in taking a look at it.  There are some relatively simple rides that could benefit from new pieces - the Air Powered Vertical coaster would be so much more useful if only it had gentle slopes.

  11. 27 minutes ago, 60trainhunter said:

    Need to seriously bring back booster track pieces from the RCT 1 for both Looping and Corkscrew Roller Coasters!

    This can't be added without a new file format. At the moment, we can only add track pieces that already exist elsewhere in the game. Once there is a new file format, I'd really like to see a cable launch implemented as well (in a similar manner to the existing cable lift), though I know that'd likely be harder to implement. The issue with booster pieces on a ride like the Schwarzkopf is that with a cable launch, the train must stop to engage the catch car before the launch. A booster piece that can be placed mid-ride without a preceding block section only makes sense on rides that have LIMs or LSMs.

  12. 25 minutes ago, stef084 said:

    yeah I just don't like the perfect right angle turns and the little gap between the track and grass when I put in a layer down into the grass. I like the more natural flow of making your own water path. where did everyone learn about merging tracks or other custom techniques? I have searched online and found a bunch of custom scenery etc but no merging, corrupt map or crooked house technique.

    Go to the cheats menu and select "show vehicles from other track types" and "show all operating modes". Now build the track you want using a ride type which does allow the pieces you want, then change the vehicles to rowing boats, and the operating mode to boat hire. You will probably then want to make the track invisible ("rides set type <ride index> 74") as the coaster tracks won't look good on a boat ride. And as a side note, back up your game before running that command - if you type the ride index incorrectly it may crash (can't remember if this is fixed or not).

     

    Just now, stef084 said:

    ok found info about "trainers" (8 car trainer etc) on the Coasterforce website however it says the new version of this trainer doesn't work well on new computors. does anyone have a version of this that works well?  from there I can probably figure this out on my own

    Trainers are incompatible with OpenRCT2; most of the functionality has been superseded by in-game cheats. I'd say you can probably carry out more hacks with OpenRCT2 than you can in 8Cars now, though some features are still lacking. Track merging, zero clearance, removing most limits (that can be removed), etc are all implemented through cheats and you shouldn't need to use 8Cars for those unless you prefer to do so. If you need to do something with a trainer that isn't yet supported by OpenRCT2, you'll need to open the park in vanilla to do the hack. I can't help you get a working version though, because I couldn't get 8Cars working either.

    • Like 1
  13. I'm pretty sure that the default groups don't behave any different from the others - if a scenery object belongs in any loaded scenery group, it will show up under that tab, but if those groups are not loaded, then it will show up in misc. I will try to test it, but the script I had for unloading default scenery groups (the object selection window still doesn't allow it) is on my laptop so I'll probably do it tomorrow.

  14. I have a question: how easy is it to implement track paint for a new coaster now that one has been done? Do they share code, or do you have to start from scratch with each ride? I looked at the assembly before any of the track paint was done, and it looked like a formidable task just to get a single coaster implemented.

  15. The junior coaster no longer uses the water coaster track for drawing, the junior coaster track paint is fully implemented now. Also, the steep-to-flat piece was never available on the water coaster, so that's actually a new sprite (it was taken from RCT1 I believe). Support for inversions on dive coasters was also recently added, but that is still done using the twister coaster track paint (more or less the same way I did it, but it wasn't my PR that was merged). Recurious recently created some diagonal and steep slope track sprites for the log flume track, and I'm hoping those will be added to the game at some point

  16. 16 hours ago, joshmarsilio said:

    well my biggest problem now is that i can't even select more than 19 scenery groups while in the game.

     

    Although this limit can't be circumvented, you do not need to select a scenery group to select the corresponding object. Objects that are selected without their corresponding scenery group are all placed in a single "miscellaneous" tab, which can take up to 128 objects (IIRC, actual limit may differ but I think it's around there). You can also deselect default scenery groups/objects (like walls, hedges and trees) that you don't use, which frees up room for more objects.

    However, there is also a limit on the number of scenery objects you can have loaded at once and there really is no way of breaking that one (short of cramming multiple small scenery items into a single large scenery item, which I've been thinking of doing but I haven't seen it tried yet)

  17. In terms of adding existing track pieces to rides that don't currently have them, it's already happening - there are steep pieces on the Junior coaster. I hope there will be more additions like that as the remaining drawing is implemented.

    But to add any track elements that aren't in the game at all, you need a new file format, and for those that would require sprites not already provided, a new object format as well. I think that is still some way off, and it certainly won't happen until all the vanilla code is fully implemented.

×
×
  • Create New...