Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-07-06 | Fix 39e90ec: Integers for scripts are 64bit, but saved as 32bit (#9415) | Loïc Guilloux | |
2021-07-02 | Feature: framework to make savegames self-descriptive | Patric Stout | |
We won't be able to make it fully self-descriptive (looking at you MAP-chunks), but anything else can. With this framework, we can add headers for each chunk explaining how each chunk looks like in detail. They also will all be tables, making it a lot easier to read in external tooling, and opening the way to consider a database (like SQLite) to use as savegame format. Lastly, with the headers in the savegame, you can freely add fields without needing a savegame version bump; older versions of OpenTTD will simply ignore the new field. This also means we can remove all the SLE_CONDNULL, as they are irrelevant. The next few commits will start using this framework. | |||
2021-06-15 | Change: prefix SL_ARR with the length of the array | Patric Stout | |
This means that during loading we can validate that what is saved is also that what is expected. Additionally, this makes all list types similar to how they are stored on disk: First a gamma to indicate length, followed by the data. The size still depends on the type. | |||
2021-06-13 | Codechange: convert printf DEBUG statements to fmt Debug statements | rubidium42 | |
2021-06-12 | Fix #9353: [Script] Garbage collecting on priority queues could crash the game | rubidium42 | |
2021-06-10 | Fix: [Script] Ensure the saved script strings are properly validated and ↵ | rubidium42 | |
terminated when being read from the savegame | |||
2021-05-31 | Codechange: C++-ify lists for SaveLoad (#9323) | Patric Stout | |
Basically, this changes "SaveLoad *" to either: 1) "SaveLoadTable" if a list of SaveLoads was meant 2) "SaveLoad &" if a single entry was meant As added bonus, this removes SL_END / SLE_END / SLEG_END. This also adds core/span.hpp, a "std::span"-lite. | |||
2021-05-03 | Codechange: Replace FOR_ALL_SEARCHPATHS with range-based for loops | glx22 | |
2021-04-17 | Change: [Script] Let Script_FatalError use std::string instead of const char * | Rubidium | |
2020-12-27 | Codechange: Convert some more FIO functions to take std::string. | Michael Lutz | |
2020-12-27 | Codechange: Use std::string in FIO search path handling. | Michael Lutz | |
2020-06-01 | Add: [Script] Native priority queue; useful e.g. for pathfinders. | Michael Lutz | |
2019-11-15 | Fix #7606: Game crash when trying to clean up a crashed script | Charles Pigott | |
Also fix another possible memory leak | |||
2019-11-15 | Codechange: new instead of malloc | Charles Pigott | |
2019-11-10 | Cleanup: Removed SVN headers | S. D. Cloudt | |
2019-09-07 | Fix b3fd7879: Ignore command flags when verifying script commands | Niels Martin Hansen | |
Multiplayer games has the server add some flags to the cmd value during the handling. These flags should not be included in the verification, mask them out. Without this masking out, scripts tend to die when executing their first command in multiplayer. | |||
2019-09-07 | Fix #7188: check the validity of command callback for scripts (#7701) | glx22 | |
2019-05-15 | Codechange: catch script exceptions by reference | glx | |
2019-05-11 | Change: Limit memory allocations for each Squirrel instance | Niels 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-10 | Codechange: Use null pointer literal instead of the NULL macro | Henry Wilson | |
2014-09-07 | (svn r26785) -Fix [Squirrel]: loading a value saved as boolean caused it to ↵ | rubidium | |
be of type integer instead of boolean | |||
2014-09-06 | (svn r26771) -Cleanup: remove OTTD2SQ and SQ2OTTD | rubidium | |
2014-04-23 | (svn r26489) -Codechange: properly account for the end of buffers in the ↵ | rubidium | |
file io code instead of assuming MAX_PATH is okay | |||
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 | |||
2013-11-23 | (svn r26057) -Fix: a number of possibly uninitialised variables | rubidium | |
2013-06-09 | (svn r25342) -Add: StoryPage data structures and GS API | zuu | |
2012-09-21 | (svn r24538) -Fix-ish: remove compiler warning about initialization order | yexo | |
2012-09-21 | (svn r24537) -Feature: Scripts can be suspended even if the game is still ↵ | zuu | |
progressing, thus break-on-log now works also for Game Scripts. | |||
2012-08-13 | (svn r24468) -Add [FS#5219]: API compatibility scripts for Goal Scripts ↵ | yexo | |
(Hirundo) | |||
2012-01-03 | (svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files | rubidium | |
2011-12-19 | (svn r23632) -Add: GSCompanyMode, to change company in GameScripts | truebrain | |
2011-12-19 | (svn r23630) -Add: a Goal GUI to show your current goals | truebrain | |
2011-12-19 | (svn r23623) -Add: allow bi-directional communication with the AdminPort and ↵ | truebrain | |
GameScript | |||
2011-12-01 | (svn r23387) -Fix: move ai.script_max_opcode_till_suspend to ↵ | truebrain | |
script.script_max_opcode_till_suspend | |||
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 it | truebrain | |
2011-11-29 | (svn r23365) -Codechange: move constants to a single place, to avoid ↵ | truebrain | |
duplication (and in time, different values) | |||
2011-11-29 | (svn r23360) -Codechange: move AIInstance to ScriptInstance, making it ↵ | truebrain | |
reusable by other script API instances |