OpenTTD 13.0-beta2 released

OpenTTD is a fully open-sourced reimplementation of TTD, written in C++, boasting improved gameplay and many new features.

Moderator: OpenTTD Developers

User avatar
2TallTyler
Route Supervisor
Route Supervisor
Posts: 430
Joined: 11 Aug 2019 18:15
Location: Colorado, USA
Contact:

OpenTTD 13.0-beta2 released

Post by 2TallTyler »

Multiple beta releases often indicate lots of bugs to be fixed, but in this case we got carried away adding features and thought more testing was needed.

New features since beta1 include:
  • Variable interface scaling at whatever size you want (not just 2x and 4x), with optional chunky bevels for that retro feel.
  • Multi-track level crossings to keep road vehicles from stopping in the middle of the crossing.
  • A new Generate World menu which now includes NewGRF, AI, and Game Script configuration menus.
  • Cargo filters for vehicle lists (such as at stations) to allow better visualization of traffic.
  • Optional cargo names above vehicles in vehicle lists, to show at a glance what they carry.
  • The ability to clone or share orders with vehicles grouped by shared orders.
  • An improved local authority action window which now shows you actions you can’t afford, instead of hiding them.
In addition, some new tools are available to AI and Game Script authors:
  • Scriptable league tables which can replace the default scoring system
  • AI and Game Scripts can now be modified in Scenario Editor for existing scenarios (although not savegames)
(As ever, see the changelog for further details).

If you’ve been working on an entry for the title game competition, it’s time to finish and submit it!
Last edited by 2TallTyler on 30 Nov 2022 16:36, edited 1 time in total.
My projects on GitHub
Yisc
Engineer
Engineer
Posts: 55
Joined: 09 Apr 2004 21:14
Location: Leiden
Contact:

Re: OpenTTD 13.0-beta2 released

Post by Yisc »

The url to the changelog is for beta1.
The correct one for beta2 = https://cdn.openttd.org/openttd-release ... ngelog.txt
User avatar
2TallTyler
Route Supervisor
Route Supervisor
Posts: 430
Joined: 11 Aug 2019 18:15
Location: Colorado, USA
Contact:

Re: OpenTTD 13.0-beta2 released

Post by 2TallTyler »

Thanks for the correction. I edited my post. :)
My projects on GitHub
eV_Vgen
Engineer
Engineer
Posts: 5
Joined: 13 Jul 2012 19:23

Re: OpenTTD 13.0-beta2 released

Post by eV_Vgen »

2TallTyler wrote: 27 Nov 2022 19:35 [*]Multi-track level crossings to keep road vehicles from stopping in the middle of the crossing.
Hello,
Sorry, I don't have a GitHub account and, furthermore, I wouldn't consider this an actual bug, but rather an oversight in design. The issue is that road vehicles caught in the middle of a crossing, especially 3+ tracks wide ones, will continue unabated right into the path of an oncoming train, leading to even more collisions, if anything. You can see a clear case right at the end of a video, where the bus continues onto the tracks to its certain destruction.
Perhaps, there should be some additional check by the vehicle for the track which is actually occupied. Or not :) Just thought you guys would like to know about it.
Attachments
2022-12-04 18-08-27.mkv
(13.73 MiB) Downloaded 30 times
Eddi
Tycoon
Tycoon
Posts: 8050
Joined: 17 Jan 2007 00:14

Re: OpenTTD 13.0-beta2 released

Post by Eddi »

we've had this discussion many times, and it usually boils down to: this is a player error. this situation sholdn't occur, by ensuring that path signals sit enough distance away to ensure the reserved path is long enough to provide headway for a vehicle to clear the crossing. if you want a 100% safe crossing, you need to build a bridge.
User avatar
jfs
Tycoon
Tycoon
Posts: 1592
Joined: 08 Jan 2003 23:09
Location: Denmark

Re: OpenTTD 13.0-beta2 released

Post by jfs »

If you use path signals on your railroads, and have sufficiently long segments, the path signals will activate the crossing barriers as soon as a train reserves a path past the crossing.
eV_Vgen
Engineer
Engineer
Posts: 5
Joined: 13 Jul 2012 19:23

