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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
|
The Osirion Project - README
This is the Osirion project. I wrote it to get a better grasp on
game design with opengl and to get some C++ practice.
Maybe someday, it will be a real game.
Read INSTALL for instructions on building, installing and udpating.
Dedicated server
The dedicated server will accept incoming connections on port 8042.
There is no server console.
Client
Starting the client will show the loader screen.
To start the game, open the client console with ~ and type 'connect'.
You will join the game as spectator, type 'join' in the console
to join the game. Type 'spectate' to spectate again.
Type 'disconnect' to return to the loader screen.
The client is capable of acting as a networked server. You can enable
the private server by setting 'sv_private 1' before you 'connect'.
This wil allow remote players to connect to your client.
To connect to a dedicated server, type 'connect address', where
adress is the hostname of IP address of the remote server.
In-game, you can purchase a new ship with the 'buy' command.
Keyboard
~: toggle console
space bar: switch camera mode
left/right/up/down arrow keys: rotate camera in free mode
keypad left/right: turn the ship left/right
keypad +/-: increase/decrease forward thruster
T: open the chat window
Console functions
The following commands are available on the console:
connect connect the client to the game module
disconnect disconnect the client from the game module
list_ent list registered entities
list_func list registered functions
list_model list regsitered models
list_var list registered variables
quit exit the application
r_restart restart the video subsystem
The following commands are available when connected to a game:
join join the game
spectate spectate
buy purchase a new ship
To change the video resolution, set the r_width and
r_height variables and execute r_restart.
e.g.: to set the video mode to 1024x768 type:
r_width 1024
r_height 768
r_restart
To switch to fullscreen mode, set the r_fullscreen
variable to 1:
r_fullscreen 1
r_restart
You can set your name and player color through the cl_color
and cl_name variables. You will have to disconnect and reconnect
for the changes to take effect:
cl_name SpaceCowboy
cl_color 1.0 1.0 0.0
connect
Settings are saved when you quit the application.
Organization of the distribution
C++ source code
/src
/math mathematical classes
/sys low-level system functions
/filesystem virtual filesystem library
/core game-independent core library
/game game-specific functions
/server osiriond dedicated server
/render render library
/client osirion client
Data files
/data
/base game data files
/bitmaps essential bitmaps
/ini ini files
/maps .map models
/ships spaceships
/stations space stations
/textures textures
/gtkradiant gtkradiant support files
The game data can be obtained as a seperate distribution.
Refer to the file INSTALLATION for more information.
Editing game parameters
One of the goals of the Osirion Project, is to create an engine
that makes it very easy to extend the game. At this moment, the
game reads the world description from ini/world.ini and a list of
buyable ships from ini/ships.ini.
I recommend not to edit the original game data, but to make a copy
in your personal osirion folder '~/.osirion'. This directory mimics
the directory structure of the 'data' directory but any file found
in the personal diretory will get precedence over the corresponding
file in the game data directory.
Adding models
The models are basic Quake2 style .map files with custom entities
and can be created with a program like gtkradiant. No map compiler is
necessary, the engine reads the files directly. Refer to the file
INSTALL on how to install the support files for gtkradiant 1.5.0.
The textures in the textures/colors/ directory are mapped to RGB colors
when the models are loaded, any real texturing information is ignored.
Unknown textures will be colored hot pink in-game.
Two special textures are supported: any brush faces textures with
common/caulk will be ignored by the engine, similar to the caulk
feature in quake-like engines. Brush faces with the common/entity
texture will get the current game entity color. This makes it possible
to use the current player color on ship models.
Add an info_engine entity to add an engine exhaust to the ship model.
Notes
The built-in TGA reader is rather limited. When saving TGA files with
the Gimp, make sure to disable the option "origion at bottom left".
At the moment, the only TGA files in the game are bitmaps/conchars.tga
and bitmaps/loader.tga.
Project contributors
Thorn[mDc] - Ship models
IRC
The official Osirion IRC channel is #osirion on irc.soliter.org
Acknowledgements
This project could not have been possible without the work of others:
Id Software, for releasing the quake source code, which obviously
acted as a example.
Id Software and the GtkRadiant project contributers
The Quake2World community
The Satgnu crew
Thanks to bobke, blaze-x and Thorn[mDc]
DVSoftware for bandwidth, diskpace and CPU power
A special thanks to all =KCT= members
License
The program is distributed under the terms and conditions of the
GNU General Public License version 2.
Copyright 2007-2008
Ingar=KCT= <ingar@telenet.be>
|