News:

Simutrans.com Portal
Our Simutrans site. You can find everything about Simutrans from here.

Imports, Exports, and long-distance off-map travel

Started by The Hood, April 22, 2012, 05:30:12 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

The Hood

This keeps on coming up in the pak128.Britain board (and I think elsewhere too) in one form or another, so I'd like to put the ideas here in a single topic for discussion and hopefully consideration.

As most Simutrans maps tend to be quite small in comparison to real life trade and transport networks, it would be nice to have the option for simulating transport to/from the "Rest of the World" (RoW). This is particularly applicabable to ocean-going ships and planes, but could conceivably be extended to trains and buses. There are several ways this could be done, most of which would require some changes to the code.

BIG CHANGES:

1) Similar to SimCity 2000 (the last in that series I remember playing), have several off-map cities which produce/accept passengers and goods which can be connected by building a road/rail off the edge of the map, and also by sea borders on that side of the map or by air. Vehicles travel off the edge of the map and remain off  the map for as long as they need based on the stated distance to this other city. I suspect this would be hardest to code, but has the advantages of allowing genuine long-distance, high-capacity vehicles (747 plane, supertankers etc) to come into their own.

2) As above but having the vehicles turn around on the edge of the map: this would lose the effect of long distance travel and lack representation of long journey times to off-map destinations.

ALREADY POSSIBLE:

3) Have an import/export port for goods coded as a factory. This could either appear as a port on the shore (missing the sea-leg of long distance shipping but simulating the external economy), or in the water similar to oil rigs and fisheries (requiring a boat leg). Passengers /mail could be done similarly as an attraction.
Neither of these really suit land or air links though. Air could be done by having an "international airport" factory/attraction which would need local surface access, but it seems wrong to me to have a transport game where there is an airport which is coded as a cheat and you can't fly planes into...

MIX OF THE ABOVE:

4) Use the on-map factory/attraction idea but with an additional restraint that forces it to be built on the edge of the map.
5) Use the on-map factory/attraction idea but with the additional option that planes can "dock" there as well.

I'd be interested to know what people make of these ideas, and how feasible they might be, and which would be preferred. Of course there are other possibilities/ideas out there too I suspect...

Carl

I certainly think that the options under (3) should be more widely used in paksets. I'm planning to put a couple of ports into the industry chain in Pak64.Unity for this purpose.

You could have airports"attractions" coded as airport buildings (rather than a whole airport itself), but they'd have to be placed manually since you can't code a building to only appear near airports.

isidoro

3DTT (Trains and Trucks Tycoon) is another transportation game I can think of with that feature.

They were just like factories producing/consuming exotic goods.  If a change is made to the engine so that those factories have a flag and must require certain conditions to be placed (for instance a sea route to one edge of the map), what would happen when the map is expanded and one of the seemingly seas becomes, in fact, a lake?



prissi

Or vehicles stucked offmap ...

Btw, there is a patch for a circular map. But such maps cannot be extended, thus it was not incorporated.

Carl

A circular map ... the mind boggles. Next you'll be saying that the earth isn't flat! :)

ӔO

Quote from: carlbaker on April 22, 2012, 06:59:15 PM
A circular map ... the mind boggles. Next you'll be saying that the earth isn't flat! :)

I remember in one game, I think it was globulation, the map was not only circular horizontally, but also vertically. Which would be like Antarctica and the north pole being connected :D
My Sketchup open project sources
various projects rolled up: http://dl.dropbox.com/u/17111233/Roll_up.rar

Colour safe chart:

The Hood

Quote from: isidoro on April 22, 2012, 06:51:49 PM
3DTT (Trains and Trucks Tycoon) is another transportation game I can think of with that feature.

They were just like factories producing/consuming exotic goods.  If a change is made to the engine so that those factories have a flag and must require certain conditions to be placed (for instance a sea route to one edge of the map), what would happen when the map is expanded and one of the seemingly seas becomes, in fact, a lake?


Hadn't thought of that - and it sounds a pretty good reason to block the original idea.  I'm struggling to think of a way to accomodate both - but so far I can't unless you ban expansion in one direction...

