1. Rolling Line
  2. News

Rolling Line News

Smooth speed control! v5.34

[p][/p][p][/p][p]While I continue to work on multiplayer behind the scenes, there's still a bunch of features that I'm planning to add before multiplayer is done! [/p][p]One of those was a very highly requested feature: the option to control speed by exact amounts (instead of the speed steps currently in the game). You can now switch to an optional "smooth speed control" mode where you can set the exact speed value you want!
Simply hold and release the speed up/down buttons to change the speed gradually, instead of clicking them to change the speed step:[/p][p][/p][p][/p][p][/p][p]You can toggle between the two control modes inside the cab, or you can change the settings for whether the control mode is "step" or "smooth" by default. These settings can be found in the "Pause menu -> Gameplay -> Train speed control options" menu.
There are also different settings for both then in-train cab controls and the hand-held controllers. [/p][p][/p][p][/p][p][/p][h2]Smooth acceleration/deceleration adjustment [/h2][p][/p][p]You can also now adjust how fast trains will slow down and speed up using the "Train acceleration rate" and "Train deceleration rate" settings.[/p][p]These settings only affect when smooth acceleration is enabled, which by default is when you are in miniature mode.[/p][p]This means that when you are in large scale trains will speed up and slow down in a faster snappy movement (like a real model railway) but when you are in miniature mode, they will accelerate and brake much slower, like a real world locomotive. [/p][p][/p][h2]Steam workshop improvements [/h2][p][/p][p]A big behind-the-scenes part of this update is that I've completely changed the Steamworks framework that Rolling Line uses! (this means all of the features relating to connecting to Steam).
This is mostly invisible to players, but it means a lot under the hood.[/p][p]The main difference you will notice is that the workshop uploading and updating process has changed a bit. The uploading process now has a completely different system for error reporting and will show you much more detailed error messages when your item fails to upload (hopefully putting an end to the dreaded "Generic failure" upload message!). [/p][p]The files for your current upload are now temporarily stored in a new folder:[/p][p]...\\Steam\\steamapps\\common\\Rolling Line\\Modding\\workshop upload temp[/p][p]So if you want to use a custom thumbnail you can modify the files in this folder before clicking upload.[/p][p]Previously you needed to find the upload folder in appadata, so it's much easier now having it in the main Rolling Line directory[/p][p][/p][p][/p][h2]Updating workshop items[/h2][p][/p][p]The workshop item update process now works quite differently, instead of needing to have a local copy of all the workshop items you had uploaded in the past, you can now access every single item your account has ever uploaded!
Having the original mod files on your PC is no longer required. [/p][p]When you choose the option to update a workshop item you will see a list of all your previously uploaded items (you need to be connected to Steam for these to load!). Simply choose the item you want to update and the rest of the process is the same as it was before.[/p][p]Another bonus of this system is that the title and description that you have set on Steam will be used, so if you have edited your description manually through Steam then this new description will be kept when updating. [/p][h2]
Steam status display[/h2][p][/p][p]Something else that this new Steamworks integration includes is the Steam "rich presence" feature, which means Rolling Line can set a custom status to display to your friends while you are playing. [/p][p]Currently, these statuses are:[/p]
  • [p]Making mods[/p]
  • [p]Building maps[/p]
  • [p]Driving trains [/p]
[p]And once multiplayer is released:[/p]
  • [p]Hosting multiplayer[/p]
  • [p]Playing multiplayer [/p]
[p]This feature is really just a bonus for fun, and if you would prefer for it not to be displayed you can turn it off using the setting in "Pause menu -> Misc -> Enable Steam public status"[/p][p][/p][p][/p][h2][/h2][p][/p][h2]Other fixes and features:[/h2]
  • [p]Fixed bug where opening the custom tag setting menu for a workshop item upload would not appear correctly when using the 2D menus.[/p]
  • [p]Text box menu settings (e.g. the description for workshop items) now clip their text display correctly so the text wont overflow. [/p]
  • [p]The "max speed" setting for mods now scales in a much more logical way. Instead of being exponential, it is now linear. [/p]
  • [p]Fixed shadow casting on the Weka Pass map's road models. [/p]
  • [p]Fixed bug where toggling fullscreen when using 2D menus would lock the cursor. [/p]
