summaryrefslogtreecommitdiff
path: root/src/ai/ai_info.cpp
AgeCommit message (Collapse)Author
2010-11-24(svn r21311) -Fix [FS#4260]: AIs in an infinite loop in e.g. autosave, but ↵rubidium
also getting settings and such from info.nut, would not be interrupted after a while causing OpenTTD to seem to not respond
2010-10-16(svn r20951) -Codechange: Add SmallMap::Contains() and use it.frosch
2010-08-26(svn r20632) -Cleanup: remove "a few" unneeded includes, and add them to ↵rubidium
some headers
2010-08-13(svn r20479) -Change: Use 'Buttons Name: Value' layout for AI and NewGRF ↵frosch
parameter GUI.
2010-07-31(svn r20271) -Doc: add doxygen comments to several items under src/ai/yexo
2010-02-16(svn r19143) -Codechange: trunk's going for 1.1 now.rubidium
2010-01-18(svn r18862) -Fix [FS#3544]: don't pass AI strings through iconvrubidium
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
2009-12-23(svn r18622) -Merge: release changesrubidium
2009-12-06(svn r18418) -Fix [FS#3298]: under some circumstances a pointer could be ↵rubidium
left untouched and then freed. Make sure this doesn't happen by ensuring it starts out as NULL instead of 'garbage'.
2009-09-22(svn r17609) -Fix: the dummy AI had no API version set, causing the 'API ↵yexo
compatibility script not found' error to be printed when loading it
2009-08-21(svn r17248) -Fix: add GPL license notice where appropriaterubidium
2009-08-20(svn r17228) -Codechange: some coding style fixesrubidium
2009-08-18(svn r17214) -Add [NoAI]: GetAPIVersion() as optional function in info.nut. ↵yexo
Return "0.7" to get an api compatible (as much as possible) with the 0.7 api or "0.8" to get the latest api. -Change [NoAI]: move all deprecated functions to a separate squirrel script that is only loaded if an AI requests an old API version.
2009-07-04(svn r16738) -Codechange: Remove casting away constness by changing the text ↵alberth
before storing.
2009-05-24(svn r16421) -Codechange: do not unnecessarily remove constness or ↵rubidium
unnecessarily add it.
2009-04-21(svn r16113) -Feature [NoAI]: Add UseAsRandomAI as function in info.nut. ↵yexo
When an AI returns false, it'll never be chosen as random AI.
2009-03-16(svn r15742) -Fix (r15736): AIs with an invalid info.nut weren't ignored ↵yexo
anymore.
2009-03-15(svn r15736) -Codechange: Split AIScanner/AIFileInfo to the more generic ↵yexo
classes ScriptScanner/ScriptFileInfo.
2009-02-13(svn r15470) -Fix [NoAI]: Check the types of the parameters passed to ↵yexo
AddSetting, AddLabels and RegisterAI.
2009-02-13(svn r15467) -Fix [NoAI]: AIs with an error in their info.nut are no longer ↵yexo
available in-game.
2009-02-13(svn r15466) -Fix (r15330): The squirrel instance object was freed twice if ↵yexo
an info.nut failed to compile.
2009-02-13(svn r15465) -Codechange: constify most of AIInfo/AIFileInfo methods, move ↵smatz
definition of very simple getters to header file
2009-02-13(svn r15464) -Codechange [NoAI]: Call all info.nut functions exactly once ↵yexo
and only during initialization.
2009-02-13(svn r15463) -Change [API CHANGE]: Replace ↵yexo
AIInfo::CanLoadFromVersion(version) with AIInfo::MinVersionToLoad() which should return a single integer, the minimum version the AI is able to load data from.
2009-02-11(svn r15441) -Cleanup: Use a return value instead of passing a pointer to ↵yexo
where the result should be stored.
2009-02-06(svn r15368) -Fix: some typos in commentsrubidium
2009-02-06(svn r15366) -Add [NoAI]: Add AddLabels() where you can define labels for ↵Yexo
the values of the settings in info.nut
2009-01-31(svn r15299) -Cleanup: remove many redundant includessmatz
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 r15120) -Fix: more mem-leak fixestruebrain
2009-01-17(svn r15118) -Fix: fix a minor mem-leaktruebrain
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 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-13(svn r15068) -Add [NoAI]: introducing 'step_size' for AIConfig, for future ↵truebrain
AIGUI (Yexo)
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 r15057) -Fix [NoAI]: clamp the values of a setting between the ones ↵truebrain
allowed by info.nut
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-12(svn r15042) -Fix (r15027): don't leak memory in AIInfo (Yexo)truebrain
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