Commit Graph

17 Commits (805429eecb9b524ed300fac07f0e76b356376c31)

Author SHA1 Message Date
rubidium 83be7b09ea (svn r17545) -Fix [FS#3202]: [NoAI] AIs had 'infinite' time when running code from the global scope 15 years ago
Yexo d49addb48e (svn r17402) -Fix (r16425): During every save a few slots on the squirrel stack were leaked 15 years ago
rubidium 99d46e0ad7 (svn r17248) -Fix: add GPL license notice where appropriate 15 years ago
yexo c22f60c812 (svn r17223) -Change [NoAI] [FS#2980]: Crash an AI when it uses a DoCommand / Sleep instead of just printing an error message in the AI Debug Window 15 years ago
yexo f35d7f210f (svn r17005) -Add [NoAI]: AIAbstractList::SORT_ASCENDING / SORT_DESCENDING 15 years ago
yexo 6e467e8ae0 (svn r16834) -Fix [FS#3034]: call the AI Save() function only once so AIs can't crash OpenTTD 15 years ago
yexo 62a698df32 (svn r16502) -Fix [FS#2935]: when an AI was suspended while in a function called (indirectly) via call/acall/pcall OpenTTD crashed. Fix this by disallowing AIs to be suspended while called via call/acall/pcall.
IMPORTANT FOR AI WRITERS: AIs can no longer call any DoCommand functions (change anything, build vehicles, etc.) in a function called (indirectly) via call/acall/pcall. Where possible, please rewrite your code so it doesn't use call/acall/pcall
15 years ago
yexo de04ae2cda (svn r16425) -Change [FS#2869]: Stop an AI when it takes too long to initialize or load 15 years ago
yexo a127ed11e1 (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
yexo 310446d448 (svn r15531) -Fix (r15467): AIs were stopped at every error, whether they caught it or not. 16 years ago
yexo 3e53890348 (svn r15467) -Fix [NoAI]: AIs with an error in their info.nut are no longer available in-game. 16 years ago
rubidium 2a66e934b8 (svn r15406) -Fix: make Valuate actually cost a few opcodes to not make it a single opcode method of doing lots of the same thing. This should resolve most of the hiccups caused by AIs. 16 years ago
rubidium 2eebb52592 (svn r15330) -Fix [FS#2597]: leaking of Squirrel when using circular references (by enabling the GC). 16 years ago
Yexo da066fab5b (svn r15222) -Fix: The squirrel stack was corrupted if an AI called any C++ function during Save(). 16 years ago
Yexo b2bfa21155 (svn r15204) -Fix (r15167): The check was a bit too restrictive, the top of the stack needs to be resetted if another function is called while the AI is running but not suspended. 16 years ago
Yexo 2abfbafaf2 (svn r15167) -Fix [FS#2558]: The top of the stack was resetted after executing the first Ai tick causing random AI crashes. 16 years ago
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
16 years ago