Re: OpenTTD 13.0-beta2 released

Post by eV_Vgen »

jfs wrote: 04 Dec 2022 15:21 If you use path signals on your railroads, and have sufficiently long segments, the path signals will activate the crossing barriers as soon as a train reserves a path past the crossing.
I know, but the thing is: if the crossing is wide enough (I had 5 parallel tracks crossing a very insignificant rural bus route) , there's no headway sufficient enough. And the reason I am bringing this up at all is that this change, counterintuitively, seemed to lead to even more crossing incidents, approximating from personal experience. I build these "unsafe" crossings all the time and usually lose 2 times less vehicles from crashes.

I think a better implementation would be for vehicles not already crossing to stop before the first track, and for vehicles caught at the crossing to behave the way they did before the change: only stop before the track actually reserved by a train. Not soliciting or anything, just my 2 cents.
User avatar
PikkaBird
Graphics Moderator
Graphics Moderator
Posts: 5573
Joined: 13 Sep 2004 13:21
Location: The Moon
Contact:

Re: OpenTTD 13.0-beta2 released

Post by PikkaBird »

eV_Vgen wrote: 04 Dec 2022 16:23 [...]I think a better implementation would be [...]
That's exactly the old behaviour, not a different implementation.

The point is that vehicles do not necessarily fit between parallel tracks, given that they may be articulated and/or closely following one another. If you find your crossings are too wide and your road vehicles too slow to get clear, build a bridge.
Current development: Sunshine Trains
Dev reference: NML Specs - NewGRF Specs - Savegame Internals - AI API - Gamescript API
Eddi
Tycoon
Tycoon
Posts: 8050
Joined: 17 Jan 2007 00:14

Re: OpenTTD 13.0-beta2 released

Post by Eddi »

ok, onto a technical reasoning: the closed level crossings are internally treated like a red signal. the basic change of that patch is that this red signal is ignored if it's already on a tile with red signal. detecting whether a train is ahead of you is either a computationally expensive task similar to collision detection, or you need an additional map bit to distinguish between two different states of "redness", on one of the densest packed tiles in the whole map array.

it's probably easier to just add a cheat to not crash road vehicles at all, similar to the plane cheat
LaChupacabra
Transport Coordinator
Transport Coordinator
Posts: 321
Joined: 08 Nov 2019 23:54

Re: OpenTTD 13.0-beta2 released

Post by LaChupacabra »

eV_Vgen wrote: 04 Dec 2022 15:15
2TallTyler wrote: 27 Nov 2022 19:35 [*]Multi-track level crossings to keep road vehicles from stopping in the middle of the crossing.
Believe that even if it causes an accident, the total number of them (provided you use the appropriate signaling and keep the appropriate distance of the signaling from the crossing) will be incomparably smaller, and what's more, with this behavior it will be possible to completely eliminate accidents. Even on crossings that have 5, 6, 7 or more tracks. Seriously! :)

Before the developers added this feature, there was quite a long discussion due to the fact that unexpected accidents may occur the first time you run a save in the new version. Developers wanted to avoid this and for this reason this feature waited several years to be added to the game. Trying to convince them, I created a save with 4000 road vehicles, 68 double crossings, 8 quadruple crossings, many of them had really heavy traffic. If you ran it in version 12.2, there would be 127 crashes in a year! Hundreds of vehicles would be destroyed in a few years! One accident news after another. All the time. Running it in the JGRPP version, where this feature has been available for a long time, 20 vehicles would be destroyed in the first year. For the next several decades, not a single accident would occur.

Here's this save. There is currently an issue with the current version 13.0-beta2 (it crashes the game for some reason). You can see how it works in the JGRPP version. The difference is huge and definitely on the plus side.

If anything is a problem, it's that many players don't know how level crossings are closed and how to use signals for this. Looking at the title game save and the video you posted, you probably don't know that either. ;)

