Niels Martin Hansen
7b56be0f3a
Codechange: Make a k-d tree index of towns
2019-03-09 20:27:11 +01:00
Peter Nelson
8b1b3fd0f9
Feature: Non-rectangular sparse station catchment area.
2019-03-09 16:33:47 +00:00
Niels Martin Hansen
52572cafa6
Add: Option for population-linear town cargo generation
...
Introduce a new default algorithm for town cargo generation (passengers and mail), and a game setting to choose between the new and original algorithm.
The original town cargo generation algorithm has the property of the generated amount relating to the square of each building's population, meaning large towns easily produce more cargo than can realistically be transported. The problem is excessive cargo is amplified if playing with cargodist.
The new algorithm introduced instead has a linear relation to the population. The result is that smaller towns will produce slightly more cargo, while the largest towns will produce about a fourth of what they would with the original algorithm.
Existing savegames will use the original algorithm, while new games will default to the new algorithm.
2019-03-04 20:19:44 +01:00
PeterN
ebc3934ee6
Fix #7043 , Fix #7274 : Delete town owned bridge based on adjacent tile ownership, not nearest town. ( #7284 )
...
This only affects failed town generation, as towns do not delete bridges under any other circumstances.
The existing test performed badly with a large number of towns due to having to calculate the
nearest town, and also by its nature assumed a bridge was built by the nearest town, leading
to bridges of nearby large towns be removed incorrectly.
If we gain the ability to quickly retrieve the correct town (which is _not_ the nearest town) from the bridge, this change should be reviewed.
2019-03-03 22:28:55 +00:00
SamuXarick
50a0cf1915
Change: Allow towns to build bridges over rails and one-way roads. ( #7291 )
2019-02-28 17:45:17 +00:00
Niels Martin Hansen
48b334cf97
Add: Houses can accept up to 16 different cargo types via NewGRF.
...
New Action0 property 23 for feature 07, variable length, format B n*(B B). Initial byte is number of structures following. First byte in structure is cargo id, second is acceptance level in 1/8 units.
2019-01-21 16:06:25 +01:00
nikolas
d8ccad91f9
Fix: Some code and comment typos
...
Found with codespell
2019-01-17 22:01:07 +00:00
Joan Josep
9aecbac2b4
Codechange: Define INVALID_TOWN as a TownID ( #7044 )
2019-01-12 23:20:10 +00:00
Charles Pigott
b5028efc1f
Fix: Protect against a few out of bounds or uninitialised usage errors
2018-10-31 12:41:49 +01:00
Charles Pigott
f5b1115039
Doc: Lots and lots of doxymentation fixes
2018-10-31 12:35:54 +01:00
Max Maton
eed0da60a2
Fix #6622 : Fixes empty company name in news when gamescript constructs a town
2018-09-18 18:35:26 +02:00
Pavel Stupnikov
9fc3212679
Feature #6397 : Keep town growth rate in sync with house count
...
Takes some code and ideas from #6378 patch, but doesn't change anything GS-related.
2018-06-24 20:55:48 +02:00
PeterN
4cebebcf68
Change: Add CargoTypes type for cargo masks. ( #6790 )
2018-05-21 22:08:39 +01:00
Pavel Stupnikov
fef8b831a9
Change: Switch town growth rate and counter to actual game ticks ( #6763 )
2018-05-02 21:01:30 +02:00
Pavel Stupnikov
8d8b9a026a
Feature #6610 : Allow towns to build houses on road turns ( #6758 )
2018-04-28 23:47:36 +02:00
frosch
b4b98e5165
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
2017-08-13 18:38:42 +00:00
frosch
bcc2c7d06e
(svn r27739) -Cleanup/Revert (r12162): Clearing MP_HOUSE with DC_EXEC always fails, so there is no effect in testing for houses first. (adf88)
2017-01-22 13:13:15 +00:00
frosch
ab7ebdcfd9
(svn r27423) -Fix: When towns expanded single-bit roadtiles using a grid-layout, they used the layout position of the neighbouring tile.
2015-10-30 17:17:54 +00:00
frosch
d626962a38
(svn r27420) -Fix [FS#6362]: GrowTownAtRoad sometimes returned false, even when a house was built. (_dp_)
2015-10-30 16:19:09 +00:00
frosch
ab69952f2a
(svn r27306) -Fix (r27305): Confused tiles.
2015-06-20 12:55:17 +00:00
frosch
0e378747db
(svn r27305) -Fix [FS#6320]: Account for road-bridges and drive-through-stops in CanFollowRoad.
2015-06-20 12:40:04 +00:00
frosch
813e85f301
(svn r27260) -Fix (r27244): economy.allow_town_roads should not affect town placement during world generation.
2015-04-28 17:25:21 +00:00
frosch
5992f4fa1b
(svn r27259) -Fix (r27244): Incorrect merge. (_dp_)
2015-04-27 21:40:46 +00:00
frosch
9aa0ba43f7
(svn r27249) -Fix [FS#6240]: In some cases town growth failure was considered as success. (_dp_)
2015-04-25 12:17:16 +00:00
frosch
9fb56ca02e
(svn r27248) -Fix [FS#6257]: Town labels on smallmap and zoomed-out viewports were not centered. (_dp_)
2015-04-25 11:58:19 +00:00
frosch
93d7db0b36
(svn r27247) -Cleanup: Make GrowTownAtRoad return a bool.
2015-04-25 11:46:10 +00:00
frosch
915aad7603
(svn r27244) -Change [FS#6245]: Do not consider road junctions with trivial dead ends as branch points during town growth. (_dp_)
2015-04-25 11:12:47 +00:00
rubidium
30f778e933
(svn r27105) -Fix [FS#6195]: grow_counter was not properly bounded by growth_rate, but by some other value used to calculate growth_rate.
2015-01-01 21:25:42 +00:00
rubidium
d534c80e94
(svn r27020) -Cleanup: some coding style consistency improvements (mostly spaces)
2014-10-15 18:31:37 +00:00
rubidium
9daf7e749c
(svn r26879) -Codechange: remove most MayHaveBridgeAbove calls since the data is now always accessible
2014-09-21 11:24:51 +00:00
rubidium
9ed12b0f07
(svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL)
2014-04-25 15:40:32 +00:00
rubidium
0463dbdc9e
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
frosch
55502341ac
(svn r26346) -Fix [FS#5870]: Call Layouter::ReduceLineCache from GenerateTownName in all cases.
2014-02-16 17:45:24 +00:00
frosch
20785c79fc
(svn r26345) -Cleanup (r26310): Spawning towns does not touch persistent NewGRF storage. ClearPersistentStorageChanges is a dangerous/magic function which should not be called without reason.
2014-02-16 17:42:28 +00:00
rubidium
9f6b8aea49
(svn r26313) -Codechange: use a set for finding unique town names instead of iterating all just created town names (MJP)
2014-02-06 21:06:59 +00:00
rubidium
d05ff6e77b
(svn r26311) -Codechange: use a different method for finding whether there is a nearby town when the map has thousands of towns (MJP)
2014-02-06 21:01:50 +00:00
rubidium
fcb122124b
(svn r26310) -Codechange: clean up some caches during town generation to keep memory usage significantly lower (MJP)
2014-02-06 20:55:49 +00:00
rubidium
30a95966ec
(svn r26308) -Fix-ish: do not try to build more towns/industries than the pool can hold (MJP)
2014-02-06 20:42:09 +00:00
rubidium
c143ca729a
(svn r26104) -Fix: do not attempt to do stuff with an invalid direction, especially using it as index into a table
2013-11-25 13:13:35 +00:00
rubidium
8e27031492
(svn r26051) -Fix: out of bounds access in CmdTownCargoGoal
2013-11-22 21:44:23 +00:00
frosch
9a41aefcc4
(svn r25968) -Add: [Script] ScriptTown::TOWN_GROWTH_NONE to indicate no town growth via ScriptTown::SetGrowthRate and GetGrowthRate.
2013-11-12 17:57:12 +00:00
frosch
cef342d57c
(svn r25931) -Fix [FS#5786-ish]: [NoGo] Preserve the relative town growth progress when changing the town growth rate.
2013-10-30 10:01:49 +00:00
frosch
12b30103b1
(svn r25922) -Codechange: Rename TOWN_IS_FUNDED to TOWN_IS_GROWING. It is not tied to funding a town.
2013-10-28 10:55:34 +00:00
zuu
dfb5663313
(svn r25849) -Codechange: Introduce IsTileFlat to not compute full slope information for situations when we only want to know if a tile is flat or not (cirdan, LordAro)
2013-10-12 22:07:58 +00:00
frosch
6a0439a789
(svn r25838) -Codechange: Rename HOUSE_MAX to NUM_HOUSES.
2013-10-12 16:33:19 +00:00
frosch
35d7e8bca4
(svn r25833) -Codechange: Move ObjectType from map array into pool item.
2013-10-12 16:30:42 +00:00
zuu
ffec9b41e8
(svn r25789) -Fix (r25783): Calling GSTown.FoundTown in world gen caused world gen to terminate and start the game
2013-09-21 15:09:00 +00:00
zuu
67ab3108d6
(svn r25785) -Feature: [Script] Allow AIs and GS to found towns. Allow GS to rename towns
2013-09-19 18:48:05 +00:00
frosch
87fae6ba57
(svn r25140) -Fix [FS#5519]: Towns are build as OWNER_TOWN, so they also need to be removed as OWNER_TOWN.
2013-04-03 20:24:10 +00:00
planetmaker
c24374f99c
(svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow)
2013-01-08 22:46:42 +00:00