confirmed quadra-compliant behaviour
[netris.git] / TODO
1 possible bugs
2
3  * fail on insufficient space
4
5
6 near-future
7
8  * only global pause (handled by server in mp)
9    every client still has readiness flag
10  * correct cursorposition at quit
11  * echo \r
12  * transmit player fields of game in progress to new player
13         * server has to maintain copy of player fields
14         * server also handles endgame stats
15  * completely fix redraw
16  * server should deny duplicate nicks
17  * display total frags for players (by server?)
18  * spacebar toggles readiness as well
19         * seperate set of key bindings during pause?
20  * wrong time after first match at second player
21  * toggleable message window
22
23
24 asap
25
26  * MENUTHINGY :)
27         * write options to file
28  * all messages in single include file
29  * timestamps
30         * backtrace...
31                 * multiple players using a single (larger) field
32  * wrap multiline messages at word end
33  * commands
34         * basic irc / tetrinet client: /me, /msg
35         * basic tetrinet client: /move
36         * server info: /who (also in tetrinet), /version, /whois
37         * /nick, /team (requires server passing)
38         * remaining tetrinet: /join, /list, /op, /kick,
39           /winlist, /setwinlist, /start, /stats, /tstats,
40           /rules, /news, /faqs, /features, /motd
41  * observers (join as g/o player)
42  * bot as seperate client
43  * time-based singleplayer leveling?
44  * fix -f (both client+server)
45  * more server options (field size..)
46  * save hiscores
47
48
49 distant future
50
51  * server can rate players (skill ranking)
52         * persistent data (retain info if players quit)
53         * store data when server quits (and prolly at interval)
54                 * reliably identify players (login? identd?)
55         * inter-server exchange? (global rank)
56  * different key procedure? (allowing for multiple keys simoultaniously?)
57  * vertical cropping of enemy fields (merging two lines into one!)
58  * server can add lines after specified time
59  * sounds
60  * graphics.... (or at least x version for keys)
61  * extra alarm event for effects
62         * line clear animations (flash)
63  * multiple next pieces
64  * hold
65  * special blocks
66         * inventory
67         * player keys
68         * delete key?
69         * blocks+actions
70                 abcd.fg_i..lmnopqrs__v_x.z
71                 * tetrinet:
72                         * a: add (junk)line
73                         * b: remove specials on field
74                         * c: clear (bottom) line
75                         * g: gravity (move all blocks down)
76                         * n: nuke field
77                         * o: block bomb (3x3 blocks around any bombs on field are cleared)
78                         * q: quake (shift lines left or right)
79                         * r: remove 10 blocks at random
80                         * s: swap fields
81                 * suggested:
82                         * d (w): donate (next inv block given to other player)
83                         * f (u): flip (symetric vertical inversion)
84                         * h: hide (replaces inventory blocks by ?)
85                                         (one block restored per line added?)
86                         * l: lower (all specials from field going down (g))
87                         * p: purge (half remove special blocks from inventory)
88                         * t: take (take 2 specials from target player field)
89                         * ?: mystery (block only revealed in inventory)
90                 * tetrinet 2:
91                         * d: darkness (temporarily blackens your field except
92                                         around current piece)
93                         * f: confusion (temporarily rearranges controls)
94                         * i: attack immunity (invincible to attacks)
95                         * m: mutated pieces (gives several difficult pieces)
96                         * v: clear column (erases vertical line)
97                 * blocktrix:
98                         * l: left gravity (pulls all blocks to the left)
99                         * p: piece change (randomly changes player's currently falling piece)
100                         * z: zebra field (clear every second column)
101                 * ideas:
102                         * x: seperate blocks (cut all shared pieces in quadra)
103  * quadra compatible?
104  * tetrinet compatible? (prolly not)
105  * new+better bot?
106  * ipv6
107  * replay ability? (tspec replay and/or quadra rec compatible?)
108         * demo playable as intro
109                 * create record spelling out netris logo
110  * completely customizable window layout
111  * adjustable player order (maybe even in config by nick/hostname)
112  * multiple channels per server
113         * /join and /part
114  * hold piece
115  * multiple level block preview
116  * customizable colors
117         * original:
118             BT_I=RED, O=BLUE, T=ORANGE, L=MAGENTA, J=WHITE, S=GREEN, Z=CYAN
119         * sega:
120             BT_I=RED, O=YELLOW, T=CYAN, L=ORANGE, J=BLUE, S=MAGENTA, Z=GREEN
121         * atari:
122             BT_I=RED, O=BLUE, T=GREEN, L=MAGENTA, J=YELLOW, S=CYAN, Z=ORANGE
123         * quadra:
124             BT_I=GREEN, O=ORANGE, T=BLUE, L=MAGENTA, J=YELLOW, S=CYAN, Z=RED
125         * tetrinet:
126             BT_I=BLUE, O=YELLOW, T=YELLOW, L=MAGENTA, J=GREEN, S=RED, Z=BLUE
127         * guideline:
128             BT_I=CYAN, O=YELLOW, T=MAGENTA, L=ORANGE, J=BLUE, S=GREEN, Z=RED
129
130
131 consider
132
133  * colored shadows
134