I have been playing Transport Tycoon for a long
time. It's
my all-time favorite game. TTDPatch is a
very impressive set of patches for the game, adding lots of new
features that seem like they would be impossible to implement in a
patch, especially by authors who don't have access to the source
code. Open Transport Tycoon is an open
source port/recreation of the game, and it's what I've been playing
lately.
In Transport Tycoon your goal is to build a transportation empire
using buses, trucks, trains, airplanes, and ships. The part I find the
most fun is laying out tracks, railroad stations, and train signals. I
think most of the players spend most of their time on railroads for
this reason. I think I would enjoy the airplane and ship parts of the
game more if I had some control over layout. All you can build right
now is 6 predefined rectangular
airports and 1 ship dock.
For several years on the Open Transport Tycoon forums, there's been
talk of “modular” airports that would allow players to place hangars,
runways, taxiways, and gates to build their own airport. However,
airports are implemented with finite state machines that carefully
manage multiple airplanes in holding patterns, landing, taking off,
taxiing, going to hangars, and stopping at gates. Richk67 has created
an impressive
patch for custom
non-rectangular airports. However his experience has been that the
finite state machines are just too complex for players, and his patch
is instead aimed at people making addons. Pikka has an alternate
proposal,
but take a look at the example state machine code for the simple
airport. That's way too complex to make players deal with. There have
been others who have argued that it should be possible to let players
do this, if the GUI was good enough. However, Richk67 actually wrote
some code and implemented custom airports, whereas most of the posters
are just talking about proposals or ideas, so I generally believe him
when he says that the finite state machines are too complex for most
players.
My hope however was that there would be a completely different
approach to airports that wouldn't involve the complex finite state
machines. Playing with path based
signals, a new feature
in OpenTTD 0.7.0, has made me more optimistic. With the signals in the
original Transport Tycoon, a train made a decision when it reached a
junction with signals. The third party patches added new kinds of
signals, including allowing complex logic in TTDPatch. Path-based
signals work quite differently. Trains reserve tracks ahead of them
and only proceed if they can make a reservation. Can we apply the same
idea to airports? Instead of following a fixed state machine, we might
be able to reserve space ahead of the airplane (landing flight space,
takeoff flight space, runways, taxiways). I had only just started
thinking about this problem when I came across Dimme's
demo of a
proposed player-created airport system using airplanes reserving space
they want to use. In the demo (a Java app), you can place gate,
runway, taxiway, and other tiles to build an airport, and then run a
simulation to see how the airplanes use it. It's quite impressive!
(Note: I couldn't get the jar file to run on the Mac so I had to
recompile it myself, but it ran fine.)

A station I made with Dimme's demo
Dimme's demo shows that there's a different way to build airports that
may not lead to the same complexity as the finite state
machines. MarkyParky, who works with airports in real life, has good
things to say about Dimme's
demo, but
also talks about holding
patterns,
which turn out to be more complicated than I imagined. I don't think
that realistic holding patterns are necessary but it's something to
think about. In any case, I don't think any of the discussions are
going to go anywhere. Richk67's patch is the only code I saw, and as
far as I can tell, the main developers have rejected his patch. Dimme
demonstrated an alternate approach but there's no proposal for how to
make it work within the OpenTTD code.
Dimme's demo is good. It's simple to use, it demonstrates the idea,
and it lets you actually try building an airport to see how it
works. After playing with it, I decided I wouldn't build an airport
building demo. I think my ideas aren't different enough to make it
worth it. However, his demo reminded me that I should be building more
demos of ideas I want to explore. Coming up with ideas doesn't teach
me as much as trying them out.
Update: [2012-08-18] There's a modular airport mod for Cities XL.
Không có nhận xét nào:
Đăng nhận xét