On the line in the north of the map, you have several crossings, and regular block signals are used there as well. This is not a good choice because they close the crossing only when the train enters it. In one situation (24th Feb 2349), an accident really came close.
Image

First of all, if you want to prevent accidents, you need to use pathsignals - when the train passes it, it reserves the path, which can be seen by the dark color of the track. If there are any crossings on this path, they will be closed.
level crossing vs path signal.png
level crossing vs path signal.png (595.43 KiB) Viewed 654 times
The farther from the crossing you place the signal, the safer it will be, but at the same time, if you place it far away, vehicles will stand unnecessarily.
Attachments
level crossing vs block signal.png
(696.77 KiB) Not downloaded yet
I am sorry for may English. I know is bed.
User avatar
odisseus
Route Supervisor
Route Supervisor
Posts: 406
Joined: 01 Nov 2017 21:19

Re: OpenTTD 13.0-beta2 released

Post by odisseus »

The problem with path signals is that they also affect the movement of trains. A misplaced signal can even cause a deadlock.

On the other hand, a malicious player can place path signals in such a way that his competitor's trucks are stopped long before the train actually reaches the crossing. In fact, this happens naturally on a single track network with passing loops, even without malicious intent.

How about this? On a tile that contains both rail and road, the crossing should be open as long as the slowest truck that can go on this road type, had it entered the crossing in the previous moment, would be still able to clear the crossing before the fastest train that can go on this rail type could reach it. The required time in game ticks, or the lookahead distance in tiles, would be calculated just once for each combination of road and rail types. Conveniently, the fastest rail types such as vacuum tube don't allow level crossings.
Eddi wrote: 04 Dec 2022 19:05 detecting whether a train is ahead of you is either a computationally expensive task similar to collision detection
For a truck that's already in the middle of a closed multi-line crossing, we could run the same check for each tile ahead of the truck and determine whether it's safe to advance. If what LaChupacabra says is true, this situation should be rather infrequent.
Eddi wrote: 04 Dec 2022 19:05 the closed level crossings are internally treated like a red signal. the basic change of that patch is that this red signal is ignored if it's already on a tile with red signal.
Does this red signal propagate across the adjacent crossing tiles? That's what I have assumed after reading the changes list.
Last edited by odisseus on 05 Dec 2022 11:19, edited 1 time in total.
User avatar
PikkaBird
Graphics Moderator
Graphics Moderator
Posts: 5573
Joined: 13 Sep 2004 13:21
Location: The Moon
Contact:

Re: OpenTTD 13.0-beta2 released

Post by PikkaBird »

odisseus wrote: 05 Dec 2022 02:47How about this?
I think you've gone mad, and that's an absurdly convoluted solution to a non-problem. If the intent is that level crossings will never cause collisions or delays, adding a [cheat] option to disable crashes is the way to go, as Eddi said. Or build a bridge.

There will always be someone who objects to any change, no matter how minor or good that change may be. This change is both minor and good.
Current development: Sunshine Trains
Dev reference: NML Specs - NewGRF Specs - Savegame Internals - AI API - Gamescript API
User avatar
odisseus
Route Supervisor
Route Supervisor
Posts: 406
Joined: 01 Nov 2017 21:19

Re: OpenTTD 13.0-beta2 released

Post by odisseus »

I think you misunderstood my suggestion. I'm not objecting to the multi-track level crossings — quite contrary, I like the concept. What I'm objecting to is the idea that randomly placing signals, especially on single track, can possibly be a solution rather than a problem.
Eddi
Tycoon
Tycoon
Posts: 8050
Joined: 17 Jan 2007 00:14

Re: OpenTTD 13.0-beta2 released

Post by Eddi »

odisseus wrote: 05 Dec 2022 02:47For a truck that's already in the middle of a closed multi-line crossing, we could run the same check for each tile ahead of the track and determine whether it's safe to advance. If what LaChupacabra says is true, this situation should be rather infrequent.
are you listening to yourself? you want to run an expensive calculation all the time to detect a situation that should not actually occur?
Does this red signal propagate across the adjacent crossing tiles? That's what I have assumed after reading the changes list.
yes. upon activating a level crossing (when a train gets close, or when a path reservation is set) all tiles in a straight line are checked whether they are a level crossing, and closed as well. when the train leaves the crossing, this check is re-done to see whether the crossing should stay closed due to another train/path on another track. this is effectively the main part of this patch.

