This is an attempt at a reasonably comprehensive list of desired gameplay features, roughly categorised and split into small sections, with links to various sources of documentation and code. Features that are largely completed are marked ~~like this~~. "Old description" refers to technical documentation for the old simulation system; the new one has different features and different syntax, so use the documentation as inspiration and not specification. Before working on a feature, it should be broken down into more detail and added as a Trac ticket (with a reference to the ticket added from this page). * '''Movement''' * Components: [source:ps/trunk/source/simulation2/components/CCmpUnitMotion.cpp UnitMotion], [source:ps/trunk/source/simulation2/components/CCmpPathfinder.cpp Pathfinder] * Old description: [wiki:XML.Entity.Actions.Move] * ~~''Walking''~~ * ''Running/charging'' * Adds combat bonus * ''Formations'' * Old description: [wiki:XML:_Formation], [wiki:XML.Entity.Traits.Formation] * ''Terrain conformance'' * Old description: [wiki:XML.Entity.Traits.Anchor] * Components: [source:ps/trunk/source/simulation2/components/CCmpPosition.cpp Position] * ''Pathfinding'' * ~~''Basic pathfinding''~~ * ''Better pathfinding'' * ''Ship movement'' * '''Combat''' * Components: [source:ps/trunk/binaries/data/mods/public/simulation/components/Attack.js Attack], [source:ps/trunk/binaries/data/mods/public/simulation/components/Armour.js Armour], [source:ps/trunk/binaries/data/mods/public/simulation/components/UnitAI.js UnitAI] * Old description: [wiki:XML.Entity.Actions.Attack], [wiki:XML.Entity.Traits.Armour] * ~~''Basic attacks''~~ * ''Secondary attacks'' (automatic switching between ranged and melee weapons) * ''Projectiles'' * ''Animation synchronisation'' (particularly for projectile attacks) * '''Health''' * Components: [source:ps/trunk/binaries/data/mods/public/simulation/components/Health.js Health] * Old description: [wiki:XML.Entity.Traits.Health] * ''Death'' * ''Corpses'' * ''Healers'' * Old description: [wiki:XML.Entity.Actions.Heal] * '''Experience''' * Old description: [wiki:XML.Entity.Traits.Promotion], [wiki:XML.Entity.Traits.Rank] * ''Accumulating'' * ''Upgrading'' * ''Rendering'' * '''Resources''' * Components: [source:ps/trunk/binaries/data/mods/public/simulation/components/ResourceGatherer.js ResourceGatherer], [source:ps/trunk/binaries/data/mods/public/simulation/components/ResourceSupply.js ResourceSupply] * Old description: [wiki:XML.Entity.Traits.Supply], [wiki:XML.Entity.Actions.Gather], [wiki:List:_Entities:_Nature:_Fauna], [wiki:List:_Entities:_Nature:_Fauna:_Herd], [wiki:List:_Entities:_Nature:_Geological:_Minerals] * ~~''Basic resource gathering''~~ * ''Dropsites'' * ''Kill animals before gathering meat'' * ''Corrals'' * ''Auto-select nearby resources'' (when the currently targeted resource is exhausted) * '''Building construction''' * Components: [source:ps/trunk/binaries/data/mods/public/simulation/components/Builder.js Builder], [source:ps/trunk/binaries/data/mods/public/simulation/components/Cost.js Cost], [source:ps/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js GuiInterface] * Old description: [wiki:XML.Entity.Actions.Create], [wiki:XML.Entity.Traits.Creation], [wiki:List:_Entities:_Player:_Structures] * ''Placement constraints'' (on map; not on obstruction; not on water; on visible land) * ~~''Population effects''~~ * Old description: [wiki:XML.Entity.Traits.Population] * ''Resource usage'' * ''Foundations'' * ''Flatten terrain'' * ''Repair'' * Old description: [wiki:XML.Entity.Actions.Repair] * '''Training''' * Old description: [wiki:XML.Entity.Actions.Create], [wiki:XML.Entity.Traits.Creation] * ''Training queues'' * ''Rally points'' * '''Research''' * Old description: [wiki:XML.Tech] * ''Research queues'' * ''Tech effects'' * '''Settlements''' * Old description: [wiki:List:_Entities:_Nature:_Geological:_Other] * '''Loot''' * Old description: [wiki:XML.Entity.Traits.Loot], [wiki:XML.Entity.Actions.Loot] * '''Gates''' * Old description: [wiki:XML.Entity.Actions.Lock] * '''Garrisoning''' * Old description: [wiki:XML.Entity.Traits.Garrison] * '''Auras''' * Old description: [wiki:XML.Entity.Traits.Auras] * ''Detect range entering/leaving'' * ''Modify unit stats'' * '''LOS''' * Old description: [wiki:XML.Entity.Traits.Vision] * ''Determine from units'' * ''Render'' * ''Affect pathfinding'' * '''Forests''' * Old description: [wiki:List:_Entities:_Nature:_Flora:_Trees] * ''Hiding'' * '''AI''' * Components: [source:ps/trunk/binaries/data/mods/public/simulation/components/UnitAI.js UnitAI] * Old description: [wiki:XML.Entity.Traits.AI] * ''Stances'' * ''Scouting'' * Old description: [wiki:XML.Entity.Actions.Scout] * ''Patrolling'' * Old description: [wiki:XML.Entity.Actions.Patrol] * ''Escorting'' * Old description: [wiki:XML.Entity.Actions.Escort] * ''AI players'' * '''Audio''' * Old description: [wiki:TDD_Audio] * '''Territories''' * Old description: [wiki:Background:_Territories] * '''Seasons''' * Old description: [wiki:Background:_Seasons] * '''Weather''' * Old description: [wiki:Background:_Weather] * '''Bartering''' * Old description: [wiki:XML.Entity.Actions.Barter] * '''GUI''' * Old description: [wiki:TDD_GUI] * Components: [source:ps/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js GuiInterface], [source:ps/trunk/binaries/data/mods/public/gui/session_new/ session GUI code] * ''Unit selection'' * ''Selection rendering'' * Old description: [wiki:XML.Entity.Traits.Footprint] * ''Bandboxing'' * ''Health bars'' * Old description: [wiki:XML.Entity.Traits.Health] * ''Minimap'' * Old description: [wiki:XML.Entity.Traits.MiniMap] * ''Go to hero unit'' * ''Go to idle worker'' * ''Detect combat'' * ''In-game manual'' * '''Networking''' * '''Hero units''' * '''Walls''' * '''Capturing''' * '''Diplomacy''' * '''Triggers''' * '''Objectives'''