News:

Simutrans Chat Room
Where cool people of Simutrans can meet up.

Latitude

Started by Fabio, March 01, 2012, 03:03:34 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Fabio

Map creation could have a setting for latitude. Latitude would refer to the central tile on the map.

1) effects on climate
Climates will have a big impact once more climates on the same height are allowed, but also now out can set the climates settings. E.g.
Latitude -40 to 30:
   Height 0-3 desert
   Height 4-8 tropical
   Height 8+ rocky
   Summer snow line 12
   Winter snow line 8
Latitude 31 to 50 and -41 to 60:
   Height 0-3 Mediterranean
   Height 4-8 temperate
   Height 8+ rocky
   Summer snow line 12
   Winter snow line 4
Latitude 51 to 70 and -61 to -70:
   Height 0-3 temperate
   Height 4-8 tundra
   Height 8+ Arctic
   Summer snow line 8 
   Winter snow line 2
Latitude 71 to 90 and -71 to -90:
   Height 0-2 tundra
   Height 3+ Arctic
   Summer snow line 3
   Winter snow line 0

2) effects on season
Latitude >= 0
   Winter Dec-Feb
   Spring mar-May
   Summer Jun-Aug
   Fall sept-Nov
Latitude < 0
   Summer Dec-Feb
   Fall mar-may
   Winter Jun-Aug
   Spring sept-Nov

3) effects on daylight
Latitude -30 to 30
   All year 7-8 dawn 8-20 day 20-21 dusk 21-7 night
Latitude 31 to 60 
   Feb-Apr and Aug-Oct 7-8 dawn 8-20 day 20-21 dusk 21-7 night
   may-Jul 5-7 dawn 7-20 day 20-22 dusk 2-5 night
   Nov-Jan 7-9 dawn 9-18 day 18-20 dusk 20-7 night
Latitude 61 to 90 
   Feb-Apr and Aug-Oct 7-8 dawn 8-20 day 20-21 dusk 21-7 night
   may-Jul  0-6 dawn 6-21 day 21-24 dusk
   Nov-Jan 8-12 dawn 12-19 dusk 19-8 night
Latitude -31 to -60 
   Feb-Apr and Aug-Oct 7-8 dawn 8-20 day 20-21 dusk 21-7 night
   Nov-Jan 5-7 dawn 7-20 day 20-22 dusk 2-5 night
   may-Jul 7-9 dawn 9-18 day 18-20 dusk 20-7 night
Latitude 61 to 90 
   Feb-Apr and Aug-Oct 7-8 dawn 8-20 day 20-21 dusk 21-7 night
   Nov-Jan 0-6 dawn 6-21 day 21-24 dusk
   may-Jul 8-12 dawn 12-19 dusk 19-8 night



prissi

The same was suggest several times, as well as in different forms. Only the seasonal inversion at the equator was not mentioned before. But given the sizes on can realistically achive with simutrans, this is imho not a beg problem.

As discussed previously it requires lateral transitions of climates which might not look pretty. Other than that this is not too difficult.

You proposal will not enhance gameplay and requires a lot of configuration; thus this is more suited to experimental imho. (Not to mention that there is almost no way to properly display the earth above 70° lat. on a rectangular map without horrendous distortions.)

An_dz

One question:
If a place have more than 1 latitude setting, then depending the latitudes the climates changes, great. But how the game will handle the daylight effects? Cause now the whole world change the light the same.

Just one more thing: The game needs to make a smooth change between the latitudes, like:
2 latitudes, one in south other in north. North desert between elevation 2 and 3, South between 5 and 6. Than in the middle of the map it should be in 3 to 4 and 4 to 5.

kierongreen

QuoteJust one more thing: The game needs to make a smooth change between the latitudes, like:
2 latitudes, one in south other in north. North desert between elevation 2 and 3, South between 5 and 6. Than in the middle of the map it should be in 3 to 4 and 4 to 5.
See prissi's comment:
QuoteAs discussed previously it requires lateral transitions of climates which might not look pretty. Other than that this is not too difficult.

Fabio

Well, this time the proposal is a bit simpler.
The latitude would influence the whole map, so no need to change the climates here.

1) climates: this would help new players. Choosing a latitude, the existing climates are set accordingly. Various maps without fiddling with climates settings, pretty much as many trees/few trees.

