Standardized Roadtype and Tramtype Schemes?

Discussions about the technical aspects of graphics development, including NewGRF tools and utilities.

Moderator: Graphics Moderators

Post Reply
SimYouLater
Chief Executive
Chief Executive
Posts: 676
Joined: 03 Apr 2016 20:19

Standardized Roadtype and Tramtype Schemes?

Post by SimYouLater »

Is this a good idea, or is it redundant?

I could at least see it working for trams, since there are both meter gauge and standard gauge tram track types.
Licenses for my work...
You automatically have my permission to re-license graphics or code by me if needed for use in any project that is not GPL v2, on the condition that if you release any derivatives of my graphics they're automatically considered as ALSO GPL v2 (code may remain unreleased, but please do provide it) and carry this provision in GPL v2 uses.
Please ask someone in-the-know to be sure that the graphics are done by me. Especially TTD-Scale, long story.

Eddi
Tycoon
Tycoon
Posts: 7469
Joined: 17 Jan 2007 00:14

Re: Standardized Roadtype and Tramtype Schemes?

Post by Eddi »

The rough result of the last discussion about this topic was: there's not enough vehicle sets yet to see whether that is really needed, and which details need to be modelled.
You might not exactly be interested in Ferion, but if you are, have fun :)

User avatar
Erato
Route Supervisor
Route Supervisor
Posts: 474
Joined: 25 May 2015 09:09
Location: The Netherlands

Re: Standardized Roadtype and Tramtype Schemes?

Post by Erato »

Tramtype scheme is redundant. There's no reason to differentiate between that and the Railtype scheme.

As for the Roadtype scheme, that'll be really useful. Make sure to base it on the Railtype scheme tho.
And I agree with Eddi, it's a bit too early to make any definitive statements.
No pics no clicks. Seriously. Also stop using Modern Maglev Trains. Use RIMS instead.
ImageImageImageImageImageImage

User avatar
Gadg8eer
Engineer
Engineer
Posts: 74
Joined: 14 Dec 2019 14:22

Re: Standardized Roadtype and Tramtype Schemes?

Post by Gadg8eer »

This never got implemented, did it?

Is this a good scheme for standardized roadtypes?

UXXX = Unpaved
PXXX = Paved
AXXX = Any letter here - newgrf-side for more variants, like asphalt, powered_roadtype_list could be used to fallback on U or P.

XAXX = Low speed
XBXX = Mid speed
XCXX = High speed

XXAX = Lightweight vehicles (ROAD)
XXBX = Heavyweight vehicles (HAUL)

XXXN = Non-electrified
XXXE = Trolleybuses (ELRD)

LXXE = Utility Lines
LXXP = Pipelines
LXXU = Mixed Utilities

User avatar
2TallTyler
Traffic Manager
Traffic Manager
Posts: 130
Joined: 11 Aug 2019 18:15
Contact:

Re: Standardized Roadtype and Tramtype Schemes?

Post by 2TallTyler »

Gadg8eer wrote:
16 Jul 2020 03:31
Is this a good scheme for standardized roadtypes?
...
It seems to follow the standardized railtype scheme. Beyond that I don't know enough to have an opinion.

User avatar
Andrew350
Director
Director
Posts: 571
Joined: 19 Dec 2011 07:54
Location: Washington State, USA
Contact:

Re: Standardized Roadtype and Tramtype Schemes?

Post by Andrew350 »

This is just my opinion, but I think a standardized scheme for non-electrified roads makes no sense, as there's generally no physical reason a vehicle can't drive on a dirt road vs paved road or whatever. Schemes like this are useful for rails due to physical limitations (i.e. different gauges, power systems, etc.) but roads and road vehicles don't generally have those issues. The only marginal usecase we've seen so far is to keep heavy equipment on a separate haul road and off "public" roads, but honestly even that has always seemed slightly dubious to me as usually nothing is actually stopping that from happening other than regulations. Is it unrealistic to have a 90-ton dumptruck driving down a highway? Yes (most of the time anyway), but again physical limitations are practically non-existent (ignoring things like low power lines and bridge weight restrictions, which don't exist in the game and would be separate from the roadtype itself anyway). Again just my opinion, but unless someone can honestly think of several common gameplay reasons for these standards to exist, I think it's a bit overkill :)

Electrified roads on the other hand are different, since those do have physical limitations in the form of different power systems which could be useful to standardize, though I have no opinion on the specific scheme which should be used there. Perhaps something similar to the railtype electrification guidelines would be good.

Arnoud
Engineer
Engineer
Posts: 60
Joined: 29 Sep 2008 05:02
Location: Amsterdam

Re: Standardized Roadtype and Tramtype Schemes?

Post by Arnoud »

I have to agree there is no real need for this other than the consensus there allready is.

