
[Suggestion]: Allow part slots on roads (and others)
bobgrey1997 opened this issue ยท 8 comments
I've been working on signs for a few years now for this mod. Recently, I finally started working on roads.
Since signs and roads go hand-in-hand, it only makes sense to allow parts on road objects. I know the current sign system is entirely different from parts, but I can easily make "parts" in the shape of poles, then give those pole parts part slots for the signs, and connect these directly to the roads so that they follow the curves of the roads.
That'd work, but the idea of having part slots also expands to the signs and poles themselves. If we could put parts on signs, that would make it so much more user-friendly to create large overhead signs with different arrows, route shields, and more on them. I wouldn't need a few dozen different unique signs for a simple one-lane exit due to the amount of potential combinations of arrow and route shields.
I wouldn't even know how to debug most things. I know about signs, and now roads, and I somewhat know some things about parts. I've seen features get discussed on Discord about bullets, their physics, partical animations, and things like that. I wouldn't even know how to test them because I don't know what the "correct" things to look for are.
Features that relate to signs and roads, though, I can test. I have a new job now working in a factory, so it will probably be some time before I can even make use of features like this right now, so no rush.
If I have to make my signs static models (instead poles stacked on top of each other with signs attached to that), I can probably get most of them ported into that form pretty quickly for testing. If I can use the existing pole and sign system with the roads, then I've already got everything I need to test that.
So roads are blocks, and blocks can't have parts per-se. I could see about adding some slot stuff via pure rendering, but that'd be tough. Would it be amicable to simply make it so some pre-built road sections could be placed with poles and their blocks built-in? Say so you could place pre-built intersections and such? Or are you wanting signs on curves and such?
I haven't done much work with pre-built static road assets yet, but I've got a whole can of worms to dig into for that.
This idea was primarily to be able to place signs on curves or other angled roads that would be rotated to face approaching traffic. This could be very useful for delineator chevrons around corners.
If this system would work similarly to parts on vehicles, it could also allow me to assign default parts so that I could, for example, have a highway road automatically place reflector posts on the sides that could then be removed if you wanted to place a driveway or something where it is.
Depending on how this system works, it might even allow us to make the roads themselves modular in that when the road is first placed, it is a single lane that we could then add parts onto the sides of to add more lanes, line types, shoulders, curbs, sidewalks, etc. If this can be done, I would focus on make lane types (different types of pavement, unsaved, different widths, different line lengths, widths, and colors, different types of shoulders, etc).
There is a lot of potential here for MTS to not only be the best vehicle mod, but also the best road and general transportation mod out there.
So for this, I think you want road elements. Where you can choose to put road signs on the side of the road and they'll evenly-space for that section of road. So you'd make the sharp curve, and set the "arrows" part, and it'd space them automatically. Or stuff like guardrails. As to more lanes: that would need to be a wider road section, I can't dynamically allocate those since pathing is per-part. But everything else could be done.
But it'll be a bit of time while I get folks to debug all these other fixes. Iffin you got time to debug stuff, it'll help push stuff though. I always feel more motivated when I get ahead of my testers!
Noted. I'll put this as the more primary priority over the other stuff, but it'll have to wait a few months if I'm honest.
Best of luck at your new job!