[0.3.0] - 2015-07-28¶
All notable changes for version [v0.3.0] are documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning since release [v0.4.0].
Added¶
New gameplay features
Projectile arcs and ranged attack
Dropsites
Garrisoning
Gathering from resource objects
Quicksave/Quickload
Selection boxes
Display HP bar
Switch to correct villager graphics when gathering
Auto-task idle units
Villager commands and building
Show building outlines on selected buildings
cython-based C++-/Python interface
Handle openage as shared library
Move C++ source files to
./libopenagesubdirectoryMove Python source files to
./openagesubdirectoryIntegrate cython into buildsystem
New logging system
Add testing for the coordinate system
CI caching
Customizable key bindings
More ideas for AI
Add documentation for buildings in AoE2
Add a CMake ‘doc’ target that explains why doc generation will not work
Add documentation and instructions for ingame development build hotkeys
Star count in README
Enable call graph generation in doxygen
Test cases for job manager
Add tests for pathfinder
Use C++14 as new standard
for_eachfunction for containersRandom number generator (XORShift)
Introduce namespaced math constants available on all plattforms
Add a mode indicator label in map view
Color support for CMake
Add new discovered variables in
empires.datgamedata to converter logicTerrainObjects handle building annexes using child/parent spacesUnitTextureclass handles delta graphics
Changed¶
Change
./configureinstruction compiler argument to usegccandclanginstead ofgnuandllvmUse SVG build status image instead of PNG in README
Moved documentation files to
./docsubdirectoryAbort build on checkfull fail
Replace GLEW with libepoxy
Run
make checkfullbefore compilingImprove check for C++14 and clang
Align dependencies column in
building.mdImprove portability of the CMake detection of opus location
use
unsigned intC++ data type instead of non-standarduintUse
_WIN32macros instead ofWIN32in CMakeCodestyle example updates and simplifications
Assure that multiple jobs are executed on the same background thread
Jobs can check whether they should be aborted and abort themselves
Integrate new job groups into the dynamic audio loading implementation
Load missing textures lazily
Change uneeded
shared_ptrreferences tounique_ptrEnsure
glew.his loaded beforegl.hUse pairing heap in pathfinding
Look for sound files in both
sounds.drsandsounds_x1.drsfolders
Removed¶
Duplicate code for accessing engine camera
SDL memleak example
Remove leftover config sections for coverity
Fixed¶
Gameplay fixes
Ungarrisoning no longer loses units
Prevent ranged units from freezing when garrisoning them
Make decaying units face correct direction and disappear after a short time
Stop segfaulting when gather target is removed
Garrison restricted to allied buildings
Siege now only placable on land
Buildings take time to train a unit
Units can ungarrison while the building is training something
Clean annexed buildings properly from memory
Visual fixes for dock/ships
Fix the CMake
cmp0054policy for using quoted if evaluationFix segfault when shutting down
Fix
Tile.get_pos_on_chunk()to return the position of the tile on the chunkCase sensitivity fixes
Fix crashes for missing arguments when calling executable
Clean up comments in converter code
Ignore empty
gamedata.drswhen convertingRelocate phys3 hashing to correct file
Fix wrong start offset of delta graphics
Add forgotten comment line separators in csv output
Fix judgement of
child_errnoDo not assign lambda to variable
Fix new[]/delete mismatch
Fix error messages for legal header copyright years
Fix codecompliance script to be compatible with git rebase and cherry-pick
Fix conversion of
empires.datfile strings with garbage data past their \0 terminatorsPass strings as
constreferences instead of copying themBetter pep8 compliance
Various horrible typos (#301, #307)