smatz
4eff39a54c
(svn r15278) -Fix [FS#2332]: test noise limit of nearest town instead of st->town
16 years ago
Yexo
c8a4bf862b
(svn r15277) -Fix (r15027): Building bridges in AITestMode always returned false.
16 years ago
glx
53fe1afa1f
(svn r15270) -Change [API CHANGE]: remove AIEventTest
16 years ago
glx
470da22ac3
(svn r15263) -Codechange: added Engine::GetCost() to remove some code duplication.
16 years ago
frosch
512cc98b35
(svn r15262) -Fix: AIEvents were not freed, when they were not queued for any AI.
16 years ago
glx
9b73303b4d
(svn r15261) -Add: added Engine::GetRunningCost() to remove some code duplication. Also stops AIs decrementing vehicle counter of first company
16 years ago
frosch
7120b2455a
(svn r15255) -Fix (r15027): AIVehicle::GetLength() returned only the length of the first part of articulated road vehicles.
16 years ago
frosch
8be4bc3d1e
(svn r15252) -Fix (r15027): AIMarine::AreWaterTilesConnected() reported aqueducts being connected with all surrounding tiles. Also add some type safety.
16 years ago
frosch
2eb5af3bb8
(svn r15244) -Fix (r15027): The station tile of an oilrig-like industry is not neccessarily the first industry tile.
16 years ago
frosch
ac7883fe93
(svn r15241) -Fix (r15027): NoAI API was not aware of certain newindustries 'features'.
16 years ago
glx
205289cf9d
(svn r15228) -Fix [FS#2571]: possible crash when an AI/Library doesn't have a required function
16 years ago
glx
6301d1cc0a
(svn r15226) -Fix (r15214): broken AI content download
16 years ago
rubidium
80e59f375f
(svn r15215) -Fix: various MSVC x64 compiler warnings
16 years ago
glx
7809b7ef0e
(svn r15214) -Fix [NoAI]: ignore case for ai/library main script path on windows
16 years ago
glx
e30d391345
(svn r15191) -Fix (r15188): -1 is not a bool (MSVC warning)
16 years ago
Yexo
e3c69b7c4e
(svn r15190) -Feature: Allow terraforming of the tiles at the edges of the map.
16 years ago
Yexo
7b009c3586
(svn r15188) -Feature: You can now change the number of AIs from the AI config window.
16 years ago
Yexo
dcdb771c40
(svn r15187) -Fix: assert when an AI called AIRoad::GetNeighbourRoadCount on a tile at the north edge (bug found by SmatZ).
16 years ago
Yexo
9fd38d1022
(svn r15186) -Fix: Select the currently selected AI instead of the second on in the list.
...
-Feature: Double clicking on a slot in the AI config window results in opening the list of AIs.
16 years ago
Yexo
78c857422b
(svn r15185) -Fix (r15175): It was impossible to select AIs that had a different instance name then their name.
16 years ago
glx
11fe4bcc56
(svn r15184) -Cleanup: remove extra spaces
16 years ago
Yexo
aaa8be9a3f
(svn r15182) -Fix: After updating an AI select the latest version for the next game.
16 years ago
Yexo
593f380462
(svn r15175) -Feature: Add the option to select the AIs to start in a new game and configure them via the gui.
16 years ago
Yexo
1f5b8c97df
(svn r15171) -Fix (r15027): Buffer underflow in case there are no settings to save for an AI.
16 years ago
peter1138
b85389dca5
(svn r15149) -Codechange: GetMaskOfTownActions() is used by a Cmd handler, therefore it does not belong in _gui.
16 years ago
rubidium
a0e24cc6c9
(svn r15139) -Fix [NoAI]: a wrong tile got returned for hangar tiles when the station sign isn't over st->airport_tile.
16 years ago
peter1138
6644fa86ee
(svn r15133) -Fix: Crash if no NoAIs are present.
16 years ago
rubidium
72b0341ed0
(svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates.
16 years ago
truebrain
fac5cee3d3
(svn r15124) -Fix: last memory leak related to NoAI
16 years ago
truebrain
eb0d82ada0
(svn r15123) -Fix [NoAI]: 'const char *' implies that the return value should not be free'd, which is should .. so make them 'char *'
16 years ago
truebrain
ef75a7af90
(svn r15122) -Codechange: add a security assert, to make sure something never happens
16 years ago
truebrain
002427eab9
(svn r15121) -Fix: more mem-leak fixes (this should make SmatZ so happy ;) :p)
16 years ago
truebrain
8cbf156252
(svn r15120) -Fix: more mem-leak fixes
16 years ago
truebrain
d790884ee6
(svn r15118) -Fix: fix a minor mem-leak
16 years ago
truebrain
dec721ca6f
(svn r15109) -Add [NoAI]: add AITile::LevelTiles (Yexo)
16 years ago
truebrain
f5e0590c09
(svn r15107) -Fix [NoAI]: don't use so much explicit string copies if it is not required
16 years ago
rubidium
65ae906940
(svn r15106) -Fix [NoAI]: printf-ing of garbage.
16 years ago
truebrain
cafff6eb60
(svn r15102) -Fix (r15101): somehow makedepend fucked up (patch by Yexo)
16 years ago
truebrain
bd520ca562
(svn r15101) -Change [API CHANGE]: more consistant naming for consts:
...
INVALID_TOWN_RATING -> TOWN_RATING_INVALID
INVALID_TRANSPORT -> TRANSPORT_INVALID
INVALID_ORDER -> ORDER_INVALID
INVALID_GROUP -> GROUP_INVALID
GROUP_ALL/DEFAULT -> ALL/DEFAULT_GROUP
VEHICLE_RAIL/ROAD/.. -> VT_RAIL/ROAD/..
MY_COMPANY -> COMPANY_SELF
FIRST/LAST/INVALID_COMPANY -> COMPANY_FIRST/LAST/INVALID
16 years ago
truebrain
b9ebab0e5d
(svn r15100) -Add [NoAI]: introduce TILE_INVALID as const
16 years ago
truebrain
1cd56af6da
(svn r15099) -Fix (r15078): GetTileIndex(0, -1) is perfectly fine
16 years ago
truebrain
91c7cba05b
(svn r15096) -Fix [NoAI]: free memory when no longer needed
...
-Fix [NoAI]: when there are multiple versions of one AI, never randonly pick an older one, but always the latest
16 years ago
truebrain
e436f0218f
(svn r15095) -Add [NoAI]: allow AI Libraries to be in .tar files (subdir required, as with AIs
...
-Add [NoAI]: allow multiple versions of the same AI co-exist
-Change [NoAI]: updated the whole method of AI (Library) finding and loading; it is now much more clear and transparent
-Change [NoAI]: the name of the AI is now the name used by CreateInstance()
-Change [NoAI]: make the AI finder a bit more clever, mostly related to version finding
16 years ago
truebrain
fe7997e95f
(svn r15093) -Fix [NoAI]: check if a tile is valid before using IsTileType (bug found by Zuu, patch by Yexo)
16 years ago
truebrain
ae5c8a8b35
(svn r15091) -Add [NoAI] [API CHANGE]: introduce GetCategory() as a requirement for every library.nut, to indicate in which category it belongs. Currently the directory indicates the category, but this doesn't allow planned future additions
16 years ago
truebrain
e84138af22
(svn r15090) -Add [NoAI] [API CHANGE]: info.nut/library.nut now requires a function GetShortName(), which should return a 4 (four) character string, unique throughout the world. This id is simular to a GRFid.
16 years ago
truebrain
1e1cdd01b4
(svn r15086) -Fix: start AIs after 6 months on hard, 12 months on medium, and 24 months on easy. The current values were a bit .. too long waiting period ;)
16 years ago
truebrain
61093eb211
(svn r15084) -Fix [NoAI] (r15027): by removing the threads for NoAIs, it is no longer possible to use DoCommand (even indirect) in AIAbstractList::Valuator().
16 years ago
rubidium
eb19b0abf9
(svn r15082) -Codechange: make the AI library path also a searchdir instead of manually manufacturing it into a searchdir.
16 years ago
truebrain
9724a986c8
(svn r15078) -Fix [NoAI]: AIMap didn't filter its input (Yexo)
16 years ago
smatz
ca45774160
(svn r15077) -Codechange: enumify DAYS_IN_YEAR and DAYS_IN_LEAP_YEAR
...
-Change: when computing daily running cost, divide by 365 (instead of 364). Since r12134, the rounding errors don't need this correction anymore
16 years ago
truebrain
5b4da28594
(svn r15076) -Fix: a start_date of 0 would never start an AI .. so don't allow it (Yexo)
16 years ago
truebrain
d5a599f5e5
(svn r15074) -Fix: make Rubidium happy
16 years ago
peter1138
4585d9785d
(svn r15073) -Fix (r15067) [FS#2532]: Default copy constructors don't necessarily do what you want. Instead of creating one, we now pass a pointer around as that avoids additional allocations.
16 years ago
truebrain
ec4bdfe611
(svn r15068) -Add [NoAI]: introducing 'step_size' for AIConfig, for future AIGUI (Yexo)
16 years ago
peter1138
afb94c252d
(svn r15067) -Fix [FS#2531]: Possible compiler bug, alleviated by using SmallVector instead of using std::set. SmallVector does everything needed anyway.
16 years ago
truebrain
f293bff01b
(svn r15066) -Change: start_date is now in days, instead of in months (Yexo)
16 years ago
truebrain
39cec4c65f
(svn r15063) -Fix [NoAI]: starting companies now listen correctly to 'start_date' set to the AI slot (Yexo)
...
-Add [NoAI]: add a 'deviation' value for all settings, giving a slight deviation of the value of a setting (Yexo)
16 years ago
smatz
638411c087
(svn r15062) -Fix: further forgotten svn properties and headers
16 years ago
smatz
c30ce23866
(svn r15061) -Fix (r15027): three files were missing the Id header
16 years ago
truebrain
ee17e1e7b8
(svn r15059) -Add [NoAI]: use 'start_date' from the AI configure to see when an AI should start next
16 years ago
truebrain
bf1acb6772
(svn r15057) -Fix [NoAI]: clamp the values of a setting between the ones allowed by info.nut
16 years ago
truebrain
f29941a043
(svn r15056) -Add [NoAI]: when starting a game, give a random value to the setting marked with AICONFIG_RANDOM (Yexo)
16 years ago
truebrain
53d28d24b5
(svn r15055) -Add [NoAI]: add the AICONFIG_RANDOM and AICONFIG_BOOLEAN consts (Yexo)
16 years ago
glx
55db451a32
(svn r15049) -Fix (r15045): MSVC performance warning
16 years ago
truebrain
81157e3d91
(svn r15048) -Fix (r15047): the one time you don't compile a patch of someone, it contains a warning .. ;)
16 years ago
truebrain
08591d8643
(svn r15047) -Fix [NoAI]: AICONFIG_BOOLEAN (in AddSetting) doesn't require (or even allow) a min/max setting .. it is always 0/1 (Yexo)
16 years ago
truebrain
75b8afc136
(svn r15046) -Fix (r15045): in case CanLoadFromRevision does not exist, only allow savedata from the same version as we are now
16 years ago
truebrain
5573d9a459
(svn r15045) -Add [NoAI API CHANGE]: in info.nut you can now have (optional) a CanLoadFromVersion(version), which should return true/false, to indicate if you can load a savegame made with your AI of version 'version'
...
-Add [NoAI API CHANGE]: in main.nut the Load() function now should be Load(version, data), where 'version' is the version of your AI which made the savegame
-Codechange [NoAI]: various of function renames to make things more sane
-Add [NoAI]: push the 'version' of the AI through various of layers
-Codechange [NoAI]: various of code cleanups
-Add [NoAI]: store the version of the AI in the savegame too
16 years ago
truebrain
27c0a4c801
(svn r15044) -Add [NoAI]: AIConfig::GetVersion(), to get the version of the current AI
16 years ago
truebrain
c8f9cbca53
(svn r15042) -Fix (r15027): don't leak memory in AIInfo (Yexo)
16 years ago
truebrain
03725c057f
(svn r15036) -Fix: use the same value for 'random' through-out the code for PlantTree
16 years ago
truebrain
dcae208dfe
(svn r15033) -Fix (r15027): silent a warning when compiling without network
16 years ago
truebrain
c2406cd42d
(svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
...
NoAI is an API (a framework) to build your own AIs in. See:
http://wiki.openttd.org/wiki/index.php/AI:Main_Page
With many thanks to:
- glx and Rubidium for their syncing, feedback and hard work
- Yexo for his feedback, patches, and AIs which tested the system very deep
- Morloth for his feedback and patches
- TJIP for hosting a challenge which kept NoAI on track
- All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
16 years ago
frosch
0c23420998
(svn r14991) -Fix: Command-flags is an uint32.
16 years ago
rubidium
28ea38ae55
(svn r14949) -Cleanup: pointer coding style
16 years ago
rubidium
c0e7434f38
(svn r14944) -Cleanup: add spaces around some operators
16 years ago
rubidium
7a5798695d
(svn r14919) -Feature: distant joining of stations (Frostregen and PhilSophus)
16 years ago
glx
c61674221c
(svn r14840) -Cleanup: remove duplicate includes
16 years ago
smatz
91233ea596
(svn r14828) -Codechange: move most of save/load-specific code to separate files
16 years ago
smatz
cd88a7590a
(svn r14812) -Codechange: use INVALID_TILE instead of 0 to mark company without HQ
16 years ago
rubidium
e83cca7d13
(svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter.
16 years ago
smatz
c88a6199a7
(svn r14743) -Codechange: use INVALID_TILE to indicate station doesn't have queried facility (or station/roadstop is invalid) instead of 0 (Yexo)
16 years ago
smatz
8a06e67067
(svn r14734) -Codechange: type of bankrupt_asked is CompanyMask, not byte
16 years ago
frosch
ee9fc4e49b
(svn r14707) -Cleanup: Replace an 'int' by 'Trackdir'.
16 years ago
smatz
82ef029f41
(svn r14693) -Codechange: replace one check in old AI (probably typo, but the effect was the same) (Yexo)
16 years ago
michi_cc
9c6541c80b
(svn r14504) -Cleanup: Use the right variable type for tile offsets.
16 years ago
rubidium
b5e467978b
(svn r14464) -Codechange: replace (uint)-1 with UINT_MAX (PhilSophus)
16 years ago
smatz
b2852f88fb
(svn r14448) -Codechange [FS#2328]: rename a few variables (based on a patch by planetmaker)
16 years ago
rubidium
e589c7e580
(svn r14422) -Codechange: also reflect the changes of r14421 in the filenames.
16 years ago
rubidium
f56e630e5c
(svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
16 years ago
frosch
e10127f032
(svn r14335) -Codechange: Remove some magic numbers.
16 years ago
belugas
de43d17a82
(svn r14169) -Codechange: rename location_of_house for location_of_HQ, which is more exact and less subject to interpretation
16 years ago
belugas
9506434539
(svn r14105) -Fix: Some typos that are more grammatical errors, as it seems.
...
Provided by ln
I've added a little fix on currency.cpp too, why not :)
16 years ago
frosch
c8e699cc35
(svn r14076) -Codechange: Merge the four start/stop commands into a single CMD_START_STOP_VEHICLE.
16 years ago
rubidium
688267ad52
(svn r14062) -Fix [FS#2226]: division by 0 in newai.
16 years ago
rubidium
1ef65c329e
(svn r13999) -Fix [FS#2190]: crash when the AI tries to find the depot of an airport that doesn't have a depot.
16 years ago
rubidium
4396b7c68c
(svn r13809) -Fix: memory leak each time a "new ai" got (re)started.
16 years ago
rubidium
cde65455ac
(svn r13731) -Codechange: make a pool of the array of players.
16 years ago
rubidium
6898a76c5f
(svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool.
16 years ago
rubidium
e7a501100a
(svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
17 years ago
rubidium
d289464d69
(svn r13255) -Codechange: move _opt to _settings.
17 years ago
rubidium
dc77647ea4
(svn r13251) -Codechange: rename _patches to _settings as that is more logic.
...
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
17 years ago
frosch
8f104a2e97
(svn r13233) -Fix: Replace some (incorrect) evaluations of TileOwner by RoadOwner.
...
-Fix: Before evaluating RoadOwner, check if the roadtype is present.
-Fix: Some places assumed that MP_ROAD means normal street.
17 years ago
smatz
8841f3be40
(svn r13222) -Change: allow old AI building helistations and helidepots for oil rig routes
17 years ago
smatz
9e2490abb2
(svn r13221) -Fix (r8747): old AI failed to build oil rig routes
17 years ago
smatz
baeb6e5395
(svn r13217) -Fix: old AI was building small airports in years when they were not available in original game, causing small planes and helis everywhere
17 years ago
smatz
2be223fc03
(svn r13090) -Codechange: add functions for direct conversion from DiagDirection to Track and Trackbits
17 years ago
rubidium
1ce0b03bf0
(svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description.
17 years ago
peter1138
45034bc522
(svn r12924) -Feature: Introducing the so called 'engine pool' which primarily removes the fixed engine type limits and also happens to allow (with the patch option 'dynamic_engines') multiple NewGRF vehicle sets to coexist.
17 years ago
rubidium
f4b07a78c4
(svn r12762) -Fix: tabs after the first non-tab character are generally not okay (or lines starting with a space and then tabs).
17 years ago
rubidium
ca1f8fbe2e
(svn r12761) -Codechange: lots of minor whitespace coding style fixes around operators.
17 years ago
rubidium
6d063c3ad6
(svn r12754) -Codechange: split depot.h into depot_map.h, depot_func.h and depot_base.h and remove quite a lot of unneeded (before this) includes of depot.h.
17 years ago
smatz
ec588da9e8
(svn r12753) -Codechange: do not use IsDepotTypeTile() where simpler function can be used
17 years ago
smatz
966e476df8
(svn r12745) -Codechange: a bit of naming conventions, introduce Is*DepotTile()
17 years ago
rubidium
973997e896
(svn r12617) -Codechange: add type safety to the Order's load and unload types.
17 years ago
rubidium
cf250390c5
(svn r12615) -Codechange: rename some enums related to depot orders to make it more clear that they are no loading/unloading flags. Also add more type strictness.
17 years ago
rubidium
53d101cc99
(svn r12593) -Codechange: hide Order's flags in most of the code.
17 years ago
rubidium
935b562074
(svn r12588) -Codechange: do not access the destination of an order directly.
17 years ago
rubidium
a3224512cc
(svn r12587) -Codechange: unduplicate some code in the Unpack*Order functions and move the 'normal' case Pack/Unpack to Order.
17 years ago
rubidium
3b0e3d8d30
(svn r12584) -Codechange: do not access the order type directly.
17 years ago
frosch
ae01e263ad
(svn r12540) -Codechange: Enumify some values in original pathfinder and remove an unused variable.
17 years ago
frosch
15b2f07587
(svn r12533) -Cleanup: Remove some wizardry from default ai by using existings enums and helper functions.
17 years ago
rubidium
df1d9bd880
(svn r12490) -Codechange: rename engine.h to engine_func.h and remove unneeded inclusions of engine.h and/or replace them with engine_type.h.
17 years ago
rubidium
c51b81c247
(svn r12489) -Codechange: split station.h into station_base.h and station_func.h.
17 years ago
rubidium
b84b16cfcd
(svn r12488) -Codechange: split order.h into order_base.h and order_func.h.
17 years ago
rubidium
49a040e6ad
(svn r12476) -Codechange: split type engine related types from engine.h (and openttd.h) to engine_type.h.
17 years ago
peter1138
a729283a3c
(svn r12451) -Codechange: use of FOR_ALL_ENGINES/ENGINEIDS_OF_TYPE instead of for-loops
17 years ago
smatz
988b5a9111
(svn r12200) -Fix: force AI to build rail or road instead of bridges if possible, so it doesn't build bridges everywhere
17 years ago
frosch
7f3d56041b
(svn r12199) -Codechange: Remove magic around the results of GetTileTrackStatus().
17 years ago
smatz
9bdb194b2a
(svn r12197) -Fix [FS#1788](r12134): show correct last year profit when the train had negative income
...
-Codechange: use GetDisplayProfitThisYear() to convert vehicle profit to readable form
17 years ago
frosch
1d120c51b8
(svn r12193) -Codechange: Rename a magic variable, give it a decent type, and remove a 'goto'.
17 years ago
smatz
a53594ebd4
(svn r12184) -Fix: take into account possible loan when AI is deciding which bridge to build, so it won't build wooden bridges everytime
17 years ago
glx
d7924424ac
(svn r12155) -Fix (r12154): some warnings (always compile before commit)
17 years ago
glx
a148985087
(svn r12154) -Codechange: removed a magic number
17 years ago
frosch
514df81e27
(svn r12141) -Codechange: Introduce IsNormalRoad[Tile](), IsRoadDepot[Tile]() and HasTileRoadType(); and use them.
17 years ago
smatz
fe48d0be21
(svn r12134) -Change: count the number of ticks a vehicle was running this day to calculate running cost
...
-Fix [FS#1739]: vehicle profit is now counted with 8bit fract, so it is now shown properly in the vehicle details window
17 years ago
peter1138
1268a70466
(svn r12019) -Codechange: Add support for passenger engine designation for AI-use, NewGRF property 0x08 for trains.
17 years ago
frosch
d4dc5e0775
(svn r11983) -Codechange: Add some helper functions for slopes and use them.
17 years ago
smatz
773446df5e
(svn r11972) -Fix: old AI shouldn't build fast planes with a small airport in orders
17 years ago
smatz
74af65e556
(svn r11968) -Codechange: remove redundant FindLengthOfTunnel(), use GetTunnelBridgeLength() and/or GetOtherTunnelEnd() instead
17 years ago
smatz
881b74e882
(svn r11962) -Cleanup: OPF is no longer used to update signals
17 years ago
smatz
8be486c27e
(svn r11960) -Cleanup: simplify some IsTunnel(Tile) / IsBridge(Tile) conditions
17 years ago
peter1138
622f251197
(svn r11959) -Codechange: Use macro to loop for specific engine types instead of using specific indexes each time.
...
-Codechange: Minor scope changes in said loops.
17 years ago
smatz
51d7692aca
(svn r11958) -Fix (r11204): NewAI couldn't build any road vehicles when there were any tram grfs loaded
17 years ago
frosch
8a72af3a13
(svn r11946) -Fix: slope detection of bridge ramps.
...
YAPF failed for steep slopes.
Trolly failed for a lot.
17 years ago
smatz
66a0fafc93
(svn r11917) -Fix (r3677): AI was reading wrong tile slope while building road bridge
17 years ago
rubidium
c141639bcc
(svn r11887) -Fix [FS#1658]: segmentation faults/wrong frees due uninitialized memory in the AI.
17 years ago
smatz
61e40b1aa5
(svn r11871) -Fix [FS#1074]: do not update signals after each tile when building/removing a large block of track/signals/station
17 years ago
rubidium
736640fd87
(svn r11866) -Codechange: swap OFB_* and OF_* so it conceptually in sync with other cases of *B_* vs *_* like VETSB_* and VETS_*.
17 years ago