There are 2 defaults, ROAD for roads and ELRL for tramtracks.

All other tags are not hardcoded but by consensus, RAIL for unelectrified tramtracks, ELRD for trolleybuses, MONO for city monorails and HAUL for offroad.

This follows a logical pattern that we know for railway tags.

Changing a tag like ELRD in the road grf to XXXE would break compatibility with all existing trolley bus sets for NRT.

There is no real need for a scheme for different speeds I think, those roads can be coded to be compatible with ROAD (or HAUL).

If in the future ppl want to create a narrow gauge tramway perhaps it would be good to have a consensus on that, because there seem to be some incompatibilities in the railway NG sets.
Maybe NGRL and ELNG.

User avatar
Erato
Route Supervisor
Route Supervisor
Posts: 474
Joined: 25 May 2015 09:09
Location: The Netherlands

Re: Standardized Roadtype and Tramtype Schemes?

Post by Erato »

Arnoud wrote:
16 Jul 2020 22:28
I have to agree there is no real need for this other than the consensus there allready is.

There are 2 defaults, ROAD for roads and ELRL for tramtracks.

All other tags are not hardcoded but by consensus, RAIL for unelectrified tramtracks, ELRD for trolleybuses, MONO for city monorails and HAUL for offroad.

This follows a logical pattern that we know for railway tags.

Changing a tag like ELRD in the road grf to XXXE would break compatibility with all existing trolley bus sets for NRT.

There is no real need for a scheme for different speeds I think, those roads can be coded to be compatible with ROAD (or HAUL).

If in the future ppl want to create a narrow gauge tramway perhaps it would be good to have a consensus on that, because there seem to be some incompatibilities in the railway NG sets.
Maybe NGRL and ELNG.
I agree here, with ROAD, ELRD and HAUL, most roadset compatibility seems to be taken care of.
As for the tramways, the existing standardised railtype scheme would work fine. It deals with every rail-esque incompatibility that comes with this.
No pics no clicks. Seriously. Also stop using Modern Maglev Trains. Use RIMS instead.
ImageImageImageImageImageImage

User avatar
Gadg8eer
Engineer
Engineer
Posts: 74
Joined: 14 Dec 2019 14:22

Re: Standardized Roadtype and Tramtype Schemes?

Post by Gadg8eer »

Andrew350 wrote:
16 Jul 2020 19:17
This is just my opinion, but I think a standardized scheme for non-electrified roads makes no sense, as there's generally no physical reason a vehicle can't drive on a dirt road vs paved road or whatever. Schemes like this are useful for rails due to physical limitations (i.e. different gauges, power systems, etc.) but roads and road vehicles don't generally have those issues. The only marginal usecase we've seen so far is to keep heavy equipment on a separate haul road and off "public" roads, but honestly even that has always seemed slightly dubious to me as usually nothing is actually stopping that from happening other than regulations. Is it unrealistic to have a 90-ton dumptruck driving down a highway? Yes (most of the time anyway), but again physical limitations are practically non-existent (ignoring things like low power lines and bridge weight restrictions, which don't exist in the game and would be separate from the roadtype itself anyway). Again just my opinion, but unless someone can honestly think of several common gameplay reasons for these standards to exist, I think it's a bit overkill :)

Electrified roads on the other hand are different, since those do have physical limitations in the form of different power systems which could be useful to standardize, though I have no opinion on the specific scheme which should be used there. Perhaps something similar to the railtype electrification guidelines would be good.
Your opinion is valid, however...
Erato wrote:
16 Jul 2020 22:35
Arnoud wrote:
16 Jul 2020 22:28
I have to agree there is no real need for this other than the consensus there allready is.

There are 2 defaults, ROAD for roads and ELRL for tramtracks.

All other tags are not hardcoded but by consensus, RAIL for unelectrified tramtracks, ELRD for trolleybuses, MONO for city monorails and HAUL for offroad.

This follows a logical pattern that we know for railway tags.

Changing a tag like ELRD in the road grf to XXXE would break compatibility with all existing trolley bus sets for NRT.

There is no real need for a scheme for different speeds I think, those roads can be coded to be compatible with ROAD (or HAUL).

If in the future ppl want to create a narrow gauge tramway perhaps it would be good to have a consensus on that, because there seem to be some incompatibilities in the railway NG sets.
Maybe NGRL and ELNG.
I agree here, with ROAD, ELRD and HAUL, most roadset compatibility seems to be taken care of.
As for the tramways, the existing standardised railtype scheme would work fine. It deals with every rail-esque incompatibility that comes with this.
You have to realize that, unlike rails, roadtypes have "outbound compatibility". Let's say that Dev A creates GRF A with the roadtype RDAA. Then Dev B creates GRF B with the roadtype RDBB, which is supposed to allow RDAA vehicles to drive on it.

