1 Todo and Idea List for Tennix
2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4 Tennix 2009 Edition (2.0)
5 ~~~~~~~~~~~~~~~~~~~~~~~~~
7 Target release date: 19.02.2009
11 4. Make AI player a bit more intelligent & beatable
12 -> Python-scriptable + events that it "sees"
13 10. Clean-up the menu appearance / style to be more consistent
14 (remove buttons as much as possible and replace with gfx)
18 1. Proper collision detection for ball <-> racket
19 (Different sound + random movement when edge hit)
20 Maybe: make racket less visible until power value is reached
21 7. Allow navigating menu with joystick / keyboard in addition to
22 mouse ("cursor" state that is modified instead of directly
23 using the mouse my mx coordinates)
24 8. Flip coin to determine which player serves
25 (Using the Animation framework + some inkscape'd pictures)
29 2. Give a visual clue where the ball goes when serving (blinking)
30 (Only when power reaches a certain level)
31 5. Rain moves ball in the negative direction (z -= RAINSPEED)
32 6. Reduce current "power" value when moving in Y direction
33 9. Retrieve the ball when it goes offscreen or into the net
34 (Either via Balljunge mode, long referee hand or "hand of god")
37 ==================================================================
39 ==================================================================
41 FROM --------------> TO
48 + "tween functions" (sin, 1-p, exp, ...)
50 ==================================================================
51 MENU AND NAVIGATION (COSMETIC)
52 ==================================================================
54 -> Make options menu same style as main menu
55 -> add picture to left side of main menu
57 Physikalischer Tennis-ball im Hauptmenü zum herumspielen
59 ==================================================================
61 ==================================================================
71 * (maximum) Speed (or: speed curve)
75 ==================================================================
76 PARTY MODE AND INPUT ISSUES
77 ==================================================================
79 Input selection like Fifa 96 (left / right)
80 Proper gamepad axis support (can we do this in general?)
81 Tournament config / setup / frontend (GTK+/Qt/[...]?)
83 read keyboard input mappings from config file and generate bindings
84 dynamically or even allow new bindings configured in the UI
87 ==================================================================
89 ==================================================================
91 * Ball + racket buying/selling/upgrading
92 * Schläger: upgrades [name, verbesserung, kosten, haltbarkeit]
93 * Person, Training: Laufgeschwindigkeit, Vorhand/Rückhand
94 * add wear (abnutzung) to ball and racket, so one has to buy new
95 stuff every now and then ("design charge" vs "current charge")
98 ==================================================================
100 ==================================================================
102 * Weather-verlauf pro location gegeben über W-vtlg. mit anschl.
103 berechnung des wetterverlaufs über simulierte stichprobe
106 ==================================================================
108 ==================================================================
110 * Grafische Darstellung der hit points des Balles am Ground
111 * Wind (modifies the ball movement)
112 Wind darstellen über die rot-weiße "Windfahne"
113 * Snow (christmas edition?)
114 * Sunshine (=current, normal behaviour)
116 Schiri spannt Schirm auf, wenns es regnet
118 Shadow computer-generiert?? (und für schläger zusätzlich?)
119 Shadow x2/x4 wenn Nacht-Modus (weil scheinwerfer!!)
121 Kleinere Schläger, dafür mehr Sprites für die Animation
122 Schläger einfärben per SDL möglich? (HUE-verschiebung)
124 Sound effect groups: Group the same types of sounds (e.g. voice,
125 racket, ground) in one sound "GROUP" that shares a channel.
127 Trainings-Modus mit Zielscheibe
129 Möglichkeit, ans netz zu gehen, aber dann kann man sich nur mehr
130 einen kleine bereich auf- und abbewegen (by mario).
132 ==================================================================
134 ==================================================================
136 librsvg for rendering the SVG source files in-game instead of
137 shipping pre-rendered PNG files (would allow us to modify XML)
139 "Satz vom sportlichen Statistiker" (add statistics features to AI)
141 Garbage collector für c/c++?
145 ==================================================================
147 CC-Licensed photos from Flickr:
148 Public Tennis Court: http://flickr.com/photos/dan4th/1387725497/
149 Tennis mit Palmen: http://flickr.com/photos/a2gemma/251846846/
150 Melbourne Tennis-Stadium: http://flickr.com/photos/snips/32925154/
151 Tennis Court Nightly: http://flickr.com/photos/exfordy/394570878/
153 Tennis in der wueste: http://flickr.com/photos/mthird3rd/471720012/
155 click sound: http://freesound.iua.upf.edu/samplesViewSingle.php?id=34099
156 rain: http://www.freesound.org/samplesViewSingle.php?id=34067
160 Fix sounds (wav, mp3? - ogg doesn't seem to be supported)
161 Widescreen support - 800x480 (make "outer areas" input-accepting)
166 Make sound deactivatable (or sound volume settings?)
167 User-settable "sets to win" (2 or 3)
170 Change between full screen and windowed mode in Windows
172 Implement "hit in the right area on serving"
173 Correct serve repeat when serving into the out