summaryrefslogtreecommitdiff
path: root/src/ai/ai_core.cpp
AgeCommit message (Collapse)Author
2010-08-26(svn r20632) -Cleanup: remove "a few" unneeded includes, and add them to ↵rubidium
some headers
2010-07-31(svn r20271) -Doc: add doxygen comments to several items under src/ai/yexo
2010-06-05(svn r19932) -Codechange: Preserve _current_company when starting AIs.frosch
2010-06-05(svn r19931) -Fix (r19914): Convert assertion in Backup<> destructor into ↵frosch
DEBUG() output. It was triggered on exceptions, especially when aborting world generation.
2010-05-31(svn r19914) -Codechange: Wrap a helper class around temporary assignments ↵frosch
of _current_company to ensure proper restoration.
2010-04-02(svn r19544) -Feature [FS#3496]: add an input box to the AI Debug window ↵yexo
where you can input a break string (patch by Zuu)
2010-01-29(svn r18953) -Feature: [NoAI] allow editing AI settings while an AI is runningyexo
Only settings with the AICONFIG_INGAME flag can be editted in this way
2010-01-29(svn r18944) -Change [FS#3232]: use the highest version of an AI that can ↵yexo
load the AI data from a savegame instead of the exact same version
2010-01-15(svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, ↵rubidium
if a header require a header make it include that header
2010-01-11(svn r18781) -Codechange: pass the CommandCost to the callback instead of ↵rubidium
whether it succeeded or not. -Fix: AIs did update their last cost incorrectly in network games if the cost of the DC_EXEC phase differed from the ~DC_EXEC phase.
2010-01-09(svn r18763) -Feature [FS#3095]: rerandomise AIs on reloading (via the debug ↵rubidium
window) when they were randomly chosen
2009-10-04(svn r17693) -Cleanup: remove some unneeded includesrubidium
2009-08-21(svn r17248) -Fix: add GPL license notice where appropriaterubidium
2009-06-10(svn r16559) -Codechange: introduce Company::IsValidAiID() and ↵smatz
Company::IsValidHumanID(), don't use IsHumanCompany() where possible
2009-05-18(svn r16352) -Codechange: use PoolItem::GetIfValid() instead of ↵smatz
PoolItem::IsValidID() and PoolItem::Get()
2009-05-17(svn r16327) -Codechange: replace IsValidPoolItemID(index) by ↵smatz
PoolItem::IsValidID(index)
2009-05-16(svn r16326) -Codechange: replace GetPoolItemPoolSize() by ↵smatz
PoolItem::GetPoolSize()
2009-05-16(svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index)smatz
2009-04-25(svn r16151) -Codechange: move some includes around to prevent including ↵yexo
half the AI api in non-noai related code.
2009-02-23(svn r15562) -Change: Use GetName() to determine the unique AI name instead ↵yexo
of GetInstanceName() to make branching of AIs easier.
2009-02-07(svn r15401) -Fix [FS#2619](r15027): AI::Stop changed _current_company, but ↵smatz
didn't restore its original value
2009-02-03(svn r15330) -Fix [FS#2597]: leaking of Squirrel when using circular ↵rubidium
references (by enabling the GC).
2009-01-31(svn r15299) -Cleanup: remove many redundant includessmatz
2009-01-24(svn r15262) -Fix: AIEvents were not freed, when they were not queued for ↵frosch
any AI.
2009-01-20(svn r15175) -Feature: Add the option to select the AIs to start in a new ↵Yexo
game and configure them via the gui.
2009-01-17(svn r15122) -Codechange: add a security assert, to make sure something ↵truebrain
never happens
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-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 r15074) -Fix: make Rubidium happytruebrain
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 r15059) -Add [NoAI]: use 'start_date' from the AI configure to see when ↵truebrain
an AI should start next
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-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