OpenTTD

Tasklist

FS#6283 - More sane handling of croassing roads with railroads.

Attached to Project: OpenTTD
Opened by Grzegorz Duczyński (adf88) - Thursday, 16 April 2015, 17:17 GMT
Last edited by frosch (frosch) - Saturday, 20 June 2015, 13:15 GMT
Type Patch
Category Core
Status Closed
Assigned To No-one
Operating System All
Severity Low
Priority Normal
Reported Version trunk
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

When crossing roads or tram tracks with perpendicular railroads, OpenTTD behaves strange if roads are not a full ROAD_X or ROAD_Y (mostly it throws an error). I'm proposing different behaviour - always complement the road and build a crossing. Attached picture explains everything.

The patch is meant to be applied on top of  FS#6280  and  FS#6281  .
This task depends upon

Closed by  frosch (frosch)
Saturday, 20 June 2015, 13:15 GMT
Reason for closing:  Implemented
Additional comments about closing:  in r27308 and r27309
Comment by Grzegorz Duczyński (adf88) - Thursday, 16 April 2015, 17:19 GMT
I made a mistake - the patch is meant to be applied on top of  FS#6281  and  FS#6282 .
Comment by frosch (frosch) - Thursday, 16 April 2015, 17:25 GMT
Trams cannot reverse on that kind of dead end.
So placing a track piece would break the tram network (of a competitor).
Comment by Grzegorz Duczyński (adf88) - Sunday, 19 April 2015, 09:44 GMT
Apparently you found a bug then. Breaking someone's end-of-line is not disallowed in other commands (CmdBuildRoad, CmdBuildRoadStop). Should this be "fixed"? I can provide appropriate patches...
Comment by Ingo von Borstel (planetmaker) - Monday, 20 April 2015, 08:41 GMT
If those break the EOL of the tram track, IMHO patches for those bugs would be welcome :)

(I wonder how those changes then can be abused to disallow competitors to build any stops in a town by placing two-tile circular tram tracks everywhere :D)
Comment by pagnon stephane (krinn) - Monday, 11 May 2015, 03:00 GMT
don't extend an half tile to a full tile when someone put a railtrack on it (your case #1)
while openttd can convert railtrack to another type if the road is half, it fail if the road is full if the new railtrack cannot do crossing (or with any tracktype when road is oneway).

i don't think it would be that fine someone putting half road oneway everywhere to block competitor rails.
Comment by Grzegorz Duczyński (adf88) - Wednesday, 13 May 2015, 18:43 GMT
OK. Patches are ready (to be applied over latest trunk - r27284).

disallow-breaking-end-of-tram-line.diff
Changes CmdBuildRoad and CmdBuildRoadStop in a way that breaking end-of-tram-line of someone else is no more allowed ("Owned by ..." is thrown).

complement-crossing-roads.diff
Updated patch that also cares about end-of-line.

"while openttd can convert railtrack to another type if the road is half, it fail if the road is full if the new railtrack cannot do crossing (or with any tracktype when road is oneway)."
If the road is half there cannot be any rail tracks on it so I don't know what are you talking about. Also the patch doesn't affect rail conversion tool in any way. Perhaps if you describe the problem step-by-step...

"i don't think it would be that fine someone putting half road oneway everywhere to block competitor rails."
With or or without the patch there is no difference in this matter.

As for blocking road stops, they can be already blocked by a rail track (crossing). However, these circular tram tracks can block tram tracks of other players. So one must decide what's better, allow to break end-of-line or allow to block. Perhaps blocking is less dangerous because braking an end of line can be done silently, without leaving a trace.

Loading...