the second, minor, part of the patch is that vehicles that are on the crossing should be able to leave, because staying on the crossing is a guaranteed death trap for any vehicle longer than 1/2 tile, or any queue of 2 or more vehicles.
User avatar
odisseus
Route Supervisor
Route Supervisor
Posts: 406
Joined: 01 Nov 2017 21:19

Re: OpenTTD 13.0-beta2 released

Post by odisseus »

Eddi wrote: 05 Dec 2022 10:49 you want to run an expensive calculation all the time to detect a situation that should not actually occur?
Not at all.

First, the calculation will be required only if the improbable situation occurs, that is, a road vehicle finds itself inside a closed multi-track crossing.

Second, the entire "calculation" would amount to checking if there's an oncoming train within a certain distance of the next tile of the crossing. I admit I don't know how expensive that would actually be, but it seems to be less expensive than predicting whether a particular truck and a particular train are going to collide.
Eddi
Tycoon
Tycoon
Posts: 8050
Joined: 17 Jan 2007 00:14

Re: OpenTTD 13.0-beta2 released

Post by Eddi »

odisseus wrote: 05 Dec 2022 11:17a road vehicle finds itself inside a closed multi-track crossing.
that's not "infrequent" at all.
Eddi
Tycoon
Tycoon
Posts: 8050
Joined: 17 Jan 2007 00:14

Re: OpenTTD 13.0-beta2 released

Post by Eddi »

you're suffering from the "yes, but..." effect.

for example, switching traffic lights from light bulbs to LED lights has many positive effects:
  • lower energy consupmption
  • better visibility
  • lower failure rate
  • lower maintenance cost
  • ...
and then someone comes along and says: "yes, but... if they don't heat up as much from the wasted engery, they can get covered in snow in the winter"

now you can make LED traffic lights with additional heating elements, which adds costs, adds more failure conditions, adds more maintenance, etc.

or you can live with the fact that snow days are actually rare, and there are plenty of fallback mechanisms like on days where there is so much snow that traffic lights aren't visible, the people should also drive slow and there are also signs at each crossing that guide traffic in case the lights are off.
User avatar
odisseus
Route Supervisor
Route Supervisor
Posts: 406
Joined: 01 Nov 2017 21:19

Re: OpenTTD 13.0-beta2 released

Post by odisseus »

Snow days are quite frequent in some regions, and there are LED traffic lights with heaters, but that's beside the point.

My point is that for a road vehicle inside a closed multi-track crossing, moving is just as dangerous as staying. The vehicle could very well drive into an oncoming train, which may well have been the train that closed the crossing in the first place. From the report of LaChupacabra I assumed that this situation is going to become very rare thanks to the new crossing logic, but if that's not the case, then it is even more important to make trapped drivers behave in a sane way.
LaChupacabra
Transport Coordinator
Transport Coordinator
Posts: 321
Joined: 08 Nov 2019 23:54

Re: OpenTTD 13.0-beta2 released

Post by LaChupacabra »