[p][/p][h2]Multiplayer progress [/h2][p][/p][p]While I'm still working on other features (like this update) most of my time is going towards developing multiplayer! Progress is going great, and the main features I've been working on recently are things relating to Steam.[/p][p]You can now easily host a game and invite your friends to join you, all entirely within Steam! [/p][p][/p][p][/p][p]Of course you can still host and join servers using a traditional IP & port connection, which means a connection to Steam is not required to play multiplayer. And you can easily host a LAN game on your local network. [/p][p]I've also been working heaps on multiplayer synchronization for controls and gameplay features, like controlling pantographs/lights/loading/unloading/cab controls/etc.[/p][p]It's all working really well![/p][p][/p][p][/p][p][/p][p][/p][p]Multiplayer development is well underway, and it might not even be that long before I start running private beta testing.
These are really exciting times for Rolling Line, and I can't wait for multiplayer to be complete![/p][p][/p][h3]And thank you to all my Patreon supporters![/h3][p]Ábris Pataki, Ben Burch, Blake Prevett, CAMOGUY54321, Detroit_, Douglas Niven, Don Willis, Garst, Gustavo Sanchez, Helga Nordgren, HuskyDynamics, ItzAerozic, Jack Fruh, Jayton Hawkins, Joblogh, JohnR, Jonathan Ginsburg, KathalLasagna, Leto Gloas, Lutz, Lynk_Wyland, Matt, Matthew Johnson, Michelle chan, Microcosmologist, Nathan Perez, NESecretWeapon, Outertoaster, Railraider, Richard Prior, Rivet, Rowan Mackenzie, SmokeStream, TheAmazingRyry, Thomas Merolla, Trackmeister, TrainMann, TrainTiny[/p][p]You can join the Patreon to help support me to keep making free updates![/p][p][/p][p][/p]

Wagon gravity! v5.33

[p][/p][p]As the last update post announced, multiplayer is officially in development! [/p][p]But that doesn't mean that all updates stop for months until that's done, I do still have lots of features I want to work on before releasing multiplayer, and it's good to have some variety while I spend the majority of my time working on multiplayer programming. [/p][p]So here's a very fun feature that I've wanted to add for ages:[/p][h2]Freight wagons now have gravity and can roll down sloped tracks![/h2][p][/p][p][/p][p]Basically, if a wagon is on a sloped track and is not connected to any locomotives it will freely roll downhill and then slowly come to a stop on flat ground. Locomotives act as 'anchors' and will stop any connected wagons from rolling downhill. You can also now control brakes on individual freight wagons. If a wagons brakes are enabled then it will stop it from rolling downhill and will also block any other connected wagons from rolling too. [/p][p]You can point at a wagon and press B to toggle brakes, or change the setting in the wagon options popup menu. [/p][p][/p][p][/p][p][/p][h2]Settings for momentum[/h2][p]You can also adjust how quickly rolling wagons speed up and slow down, or even disable gravity entirely.
To help with compatibility with older maps, any wagons that are already on slopes when loading an older save will not be affected by gravity until you interact with them. [/p][p][/p][p][/p][p][/p][p][/p][h2]Hump yards & AI triggers [/h2][p]These new gravity features can be used alongside AI trigger signs (like decoupling) to make automated hump yards! [/p][p][/p][p][/p][p][/p][p]There is also now a new setting added for AI trigger signs which controls whether they affect locomotives or wagons:[/p][p][/p][p][/p][p][/p][h2]Bonus feature: pixel art generator! [/h2][p]Since I've been working on a lot of technical stuff recently, I wanted to do a very quick and easy feature just for fun. So you can now create pixel art automatically using the 'spray' feature.[/p][p][/p][p]Simply replace the "spray.png" image in the folder:[/p][p]C:\\Program Files (x86)\\Steam\\steamapps\\common\\Rolling Line\\Modding\\spray.png[/p][p][/p][p][/p][p]As long as the image is less than 100x100 pixels you can paint it directly into the game as pixel art:[/p][p][/p][p](And yes I've been playing a lot of Deltarune recently) [/p][p][/p][p]You can switch between the normal spray function (which is just an image texture) and the new pixel art feature using these settings in the "pause menu -> misc" menu:[/p][p][/p][p]The pixel art is made out of normal in-game cube props and each cube is painted to the correct color for the image. You can use the bulk move tool to shift the new props around your map too:[/p][p][/p][p][/p][h2]Load screen text now scales with resolution [/h2][p]The loading screen text & logo now scales with screen size, and you can further adjust the scale factor using the UI scale setting in the "PC options -> interface" menu.[/p][p][/p][p][/p][p][/p][h2]In other multiplayer news:[/h2][p]Progress on multiplayer has been going great! I've been posting lots of news on the official Discord server and lots of features are in the works. Especially things like animations and interaction. You can play different "emotes" from a list of animations, and when modding is added you will be able to include your own animations alongside a custom 3D player model! [/p][p][/p][p]Also the basics of character customization are already in progress![/p][p][/p][p][/p][p]Very exciting stuff!
I'll keep posting progress alongside these normal updates.[/p][p]...And as things move along I'll eventually even be doing beta testing! [/p][p][/p][h2]New Patreon video[/h2][p]I've also made a new video discussing the behind-the-scenes debug info about how the wagon movement system works, and how the new gravity feature fits into this. You can watch that video now here on the Rolling Line patreon:[/p][p]Wagon movement physics - devlog[/p][p][/p][p][/p][h3]And thank you to all my Patreon supporters![/h3][p]Matt, Ábris Pataki, NESecretWeapon, JohnR, ItzAerozic, Matthew Johnson, Microcosmologist, Blake Prevett, TrainTiny, Thomas Merolla, Lutz, Don Willis, Jayton Hawkins, Helga Nordgren, Leto Gloas, TheAmazingRyry, Outertoaster, Nathan Perez, TrainMann, Railraider, Garst, Richard Prior, Joblogh, Detroit_, CAMOGUY54321, Ben Burch, Gustavo Sanchez, Michelle chan, Jack Fruh, Jonathan Ginsburg, Lynk_Wyland, SmokeStream, KathalLasagna, Rivet, HuskyDynamics, Trackmeister[/p][p]You can join the Patreon to help support me to keep making free updates![/p][p][/p][p][/p]

