missing features (notable on Tetris DS)
[netris.git] / TODO
diff --git a/TODO b/TODO
index 3696e06a5969401b73ac99859a8a55cc63fc6a83..b0f07d83c04388c741500a8cbf32133e3f859b91 100644 (file)
--- a/TODO
+++ b/TODO
----- near-future: ------------------------------------------------------------
+possible bugs
 
- * everybody in a team
- * teams are colored
- * server never quits
- * 'you won' message, remove 'close connection' echo
- * (check if commandprompt is below game)
+ * check out quadra gravity: single block over multiplayer junkhole
+   -> piece falls down
+ * fail on insufficient space
+
+
+near-future
+
+ * only global pause (handled by server in mp)
+   every client still has readiness flag
+ * piece seperation when middle cleared away? (check quadra -> piece split)
+ * correct cursorposition at quit
+ * echo \r
  * transmit player fields of game in progress to new player
        * server has to maintain copy of player fields
- * empty new player's field (in case of recycle)
+       * server also handles endgame stats
  * completely fix redraw
- * redraw on window resize
- * message position/size
- * allow custom nicks
- * move piece when unable to rotate at screenedge
+ * server should deny duplicate nicks
+ * display total frags for players (by server?)
+ * spacebar toggles readiness as well
+       * seperate set of key bindings during pause?
+ * wrong time after first match at second player
+ * toggleable message window
 
 
----- asap: -------------------------------------------------------------------
+asap
 
+ * MENUTHINGY :)
+       * write options to file
+ * all messages in single include file
+ * timestamps
+       * backtrace...
+               * multiple players using a single (larger) field
+ * wrap multiline messages at word end
+ * commands
+       * basic irc / tetrinet client: /me, /msg
+       * basic tetrinet client: /move
+       * server info: /who (also in tetrinet), /version, /whois
+       * /nick, /team (requires server passing)
+       * remaining tetrinet: /join, /list, /op, /kick,
+         /winlist, /setwinlist, /start, /stats, /tstats,
+         /rules, /news, /faqs, /features, /motd
  * observers (join as g/o player)
- * fix -f
- * half width enemy fields if out of screen space
- * fix bot
- * multiplayer stats
+ * bot as seperate client
  * time-based singleplayer leveling?
- * shapes stored as bitmap, rotate by modifying for
+ * fix -f (both client+server)
+ * more server options (field size..)
+ * save hiscores
 
 
----- distant future: ---------------------------------------------------------
+distant future
 
- * horizontally _and_ vertically resize enemy fields
+ * server can rate players (skill ranking)
+       * persistent data (retain info if players quit)
+       * store data when server quits (and prolly at interval)
+               * reliably identify players (login? identd?)
+       * inter-server exchange? (global rank)
+ * different key procedure? (allowing for multiple keys simoultaniously?)
+ * vertical cropping of enemy fields (merging two lines into one!)
+ * server can add lines after specified time
+ * sounds
+ * graphics.... (or at least x version for keys)
+ * extra alarm event for effects
+       * line clear animations (flash)
+ * multiple next pieces
+ * hold
  * special blocks
- * tetrinet compatible?
- * remove bot delay (make it humanplayer-like)
+       * inventory
+       * player keys
+       * delete key?
+       * blocks+actions
+               abcd.fg_i..lmnopqrs__v_x.z
+               * tetrinet:
+                       * a: add (junk)line
+                       * b: remove specials on field
+                       * c: clear (bottom) line
+                       * g: gravity (move all blocks down)
+                       * n: nuke field
+                       * o: block bomb (3x3 blocks around any bombs on field are cleared)
+                       * q: quake (shift lines left or right)
+                       * r: remove 10 blocks at random
+                       * s: swap fields
+               * suggested:
+                       * d (w): donate (next inv block given to other player)
+                       * f (u): flip (symetric vertical inversion)
+                       * h: hide (replaces inventory blocks by ?)
+                                       (one block restored per line added?)
+                       * l: lower (all specials from field going down (g))
+                       * p: purge (half remove special blocks from inventory)
+                       * t: take (take 2 specials from target player field)
+                       * ?: mystery (block only revealed in inventory)
+               * tetrinet 2:
+                       * d: darkness (temporarily blackens your field except
+                                       around current piece)
+                       * f: confusion (temporarily rearranges controls)
+                       * i: attack immunity (invincible to attacks)
+                       * m: mutated pieces (gives several difficult pieces)
+                       * v: clear column (erases vertical line)
+               * blocktrix:
+                       * l: left gravity (pulls all blocks to the left)
+                       * p: piece change (randomly changes player's currently falling piece)
+                       * z: zebra field (clear every second column)
+               * ideas:
+                       * x: seperate blocks (cut all shared pieces in quadra)
+ * quadra compatible?
+ * tetrinet compatible? (prolly not)
  * new+better bot?
- * replay ability? (tspec replay compatible?)
+ * ipv6
+ * replay ability? (tspec replay and/or quadra rec compatible?)
+       * demo playable as intro
+               * create record spelling out netris logo
+ * completely customizable window layout
+ * adjustable player order (maybe even in config by nick/hostname)
+ * multiple channels per server
+       * /join and /part
+ * hold piece
+ * multiple level block preview
+
+
+consider
+
+ * colored shadows