Commit Graph

209 Commits

Author SHA1 Message Date
truebrain
fac5cee3d3 (svn r15124) -Fix: last memory leak related to NoAI 2009-01-17 15:38:37 +00:00
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 *' 2009-01-17 15:31:30 +00:00
truebrain
ef75a7af90 (svn r15122) -Codechange: add a security assert, to make sure something never happens 2009-01-17 15:14:13 +00:00
truebrain
002427eab9 (svn r15121) -Fix: more mem-leak fixes (this should make SmatZ so happy ;) :p) 2009-01-17 15:07:35 +00:00
truebrain
8cbf156252 (svn r15120) -Fix: more mem-leak fixes 2009-01-17 14:54:24 +00:00
truebrain
d790884ee6 (svn r15118) -Fix: fix a minor mem-leak 2009-01-17 14:45:44 +00:00
truebrain
dec721ca6f (svn r15109) -Add [NoAI]: add AITile::LevelTiles (Yexo) 2009-01-16 15:01:54 +00:00
truebrain
f5e0590c09 (svn r15107) -Fix [NoAI]: don't use so much explicit string copies if it is not required 2009-01-16 14:56:13 +00:00
rubidium
65ae906940 (svn r15106) -Fix [NoAI]: printf-ing of garbage. 2009-01-16 14:37:53 +00:00
truebrain
cafff6eb60 (svn r15102) -Fix (r15101): somehow makedepend fucked up (patch by Yexo) 2009-01-16 00:27:22 +00:00
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
2009-01-16 00:05:26 +00:00
truebrain
b9ebab0e5d (svn r15100) -Add [NoAI]: introduce TILE_INVALID as const 2009-01-15 21:20:12 +00:00
truebrain
1cd56af6da (svn r15099) -Fix (r15078): GetTileIndex(0, -1) is perfectly fine 2009-01-15 20:59:22 +00:00
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
2009-01-15 18:24:49 +00:00
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
2009-01-15 18:15:12 +00:00
truebrain
fe7997e95f (svn r15093) -Fix [NoAI]: check if a tile is valid before using IsTileType (bug found by Zuu, patch by Yexo) 2009-01-15 17:00:47 +00:00
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 2009-01-15 15:56:10 +00:00
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. 2009-01-15 14:37:44 +00:00
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 ;) 2009-01-14 21:32:06 +00:00
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(). 2009-01-14 18:25:48 +00:00
rubidium
eb19b0abf9 (svn r15082) -Codechange: make the AI library path also a searchdir instead of manually manufacturing it into a searchdir. 2009-01-14 15:20:06 +00:00
truebrain
9724a986c8 (svn r15078) -Fix [NoAI]: AIMap didn't filter its input (Yexo) 2009-01-13 23:50:12 +00:00
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
2009-01-13 22:58:03 +00:00
truebrain
5b4da28594 (svn r15076) -Fix: a start_date of 0 would never start an AI .. so don't allow it (Yexo) 2009-01-13 22:36:44 +00:00
truebrain
d5a599f5e5 (svn r15074) -Fix: make Rubidium happy 2009-01-13 21:11:02 +00:00
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. 2009-01-13 20:43:53 +00:00
truebrain
ec4bdfe611 (svn r15068) -Add [NoAI]: introducing 'step_size' for AIConfig, for future AIGUI (Yexo) 2009-01-13 18:26:58 +00:00
peter1138
afb94c252d (svn r15067) -Fix [FS#2531]: Possible compiler bug, alleviated by using SmallVector instead of using std::set. SmallVector does everything needed anyway. 2009-01-13 18:18:53 +00:00
truebrain
f293bff01b (svn r15066) -Change: start_date is now in days, instead of in months (Yexo) 2009-01-13 18:04:12 +00:00
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)
2009-01-13 16:53:03 +00:00
smatz
638411c087 (svn r15062) -Fix: further forgotten svn properties and headers 2009-01-13 16:30:24 +00:00
smatz
c30ce23866 (svn r15061) -Fix (r15027): three files were missing the Id header 2009-01-13 15:49:32 +00:00
truebrain
ee17e1e7b8 (svn r15059) -Add [NoAI]: use 'start_date' from the AI configure to see when an AI should start next 2009-01-13 14:00:26 +00:00
truebrain
bf1acb6772 (svn r15057) -Fix [NoAI]: clamp the values of a setting between the ones allowed by info.nut 2009-01-13 13:09:49 +00:00
truebrain
f29941a043 (svn r15056) -Add [NoAI]: when starting a game, give a random value to the setting marked with AICONFIG_RANDOM (Yexo) 2009-01-13 12:52:09 +00:00
truebrain
53d28d24b5 (svn r15055) -Add [NoAI]: add the AICONFIG_RANDOM and AICONFIG_BOOLEAN consts (Yexo) 2009-01-13 12:51:46 +00:00
glx
55db451a32 (svn r15049) -Fix (r15045): MSVC performance warning 2009-01-13 02:03:03 +00:00
truebrain
81157e3d91 (svn r15048) -Fix (r15047): the one time you don't compile a patch of someone, it contains a warning .. ;) 2009-01-13 01:52:32 +00:00
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) 2009-01-13 01:51:39 +00:00
truebrain
75b8afc136 (svn r15046) -Fix (r15045): in case CanLoadFromRevision does not exist, only allow savedata from the same version as we are now 2009-01-13 01:50:51 +00:00
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
2009-01-13 01:46:46 +00:00
truebrain
27c0a4c801 (svn r15044) -Add [NoAI]: AIConfig::GetVersion(), to get the version of the current AI 2009-01-13 00:10:58 +00:00
truebrain
c8f9cbca53 (svn r15042) -Fix (r15027): don't leak memory in AIInfo (Yexo) 2009-01-12 21:40:00 +00:00
truebrain
03725c057f (svn r15036) -Fix: use the same value for 'random' through-out the code for PlantTree 2009-01-12 18:15:18 +00:00
truebrain
dcae208dfe (svn r15033) -Fix (r15027): silent a warning when compiling without network 2009-01-12 17:40:13 +00:00
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
2009-01-12 17:11:45 +00:00
frosch
0c23420998 (svn r14991) -Fix: Command-flags is an uint32. 2009-01-11 14:11:06 +00:00
rubidium
28ea38ae55 (svn r14949) -Cleanup: pointer coding style 2009-01-10 00:31:47 +00:00
rubidium
c0e7434f38 (svn r14944) -Cleanup: add spaces around some operators 2009-01-09 22:56:28 +00:00
rubidium
7a5798695d (svn r14919) -Feature: distant joining of stations (Frostregen and PhilSophus) 2009-01-08 16:35:45 +00:00