I've now released Alpha 7, and started a new thread for Battle Engine stuff in a more appropriate subforum:
http://lemmasoft.renai.us/forums/viewto ... 51&t=16943
New features include tilemap-based battles, elevation and screens for RPG equipping, party-management and shopping!
[old post follows]
I've now released Alpha 6, which contains all the same stuff from alphas 1-5 - examples of active battles, path-based battles and three types of grid-based battles (isometric, orthogonal and hexes), configurable scenery, easy-to-customize game options, facing-dependent sprites, items, equipment, examples of customising skills and panning, and a 'WargameSchema' which emulates simple card-counter wargames, and adds experience, levelling up, a more useful multi-square scenery, a condition/result event system to build battle events and complex mission parameters, and many display improvements and bugfixes.
As mentioned in the accompanying notes: this is an alpha release, so it's definitely not feature-complete and there may well be bugs... also, it's quite possible that I'll change some of the interfaces before calling it final, so code written today may break later. I'll try not to break interfaces unnecessarily, but it might happen. It's recommended that you use 6.11.2 or later with this, as there are some bugs in earlier releases which make various parts of the battle engine not function properly.
Alpha 6 - Zipped game directory[9.9MB]
A video of the nifty ActivePanner applied to the old iso grid demo can be found here:
Old Alpha 5 downloads:
Alpha 5 - All[25MB]
Old Alpha 4 downloads:
Alpha 4 - All[25MB]
Old Alpha 3 downloads:
Alpha 3 [15MB]
Old Alpha 2 downloads:
Alpha 2 - All[21MB]
Old Alpha 1 downloads:
Mac OSX [15MB]
- Experience and Levelling-Up (+demo).
- Condition/Result event system, allowing more-complex mission parameters (+demo).
- AreaScenery, allowing multi-square scenery with correct drawing (+demo).
- Items in skill menus can now be re-ordered.
- Added FighterStatChange event.
- Added better implementation of GetRange for square-grid and hex-grid
- New battle-related preferences have been added.
If you're moving code from Alpha 5 to Alpha 6, read the caveats section in this release newsletter.
If you're moving code from Alpha 4 to Alpha 5, I made a small breaking change - and there's a couple of other things to consider:
- If you make any calls to Fighter.Damage, a new parameter is required - this should be a Fighter instance to show who or what damaged this target. Pass None if not applicable.
- UIProvider.PickFighter may now return None if 'End Turn' desired.
- WargameSkill - enforced by the WargameSchema - doesn't really work for AI fighters, so that schema is only good for hotseat play right now. It probably really needs its own AI since the considerations are different.
Current Feature List
- 'Active' battle mechanic
- simple turn-based battle mechanic
- card-counter wargame battle mechanic
- FF-style simple face-to-face battlefields
- Abraxas-demo-style fixed-path battlefields
- Tactics-style Grid-based battlefields
- Hex-grid battlefields
- Basic enemy AI
- State-and-facing-aware sprites (so you can have death animations or attack animations or walk in particular directions, etc.)
- Plug-in skills (so far I've done obvious stuff like 'attack', 'defend', 'skip turn', 'move' and limited magic)
- Scenery (single and multi-square)
- Attribute system (e.g. an enemy can have the 'fire' attribute, which makes them weaker to attacks using the 'water' attribute)
- Highly customisable (pick-and-mix to a degree for non-programmers; very open to customisation and extension for programmers)
- Items, Inventory and usage
- Equipment and equip limits
- Hex grids
- Experience and levelling
- Condition/result event/mission parameter system
Planned Future Features (not going to make it into alpha release)
- Variable-movement-cost positions, so it can be harder to move through marsh than on a road, for example
- Custom UIs for each type of battle
- More skills and extras
- Documentation (!)