Atlantis Todo List
This is a list of things I'd like to add or modify in the Atlantis source code. For
now, the list is in approximate order of how I plan to make the changes. Eventually I'd
like to organize it into sections based on which version of the engine or rule-set I see
the feature being implemented.
Stuff To Test
- Use floating point to fix weird rounding bugs - Test This!!! (RunTaxRegion,
RunAProduction).
- Test the orders checker, as it has changed quite a bit.
Stuff To Code
- Fix all of the problems indicated by XXXXX comments in the source code.
- Document the editing mode.
- Sail should give an error if the ship is forbidden (in Do1Sail).
- For that matter, the rules need to be clearer regarding ships being blocked.
A ship is always allowed to enter a region, but will not be allowed to move
further in the region if guarding units are present. This restriction exists
in the code, but not in the rules.
- There are some things hard-coded in the source; summon wind in monthorders.cpp, build
items in monthorders.cpp, and some stuff in unit.cpp. In general, things
should be done with some set of flags etc in rules.cpp, or at worst custom
code in the rule-set directory.
- I'd like to add some code that will do a bit of validation on a rule-set, and make sure
it isn't broken.
- I'd like for the rule-set code to auto-generate the rules document, instead of having to
hand-edit them.
- Can flying ships be blocked in ForbiddenShip? Is that right?
- Make sure gates are working correctly; possibly re-work them.
- Make sure map-generation in Standard Atlantis is working OK. It seems to
not work well for small map sizees.
- FindDeadFactions is inefficient.
- Factions that are eliminated after the movement phase (particularly, in
AssessMaintenance) are not properly noted as dead.
- Add a target to the DESTROY order.
- Should be error checking spells (See ProcessCastOrder).
- Rework the BUILD order. Currently, the build order creates the object when
the order is parsed. This should actually happen when the build actually
takes place. I think it might be a good thing also if a unit can perform
build work on a structure without actually being inside it.
- Better handling of illusions.
- Add more info to battle reports.
- Finish the magic system for Atlantis Conquest.
- Add more map types for Atlantis Conquest.
- Unit grouping.
- Automatically use orders template if no orders are submitted.
- Issue orders for turns in the future (extension of the @ system). My
thoughts here are to introduce a 'turn' order, that means everything after
the turn order should be delayed for a turn (by just putting it into next
turn's template, instead of executing it). Multiple 'turn' orders can be
used to give orders arbitrarily into the future. 'turn' can be combined with
@ to creating loops sets of orders.
- Make it so a rule-set inherits from the Game class instead of just adding code.
- Make it so rule-sets are loadable libraries, instead of compiling in.
- Fix the usage.
Last Modified: December 19, 2002
This page maintained by Geoff Dunbar (gdunbar@prankster.com).