Friday Facts #377 - New new rails

Regular reports on Factorio development.
Joe Black
Burner Inserter
Burner Inserter
Posts: 17
Joined: Fri Sep 08, 2023 8:11 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by Joe Black »

Again, it also becomes visible how you work with the project. Terrific. Having this complexity under control requires a lot of things that even 'big' studios rarely manage to do properly. If they had your budget, they would probably all have failed.

I have already programmed rail systems myself with 16 directions and three rail arc radii like you. I didn't have the problems.
- Basically I copied it from a model railway track model with 3 different arc radiuses.
- Certain combination types of rails existed as entire components. The connections were just easier this way (for me as a programmer).
- I solved the last few pixels by calculatedly dragging the graphic.
Yours certainly has significantly more flexibility.

Congratulations!!!

Wieder wird nebenbei auch sichtbar wie ihr mit dem Projekt arbeitet. Hervorragend. Diese Komplexität im Griff zu haben bedingt vieles, was auch 'grosse' Studios selten richtig schaffen. Hätten die euer Budget, hätten sie wohl alle versagt.

Ich habe selber schon Schienensysteme programmiert mit 16 Richtungen und drei Schienenbogen Radius wie ihr. Ich hatte die Probleme nicht.
- Grundsätzlich habe ich es einem Modelleisenbahnen Schienenmodell mit ebenfalls 3 verschiedenen Bogen Radius abgeschaut.
- Bestimmte Kombinationsarten von Schienen hat es als ganze Bauteile gegeben. Die Anschlüsse stimmten auf diese Weise einfach einfacher (für mich als Programmierer).
- Ich habe die letzten Pixel durch berechnetes ziehen der Grafik jeweils gelöst.
Eueres hat sicher bedeutend mehr Flexibilität.

Gratuliere !!!
thermomug
Inserter
Inserter
Posts: 25
Joined: Fri Sep 08, 2023 1:51 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by thermomug »

As someone who likes to build his base in a chunk-aligned grid (with 16/8 subgrids), the additional range of big poles sounds awesome! (I know chunks are some technical thing that should not matter, but I just cannot go back to freestyles building anymore)
Still hoping for train tunnels/bridges though - the possibilites like building high-speed rail lines or optimizing congestion problems just seem to charming to me.
Trains would not actually have to change elevation because that would complicate the physics. Height differences would be mere an optical illusion, just like cliffs.
Huge shoutout to the amazing coding work - factorio is not just a brilliant game about engineering, but also a work of art in software engineering.
Blacky007
Fast Inserter
Fast Inserter
Posts: 180
Joined: Fri Dec 29, 2017 8:05 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by Blacky007 »

I really would like to know if it is possible to have a switch between 45° Curve and 22,5° curve system?
I have a big 6x6 junction system and would like to know how mutch work it take to rework everything

Edit: made a new link
https://factoriobin.com/post/l5rFFiAl

Greetings Blacky
Last edited by Blacky007 on Sat Sep 23, 2023 12:11 am, edited 1 time in total.
My color birthday was May 2nd 2020 - Thank you Enchroma
Zelle
Burner Inserter
Burner Inserter
Posts: 7
Joined: Tue Jan 28, 2020 5:46 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by Zelle »

This is fantastic news!

As someone who has dedicated every single Factorio world to trains and rails, I welcome those big news like it was salvation to all of my problems.
Depression cured.

There is only one thing that can make this more perfect.
Can we please see concrete overlay the rail bed, so it looks like a railway crossing?

Those changes genuenly revolutionize the way I think about building rail networks, and I can't wait to try them out!
Already planning to play a nice, long game with my friends, including the paid content, which too looks magnificent.
mwls
Inserter
Inserter
Posts: 32
Joined: Wed Jan 18, 2023 6:00 am
Contact:

Re: Friday Facts #377 - New new rails

Post by mwls »

the code of the rail system accumulated some technical debt over time, like:
  • Hard-coded connectivity rules
  • Hard-coded rail planner logic
  • Curved rail being the only entity with multiple bounding boxes
  • Diagonal rails had front and back signal positions overlapping
I know that these are generally engine-internal issues that don't impact players, but I'm curious if you have been able to fix them.

Also I don't understand what is meant by the last one—what are front and back signal positions?
StansTheMan
Inserter
Inserter
Posts: 20
Joined: Sat Mar 30, 2019 5:43 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by StansTheMan »

Love it!

Idea: When two railway tracks are offset by 2 tiles, side by side without gab; display a different railway sprite that shows both tracks being ontop the same track ballast / trackbed.
User avatar
garrotte
Burner Inserter
Burner Inserter
Posts: 18
Joined: Tue Mar 10, 2020 5:10 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by garrotte »

