-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
42 lines (35 loc) · 1.38 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
More to do on tetrix server:
[x] make a test where the game plays itself and ends with no input
[x] make a test where the game thread starts, and tranmits its state
but doesn't start playing until it receives a start signal.
then it plays itself to game-over
[x] self-play the game
[x] speed/time awareness - now ticks are sent. no ticks? game doesn't advance.
[x] garbage into board
[x] drop @ 2x-10x speed
[x] add hold
[x] add restore hold, too!
[x] add next shape tests
[x] rotation
[x] succesfully moving the piece - this includes DOWN. does that actually make sense?
[x] landing a piece (ShapeLocked event)
[x] line completed event
[x] score change event - include the new score. should score be kept by client?
[ ] consider removing MovedShape event
Game wrapper would:
[x] wait for 'start game' command
[x] generate tick events
[x] buffer output from gamethread
[x] proxy client commands to game thread
[x] wait for a poll to drain the output buffer ([ ] can the client sip? what about latency?)
Game master manages wrapper pool. Creates/disposes game threads.
[x] create game threads
[x] dispose game threads - (idk automatic??)
Client would:
- create connection to API
- present output (either in SDL or thru web-ish interface. telnet, lol?)
horizon:
API + first clients
API definition
SDL? web? if a web client, how to build a server?
multiple instances running simultaneously