odisseus wrote: 05 Dec 2022 02:47 The problem with path signals is that they also affect the movement of trains. A misplaced signal can even cause a deadlock.
That's true. If, in the above example, I put the same signaling on the other side of the crossing, sooner or later the line would be blocked.
path signal vs path signal.png
path signal vs path signal.png (251.28 KiB) Viewed 494 times
odisseus wrote: 05 Dec 2022 02:47 On the other hand, a malicious player can place path signals in such a way that his competitor's trucks are stopped long before the train actually reaches the crossing. In fact, this happens naturally on a single track network with passing loops, even without malicious intent.
That's also true. I recently had a bus line on one of the servers. One player decided to build a single-track railroad across half the map to the same city. Of course, he hadn't thought of building a bridge over my road. In addition, he placed a pathsignal at the other end of the line. For this reason, my vehicles had to wait more than 200 days at the crossing. When the admin appeared on the server, this player was not there, so he entered the company and put up additional signaling - just before the crossing... :roll:
odisseus wrote: 05 Dec 2022 13:05 From the report of LaChupacabra I assumed that this situation is going to become very rare thanks to the new crossing logic, but if that's not the case, then it is even more important to make trapped drivers behave in a sane way.
Whether railroad crossings will be safe and accidents will be rare will still depend on the players. If they use ordinary block signals or put up signals just before the crossing, accidents will be similarly frequent and in some cases even more often.
So it was a good change that new players only have path signals and that path capture is displayed.
Eddi wrote: 04 Dec 2022 19:05 it's probably easier to just add a cheat to not crash road vehicles at all, similar to the plane cheat
That would be quite a reasonable solution. But as a cheating option, it wouldn't improve anything in online gaming, and that's where level crossing accidents are the biggest problem. Also there, the most useful option would be to prevent building railroad crossings on other players tracks or roads.

Another solution that could be helpful here, but not only here, would be to add a railroad sign feature. :)
Image
In the case of level crossings, a sign could be available which, if passed, would close the nearest crossing, irrespective of the location and type of signalling. The crossing would be closed when there is a train between the sign and the crossing. Such a solution would also be useful on lines with more train traffic, where denser signaling is needed. Such signs could also be placed automatically by the game itself (e.g. at a distance of 5 tiles from the crossing).

Yet another solution: the game could check when a road vehicle approaches a crossing to see if a train is approaching the crossing at the same time and, if so, close it.

Anyway, I checked the latest version. The problem with starting save has been solved. :)

If I had to point out one more problem that would really be worth solving, it is the wrecks of vehicles left on the crossings. Their presence and the impossibility of avoiding them mean that there are still more accidents, even if the design of the crossing is completely safe.

One of quadruple level crossing from the save placed in the previous post.
wrecks of vehicles on the level crossing.png
wrecks of vehicles on the level crossing.png (90.29 KiB) Viewed 494 times
Attachments
Railway signs.png
(147.07 KiB) Not downloaded yet
I am sorry for may English. I know is bed.
User avatar
odisseus
Route Supervisor
Route Supervisor
Posts: 406
Joined: 01 Nov 2017 21:19

Re: OpenTTD 13.0-beta2 released

Post by odisseus »

LaChupacabra wrote: 05 Dec 2022 23:50 Another solution that could be helpful here, but not only here, would be to add a railroad sign feature. :)

In the case of level crossings, a sign could be available which, if passed, would close the nearest crossing, irrespective of the location and type of signalling. The crossing would be closed when there is a train between the sign and the crossing. Such a solution would also be useful on lines with more train traffic, where denser signaling is needed. Such signs could also be placed automatically by the game itself (e.g. at a distance of 5 tiles from the crossing).
That's very similar to my suggestion.
odisseus wrote: 05 Dec 2022 02:47 On a tile that contains both rail and road, the crossing should be open as long as the slowest truck that can go on this road type, had it entered the crossing in the previous moment, would be still able to clear the crossing before the fastest train that can go on this rail type could reach it.
What I propose would work just as if there was an invisible "railroad sign" automatically placed by the game. Except that the distance from the crossing doesn't have to be hardcoded; in my suggestion it would depend on the rail type, road type, and the game's vehicle set.

For example, the vanilla game has no speed limit for roads or rails, but we know that the fastest unelectrified train is 201 km/h, and the slowest truck is 48 km/h. The speeds differ by a factor of 4.2, i.e the train can make 4.2 tiles in the time needed for the truck to cross 1 tile. Thus, the virtual railroad sign would be placed 5 tiles ahead of the crossing. If, on the other hand, the rail had a speed limit of 60 km/h (as some narrow gauge add-ons do), the sign distance would be just 2 tiles. For the vanilla maglev track, it would be 14 tiles.
Post Reply

Return to “General OpenTTD”

Who is online

Users browsing this forum: No registered users and 0 guests