Marvellous ! Thank you!
scarhoof
Inserter
Inserter
Posts: 45
Joined: Tue Sep 15, 2015 5:44 am
Contact:

Re: Friday Facts #377 - New new rails

Post by scarhoof »

I'll totally boost that speculation train: Wireless signal combinator confirmed?
Image
[/quote]

I think whatever it is is being held by the inserter, and not part of the chest itself. It almost looks like a Green Circuit but that's not right.
yeahtoast
Inserter
Inserter
Posts: 21
Joined: Wed Feb 27, 2019 6:17 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by yeahtoast »

Xyletic wrote: Fri Sep 22, 2023 4:52 pm I really like this change, it's "simple" on paper, but will add so much benefit to the game. I do have a question though.

Image

For this image, and perhaps a point I missed, will we be able to also signal in-between these gaps now? As much as the image is a dream come true, without signaling, this specific example won't add too much value to the new system unfortunately.

Thanks!
I was going to ask this myself. Unless we can put signals between these, I'll have to keep using angled siding stacks for waiting trains, though at least the shallower angles will help save space. Would love a definitive answer!
jgilmore42
Inserter
Inserter
Posts: 38
Joined: Tue May 14, 2019 12:56 am
Contact:

Re: Friday Facts #377 - New new rails

Post by jgilmore42 »

Saiph wrote: Fri Sep 22, 2023 2:46 pm The rail updates look really good, except for one thing. You briefly mentioned the problem of manual control when going through complex junctions. How would manual train control be implemented in the final graphic in your post, where one rail splits into five parallel tracks? I think it would be pretty difficult to manually select the correct line from the five options.
Personally, I don't care. And I don't think most other people do either.

For simple things, yeah, manual control is nice to have.

For complex things? I wouldn't be able to navigate that sucker no matter HOW easy, predictable, and controllable you made it.

I might be just that I suck at the "game" part of video games, but I've always had problems manually navigating my trains. But with the temporary train stop functionality that was recently added, I haven't had to worry about manually navigating trains through junctions anymore. (ctrl-click can now send your train to ANY rail that's accessible from the train's current position. It's REALLY REALLY NICE and I love it. Though I do sorta wish that I could set the delay at station to "zero" so that the train doesn't go BACK to the old temporary train stop if I interrupt it and forget to delete the stop. Can't say how many times I've done that.)

So, for me, don't worry about even making manual control POSSIBLE in all circumstances!

