forked from gerstrong/Commander-Genius
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
349 lines (266 loc) · 14 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
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
**********************************************
Commander Genius
(CloneKeenPlus)
(c)2008-2013 Gerstrong
(c)2009-2013 Albert
(c)2009-2013 Tulip
(c)2009-2013 NY00123
Ports:
(c)2009-2013 Pizza2004 (MacOs X)
(c)2010-2013 Pelya (Android)
Released under GNU/GPL
Release v1.5.0-Release
Build: LINUX
**********************************************
Welcome to Commander Genius!
Commander Genius is an open-source clone of
Commander Keen which allows you to play
the games, and a majority of the mods
made for it. All of the original data files
are required to do so, however, we convienently
include Episode 1 and 4 for your enjoyment.
So far Commander Keen 1-6 are fully supported.
Keen Dreams is the only game where we don't
have support. Being considered not as popular,
we might support it later.
Commander Genius runs on Linux/X11, Windows,
MacOS X, Wiz, and GP2X, with plans
to release on other platforms in the future.
If you think you would like to port it,
please send us a message and we will do our
best to help you.
The main goal of Commander Genius is to copy
the original gameplay feeling as much as possible,
although there're also a number of improvements like:
- Mod Support
- OpenGL Acceleration
- Better graphical Effects
- Multiplayer Support
- High Quality Packs which make the game look better and
provide better sounds and even music you might never have heard
in this game before
- Ingame Menu
- Named save slots
- Unrestricted Joystick Support
- and many more!
- Mission -
===========
The mission of Commmander Genius held by
opensource developers is to revive
the gameplay experience of the games we had
in the 90s when those games were popular.
With experience we mean, we try to leave the graphics retro but take
advantage of newer hardware meaning there are some enhancements over
the original games. There is also Chocolate Keen by NY00123 which tries
to be as original as possible including even the frame rates as they were.
Now modern hardware offers much more, than what we had since. Commander Genius
tries to take advantage of that modern hardware and yet bring an awesome
bit of old school experience to the Commander Keen games.
It is bit hard to define what that experience is obviously, because many people
experienced that gameplay differently. Some people had soundblaster, others didn't.
Some had a joystick, others prefered keyboard.
So getting an experience like old school is difficult for everyone.
So what does Commander Genius do? Interpreting those games on modern systems.
It can draw more colors on your screen and fix issues the original
games had back then. For example Vorticon Keen has two-button firing as option.
All buttons can be mapped to any input device.
Well, the mouse is still there for menus.
The original Keen games also have some bugs and given that the hardware
was very limited back then, it has some weird frameskips. There are many details
that are different when using Commander Genius. So the conclusion is as follows.
If you really want a vanilla feeling, even feel the lack of hardware support and
eventual slowdowns, we encourage you playing Commander Keen on Dosbox.
Many people are out there that think to be the right way to play it.
Commander Genius wants to be more like a new Jump'n'Run game that interprets
Commander Keen. Billy Blaze visits all the levels you played before in the
DOS-Version taking advantage of your powerful computer or smartphone.
That's strength of Commander Genius! if you are one of those people who want
to experience Commander Keen some new ways, then this is the software for you!
- History -
===========
The first engine was CloneKeen by a developer named Caitlin Shaw.
Since the engine was left abandonned for most of the part, Gerstrong
took it and created the fork called CloneKeenPlus and fixed some problems
CloneKeen had. This fork comes from the 0.83 Version. A 0.84 version
has been released since. That code was never taken into here, because
it was never needed.
After CloneKeenPlus, Commander Genius was born.
It is a complete rewrite of the engine in C++. The transition to
Commander Genius means a transition from C to C++ code mostly using OOP.
After all this coding, we have retained only a small portion of the
original CloneKeen code (about 0.02%).
- License -
===========
The Commander Genius source code may be freely
distributed and modified as per the GPL, just
remember to give credit to the original
authors. We work very hard on on this project
and we deserve at least those credits!
- Setup -
==========
You have two options:
1.- Get one of the bundled versions, run it's setup and you can play episodes 1 and 4.
Those games are in a directory where you can put other Keen games and mods. That subdirectory
is called "games". Anyway you can start playing right off those two games. Enjoy!
If you want to accostumize more out of it, well then continue reading
2.- We suppose you already have installed the copy of your game, so what's next, well?
Setting up the data of the game:
* Copy the directory of the games to the "games" subdirectory of CG.
If you own the registered versions, you can play all episodes,
otherwise download the shareware version and copy them there.
You also can use mods. If you have a bundled version,
you already should be able to play episodes 1 and 4, as they are in that directory.
* If you want to use some patched mods just copy them as separate games.
* Go into the root directory and start the interpreter. If you have downloaded
the binary version of Commander Genius (for Windows, Linux32/64), then you
will find the executable in the root directory of the extracted game.
Under Linux it is called "CGenius", under Windows "CGenius.exe".
* If you want improved sounds and music, just download the High Quality Pack (HQP).
Read that readme of HQP for more information in how to use those resources.
Using HQP you might have to copy some resources to the specific game directory so
CG would detect it. For example you might want to copy ck1tiles.bmp to ./games/keen1/
How to launch Commander Genius (If you didn't compile it):
* Go to the program's directory.
* Under Windows you start "CGenius.exe", under Linux "./CGenius"
Getting the most recent Source Code:
* Well, as many projects it is hosted on GitHub.
* From the Linux Console type:
"git clone git://github.com/gerstrong/Commander-Genius.git" (without the double quotation marks)
How to compile it under Ubuntu:
* This is based on the source code that we provide on our website
* As we know which packages are needed, because we use Ubuntu, here is an extra guide.
* Install through Synaptic or "sudo apt-get install" following packages:
- build-essential
- libvorbis-dev
- libsdl1.2-dev
- libsdl-image1.2-dev
- libgl1-mesa-dev
- libboost
* extract my source code into "CGenius".
* cd into the source directory "CGenius"
* Run "cmake -DBUILD_TYPE=LINUX32" or "cmake -DBUILD_TYPE=LINUX64" depending on what
system you have.
* Run "make".
* Then, you can run "CGenius". Copy the files, wherever you want them together
with the data directory. "make install" does not work though.
Compiling CG on any Linux/UNIX (other than Ubuntu):
* If you want to compile the game, you need to have all the standard
development libraries and GNU C Compiler (at least version 4) installed
on your system.
* You need to install the "vorbis", "SDL" and "Mesa/OpenGL" development libraries to get
it successfully compiled.
* extract my source code to "cgenius".
* cd into the "cgenius" subdirectory.
* Run "cmake -DBUILD_TYPE=LINUX32" or "cmake -DBUILD_TYPE=LINUX64"
* Run "make".
* Then, you can run "CGenius". Copy the files,
wherever you want them together with the data directory.
"make install" does not work though.
We also provide CMake for Wiz. If you want to compile it for embedded systems.
We had support for Linux and Win32, but since there is a bug when build, for
different Linux build (32-bit or 64-bit) we only use it for embedded systems.
Also check out the CMakeLists.txt for more information.
- STARTING CG -
===============
Normally when you start Commander Genius you see the launcher menu in which you can choose the Keen games that were detected in the subdirectory. The CGLog.txt also tells you what CG detected on the system and gives feedback on further events that might occur. It is good to take a look at that file if something in CG goes wrong.
Optionally you can pass launch arguments to Commander Genius. These are:
-game Takes the number of game detected, like shown in the launcher menu and starts it up that game directly
-level If you just want to check a specific level in the given game use that parameter.
-diff This will make you choose the difficulty in the game. This only works in conjunction with the level parameter
(1=Easy 2=NORMAL 3=HARD)
Example: If you want to start the second level of the first game detected by CG, type:
CGenius -game1 -level2
As easy as that!
- VIDEO SYSTEM -
================
Being cross-platform, there are many methods to detect different resolutions on a system.
Generally it is not necessary, because many resolutions are already supported, but if
you want to support other resolutions that you don't find in the options list just modify the
"cgenius.cfg" file by hand. CG always reads this file and checks whether your card and
monitor support it and if possible use it. But, use it at your own risk.
CAUTION: This is recommended for advanced users who know what they do. The team won't take
any responsibility if you use a wrong configuration. If you want to see other resolutions to
in future versions of CG, mail us ;-).
- GAME PLAY -
=============
Before you play the game, you should take a look at the controls. Normally LAlt, Ctrl, Space and Enter
are the action keys. You can also assign joystick buttons, axes and hats to those actions.
- CHEAT CODES -
===============
There are a full assortment of cheat codes available. Some cheats must first
be enabled with -cheat or through the options->game menu. C+T+SPACE and G+O+D will
always work.
Vorticon Keen (1-3):
KEY ACTION DESCRIPTION
G+O+D godmode In god mode you are invincible!
C+T+SPACE All Items Gives all items, similar to the original.
Galaxy Keen (4):
KEY ACTION DESCRIPTION
F10+G godmode In god mode you are invincible!
F10+I All Items Gives all items, similar to the original.
F10+J Fly This will make Keen fly at any time
F10+N No Clip With this cheat you will go through walls. Be careful, you might also fall
through the floor sometimes
- SAVE/LOAD GAME -
==================
The game can be saved from the menu at any time.
Keen will be saved at the exact position it was left.
In the vorticons engine it will save the game within the level also
- FAQ -
=======
Q: Commander Genius is slow? Please help!
A: You can decrease the fps under settings->video. OpenGL may also help on some systems with ScaleX disabled.
Try to lower the resolution, a lower filter, or decrease some stuff in the sounds section.
Stereo sound requires additional calculations than mono sound. There are many things you can do, to speed up
the program. Also HQP requires more resources.
Q: When can I play Keen Dreams?
A: Dreams isn't supported by CG at all, although there is the galaxy code base
which can be used to make it playable. Shouldn't be hard though.
Nevertheless the fans around that project decided to focus more on multiplayer awesomness for now
- BUG! -
========
So you really found one or more bugs? Please report us those at
GitHub issues and they might get fixed.
Depending on the priority, we are going to fix them as soon as possible.
Sending us the "CGLog.html" or "stdout.txt" file might help tracking the error.
Also remember to test the lastest version from the testing repo we sometimes provide.
Your error might have been already fixed there. If there is no testing version after the release,
just report it. ;-)
http://github.com/gerstrong/Commander-Genius/issues
- ACKNOWLEDGEMENTS -
====================
Many thanks to people who has helped me so far in this project with their
suggestions:
Contributors:
-------------
Pickle
Sciz CT
Lemm
DSL (Nice icon contribution)
Motorfingers
Chrisfischtopher
Commander Spleen
Dreams
Napalm (More Keen Data Structure Information)
Malvineous
Hans de Goede (The Fedora Guy)
Levellass (Keen EXE-Information)
ZidaneA (For his music tracks!)
Iv4n (wiivn)
Also many special thanks to Martin Hauber (Tulip) who has been supporting me all the time in testing
the Windows version of CKP and giving me access to a lot of information about the games.
Without you it wouldn't be that great!
And also special thanks to Chad Ian Anderson (Pizza2004) in helping us so much in many points of the game.
Every time I had chance to test his port in Mac it was awesome. I like his work!
Even in difficult times he always supports us.
Furthermore special thanks to Scott (Pickle) and Albert Zeyer
for his changes. They helped out a lot on the quality of the code and performance incrate.
Also special thanks to NY00123 for helping to test the most recent 0.4 version.
I'm sure, there were more people who helped us and we forgot to mention, but
many thanks to them also.
And many thanks to all of you, the project has become that awesome!
****************************************************************************
For questions, comments, or updates to the source tree
please contact: gerstrong@gmail.com or go through
SourceForge at http://clonekeenplus.sourceforge.net/
****************************************************************************