Adds actual components for roadmap.
authordsc <david.schoonover@gmail.com>
Thu, 2 Jun 2011 09:10:11 +0000 (02:10 -0700)
committerdsc <david.schoonover@gmail.com>
Thu, 2 Jun 2011 09:10:11 +0000 (02:10 -0700)
wiki/gameplay/index.md
wiki/notes/roadmap.md

index d32a897..31e49d2 100644 (file)
@@ -59,7 +59,7 @@ See [Enemy Ideas](/gameplay/enemies).
 
 
 ## Flavor
-- AI makes commentary on situations. "That was close. Sucker." "loool, you always die here."
+- AI makes commentary on situations (aka "autotrolling"). "That was close. Sucker." "loool, you always die here."
 - Papercraft art style, vector graphics
 
 
index efcccfc..86bf170 100644 (file)
@@ -1,7 +1,151 @@
-# Littlest Roadmap
+# A Lttl Roadmap
 
-- Items
-- Levels
-- Level transitions
-- Improve friendly fire of AI
+[TOC]
 
+## Components
+
+### Physics
+
+* Weapon collisions deal damage
+* Non-unit detection zones
+* Shields and Armor move with unit, collide with things, but have independent stats (unit-to-component joint)
+* Player-aligned shields and armor (only blocks enemies)
+* Terrain types with different characteristics
+
+### Ability & Buff System
+
+* Units have stats, buffs & status effects, inventory, abilities
+* Ability qualities & properties
+    * Costs: HP, MP, Cooldown, Cast-time, Charges
+    * active/passive/proc
+    * projectile/targeted/area/shields/armor/summon
+* Ability UI feedback for targeting, cast, results
+* Ability help/tooltips
+
+### Items
+
+* Loots vs Stuff vs Powerups:
+    * **Loots:** Collectable items (see below).
+    * **Powerups:** Transient items found in the world, activated on acquision--the powerup is consumed, triggering its ability/buff. A powerup requires no inventory space to activate.
+    * **Stuff:** Stuff resides in your tank inventory, taking up space, potentially providing an effect or ability. There are many types of stuff:
+        * *Plot:* Plot items take up inventory space and generally have no combat/mechanical effect. Examples include keys to locks and items used by triggers to advance the plot.
+        * *Consumables:* Triggered (and consumed) on demand.
+        * *Equipment:* Stuff that provide a passive buff or add an active ability (usually with a cooldown). Losing the equipment removes the buff or ability (but doesn't reset the cooldown :P).
+        * *Conjured:* Stuff created by an ability, usually persisting on a timeout.
+* Currency:
+    * World Currency for shops/plot (gold or whatever we end up calling it)
+    * App Currency for packs/perks/hats via in-app purchase?
+* Ways items are acquired
+    * Found in world (monster drop, bought from shop, quest reward); persistent until used/sold/destroyed.
+    * Granted by loadout; disappears when loadout changes.
+    * Conjured by ability.
+
+### Collectabile Loots
+
+* Loots are collectable items. Think your deck in MTG, talents in WoW/Diablo, or your plants in PvZ. 
+    * Loots take up no tank inventory space, and only take effect when loaded onto a tank; tank loadout slots are limited.
+    * You can activate a different tank loadout only at checkpoints, but you can configure/manage/fiddle with your loots and loadouts at any time.
+        * So like in MTG, once you pick a deck to play, you can't change it mid-game. However, you can organize your cards and build decks any time (even if it would annoy your friends if you did it while playing ;)).
+    * Loots have different rarities, and are acquired like items (see above).
+        * Booster Packs via in-app purchase?
+    * Your collection is attached to that player; loots can probably be sold at shops (or traded between players somehow, like how people used to do with pokemon?)
+* Loot needs a better name: badges, metals? components, widgets? hats, baubles, trinkets, gewgaw, foobars?
+
+### Unit Behavior & AI
+
+* All units have sleep behavior stats
+* DSL for writing AI
+* Unit decision trees for behavior
+* Provides high-level convenience functions for pathfinding (A*), sight-tests, world queries, collision-lookahead (this might suck in Box2D)
+* Personalities for flavor (aka "autotrolling"): decision-trees for AI yelling commentary on battles ("Holy~ You might rival my grandmother at video game skill!"; "You always get hit when I do that~"; "Gah! Why can't I see through walls!")
+
+### Triggers
+
+* DSL for scripting the game, responding to events.
+    * Has logic, commands, event-handlers
+    * Loaded dynamically: script tied to unit, or location, or condition to unload
+* Primarily for cinematics & encounters
+    * Plot, NPC dialogue, cutscenes
+    * Bosses, custom encounters
+    * Enemies have "personalities", react to combat?
+* Could also use trigger system for...
+    * AI scripting?
+    * Building complex abilities from basic building blocks? Ex. ability type & properties (ex: projectile w/ size, speed, bounces?), effects (ex: deal damage, heal), cooldown & costs, etc. *(This would be cool, but more likely to have bugs. Do it the dumb way first.)*
+
+### Level Builder
+
+* Content definition files: units (players, helpers, NPCs, enemies, bosses, projectiles, shields, armor), buffs, abilities, items, loots, tilesets, terrain, walls, rocks, doodads, rooms, levels, triggers, AI behaviors
+* A Level is a collection of Rooms come in two flavors: pre-built and generative
+* Levels have many Rooms
+* A Room is a modular chunk of space:
+    * tileset (background (sky + parallax layers), art for terrain, walls, rocks, doodads?) -- flag to inherit from Level
+    * pathing info (entry/exit points, terrain map, wall locations, horizon bounds)
+    * content and spawn info (doodads, units, shops, loots, checkpoints, triggers)
+
+### Art & FX
+
+* Raw materials: animations, special effects, particles
+* Units
+    * Movement/facing sprites
+    * Status states
+    * Idle animations
+* Environment
+    * Tilesets
+    * Terrain animations
+    * Background parallax
+    * Doodads
+* Abilities
+    * Casting animation, effect art+animation
+
+### User Interface
+
+* Viewport is pannable, zoomable; moves with player
+* Controls:
+    * Draw path from tank to move
+    * Touch to shoot
+* HUD:
+    * Tank stats, status, buffs
+    * Tank inventory
+* Palette for abilities and commands (w/ modal support)
+* Loot Loadout UI: the "deckbuilder" for your loot collection
+* Maps:
+    * Local minimap
+    * Expanded map of current Level (w/ fog of war?)
+    * World Map (w/ fog of war from exploration progress?)
+
+### Menus
+
+* The expected/necessary shit
+    * New Game
+    * Play/Pause
+    * Save? Autosave?
+    * Options
+* Interstitials for free version?
+    * Buy full version
+    * Share to XYZ
+    * Buy full version
+    * Rate this on the App Store
+    * Buy full version, dicknose
+
+### Options
+
+* UI driven by config; created with scaffold lib... surely one exists for iOS?
+* Sound: Music, Volume (Scrobble would be neat)
+* Help: Show Tutorial, Notes, Tips
+
+### Help
+
+* Modal help overlay on viewport w/ "tooltips" for most everything (terrain, enemies, projectiles, the UI...)
+* Tutorials?
+* Codex/Tanklopedia of concepts, collectble loot, terrain, traps, enemies, bosses?
+
+### Sever
+
+* Ability to push datafile updates from server to client
+* Geo stuff!!
+* &lt;Insert Huge Wishlist Here&gt;
+
+
+## Roadmap
+
+Everything. Done Tomorrow.