From: dsc Date: Thu, 2 Jun 2011 09:10:11 +0000 (-0700) Subject: Adds actual components for roadmap. X-Git-Url: http://git.less.ly:3516/?a=commitdiff_plain;h=748b72628c1d04ab49273fa7c74056e2878d94e9;p=tanks-wiki.git Adds actual components for roadmap. --- diff --git a/wiki/gameplay/index.md b/wiki/gameplay/index.md index d32a897..31e49d2 100644 --- a/wiki/gameplay/index.md +++ b/wiki/gameplay/index.md @@ -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 diff --git a/wiki/notes/roadmap.md b/wiki/notes/roadmap.md index efcccfc..86bf170 100644 --- a/wiki/notes/roadmap.md +++ b/wiki/notes/roadmap.md @@ -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!! +* <Insert Huge Wishlist Here> + + +## Roadmap + +Everything. Done Tomorrow.