summaryrefslogtreecommitdiff
path: root/src/ai/ai_scanner.cpp
AgeCommit message (Collapse)Author
2021-06-13Codechange: convert printf DEBUG statements to fmt Debug statementsrubidium42
2020-12-27Codechange: Use std::string in file scanners.Michael Lutz
2020-12-25Codechange: use C++11 constructs for for-each loops (#8432)Patric Stout
2020-12-25Fix #6468: don't store version of AIs-started-via-console in namePatric Stout
You can do: "startai myai.3", which starts version 3 of "myai". This is very useful for testing save/load code between different versions of your AI. However, when using this syntax, the AI got saved as "myai.3" as name of the AI, instead of "myai". This caused several problems, like indicating to the user the AI could not be found, but still load the AI. But in all cases, the AI never got the chance to load the saved data, making the whole reason this exists pointless. By splitting the name and version already in the console command, the code becomes simpler and AIs started this way now follow the normal flow after initialization.
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-05-11Change: Limit memory allocations for each Squirrel instanceNiels Martin Hansen
This can avoid out-of-memory situations due to single scripts using up the entire address space. Instead, scripts that go above the maximum are killed. The maximum is default 1 GB per script, but can be configured by a setting.
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2017-08-13(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)frosch
2014-04-25(svn r26509) -Codechange: replace strdup with stredup (the latter ensures ↵rubidium
the return is not NULL)
2014-04-23(svn r26487) -Codechange: use lastof instead of lengthof/sizeof for script namesrubidium
2014-04-23(svn r26486) -Codechange: replace a number of snprintfs with seprintfrubidium
2014-04-23(svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy ↵frosch
and strecat.
2014-04-23(svn r26482) -Codechange: add an include that allows us to undefine/redefine ↵rubidium
"unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2012-01-03(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp filesrubidium
2011-12-15(svn r23524) -Codechange: move the name of the scanner to a level deepertruebrain
2011-12-02(svn r23399) -Fix (r23362): a randomizer should return a random value, not ↵truebrain
always the first
2011-12-01(svn r23386) -Fix: debug script related events to 'script' (removes 'ai')truebrain
2011-11-29(svn r23366) -Codechange: move most of the Dummy code to script/, unifying ittruebrain
2011-11-29(svn r23362) -Codechange: refactor AIScanner, splitting it in AIScannerInfo ↵truebrain
and AIScannerLibrary
2011-11-29(svn r23354) -Codechange: move all src/ai/api/ai_*.[hc]pp files to ↵truebrain
src/script/api/script_* (Rubidium)
2011-11-29(svn r23350) -Add: support different ScriptTypes in the helper functions for ↵truebrain
GetClassName (Rubidium)
2011-11-23(svn r23295) -Codechange: put ImportLibrary in AIController (and document ↵truebrain
the parameters for NoAI docs)
2011-11-23(svn r23293) -Codechange: make LoadScript/LoadFile non-statictruebrain
2011-11-14(svn r23216) -Codechange: introduce the concept of having different tar listsrubidium
2011-11-13(svn r23210) -Codechange: generate the GetClassName function for the AI ↵rubidium
classes programmatically
2011-11-12(svn r23198) -Codechange: introduce a free that takes const pointers so we ↵rubidium
don't need to cast to void/non-const before being able to free
2011-11-08(svn r23169) -Feature: [NoAI] AICONFIG_AI_DEVELOPER flags to hide AI ↵yexo
settings unless gui.ai_developer_tools is enabled (Zuu)
2011-09-09(svn r22912) -Fix [FS#4753]: another attempt at fixing a related crash ↵rubidium
(can't reproduce it though)
2011-09-08(svn r22905) -Fix [FS#4753] (r22836): the name of the tar was removed from ↵rubidium
the AI filenames, so record it differently. Also removes some of the hackery to get the tar's filename
2011-09-08(svn r22904) -Codechange: add tar filename to file scanningrubidium
2011-08-25(svn r22836) -Codechange: simplify the scanning of (AI) scriptsrubidium
2011-08-24(svn r22822) -Codechange: make a distinction between base sets and newgrfs ↵rubidium
for their directory
2011-02-07(svn r22007) -Change: only show one AI per unique ID instead of all versions ↵rubidium
in the output of "openttd -h"
2011-01-03(svn r21703) -Feature [FS#4372]: list_ai_libs console command to get a list ↵yexo
of recognized AI libraries (dihedral)
2010-11-18(svn r21250) -Fix [FS#3952]: Rescanning AIs didn't "forget" removed AIsrubidium
2010-11-18(svn r21248) -Codechange: don't run the tar scanner twice upon startuprubidium
2010-08-26(svn r20632) -Cleanup: remove "a few" unneeded includes, and add them to ↵rubidium
some headers
2010-08-23(svn r20606) -Change [FS#4042]: change the debug level of the "Registering ↵yexo
two AIs/libraries with the same name and version" message from 0 to 1
2010-08-03(svn r20346) -Change: scan for tar files before scanning for AIs/NewGRFs so ↵yexo
new AIs/NewGRFs inside a tar file are found
2010-07-29(svn r20239) -Doc: Give a common name to all fall throughs (FALL THROUGH).terkhen
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-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
2010-01-07(svn r18747) -Codechange: add some constness to the AI coderubidium
2009-10-04(svn r17693) -Cleanup: remove some unneeded includesrubidium
2009-08-21(svn r17248) -Fix: add GPL license notice where appropriaterubidium
2009-08-21(svn r17247) -Change: move '3rd party' MD5 implementation also to the ↵rubidium
3rdparty directory.
2009-06-24(svn r16650) -Fix (r16649): missing ()yexo
2009-06-24(svn r16649) -Fix: When the exact AI version a game was saved with is no ↵yexo
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.