Ticket #43 (new task)

Opened 4 years ago

Last modified 1 year ago

Terrain - Gameplay Properties

Reported by: stuart Assigned to:
Priority: major Milestone: Playability Demo
Component: Game engine Keywords:
Cc:

Description (Last modified by olsner)

  • Unit Speed: Other terrains affect the movement rates of certain units. (eg speed is reduced for most units on sand (though increased for camels), while speed is improved for most units on roads.)
  • Traversability: Certain terrains are only traversable by certain units. (Ships can only move on deep and shallow water; infantry on land and shallows but not deep water. Some infantry can move directly through forests. Cliffs are impassable to all, as they are too steep to climb.)

Change History

2006-05-13 15:32:14 changed by jason

Attrition Damage: In some game settings, entering an opponent's territory during ceasefire causes rapid damage to those units.

This attrition damage might have to wait till we impliment territories?

2006-05-13 15:47:05 changed by stuart

  • description changed.

2006-05-13 18:33:48 changed by olsner

  • owner set to olsner.
  • status changed from new to assigned.
  • description changed.

Moving attrition damage to its own task, targeted at the Diplomacy Demo Milestone.

2006-11-12 08:08:14 changed by olsner

Things lacking in the current implementation (as of [4640]):

  • Inheritance. If a terrain has no default passability tag (one without type="..."), the engine should search for a passability matching an entity in the parent terrain XML. And conversely, if a default passability tag is present in the XML, the engine would never search the tags in the parent XML.
  • Multiple entity types/classes in one tag. The XML reader should parse a comma-separated list of classes whereas it currently treats it as a single class name.
  • Performance. Basically, what the code tries to do is a join on a list of (entity, class) pairs and a list of (class, passability) pairs, sorted on some criterion (by default, position in file - first named first matched, excluding the match-all default rule). The current implementation simply sticks all passability tags in a list, traversing the list in order to select a matching rule. Every time an entity is pathfinded over the terrain in question.

2009-07-14 10:35:31 changed by feneur

  • owner deleted.
  • status changed from assigned to new.