Age | Commit message (Collapse) | Author |
|
parameter allow every squirrel type and convert to a string
|
|
non-ASCII strings were received from OpenTTD failed. The number of bytes in an UTF-8 encoded string isn't always the same as the number of characters in the decoded (into wchars) string
|
|
|
|
can't crash OpenTTD
|
|
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
|
|
|
|
for months. All attempts to do another workaround failed.
|
|
initialize or load
|
|
|
|
When an AI returns false, it'll never be chosen as random AI.
|
|
info.nut. If AIs implement it, that url is shown when the AI crashes and also in the AI selection window.
|
|
to their own file.
|
|
classes ScriptScanner/ScriptFileInfo.
|
|
|
|
to the API, not strings passed from the API to squirrel.
|
|
|
|
calls typechecking as stated in squirrel docs
|
|
caught it or not.
|
|
available in-game.
|
|
single opcode method of doing lots of the same thing. This should resolve most of the hiccups caused by AIs.
|
|
references (by enabling the GC).
|
|
to squirrel
|
|
function during Save().
|
|
the stack needs to be resetted if another function is called while the AI is running but not suspended.
|
|
executing the first Ai tick causing random AI crashes.
|
|
|
|
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
|
|
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
|