This means, it will be in the next mayor release (0.83) of spring.
changes:
- Skirmish AIs are now indexed by skirmishAIId, instead of teamId
- former OO part of the Java-AIInterface is now the JavaOO-AIWrapper
- Java-AIInterface uses only pure JNI (instead of JNA) -> speed & less dependencies
- Java-AIInterface wraps all commands through functions: handleCommand(UnitMoveCommand(unit, pos)) -> unit.moveTo(pos)
- JavaOO-AIWrapper has an interface, wrapper-, stub- and abstract-class for each callback OO part.
- JavaOO-AIWrapper allows the base AI class to have either one function per event, or to use a handleEvent(OOEvent) approach
- Cpp-AIWrapper has an interface, wrapper-, stub- and abstract-class for each callback OO part.
- Cpp-AIWrapper wraps all commands through functions: handleCommand(UnitMoveCommand(unit, pos)) -> unit.moveTo(pos)
- C AI Interface API headers use comments for meta info, instead of integrating it into function names
- C AI Interface API does not use structs anymore (SAIFloat3 -> float[3])
- lots of engine internal minor logic tweaks & bug fixes
- more stuff compiled in parallel (at least with CMake + make)
- practically zero unneeded recompiles (at least with CMake + make), while before, all non native sources were always recompiled
- probably more stuff i forgot
If you need help in porting your AI to work with the changes, feel free to ask for help here or in the lobby in channel #ai.
sadly, most mods are currently incompatible with current spring master, due to the removal of SetLineage().
Known to work:
- rapid pin ca:test (8509+)
- S44 SVN version (that is, after 1.5, Market Garden release)
Code: Select all
cd ~/.spring/mods/
svn co https://spring1944.svn.sourceforge.net/svnroot/spring1944/trunk/S44LiteRelease.sdd/
Known to fail:
- BA 7.19