forked from aheadley/homeworld
-
Notifications
You must be signed in to change notification settings - Fork 2
/
README
175 lines (132 loc) · 7.92 KB
/
README
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
Homeworld SDL - README
Version 0.3 alpha
http://www.thereisnospork.com/projects/homeworld/
---
Homeworld © 1999-2000 Sierra On-Line, Inc. All Rights Reserved.
Homeworld is a registered trademark, and Sierra and Sierra Studios are
registered trademarks of Sierra On-Line, Inc. Relic is a trademark of Relic
Entertainment, Inc.
SDL/Linux port by Ted Cipicchio <ted@thereisnospork.com>
------------------------------------------------------------------------------
(Please refer to the file INSTALL for installation instructions, along with
building instructions if you are using the source package. It contains some
very important information on getting Homeworld to work under Linux.)
---
On September 26, 2003, Relic Entertainment released the source code to
Homeworld, a 3D real-time strategy game set in space. Homeworld, originally
released in 1999, was dubbed "Game of the Year" by PC Gamer and "Strategy Game
of the Year" by Computer Gaming World.
This a Linux port of the Homeworld code released by Relic. It is still in a
very early state, and many of the features (and stability) of the Windows
version are not yet implemented.
------------------------------------------------------------------------------
* Frequently Unasked Questions (FUQ) *
Q. When I try to run the game, I get the message "Invalid or missing Homeworld
CD. Please insert valid CD." on the command line.
A. The game still requires the original Homeworld CD to run. The CD will need
to be mounted prior to starting the game.
The game assumes your CD mount point is "/mnt/cdrom", but if this is not
the case, you will need to specify your mount point using the "HW_CDROM"
environment variable. Just set it to the path used as the CD mount point.
For example, if your CD is mounted on "/mnt/dvdrom", you can specify the
following line at a command prompt prior to running the game:
export HW_CDROM=/mnt/dvdrom
CD checking may be removed in a later release. Not much besides the
Windows-specific code, network, and sound code have been changed from the
original source. Initial development has focused around changing what is
necessary to get the game up and running under Linux, so most of the
original code (including parts of CD checking) is still intact.
---
Q. When I try to run the game, I get the message "Fatal Error: Couldn't
initialize default rendering system. Error creating window" on the command
line.
A. This is caused by the fact that Homeworld cannot load the software
renderer (librgl.so and librglsw.so). If you installed the game from
source, these are likely to be in the default library installation
directory (probably "/usr/local/lib" or "/usr/lib"). If you are using the
pre-built version, here's a few ideas that might help:
- Check to make sure the "lib" directory exists in the same directory as
the Homeworld executable. This directory should contain the files
"librgl.so" and "librglsw.so".
- Make sure you are trying to run the game from the same directory as the
Homeworld executable ("homeworld") and the "lib" directory. Also make
sure the file "homeworld.bin" exists in the same directory ("homeworld"
is simply a wrapper script which is used to make sure the required
libraries can be found by the game at runtime).
Remember that this is still a work in progress. You can always try to
build from source, too. :)
---
Q. When I try to start a network game, I get the message "Could not start
Internet TCP/IP" (or "Could not start LAN IPX or LAN TCP/IP" for a LAN
game), yet my network connection is working just fine.
A. The Windows version of Homeworld relies on a 3rd party library for network
support, including support for Internet play using WONnet. Unfortunately,
Relic could not release the source to this library, and as such it could
not be ported to Linux.
It may be possible to recreate network support from scratch for use with
this version of Homeworld (although not compatible with WONnet or the
Windows version of the game).
---
Q. When I try to start a game, I can't see anything, or I see only text and
messages (and possibly stars).
A. Chances are, you're trying to use the software renderer. The software
renderer is selected by default when you start up the game for the first
time, but it unfortunately does not work completely yet.
Only the OpenGL renderer can be used to play a game at this point of time.
You can select it by performing the following steps:
- Select "Options" from the main game menu.
- Select "Video" from the available options sub-menus listed on the right
side of the screen.
- Select "(GL) Default OpenGL" from the "Rendering System" box.
- Choose a resultion from the "Resolution" box (any resolution you choose
will do fine).
- Click on the "Accept!" button in the bottom-right corner of the screen.
The game will now attempt to switch to the OpenGL renderer. If everything
goes smoothly, you should be presented with a confirmation that the
settings you requested were changed. Select "Yes", and you should be ready
to go!
The settings you choose will also be saved when you quit, so you don't have
to reselect the OpenGL renderer every time.
---
Q. Where are my saved games?
A. As of Homeworld SDL 0.3, saved games and screenshots are stored in
"~/.homeworld". If you have saved games from Homeworld SDL 0.2, you can
still use them by copying the the "SavedGames" directory from the game
directory to "~/.homeworld" (saved games from Homeworld SDL versions prior
to 0.2 are not supported, though).
---
Q. When I try to load a saved game from either the original Windows version of
Homeworld or from a previous version of Homeworld SDL (earlier than 0.2), I
get a message stating "Error, invalid version of save game file."
A. The original version of Homeworld created saved games that are inherently
non-portable. Specifically, it used offsets to functions in the mission
code to save the current state of AI-controlled objects at the time of
saving. These offsets often change when using a different compiler,
compiler version, compiler flags, or platform, thus often preventing saved
games from loading properly. This didn't cause any issues with the
original Homeworld since Relic could make sure they used the same compiler
and compiler flags throughout the life cycle of the game. Unfortunately,
since there are many versions of GCC being used on many different
platforms, we cannot ensure that the same code is being generated for
everyone.
As of Homeworld SDL 0.2, the game saving and loading code has been changed
to save information that is not specific to any particular build of
Homeworld SDL, regardless of the compiler version or options. To avoid any
further issues, Homeworld SDL will also now refuse to load any games saved
using the original Homeworld.
Since Homeworld SDL versions before 0.2 used the same saved game code as
the original Homeworld, games saved using such versions are also no longer
compatible with Homeworld SDL 0.2 or later.
(I know I said before that saved games were compatible with the Windows
version. Of course, that was before I realized Homeworld used function
pointers to save game information. Sorry about that...)
---
Q. I'm having some other issue that's not covered in this document.
A. That's understandable. =] This still a very early release, and as such is
far from being considered "complete". A Bugzilla database is provided at
<http://homeworld.dnsalias.net/bugzilla/>, where you can submit any bugs
you come across. Before you submit a bug, we ask that you make sure it
isn't a bug that has already been submitted. It would also help to include
as much information as possible about your system and what actions were
performed to expose the bug. If the bug can be reproduced, it will make
hunting down and fixing the bug much easier.