sdog

Someone had the idea to have different game servers interact by generating demand for a linked server, similar to the suggested option 1.

2) slight modification: freeze the vehicle and shade it grey at the map edge, for the time it takes to travel for example 10k fields (or ten times the map diagonal) at cruise speed. Having vehicles instantly turn back would be not so good.
[im not sure if this is a good decission for economic balancing, the ships would probalby make extremely large profits, this isn't sim ship-owner)

A different option. let the players designate International ports. In an area close to the edge. Non-player ships/planes will be generated at the edge and pick up and deliver goods. The number of those vehicles is limited, this limits the capacity of the exports through ports.

It is better not to allow international ports on all edges of the map. If this can be only on one side, players have to create networks with more similarity to real life. Export is not always possible in all directions.



The big question* is how to balance demand and supply of goods?

One way would be a to use a pull model from system theory. If factories can not fill their supply with local sources, they pull, eg spawn ships at the edges (create raw materials in the port). That way the demand and supply of one type of goods does not have to be balanced on the map. (spawn two coal mines with a combined output of 1000 t per month because a power station demanding 1000t appears on the map) Furthermore, this is perhaps more interesting for experimental, coal mines could have a limited lifespan, after a certain point in time they would be supplied by 100% through ports)


The best way to introduce this would be in form of a scenario. The scenario creator could exactly set what is exportet and importet. By this way some experience with good settings could be gathered, and it gives a good set of objectives for scenarios.

For example one could have people play developing countries, providing lots of bulk goods to the port, and distributing a very very tiny amount of high quality goods (eg electronics)


*besides who'd do all the work coding and testing it :-P

Gilles

A minima, it is just a painter job, who could paint an airport, an international transfer station, or a road customs building, which could be put on the borders of the map, and which would act as pax generators/destination.

As for the freight, it's more complicated, as goods distribution are industry-oriented in the game... fake factories who would consume all possible goods seems a little too simplistic, IMHO.

Fabio

A few late night thoughts...

1) normal airports and Ports could have a flag: accept_foreign_deliveries. The player could set it for just one airport and one port. Foreign ships and airplanes, coming from the map's edge, could call at them, picking and delivering pax and goods. If the port is in a lake, the ship won't find a route, so it's the player's duty to select a suitable port.

2) circular map patch. Could it coexist with present behaviour? I mean, in map creation dialog, you can choose between a flat, expandable map or a circular one.

isidoro

@TheHood: in fact, in map expansion only right and bottom sides are expanded, so the ports may be created at the top or left sides.

A vehicle may be created from time to time in a tile at the top or left sides.  But with what cargo and that cargo with what destination?  What frequency?  If a factory produces some goods for the port, they are instantly consumed there or are taken by those vehicles?


kierongreen

Quote@TheHood: in fact, in map expansion only right and bottom sides are expanded, so the ports may be created at the top or left sides.
The north and west sides change when rotating...

isidoro

#12
OMG!  That's good news!

I didn't know about it.  The most interesting part of the map I'm playing is the north and west part.  I had assumed that it wasn't possible to expand that way...  Thanks!

Edit: Unfortunately, the expansion wasn't as exciting as expected.  I chose this map because it had a zone of high mountains together with pretty much water.  I hoped that the expansion to the north and west would bring more mountains, but it wasn't the case...  A pity...

VS

isidoro: The original generator was probably tuned for Hajo-scale maps, that is, small ones. IIRC nobody touched it since. It is based on Perlin noise. Once I experimented with keeping the scale of terrain features constant, relative to map size, but didn't get too far.

My projects... Tools for messing with Simutrans graphics. Graphic archive - templates and some other stuff for painters. Development logs for most recent information on what is going on. And of course pak128!

jamespetts

Quote from: VS on April 24, 2012, 08:20:32 AM
isidoro: The original generator was probably tuned for Hajo-scale maps, that is, small ones. IIRC nobody touched it since. It is based on Perlin noise. Once I experimented with keeping the scale of terrain features constant, relative to map size, but didn't get too far.

Something similar is in Experimental.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.