Page 6 of 12

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 7:31 pm
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 !!!

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 7:41 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 7:43 pm
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

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 7:45 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 8:18 pm
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?

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 8:18 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 8:29 pm
by garrotte
Marvellous ! Thank you!

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 8:30 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 8:51 pm
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!

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 9:09 pm
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?)

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 9:11 pm
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?

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 9:14 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 9:35 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 9:57 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 10:00 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 10:08 pm
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.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 10:10 pm
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 2425 times

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 11:14 pm
by Mooncat
Imagine you are working on a planetary rail network
20230922235222_1.jpg
20230922235222_1.jpg (1.11 MiB) Viewed 2341 times
with each junction looks like this
20230922235236_1.jpg
20230922235236_1.jpg (1.01 MiB) Viewed 2341 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 2341 times
I can finally get rid of those ugly curves.

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 11:16 pm
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

Re: Friday Facts #377 - New new rails

Posted: Fri Sep 22, 2023 11:31 pm
by Attal
Old rails are fine

Please, add the bridge!