It's not like I'll use it for much more than "go forward to build more rails." (Shouldn't I be referencing flying monkeys at this point?)
jgilmore42
Inserter
Inserter
Posts: 38
Joined: Tue May 14, 2019 12:56 am
Contact:

Re: Friday Facts #377 - New new rails

Post by jgilmore42 »

I'll second who ever said we should be able to directly edit train stop names in a trains route.

Losing a complex rule hurts, man. Especially if it's several, and you just need to change "iron" to "copper" and be done, but NOOO.... you have to redo the whole condition, and hope like hell you get it right.

Shouldn't be that hard, it's a string anyway, right?
User avatar
BrainlessTeddy
Long Handed Inserter
Long Handed Inserter
Posts: 96
Joined: Sun May 19, 2019 7:50 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by BrainlessTeddy »

dasiro wrote: Fri Sep 22, 2023 7:29 pm Is it too much to be asking for signals to be part of the track? If you increase the amount of rails in a single shape for example:
  • no signals
  • 1 light
  • 2 lights
  • 1 chain
  • 2 chains
  • 1 light 1 chain
then you should need to put logic in place that you can't put 2 signal rails on top of each other and suddenly creating a railsystem is simplified tremendously + you could get rid of left/right hand side designs by just using a mirror image
Don't get what you mean with the bullet points but yeah having the signals be part of the rail seems nice. Tho having signals determine the direction can often be useful also I like the challenge of signaling intersections correct. Just removing the signals hitbox so to speak seems nice enough. But other than having very dense train stackers that might be not as useful as you might think.
Please consider english is not my native language.
bman212121
Fast Inserter
Fast Inserter
Posts: 144
Joined: Mon Apr 18, 2016 8:08 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by bman212121 »

Tooster wrote: Fri Sep 22, 2023 3:45 pm Awesome changes.

There is one thing I don't quite understand yet, and would love some clarification: Why must rails be constrained to grid at all?
I'm asking because I'm curious what bad things would result if rail control points could be placed anywhere. By default they could be snapped to integer coordinates like they are now, but holding shift to fine-control the control point could allow for the ultimate flexibility. Things like "project point onto bezier" and "distance to bezier" would then be used to assure that curves aren't placed too close.

Any rail-related things could then be stored separate from the tiles, so that signals, rails, stops etc could be placed compactly everywhere. They would just snap to the curve (positions represented in "rail space" as distance along the curve instead of the "tile space"). When there is a need to interface between rail-world and other machines, the rails would only have to be "close enough".
I suspect what you are asking would be very problematic with saving the game. You wouldn't want to save a non integer because it's not accurate and it would take up far more room for every single curve. If the end control points were integer based, in theory some of the middle ones could be free floating like you stated, but that would require them to be recalculated every time they were loaded. With thousands of curves that would likely slow things down in several places.

The other problem that would become quite obvious over time is that something as simple as pi is infinite in calculation. So every time you modified that data, you would have to round off the information somewhere, which could lead to rounding errors and things moving out of place. I could even see where in order for another player to join a map the game would need to try to round off the information, and it certainly could be possible that players map data would become out of sync with each other over the differences in rounding. Using integer means you don't have to worry about rounding and whether or not the data becomes inaccurate since every placement is exact.
bluemonk
Burner Inserter
Burner Inserter
Posts: 10
Joined: Sat Mar 02, 2019 6:07 am
Contact:

Re: Friday Facts #377 - New new rails

Post by bluemonk »

you are solving a problem that i did not even know i had. but now that i know, i want to have the solution!

the only thing that bothered me personally when it comes to trains was how signals work. if you place only *one* signal at a rail-crossing the train refused to enter that crossing on the other side, because there was no signal. this was super confusing to me at the beginning, because a real train would not stop somewhere and stay there forever if there was no signal. but still factorio alway forced me to built two signals per rail at a rail crossing. i never understood why trains wouldn just pass the crossing when they come from the side without a signal or why factorio wouldn directly place both signals at once when they are mandatory.
Zaflis
Filter Inserter
Filter Inserter
Posts: 512
Joined: Sun Apr 24, 2016 12:51 am
Contact:

Re: Friday Facts #377 - New new rails

Post by Zaflis »

Blacky007 wrote: Fri Sep 22, 2023 7:43 pm I really would like to know if it is possible to have a switch between 45° Curve and 22,5° curve system?
I have a big 6x6 junction system and would like to know how mutch work it take to rework everything

https://pastebin.com/rpPkhNkh

Greetings Blacky
Factorio users prefer https://factoriobin.com/ instead of pastebin. It will not only share the blueprint but also build in image what it looks like for web viewing. Also pastebin is known to delete the blueprints, which was why community discarded it.
HelloItsMe
Manual Inserter
Manual Inserter
Posts: 1
Joined: Fri Sep 22, 2023 10:04 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by HelloItsMe »

svalorzen wrote: Fri Sep 22, 2023 11:29 am This looks wonderful! I'm wondering, is signaling even possible in the last image?
my thoughts exactly, but i am sure that they have a plan for that.
Zaflis
Filter Inserter
Filter Inserter
Posts: 512
Joined: Sun Apr 24, 2016 12:51 am
Contact:

Re: Friday Facts #377 - New new rails

Post by Zaflis »

Xyletic wrote: Fri Sep 22, 2023 4:52 pm Image

For this image, and perhaps a point I missed, will we be able to also signal in-between these gaps now? As much as the image is a dream come true, without signaling, this specific example won't add too much value to the new system unfortunately.
This brings to mind that modders can already place inserters inbetween 2 belts that have no empty space between:
https://mods.factorio.com/mod/Kux-SlimInserters
So perhaps they can add signals to rails too. It's unless there is some real restriction in place.
thin_inserter.jpg
thin_inserter.jpg (99.58 KiB) Viewed 3410 times
User avatar
Mooncat
Smart Inserter
Smart Inserter
Posts: 1196
Joined: Wed May 18, 2016 4:55 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by Mooncat »

Imagine you are working on a planetary rail network
20230922235222_1.jpg
20230922235222_1.jpg (1.11 MiB) Viewed 3326 times
with each junction looks like this
20230922235236_1.jpg
20230922235236_1.jpg (1.01 MiB) Viewed 3326 times
waiting to be plugged in a new save for 2.0,

and then you read this FFF, realising all your work has to be redone.
0_ZjYSm_q36J4KChdn.jpg
0_ZjYSm_q36J4KChdn.jpg (139.52 KiB) Viewed 3326 times
I can finally get rid of those ugly curves.
Toastinator
Burner Inserter
Burner Inserter
Posts: 9
Joined: Fri Sep 22, 2023 11:14 pm
Contact:

Re: Friday Facts #377 - New new rails

Post by Toastinator »

I really Hope they add Rail Stations at 45 Degrees! Ive been wishing for that for a long time.

Love the new Rails
Attal
Inserter
Inserter
Posts: 23
Joined: Fri Dec 23, 2016 9:49 am
Contact:

Re: Friday Facts #377 - New new rails

Post by Attal »

Old rails are fine

Please, add the bridge!
Post Reply

Return to “News”