Multiplayer is in development!

[p][/p][p][/p][p]You probably never thought this day would come, but Rolling Line is officially going to be getting multiplayer! I've been working on developing multiplayer in the background and I'm finally at the stage of being able to show it off. [/p][p]A full release of multiplayer is still a long time away though, so don't get too excited just yet, but so far progress is going great and I'm really happy with how it's currently looking! [/p][p]Everything in this news post is VERY work-in-progress and will likely look very different before it's released. Especially the character models and interactions.[/p][p][/p][p]Here are the main key points about what I'm planning for Rolling Line's multiplayer:[/p][p][/p][h2]Servers will be peer-to-peer[/h2][p]This means one person will "host" a map on their computer, and they can send a code to other people to let them join. I can't confirm yet whether there will be a public lobby system, I need to do more research and test things out before confirming this. [/p][p]You can host any save file you like, and if it requires mods then all joining players will need to also have those mods downloaded to be able to see them. [/p][p][/p][h2]Map editing will NOT be included in the release of multiplayer[/h2][p]I will be working on adding map editing in a future update, but for now it will just be train operations (everything except placing props & track). The reason I'm doing it this way is because map editing is going to be a massive, massive job. It would be a much better option to focus on the basics of multiplayer and get this ready for people to play sooner, rather then trying to do everything at once. [/p][p]So I can't make any promises as to how map editing will work, or when it will happen. There will be more news on that once the core features of multiplayer are done. [/p][p][/p][h2]The player model will be customizable & moddable[/h2][p]You will be able to customize your player model with things like basic clothing and colors, as well as choosing from some default model presets. And of course player models will be fully moddable using a similar system to prop modding, so you will be able to import 3D models to use as your player avatar. [/p][p][/p][h2]Player animations [/h2][p]I haven't yet decided how to manage player model animations, but the most likely system will be that your player model will have pre-set "gestures" like pointing and waving. But if you have a modded player character model then you will also be able to import custom animations! [/p][p]VR players will hopefully have some form of hand tracking, but I haven't researched anything about how to do this yet. [/p][p][/p][h2]Support for voice chat and text chat[/h2][p]Pretty much a requirement for any good multiplayer game, this will of course include voice chat and text chat. I would also love to add some sort of hand-held radio system, but I can't confirm details on how this will work yet. [/p][p][/p][p]And much more! [/p][p]I won't make too many promises since multiplayer is still VERY early in development and I'll be confirming things as I go. At the moment I am just focusing on the core framework and getting things to a fully playable state, so all the finer details will come later.[/p][p][/p][p]Speaking of which, here's the first ever captured photo of Rolling Line running in multiplayer! [/p][p][/p]
Progress so far
[p]The reason I'm announcing this now is because I've finally gotten the core functionality of multiplayer working and I'm starting to get a good idea of what's possible (and what's not).
I'm still testing out various networking connection options, so a lot is still not set in stone. Most of what you're seeing is placeholder and VERY work-in progress.[/p][p]The character models are just temporary, in fact these are from Spicy Tamale's prop mod: [/p][p][dynamiclink][/dynamiclink]Things like animations, and displaying what players are holding in their hands is not in the game yet, but here are some examples of what the current state of multiplayer is like:[/p][p][/p][h2]Train interaction[/h2][p]All of the train interaction from singleplayer also work in multiplayer, so you can pickup and place trains, push trains, etc. And other players can see you doing this:[/p][p][/p][p][/p][h2]Riding trains[/h2][p]You can ride on trains, and see other players both on & off trains! You can have multiple people riding on a single wagon, so people can be inside the cab while others stand on the outside:[/p][p][/p][p][/p][p][/p][h2]Miniature & large scale [/h2][p]And you can be in both miniature and large scale, and see other players doing the same thing! [/p][p][/p][p][/p][p][/p][p]And of course you can play on any map you like!
When a player joins a server they will download the map data directly from the server.
(Though I have not yet confirmed how I'm going to manage mods, whether it will require everyone to be using the Steam Workshop, or whether mod files can be downloaded directly when joining a server). [/p][p][/p][p][/p][p]Anyway, in conclusion, I'm really excited to finally be announcing this, and there will be lots more news coming as I make more progress. [/p][p]Multiplayer has always been such a far off dream, so seeing it actually in action is quite surreal. [/p][p]But this is going to take a TON of work! The progress I have so far is just the basics, there's a huge amount of work between this and a finished and fully-featured multiplayer update. [/p][p]My estimate would be several months at least, but we shall see.
And I'm still going to be releasing some smaller gameplay related updates before then. [/p][p]Exciting times! [/p][p][/p][h3]And thank you to all my Patreon supporters![/h3][p]Matthew Johnson, Microcosmologist, Blake Prevett, TrainTiny, Thomas Merolla, Lutz, Don Willis, Jayton Hawkins, Helga Nordgren, Leto Gloas, TheAmazingRyry, Outertoaster, Nathan Perez, TrainMann, Railraider, Garst, Richard Prior, Joblogh, Detroit_, CAMOGUY54321, Ben Burch, Gustavo Sanchez, Michelle chan, Jack Fruh, Jonathan Ginsburg, Lynk_Wyland, SmokeStream, KathalLasagna, Rivet, HuskyDynamics, Trackmeister[/p][p]You can join the Patreon to help support me to keep making free updates![/p][p][/p]

Major optimizations: loading and RAM! v5.32

[p][/p][p][/p][p]It might not be very glamorous or exciting, but optimization is a REALLY important part of game development and it's great to spend some time making improvements every now and then. [/p][p]This update is entirely focused on optimization, specifically around RAM (memory) usage and speeding up the map loading process! [/p][p][/p][p]These changes especially improve loading large maps with a lot of track, and when testing some famously large maps (like Beaumont, Nevada Arizona & Utah, Continental United Sates V2, Thunder Mountain Line) the improvements have been amazing:[/p][p]Nevada Arizona & Utah:[/p][p]RAM usage: 3.4gb -> 1.6gb of (52% reduction)
Load time: 15 seconds -> 10 seconds (33% reduction)[/p][p]Beaumont:[/p][p]RAM usage: 7.3gb -> 3.4gb (53% reduction)
Load time: 57 seconds -> 41 seconds (28% reduction)[/p][p]Continental United Sates V2:[/p][p]RAM usage: 4.2gb -> 2.5gb (40% reduction)
Load time: 41 seconds -> 20 seconds (51% reduction)[/p][p]Thunder Mountain Line:[/p][p]RAM usage: 5.3gb -> 3.4gb (35% reduction)
Load time: 45 seconds -> 31 seconds (31% reduction)[/p][p][/p][h3]That's a massive 45% average reduction in RAM usage and 35% average reduction in load times! [/h3][p][/p][p]These optimizations come from two main places:[/p]
  • [p]Changes to how track is loaded. Only the bare minimum track data is loaded when opening a map (just waypoint position data for the trains to use) and no visual meshes or textures are loaded. Instead the visuals for track are dynamically loaded as you move around the map in the same way props are. Basically track can now exist in either a "partially loaded" or "fully loaded" state. [/p]
  • [p]Changes to how mesh data is stored and managed. I've done a huge deep-dive on where mesh data is being duplicated and improperly handled, and I found several great optimizations where mesh data could be reduced. This kind of "unnecessary mesh duplication" bloat builds up in the background and can be hard to spot, so tracking this down and improving it makes a big difference on large maps. [/p]
[p]Aside from these two main points, I've also made a ton of smaller improvements here-and-there which affect how the game loads meshes, textures and handles RAM. [/p][p][/p][p]Here is a full list of all the changes in this update:[/p]
  • [p]Improved RAM management for loading screen custom images[/p]
  • [p]Loading screen images can now have any aspect ratio and will correctly scale to fit any sized screen[/p]
  • [p]Fixed flickering/flashing when loading in distant chunks while moving around the map [/p]
  • [p]Improved map startup loading in several ways[/p]
  • [p]Fixed bug where people using the old inventory selection system would experience issues when saving the game from the menu[/p]
  • [p]The item held in your hand is now correctly re-equipped when exiting a 2D menu[/p]
  • [p]Added new loading screen step for "reading save data file" when loading very large save text files[/p]
[p][/p][p]Over on the Patreon I've also made a devlog video going into detail about how all of these optimization features work under-the-hood, and talking about how Rolling Line loads maps:[/p][p]You can join the Patreon and view the video here! [/p][p][/p][p][/p][p][/p][h3]And thank you to all my Patreon supporters![/h3][p]
GaugeGang:
SmokeStream[/p][p]Rolling Line enjoyers: Helga Nordgren[/p][p]Model railroaders: Lutz, Jayton Hawkins, TheAmazingRyry, CAMOGUY54321, Jonathan Ginsburg[/p][p]Railfans: TrainTiny, Thomas Merolla, Don Willis, Leto Gloas, Outertoaster, Nathan Perez, TrainMann, Railraider, Garst, Richard Prior, Joblogh, Detroit_, Ben Burch, Gustavo Sanchez, Michelle chan, Jack Fruh, Lynk_Wyland, KathalLasagna[/p][p][/p][p]You can join the Patreon to help support me to keep making free updates![/p][p][/p][p][/p][p][/p]

Custom loading screens! v5.31

[p][/p][p][/p][p]This update makes a really nice quality-of-life change that I've been meaning to add for ages.
The game now has screenshots for loading screens (instead of just the grey background) and of course you can add your own too! [/p][p]Each of the main official maps has their own set of loading screen images, and you can even set your own custom images for your own maps, and include them when uploading to the Steam workshop. [/p][p][/p][p][/p][p]To use a custom set of loading screen images for a single save file, all you need to do is make a folder called "custom load screens" and put your custom images in there![/p][p][/p][p][/p][p]You can add your own general custom loading screen images to the folder:
...Rolling line / modding / custom load screens[/p][p][/p][p][/p][p]You can put any .jpg or .png images you want in there! [/p][p][/p][p][/p][p]There's also several settings to customize how loading screens are displayed:[/p]
  • [p]Load screen refresh - change how frequently images are changed.[/p]
  • [p]Show mod count warning - enable/disable a warning message which shows when you have a large number of mods installed.[/p]
  • [p]Allow infinite view map preload - this setting is off by default, which means that if you have your view distance set to "infinite" the game will not load the entire map in one go (since this is likely to crash or freeze the game on very large maps). It will only load the area around you and then load the rest once the loading screen ends. [/p]
  • [p]Loading screen images - change whether the built-in official loading screens are included in the shuffle list. You can choose to instead use images in the "custom load screens" folder only. [/p]
[p][/p][p][/p][p]And a few other smaller features & fixes:[/p]
  • [p]The quicksave screen now has a different visual style, it just blurs the game instead of using a full-screen loading screen.[/p]
  • [p]The RAM usage message on the loading screen now changes colors (yellow, orange, red) to show when you are running out of RAM.[/p]
  • [p]The "Batching props" stage of the loading screen has now been split into segments, showing progress of each chunk loaded.[/p]
  • [p]VSync is now force disabled when launching in VR (since this can cause problems when enabled).[/p]
[p][/p][p]It's amazing how much of a difference it makes to have pretty screenshots to look at during a loading screen makes, I should have added this ages ago!
This is just another step closer to the game being more polished and approachable to people, which is my goal at the moment (just like the previous tutorial update). And there's lots more to come. [/p][p]Have fun! And I'm keen to see what kind of bizarre custom loading screens people are going to use! [/p][p][/p][p][/p][h3]And thank you to all my Patreon supporters![/h3][p]
GaugeGang:
SmokeStream[/p][p]Rolling Line enjoyers: Helga Nordgren[/p][p]Model railroaders: Lutz, Jayton Hawkins, TheAmazingRyry, CAMOGUY54321, Jonathan Ginsburg[/p][p]Railfans: Thomas Merolla, Don Willis, Leto Gloas, Outertoaster, Nathan Perez, TrainMann, Railraider, Garst, Richard Prior, Joblogh, Detroit_, Ben Burch, Gustavo Sanchez, Michelle chan, Jack Fruh, Lynk_Wyland, KathalLasagna[/p][p][/p][p]You can join the Patreon to help support me to keep making free updates! [/p][p]https://patreon.com/RollingLine?utm_medium=unknown&utm_source=join_link&utm_campaign=creatorshare_creator&utm_content=copyLink[/p][p][/p][p][/p]