-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathREADME.in
executable file
·432 lines (337 loc) · 17.7 KB
/
README.in
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
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
**************************************************************
Commander Genius
(c)2008-2015 Gerstrong
(c)2009-2014 Tulip
(c)2013-2014 Hagel
(c)2014 Mancus
Ports:
(c)2010-2014 Pelya (Android-Distro)
Released under GNU/GPL
Release v${CG_VERSION}
Build: ${BUILD_TARGET}
**************************************************************
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. We also
include the inofficial mod Keen 7, so more is to do :-)
So far Commander Keen 1-6 are fully supported.
Keen Dreams is the only game where we don't
have support, except with the Dos-Fusion Engine.
Being considered not as popular, we might support it later or not.
There is an alternative called Reflection Keen which supports Keen Dreams.
Maybe in future we fuse that, not sure.
Commander Genius runs on Linux/X11, Windows,
MacOS X(Deprecated), Android, 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,
and extend it further so you get a native implementation with
even more features like:
- Mod Support
- OpenGL Acceleration
- SDL 2.0 Support
- New graphical Effects
- Multiplayer Support (Up to four players helping on the quest)
- High Quality Packs which make the game look better and
provide better sounds and even music you might never have heard
in some of these games before
- Ingame Menu for vorticons Keen as well as a new HUD
- Named save slots
- Unrestricted Joystick Support
- and a lot 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 Keen 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 (Keen 1-3) 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 back in the 90s.
Commander Genius tries to take advantage of that modern
hardware and bring an awesome bit of old school
experience to the Commander Keen games.
Imagine Commander Genius like a platform base for the keen games how it would be on modern
hardware. That means there are some differences. The physics are close to the original but
you might notice some details of you are an elite-expert on Keen games in original.
I think CG delivers a faster gameplay than the original ones.
Since the framerate for graphics is higher it feels
a bit more like that. Some people might not like that, so I recommend them to stick with dosbox
or use dosfusion which we also provide. More explained later in this readme.
It is bit hard to define what that experience is obviously, because many people
experienced that gameplay differently in the past. Some people had soundblaster, others didn't.
Some loved the joystick support, others prefered to use keyboard.
So getting an experience like old school for everybody is difficult.
What does Commander Genius do then? Interpreting those games on modern systems.
It can draw more colors on your screen and fix some 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 in Commander Genius.
Also the mouse can be used at any.
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.
Also for some mods it might be the only. #
Nevertheless Commander Genius has a patching system in which some mods run pretty well.
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 your smartphone.
That's the 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!
The Dosfusion is a compilation of dosbox code into Commander Genius. It uses
SDL 2.0 a bit more recent compared to the original one, so you can get more out of it.
You have some other grapical filters, the ones CG was built for and a mapper like in dosbox,
sharing the experience you love to know. Many thanks to Qbix and his team
for his awesome program and especially some help.
- 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 required.
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!
Also give credits to the others who provided
us with some code. They deserve it as well.
- Setup -
==========
You have two options:
1.- Get one of the bundled versions, run it's setup and you can play episodes 1, 4 and 7.
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 happen to use ubuntu you might want to use our PPA so you always get updates. Mageia and Arch Linux also have some packages
by third-party maintainers.
If you want to accostumise more out of it or add more episodes, well then continue reading.
2.- We suppose you already have installed the copy of your game, so what's next?
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 installed in that directory.
If you connect your Android Device to the PC normally you find a directory a path called like
"/Android/data/net.sourceforge.clonekeenplus/files/games".
Copy the games there were the shareware versions are and you should be fine.
You should note that following versions of Keen work at best:
Keen 1 - Version 1.33
Keen 2 - Version 1.33
Keen 3 - Version 1.33
Keen 4 - Version 1.4
Keen 5 - Version 1.4
Keen 6 - Version 1.4
Other version might work, but we cannot guarantee. If you happen to own another version, I would
recommend it patching it first. There are free patches for that around the net
Also Keen 6 works on CG. Don't use the 1.5 version, this one is not supported, sorry,
get the 1.4 version.
* If you want to use some patched mods just copy them as separate games to that path.
* Go into the root directory and start CG. 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
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:
For SDL 1.2:
- build-essential
- libvorbis-dev
- libogg-dev
- libsdl1.2-dev
- libsdl-image1.2-dev
- libgl1-mesa-dev
- libboost
For SDL2:
- build-essential
- libvorbis-dev
- libogg-dev
- libsdl2-dev
- libsdl-image2-dev
- libgl1-mesa-dev
- libboost
* extract my source code into "CGenius".
* cd into the source directory "CGenius"
* Run "cmake -DBUILD_TYPE=LINUX32 -DUSE_SDL2=yes" or "cmake -DBUILD_TYPE=LINUX64 -DUSE_SDL2=yes" depending on what
system you have.
* Run "make".
* Then, you can run "CGeniusExe". 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 -DUSE_SDL2=yes" or "cmake -DBUILD_TYPE=LINUX64 -DUSE_SDL2=yes"
* Run "make".
* Then, you can run "CGeniusExe". 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:
dir=<game-directory> This will launch the game of the given directory, in case it can be started,
otherwise it will go to the game launcher with a warning shown.
vg.: "CGenius.exe dir=games/keen4"
finale=<on/off> If you want to directly show the finale of a game pass this parameter:
vg.: "CGenius.exe finale=on"
Example: If you want to start the game of the path "C:\games\keen5" type:
CGenius dir=keen5
Remember, the path must be known by the game launcher. Absolute paths of games, can be defined in the cgenius.cfg in the [FileHandling] Section.
We might improve that in future.
Also there is yet no way to launch Dosfusion using the command line, but plans are to add it.
- 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 bother
if you use a wrong configuration, because you just manually edited it.
- 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 or just
change the keys.
- 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-6):
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 Clipping 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 as well.
On Galaxy it works like known.
- 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 awesomeness for now and dosbox fusion,
which at some stage maybe very soon might make it run.
Since Keen Dreams source code has been released, there are ports like chocolate Keen dreams by NY00123,
which run Keen Dreams. Are you a developer and want to integrate it? Let us know :-)
Remember, the also is Reflection Keen
- 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. ;-)
Of course you can send an email, but Github at this stage is more useful for us.
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:
-------------
Albert Zeyer
Tulip
Pizza2004
Pickle
Sciz CT
Lemm
Markus Arnold (ThinkLabs. Thanks for your generous contribution)
DSL (Nice icon contribution)
Motorfingers
Qbix and his Dosbox team (For creating Dosbox, which made dosfusion possible)
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)
Retired Devs:
-------------
Albert Zeyer
Pizza2004
Pickle
NY00123
Also many special thanks to Martin Hauber (Tulip), Hagel and Mancus Nemo 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 supported us. I hope to read from him some time again...
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 many different versions and improving upon.
Too bad he invests his time on his own projects right now, but still awesome stuff he creates.
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: [email protected] or go through
SourceForge at http://clonekeenplus.sourceforge.net/
****************************************************************************