With railtypes, RLAA doesn't have to be edited by Dev A. Dev B could make RLBB to allow RLAA trains on RLBB tracks using compatible_railtype_list. Railtypes have "inbound compatibility".

But with roadtypes, Dev A has to add RDBB to powered_roadtype_list in order for road vehicles that drive on RDAA to also drive on RDBB. In practice, this means that Andrew350 and Ufiby would have to add every roadtype used in Country Roads, Unspooled and Docklands. Fortunately, the trimmed-down GPL Roadtype Collections I made don't change the roadtype labels from the original GRFs they're based on.

If you want proof that outbound compatibility is a thing, I will gladly provide you with the source code of Utility Roadtype Set. The "road vehicles" that run on PIPE and WIRE will also run on various roadtypes, but road vehicles for normal roadtypes won't run on PIPE or WIRE. Outbound compatibility at work.

EDIT: Just tested Utility Roadtype Set with URaTT. The telegraph "road vehicle" runs on utility roads and normal roads, while normal vehicles run only on roads. Here's the code that proves that my point is correct...

Code: Select all

label: "WIRE";
	...
        powered_roadtype_list: ["UTIL", "WIRE", "CEAE", "UTIL", "GSLP", "GLMP", "UAAE", "UBBE",
		"ROAD", "ELRD", "OLD_", "RCDE", "RECE",
		"ASP0", "ASP1", "ASP2", "ELSP", "ELA1", "ELA2",
		"CBRD", "CBRE", "PVRD", "PVRE", "ISRD", "ISRE",
		"ELHL",
		"IBEN", "IBEE",
		"SRD0", "SRD1", "SRD2",
		"FORD", "FRZN",
		"CBRD", "CBRE"];
Attachments
URS_37.7z
Latest source code of Utility Roadtype Set
(1.11 MiB) Downloaded 66 times

User avatar
Andrew350
Director
Director
Posts: 571
Joined: 19 Dec 2011 07:54
Location: Washington State, USA
Contact:

Re: Standardized Roadtype and Tramtype Schemes?

Post by Andrew350 »

Gadg8eer wrote:
16 Jul 2020 22:42
Dev B could make RLBB to allow RLAA trains on RLBB tracks using compatible_railtype_list....

...But with roadtypes, Dev A has to add RDBB to powered_roadtype_list in order for road vehicles that drive on RDAA to also drive on RDBB.
That's exactly the same thing....maybe I'm missing your point, but nothing changed with how this works for roadtypes. Powered = compatible here.
Gadg8eer wrote:
16 Jul 2020 22:42
In practice, this means that Andrew350 and Ufiby would have to add every roadtype used in Country Roads, Unspooled and Docklands
No it doesn't, because all my roads are compatible with ROAD, and that's all they should be compatible with. If your vehicle is "normal", it should be given the road_type ROAD so it will run on all "normal" roads just fine (regardless of label), and not on anything it shouldn't. If your vehicle's road_type is not ROAD, then it will not run on anything except exactly what you define there, or what that type is specifically compatible with. And compatibility is not transitive, e.g.. if A is compatible with C, while B is compatible with A, it does NOT make B compatible to C (B would have to define C as compatible specifically).

So in your case of making a "telegraph" vehicle which has the special ability to drive on different, normally incompatible roadtypes, you must define a new roadtype just for that vehicle which gives it the correct poweredness on the types you want it to drive on. It is a special case which needs to be handled internally by that set, not one which needs to be added by all other sets ;)

ufiby
Engineer
Engineer
Posts: 55
Joined: 18 Nov 2017 13:58

Re: Standardized Roadtype and Tramtype Schemes?

Post by ufiby »

So in your case of making a "telegraph" vehicle which has the special ability to drive on different, normally incompatible roadtypes, you must define a new roadtype just for that vehicle which gives it the correct poweredness on the types you want it to drive on. It is a special case which needs to be handled internally by that set, not one which needs to be added by all other sets ;)
- That's fair enough.
In practice, this means that Andrew350 and Ufiby would have to add every roadtype used in Country Roads, Unspooled and Docklands.
No, I will tell you briefly - draw it yourself, that you have a special with the road. How did Andrew350 do this. (Andrew350, well done) :]

User avatar
Gadg8eer
Engineer
Engineer
Posts: 74
Joined: 14 Dec 2019 14:22

Re: Standardized Roadtype and Tramtype Schemes?

Post by Gadg8eer »

