Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
blob: 69183f35f3efac88e0b79a525cc5177d3a6c7235 (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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145

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

	Project::OSiRiON - TODO

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

general:
	documentation cleanup
	finish player guide
	update user manual
	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:
	.obj support
	.md3 support

	(ok) .ase submaterials (ok)
	(ok) support 'angles' key on the 'misc_model' map class

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

	fix dedicated server not showing chat messages (bug to be verified)
	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

	(ok) optimize KeepAlive sweep performance
	(ok) remove EntityControlable::movement(), render dust based on control->speed()

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)

	(ok) zone chat

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)

	(ok) have the trade menu show depleted shop items with their sell value
	(ok) testmodel functionality	

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

	(ok) have r_loadmodels load particle scripts and flare textures
	(ok) disable texturing and lighting while drawing normals
	(ok) correct Camera::axis when using ModelView (-> flare axis in testmodel)

	(unfixable) globe texture distortion at the poles

ui:
	unify event handlers, expand Event class and make derived event classes	
	listview scrolling
	
	make modelview and slider dragging work when the mouse leaves the widget
	if the mouse button is pressed, mouse focus should stick to the last clicked widget
	until the button is released

	(ok) slider mouse dragging
	(ok) correct modelview lighting
	
sound:
	entity/event positional sounds
	jump drive sound events
	client-side control of impulse initiate / impulse loop sound sequence

	(ok) suppress error message spam if the sound subsystem failed to initialize

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

	ship health/shield/armor
	add fleet support

	(ok) set planet safe distance to 5 km
	(ok) fix 'give ship' and 'buy ship' destroying inventory
	(ok) remove warning color from 'dock out of range' messages
	(ok) when the goto command is used to target another player, appear above him, instead of in front of him.

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
	
	(ok) add a spacescape link	
	(ok) add a link to CIA.vc

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/

	(ok) resolve build dependency issues