News:

Congratulations!
 You've won the News Item Lottery! Your prize? Reading this news item! :)

Passengers, towns and industries

Started by jamespetts, January 03, 2014, 06:02:42 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

jamespetts

The difficulty with what is proposed is that it is not anywhere near realistic for every single industry when founded outside the formal boundaries of a town to have an entire new town generated to accommodate it - that would be the result of the algorithm that you suggest. Whether something is inside the formal boundaries of a town tells us little about whether it will be sufficiently supplied with workers: workers may walk from a nearby town or village, or be transported there efficiently by a player, or may drive there using private cars. There is no way of telling in advance whether any of these things will be so. What I have already outlined (earlier industries, including mines, etc., all being built in towns, with farms having their own in-built workers) would seem to me to have a more realistic effect. It makes sense for industry placement to be partly determined by the availability of workers.

As Kieron pointed out, very few, if any, truly new settlements have been created within the period simulated. An algorithm that results in the creation of many new settlements would be a long way from being realistic.
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.

Combuijs

But what you could do for industry that must be created in a town is every now and then (say 1 in 100 or even less frequent) place it on a random (appropriate) tile. If the distance from the nearest town border is more than a minimal distance (say 50) you could generate a new town there.

In my own pak I implement villages as tourist attractions. They are just low level city buildings coded as low level attractions, e.g. on the map you see just a single house. If you create a different kind of attraction category (village) you can every once in a while promote such a village to a new town.
Bob Marley: No woman, no cry

Programmer: No user, no bugs



jamespetts

The problem with using distance as a means of determining whether to build a new town is that it takes no account of transport: depending on the available transport infrastructure, it might or might not be possible to transport enough people to an industry any given number of tiles away. In any event, this would still result in the (unrealistic) creation of a great many new towns.
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.

Jando

Quote from: jamespetts on January 07, 2014, 01:13:04 PM
... What I have already outlined (earlier industries, including mines, etc., all being built in towns, with farms having their own in-built workers) would seem to me to have a more realistic effect. It makes sense for industry placement to be partly determined by the availability of workers.

As Kieron pointed out, very few, if any, truly new settlements have been created within the period simulated. An algorithm that results in the creation of many new settlements would be a long way from being realistic.

I fully agree. I believe Simutrans also has to keep it's focus - and that focus is rather on transportation than on how towns originated over the centuries. Sure, town development is an important part of Simutrans, but only because of it's consequence for transportation - not a goal in itself.

I'm probably selfish here. :) I'd rather have our fantastic developer(s) work on core features than spending their valuable time on more marginal ones. :)

Ves

Ok I understand your decision. Just wanted to give you something to think about ;)
No matter what I'm convinced that the result of your work are going to be very nice! Keep up the good work! :)

Sarlock

Remote resource sites that require full time workers all have work camps set up... but these are not cities/towns per se and once the resource is exhausted, the camps are removed or left to become a ghost town.  This would be best simulated (and easiest) with an inclusion of a "built-in" workforce for remote-type industries (mines, oil rigs, etc) which negates the need for the player to import passengers in order to begin resource production.  (which, simulation-wise, could easily be done by just setting these industries' jobs requirement to 0).

Other industries that require a delivered workforce should be located near existing population centres so that workers can commute by walking (and private car in later years).  The player can always deliver these passengers directly there and if it's faster than walking, will be a profitable venture, but at least an existing workforce is present at any rate.

The interplay between factories and city growth is a complicated one in history: factories were seldom built in an uninhabited area and had residences build afterwards - factories were built in areas with existing population already and had available transportation (waterways, roads and railroads) or had the ability to have these transportation methods easily supplied.  Then, the factory itself either added nearby residential facilities for its workers as an adjunct to the existing town or spurred this type of residential development to occur externally.

For purposes of this simulation, for ease of computation/calculation, it can probably be approximated by locating industries nearby a town centre and then through the desirability simulation, the town will grow in the area of the industry in order to provide required workers.
Current projects: Pak128 Trees, blender graphics

jamespetts

Very interesting thoughts - thank you!
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.

wlindley

"Industries which require goods... will reject passengers... until goods are supplied..."

Excellent but please set a very low minimum (1 passenger?) and not quite zero, just to prevent race conditions which could stall whole chains and make whole cities grind to a halt. Keep a few things moving at all times; after all, even empty shops will attract a few folks ("I wonder if there's any bread today?")

jamespetts

Can you elaborate on the potential race conditions and how they would manifest?
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.

wlindley

I just want to make sure this will not happen:  Suppose something goes wrong with the 'buses bringing workers to the steel mill. No steel, so the hardware factory shuts down (and stops demanding workers), and the hardware shop runs out of goods (and stops attracting customers). No hardware demand means no hardware factory demand means the steel mill will never restart, maybe killing the coal mine in the process too.

Even closed factories need a few employees; even shops without their key suppliers will find a way to sell something, so having a very low minimum on everything will keep the "pump primed" when things up or downstream restart.

AP

Realistic as that scenario sounds, I agree it would be a total nightmare if the game started playing out like that, just because of a traffic gridlock in an obscure town somewhere. Especially if city-cars turned out to be to blame...  ???

jamespetts

I do not think that this should occur: if the secondary industry ceases production, the tertiary industry will consume until its stores are empty. It will turn away further customers, but the demand for goods will still be fixed until the stores are at the requisite level. It will then start accepting customers again, and the presence of customers will then deplete the stores, leading to further demand from the secondary producer.
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.