ufiby wrote:
17 Jul 2020 17:10
So in your case of making a "telegraph" vehicle which has the special ability to drive on different, normally incompatible roadtypes, you must define a new roadtype just for that vehicle which gives it the correct poweredness on the types you want it to drive on. It is a special case which needs to be handled internally by that set, not one which needs to be added by all other sets ;)
- That's fair enough.
In practice, this means that Andrew350 and Ufiby would have to add every roadtype used in Country Roads, Unspooled and Docklands.
No, I will tell you briefly - draw it yourself, that you have a special with the road. How did Andrew350 do this. (Andrew350, well done) :]
Look, I already said elsewhere, I found the solution...

Code: Select all

//ford

item(FEAT_ROADTYPES, ford, 7) {
	property {
		name: string(STR_NAME_FORD);
		label: "FORD";
		map_colour: 157;
		speed_limit: 8 km/h;
		introduction_date: date(1525,01,01);
		construction_cost: 2;
		maintenance_cost: 1;
		powered_roadtype_list: ["WAAN", "OFFR", "AMPH", "WWAY", "FRZN", "RWAY", "DIRT", "AUZB", "AUZC"];
		alternative_roadtype_list: ["WAAN", "OFFR", "DIRT", "AUZB", "AUZC", "ROAD"];
		roadtype_flags: bitmask(ROADTYPE_FLAG_NO_HOUSES);
		toolbar_caption: string(STR_TOOLBAR_CAPTION_FORD);
		menu_text: string(STR_MENU_TEXT_FORD);
		build_window_caption: string(STR_BUILD_WINDOW_CAPTION_FORD);
		autoreplace_text: string(STR_AUTOREPLACE_TEXT_FORD);
		new_engine_text: string(STR_NEW_ENGINE_TEXT_FORD);
		sort_order: 37;
	}
	graphics {
		gui: gui_furt;
		underlay: switch_underlay_furt;
		depots: switch_depots_furt;
		bridge_surfaces: switch_bridge_surfaces_furt;
		roadstops: switch_roadstops_furt;
	}
item(FEAT_ROADTYPES, normal_roadway, 0) {
    property {
        label: "ROAD";
        powered_roadtype_list: ["FORD"];
		//introduces_roadtype_list: ["ELRD", "YDRD", "CBRD", "CBRE", "PVRD", "PVRE", "ISRD", "ISRE"];
		}
	}
}
...so don't go telling me to draw it myself. If you don't want to fix your code, fine, but I never asked you for any graphics and I'm sick of you thinking that's all I'm after. You are the only roadtype maker that I haven't put into the GPL Roadtype Collection, and I feel I deserve a bit more repect from you than you give me.

EDIT: I apologize that this post was so harsh. Let's just put it behind us.

ufiby
Engineer
Engineer
Posts: 55
Joined: 18 Nov 2017 13:58

Re: Standardized Roadtype and Tramtype Schemes?

Post by ufiby »

This is not about graphics. My opinion. You have created telegraphs or pipes to be compatible with roads. Really?
Pipe+Road.png
Pipe+Road.png (29.75 KiB) Viewed 273 times
I mean that the red line passes through the pipes and the roads, right? To be honest, I don't understand. But you may have chosen this project.
The only problem that the Telegraph or pipes intersect with roads (or with road sets) is not a solution , but rather rather a problem.
See this image below. Openttd simply doesn't exist to work. With the exception of using bridges.
Pipe+road2.png
Pipe+road2.png (13.41 KiB) Viewed 273 times
So you follow the give, so that it ride on the road or should not be. It is better to take an example from Andrey, as he made boxes (boxes should not be transported on asphalt or on a primer...)

User avatar
Gadg8eer
Engineer
Engineer
Posts: 74
Joined: 14 Dec 2019 14:22

Re: Standardized Roadtype and Tramtype Schemes?

Post by Gadg8eer »

ufiby wrote:
19 Jul 2020 10:33
This is not about graphics. My opinion. You have created telegraphs or pipes to be compatible with roads. Really?
Pipe+Road.png
I mean that the red line passes through the pipes and the roads, right? To be honest, I don't understand. But you may have chosen this project.
The only problem that the Telegraph or pipes intersect with roads (or with road sets) is not a solution , but rather rather a problem.
See this image below. Openttd simply doesn't exist to work. With the exception of using bridges.
Pipe+road2.png
So you follow the give, so that it ride on the road or should not be. It is better to take an example from Andrey, as he made boxes (boxes should not be transported on asphalt or on a primer...)
I'm already making modifications to the Utility Roadtype Set to fix this. The pipeline pumps should only run on city roads, not on rural roads. As for why, it's because the utility "vehicles" are meant to be able to provide water/electricity to cities without getting stuck in traffic like trams do.

Edit: According to someone I know, the Concrete and Cement Slabs of Road were only used in city centers, at least in North America.

Post Reply

Return to “NewGRF Technical Discussions”

Who is online

Users browsing this forum: Transportman and 2 guests