2) inverting seasons. A Brazilian or Australian player might find wierd to play with winter in January. Especially if they manage to make Pak 128 Brasil. Here you just set latitude <0 and have winter in July.

3) daylight, this is really a minor issue.

I mentioned the central tile, and this was my mistake, as ALL the map would be considered at the given latitude.
So, setting a latitude would just
1) change default settings in climates dialog to different values
2) invert seasons in the southern emisphere (i.e. Invert seasons in the whole map if latitude is set <0)

An_dz

Quote from: kierongreen on March 01, 2012, 03:49:23 PM
See prissi's comment:
I've read, just complemented.

I understood better fabio idea. So it would be more like climate presets.

Isaac Eiland-Hall

I think two tiles should be given: Center and edge or edge and edge; and numbers should allow for zero or max value to be off the map. For example, I might make a map of the continental United States and define the bottom edge as, say, 25 degrees; the top edge as say 50 degrees (I think that's about right, but might be off - doesn't matter exactly, though).

Or I might want to define the center as the equator and top edge as 60 degrees (meaning bottom edge would be -60 degrees)...

jamespetts

There would be great utility in having actual variable latitudes, although, as Prissi points out, further graphics work would be required for the tile transitions. It is unlikely to be necessary to have the equator on the map, although seasonal inversion might have some utility.

There could be some useful function to latitude, though: one could configure things such that certain types of buildings are only built in certain latitudes. One could either simply continue to use the current climate model, specifying climates for different latitudes and using existing building climate restrictions, or have a whole new latitude system for determining where buildings are built. One could also have latitude determinants for city name lists and street name lists, which would help to create different regions. For example, in Pak128.Britain, one could have Scottish style names above a certain latitude, and English style names below that latitude.

Another potentially useful thing that could enhance game play (although I am not sure whether this would be practicable to implement, as I have not looked in detail at the terrain generation code) would be allowing different map roughnesses and/or mountain heights at different latitudes. This would be very useful for the posited England/Scotland division example: the Scotland region might have a higher mountain height and map roughness than the England region. This would increase topographical variability on the macro scale and is likely to have interesting economic effects (with some large areas being easier to exploit than others, and, so, in an online game, late comers are potentially left to more difficult terrain, etc.).

If anyone did want to code this for Experimental, as Prissi suggested, therefore, I should look very favourably towards including it.
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.

Isaac Eiland-Hall

Well. Not everything is a north/south split, for sure. The things you're talking about might better be done in a two-dimensional project - to define regions somehow, and apply various settings to those regions....

The Hood

Quote from: Isaac.Eiland-Hall on March 03, 2012, 09:09:52 AM
Well. Not everything is a north/south split, for sure. The things you're talking about might better be done in a two-dimensional project - to define regions somehow, and apply various settings to those regions....

I beleive that would be far more useful. If we could relate that to climates so that different regions had different building styles, and even as jamespetts suggests different names that would help make the maps less uniform and give more of a sense of connecting distinct regions. I'd also like to see greater variation in map roughness and altitude in different regions - mountains in some areas and plains in others.

Isaac Eiland-Hall

Minecraft does something nice: Biomes. Different areas on the map (in that case, randomly generated) with different attributes, such as the type of trees and such, flatness or mountainous of the terrain, etc...

Something like that could be really nice to have. :)

jk271

I have small idea, how to reduce number of transitions needed to paint.

Having implemented alpha channel in pak files would make it less time consuming to paint transitions (for .pak developers):

Tile between two clima zones is painted firstly with one of clima zone background and than second clima zome background with alpha channel is used.
So only one transition for each clima  zone (and each slope/{steep/hill} tile) is necessary to paint. Program than sets transition between two clima zones automatically.

Color e7ffff can be used instead of alpha channel. On the other hand implementing alpha brings some other benefits, e.g. less postprocessing (avoids removing white pixels) on pictures rendered from blender when alpha is used.

I hope the idea can be useful. If you do not think so, ignore this post.

kierongreen

Simutrans can already automatically calculate slopes and transitions. It's a question of how much memory is needed to store them all...

Fabio

If every climate would cache only its half transition tile, the amount of cached images would be significantly less.