Commit Graph

41 Commits (40258d927fecaf3c2e6683718ae7dfa6c0443212)

Author SHA1 Message Date
rubidium ed04bef953 (svn r21248) -Codechange: don't run the tar scanner twice upon startup 14 years ago
rubidium 30f2afac9b (svn r20632) -Cleanup: remove "a few" unneeded includes, and add them to some headers 14 years ago
yexo 747f638557 (svn r20606) -Change [FS#4042]: change the debug level of the "Registering two AIs/libraries with the same name and version" message from 0 to 1 14 years ago
yexo 04a9a58ecd (svn r20346) -Change: scan for tar files before scanning for AIs/NewGRFs so new AIs/NewGRFs inside a tar file are found 14 years ago
terkhen 88ca183191 (svn r20239) -Doc: Give a common name to all fall throughs (FALL THROUGH). 14 years ago
yexo 4c4d1e1bf6 (svn r18953) -Feature: [NoAI] allow editing AI settings while an AI is running
Only settings with the AICONFIG_INGAME flag can be editted in this way
15 years ago
yexo fae34ee719 (svn r18944) -Change [FS#3232]: use the highest version of an AI that can load the AI data from a savegame instead of the exact same version 15 years ago
rubidium b1bd106703 (svn r18862) -Fix [FS#3544]: don't pass AI strings through iconv 15 years ago
rubidium 82fc28f77f (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 15 years ago
rubidium 0e404038f2 (svn r18747) -Codechange: add some constness to the AI code 15 years ago
rubidium d6cded5380 (svn r17693) -Cleanup: remove some unneeded includes 15 years ago
rubidium 7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 15 years ago
rubidium 60a3bc9034 (svn r17247) -Change: move '3rd party' MD5 implementation also to the 3rdparty directory. 15 years ago
yexo cc07a78577 (svn r16650) -Fix (r16649): missing () 15 years ago
yexo 2970b72e59 (svn r16649) -Fix: When the exact AI version a game was saved with is no longer available and the latest version of the AI can't load data from that AI version, use the latest available version of the AI that can load the data instead of the first found version that can load the data. 15 years ago
yexo 3949050714 (svn r16113) -Feature [NoAI]: Add UseAsRandomAI as function in info.nut. When an AI returns false, it'll never be chosen as random AI. 15 years ago
rubidium bee930f9b3 (svn r16024) -Codechange: harden string copying on places where it's possible 15 years ago
yexo ce4744e1d6 (svn r15736) -Codechange: Split AIScanner/AIFileInfo to the more generic classes ScriptScanner/ScriptFileInfo. 16 years ago
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
yexo 86a9df82b7 (svn r15716) -Change [NoAI]: AI libraries should now be stored in ai/library/<library_name>/ instead of ai/library/<category_name>/<library_name>/. Libraries inside tar files are not affected. 16 years ago
yexo 13fb01d07d (svn r15668) -Fix: a few typos. 16 years ago
yexo 3633fd9a06 (svn r15630) -Fix (r15027): Make sure OpenTTD loads the dummy AI script when no other AI is available instead of a non-existing file. 16 years ago
yexo 1884ba20bc (svn r15562) -Change: Use GetName() to determine the unique AI name instead of GetInstanceName() to make branching of AIs easier. 16 years ago
yexo 8e14d77d05 (svn r15467) -Fix [NoAI]: AIs with an error in their info.nut are no longer available in-game. 16 years ago
yexo 9292c90360 (svn r15464) -Codechange [NoAI]: Call all info.nut functions exactly once and only during initialization. 16 years ago
Yexo cb3784d8b1 (svn r15366) -Add [NoAI]: Add AddLabels() where you can define labels for the values of the settings in info.nut 16 years ago
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 16 years ago
glx ceb60b426e (svn r15226) -Fix (r15214): broken AI content download 16 years ago
glx 92f5c6b1da (svn r15214) -Fix [NoAI]: ignore case for ai/library main script path on windows 16 years ago
rubidium 3a13b75e37 (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 27717e1b6d (svn r15121) -Fix: more mem-leak fixes (this should make SmatZ so happy ;) :p) 16 years ago
truebrain fe90077681 (svn r15120) -Fix: more mem-leak fixes 16 years ago
truebrain 7f851eaeb9 (svn r15107) -Fix [NoAI]: don't use so much explicit string copies if it is not required 16 years ago
rubidium 95fa33157f (svn r15106) -Fix [NoAI]: printf-ing of garbage. 16 years ago
truebrain 6cfb9a24e0 (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 ef62688522 (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 d62a85f2ce (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
rubidium ea5457d831 (svn r15082) -Codechange: make the AI library path also a searchdir instead of manually manufacturing it into a searchdir. 16 years ago
truebrain e6543c2776 (svn r15055) -Add [NoAI]: add the AICONFIG_RANDOM and AICONFIG_BOOLEAN consts (Yexo) 16 years ago
truebrain bcbbf2c366 (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 a3dd7506d3 (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