- Free gestures can be rebound (two/three finger swipe, double-tap, triple-tap)
-## Gameplay Ideas
+## Gameplay
- No camera control: camera centers on tank and moves with it, though player can zoom the map
- No number games: all items are qualitative (so, ex: only bosses have more than 1hp, but items (like shields) might absorb damage)
- Allies: companion AI tanks which play for your side (beware friendly fire)- Mutable Environment: obstacles can be destroyed with the right weapons, enemies can be pushed
-
-## Items
+### Items
See [Item Ideas](/gameplay/items).
+### Enemies
+
+See [Enemy Ideas](/gameplay/enemies).
+
-## Tank Attributes
+## Unit Attributes
- Movement: speed, turning speed
- Cannon: cooldown, max in air, recoil?
-- Bullets: speed, num bounces, proximity, AOE explosion
-- Toughness: hp (Bosses only), shields, resistance to certain classes of weapons
+- Bullets: speed, num bounces, proximity, AOE explosion, size, timeout, range, seeking, proc, sleep, stun, immobilize, confuse, slave
+- Toughness: hp (Bosses only), shields, armor
## Flavor
- *Proximity ("Prox")*: A weapon that detonates in proximity to a damageable target.
- *Proc*: A chance on each shot of a weapon to have a special effect.
-
+## Snippets
+- Bullet attributes: size, speed, timeout, range, burst, AoE explosion, prox, seeking, drill bonus
+- Tank attributes: move, rotate, recoil damping, push-power, thorns?
+- Weapon attributes: cooldown, multishot, proc(x), charges/ammo,
+- Status: sleep, stun, slow, immobilize, blind, confuse, slave
+- Traps, time-bombs
+- Push+hold shield
+- Minion tanks with taunt
+- Blink
+++ /dev/null
-# Bugs
-
-# TODOs
-
-- AI: Lead shots on moving targets
-- Config-driven unit-types (name, stats, properties; pointers to behavior scripts, assets)
-- Game scoring
-- Support touch events (for iPad?)
-- Migrate A* code into PathMap
-
-
-# Code Notes
-- Replace *2 and /2 with shifts at compile-time
-- Clipping will suck (masking is easy -- overflow:hidden)
-- Classes should have generalize()-ed version of instance methods on them.
-
-
-# Other Notes
-- GA for littlestbattletanks.com: UA-20115336-1
--- /dev/null
+
+- GA for littlestbattletanks.com: UA-20115336-1
--- /dev/null
+# Tanks Later
+
+## Buckets
+
+- **Buff UI**: icon, name, desc, countdown; obey flag to hide
+- **Equip + Item UI**
+ - Default icon border/frame
+ - On hover: color slot if ok to equip
+ - Automatically add stats, equip-tags to tooltip
+ - Outline open bags
+ - Bubble inventory events to DOM
+ - Q: Drop/destroy items y|n?
+- **Help + Info Overlay**: Modal overlay with tooltips for terrain, enemies, UI, slots, items, commands
+- **Hotkeys**: Belt with 4 slots; key to toggle backpack; UI to reassign?
+- **Buff Priority**: `Unit.recalculateStats()` -- can't just delegate to each item in turn; have to sort on priority first
+- **AI DSL**: patrol, tether, flock
+- **Buff Stats**: by %, by ref to another stat, by formula
+- **Units**
+ - Lead shots on moving targets
+ - Rotate Stat: rotate before move
+ - Rotate bullet art on fire to match trajectory
+ - `Unit.isAwake()`: search stat -- sleep after time w/o seeing an enemy (don't apply to allies); wake radius stat
+ - thinking stat: ticks b/t recalc of "plan" -- continue last plan otherwise
+ - Emit AI emoticons during planning
+- **Levels**: progression; propagate loot between levels
+- **Items**
+ - Weapon mod slots
+ - Charged items/ammo
+ - Bullet expire time or range
+- **Level Builder**
+ - HTML app -> build YAML files -> WebDAV to save
+ - Use & Edit data defs -> palettes
+ - Visual level editor
+- **Pathing**
+ - A* to use 1px grid -- isBlocked() will have to check unit size & collision types
+ - Remove density -- can do it all with blocking type
+ - Refactor collision test from Traversal into Map.pathing
+
+## lttl junk
+
+- Move Player into `player.yaml` from `units.yaml`
+- Kill replay logging
+- `Game.onDestroy()` to notify Things to clean up listeners
+- Remove countdown
+- Weapons to specify cannon art
+- Targeting cursor
+- Tank tracks, bullet trails
+- Make Ezl canvas abstractions match cocos2d
+