summaryrefslogtreecommitdiff
path: root/src/ai
AgeCommit message (Collapse)Author
2009-01-17(svn r15124) -Fix: last memory leak related to NoAItruebrain
2009-01-17(svn r15123) -Fix [NoAI]: 'const char *' implies that the return value ↵truebrain
should not be free'd, which is should .. so make them 'char *'
2009-01-17(svn r15122) -Codechange: add a security assert, to make sure something ↵truebrain
never happens
2009-01-17(svn r15121) -Fix: more mem-leak fixes (this should make SmatZ so happy ;) :p)truebrain
2009-01-17(svn r15120) -Fix: more mem-leak fixestruebrain
2009-01-17(svn r15118) -Fix: fix a minor mem-leaktruebrain
2009-01-16(svn r15109) -Add [NoAI]: add AITile::LevelTiles (Yexo)truebrain
2009-01-16(svn r15107) -Fix [NoAI]: don't use so much explicit string copies if it is ↵truebrain
not required
2009-01-16(svn r15106) -Fix [NoAI]: printf-ing of garbage.rubidium
2009-01-16(svn r15102) -Fix (r15101): somehow makedepend fucked up (patch by Yexo)truebrain
2009-01-16(svn r15101) -Change [API CHANGE]: more consistant naming for consts:truebrain
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
2009-01-15(svn r15100) -Add [NoAI]: introduce TILE_INVALID as consttruebrain
2009-01-15(svn r15099) -Fix (r15078): GetTileIndex(0, -1) is perfectly finetruebrain
2009-01-15(svn r15096) -Fix [NoAI]: free memory when no longer neededtruebrain
-Fix [NoAI]: when there are multiple versions of one AI, never randonly pick an older one, but always the latest
2009-01-15(svn r15095) -Add [NoAI]: allow AI Libraries to be in .tar files (subdir ↵truebrain
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
2009-01-15(svn r15093) -Fix [NoAI]: check if a tile is valid before using IsTileType ↵truebrain
(bug found by Zuu, patch by Yexo)
2009-01-15(svn r15091) -Add [NoAI] [API CHANGE]: introduce GetCategory() as a ↵truebrain
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
2009-01-15(svn r15090) -Add [NoAI] [API CHANGE]: info.nut/library.nut now requires a ↵truebrain
function GetShortName(), which should return a 4 (four) character string, unique throughout the world. This id is simular to a GRFid.
2009-01-14(svn r15086) -Fix: start AIs after 6 months on hard, 12 months on medium, ↵truebrain
and 24 months on easy. The current values were a bit .. too long waiting period ;)
2009-01-14(svn r15084) -Fix [NoAI] (r15027): by removing the threads for NoAIs, it is ↵truebrain
no longer possible to use DoCommand (even indirect) in AIAbstractList::Valuator().
2009-01-14(svn r15082) -Codechange: make the AI library path also a searchdir instead ↵rubidium
of manually manufacturing it into a searchdir.
2009-01-13(svn r15078) -Fix [NoAI]: AIMap didn't filter its input (Yexo)truebrain
2009-01-13(svn r15077) -Codechange: enumify DAYS_IN_YEAR and DAYS_IN_LEAP_YEARsmatz
-Change: when computing daily running cost, divide by 365 (instead of 364). Since r12134, the rounding errors don't need this correction anymore
2009-01-13(svn r15076) -Fix: a start_date of 0 would never start an AI .. so don't ↵truebrain
allow it (Yexo)
2009-01-13(svn r15074) -Fix: make Rubidium happytruebrain
2009-01-13(svn r15073) -Fix (r15067) [FS#2532]: Default copy constructors don't ↵peter1138
necessarily do what you want. Instead of creating one, we now pass a pointer around as that avoids additional allocations.
2009-01-13(svn r15068) -Add [NoAI]: introducing 'step_size' for AIConfig, for future ↵truebrain
AIGUI (Yexo)
2009-01-13(svn r15067) -Fix [FS#2531]: Possible compiler bug, alleviated by using ↵peter1138
SmallVector instead of using std::set. SmallVector does everything needed anyway.
2009-01-13(svn r15066) -Change: start_date is now in days, instead of in months (Yexo)truebrain
2009-01-13(svn r15063) -Fix [NoAI]: starting companies now listen correctly to ↵truebrain
'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)
2009-01-13(svn r15062) -Fix: further forgotten svn properties and headerssmatz
2009-01-13(svn r15061) -Fix (r15027): three files were missing the Id headersmatz
2009-01-13(svn r15059) -Add [NoAI]: use 'start_date' from the AI configure to see when ↵truebrain
an AI should start next
2009-01-13(svn r15057) -Fix [NoAI]: clamp the values of a setting between the ones ↵truebrain
allowed by info.nut
2009-01-13(svn r15056) -Add [NoAI]: when starting a game, give a random value to the ↵truebrain
setting marked with AICONFIG_RANDOM (Yexo)
2009-01-13(svn r15055) -Add [NoAI]: add the AICONFIG_RANDOM and AICONFIG_BOOLEAN ↵truebrain
consts (Yexo)
2009-01-13(svn r15049) -Fix (r15045): MSVC performance warningglx
2009-01-13(svn r15048) -Fix (r15047): the one time you don't compile a patch of ↵truebrain
someone, it contains a warning .. ;)
2009-01-13(svn r15047) -Fix [NoAI]: AICONFIG_BOOLEAN (in AddSetting) doesn't require ↵truebrain
(or even allow) a min/max setting .. it is always 0/1 (Yexo)
2009-01-13(svn r15046) -Fix (r15045): in case CanLoadFromRevision does not exist, only ↵truebrain
allow savedata from the same version as we are now
2009-01-13(svn r15045) -Add [NoAI API CHANGE]: in info.nut you can now have (optional) ↵truebrain
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
2009-01-13(svn r15044) -Add [NoAI]: AIConfig::GetVersion(), to get the version of the ↵truebrain
current AI
2009-01-12(svn r15042) -Fix (r15027): don't leak memory in AIInfo (Yexo)truebrain
2009-01-12(svn r15036) -Fix: use the same value for 'random' through-out the code for ↵truebrain
PlantTree
2009-01-12(svn r15033) -Fix (r15027): silent a warning when compiling without networktruebrain
2009-01-12(svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to ↵truebrain
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
2009-01-11(svn r14991) -Fix: Command-flags is an uint32.frosch
2009-01-10(svn r14949) -Cleanup: pointer coding stylerubidium
2009-01-09(svn r14944) -Cleanup: add spaces around some operatorsrubidium
2009-01-08(svn r14919) -Feature: distant joining of stations (Frostregen and PhilSophus)rubidium