Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
path: root/doc/TODO
blob: bd2055196b3e1f07b84c1bf9b3d6cacc4dec2e8e (plain)
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109

  ------------------------------------------------------------------

	Project::OSiRiON - TODO

  ------------------------------------------------------------------

general:
	documentation cleanup -> wiki
	finish player guide -> wiki
	update user manual-> wiki
	
	server-client event system, hit-once lightweight entities
	explosion events
	sound events
	world sounds
	weapons
	ship improvements (radars, shield, armor)

filesystem:
	write a filesystem based on streams
	write handlers for zip
	write handlers for gz
	fs_homedir, to define the writeable directory
	fs_datadir, readonly package datadir
	fs_base, fs_mod, fs_game, to be used by modules
	
model:
	.md3 support

core:
	add EntityControlable::control_flags() to group on/off controls (Impulse, AutoPilot?)
		- afterburner is a -1/0/1 control and can't be added
		- replace the impulse command with a control flag
		- think about AutoLevel

	find an elegant solution for /say and /shout on the dedicated server console, verify private chat
	fix game.ini load/save sequence
	fx events: jump events, tracktor beams, weapons fire
	pause game loop when there are no players
	support for entities like nebulas and asteroid fields

network:
	protocol description (incomplete)
	group chat (requires player groups)
	rcon authentication, rcon command, servers must be able to disable rcon
	rconpassword: send md5sum instead of plaintext
	player authentication (player guid), admin rights
	detect and disconnect clients behaving badly
	let server track Entity::State changes
	
	add server-side distance check before sending entity updates
	client prediction, replace SUP network frames with PHYS frames
	fix lag/client interpolation

	EXT messages, update extended property "ext id prop value prop value etc", type checking/seperator etc..
	EXT zone/color/shield/armor/health
	
	reliable network messages (e.g. entity create/die)

client:
	beam and eject cargo (commands implemented, needs UI and general FX)
	add map window target model
	tracking camera absolute speed/position + SLERP
	correct hud target/target hoover inconsistencies
	reset info text scroll when showing buy/trade menu
	enable chat window player list selection, add global chat buttons
	create hud concept artwork

	fix camera frustum clip (size issue, postponed)

render:
	fix skybox envmapping -> cube map
	star light strenght
	general globe texture stretching, coordinates seem to be off
	multitexture materials

ui:
	unify event handlers, expand Event class and make derived event classes	
	
sound:
	entity/event positional sounds
	jump drive sound events
	client-side control of impulse initiate / impulse loop sound sequence

game:
	add Ship::ship_dock, making docking independent of player->view() -> relates to player-to-player trading
	have the goto command check the target's Docked state -> ties into ship dock awereness
	move Ship::dock() functionality into core::EntityControlable

	ship health/shield/armor
	add fleet support

singleplayer:
	think about a single player format and potential required core features

documentation:
	update starsystem roadmap
	add starsystem roadmap to the user documentation
	add a yaw/pitch/roll image to the modelling documentation
	
data:
	rename skies (lindblade1, lindblade2, ...) 
	
automake:
	perform a library link test after each header test
	replace OpenGL header test with SDL_opengl.h
	link test with GL_HOST_LIBS (and other host libs)
	make install and installation of data/