Conquest is a top-down, real time space warfare game. It was originally written in RATFOR for the VAX/VMS system in 1983 by Jef Poskanzer and Craig Leres.
I spent incredible amounts of time playing this game with my friends in the terminal labs at college, and when I actually had a multi-user system running at home (Unixware) I decided to try and translate/port the code to C in Unix. This was in the early to mid 1990's.
Of course, over the years many things have changed. Today, Conquest is a true client/server game. The client uses freeglut, SDL 1.2 (for sound) and OpenGL.
Homepage
Download
Recent Releases
9.120 Jun 2019 09:45
minor feature:
In previous versions of Conquest, a hardcoded semaphore key was
Used to allocate semaphores. Semaphores are used to coordinate
Accesses to the common block by the various processes used to run
a game.
This becomes a problem when you run multiple servers on the same
Machine -- it would still work, but then servers might engage in
Lock contention among other unrelated servers. Now we generate a
Random key and store it in the system conquest.conf file when it
is initialized.
This way each game gets it's own semaphore, and games can no
Longer interfere with each other's access to their respective
Common blocks.
.
Use and require SDL2 rather than 1.2. To build conquest, you will.
Need to install libsdl2-dev and libsdl2-mixer-dev if you want
Sound.
.
a couple of problems with paging when viewing the planet.
List. Now you should get the correct propmpts with the correct
Behavior when reaching the end of the planet list.
.
With the conqinit utility. It's documentation and.
Operation had not kept up with many of the changes made in 9.0.
.
With hud alert statuses where a potential negative array.
Index could be used.
.
Change the conquest state directory from /var/conquest/ to.
/var/lib/conquest/, in r keeping with the FHS. For.
Those running a server, you should move your existing state
Directory to the new location before installing it.
first, shut down all conquest servers, then, assuming you.
are using the default /opt pre:
Sudo mkdir -p -m 755 /opt/var/lib
Sudo chown root:root /opt/var/lib
Sudo mv /opt/var/conquest /opt/var/lib/conquest
Then build and install this, or later versions of Conquest as.
Usual.
.
Move the FMT:: format library into a separate subdir (src/fmt/).
.
Make some to Makefile.am so that Conquest can be built out.
of tree. Also, remove yacc/lex generated files on a 'make
Clean'.
.
More work on the meta server, stringification, c++ containers, and.
Other designed to improve stability and security.
Also, a problem where sporadi
9.0.1d20 Apr 2019 10:25
minor feature:
This is a minor release - most of the changes are internal and
Won't be visible to end users.
.
Reformat logging output to be more syslog-like.
.
Continue refactoring some of the internal code to make use of C++.
Containers and remove dynamically reallocated arrays, add more
Std::string-ification.
.
For new users without a.conquest/conquest.conf file, add two.
New default mouse macros:
Scroll up = zoom in (magfactor): " "
Scroll down = zoom out (magfactor): " "
.
Tighten up the conquest meta server - detect and log more errors.
Add some more validity checks, be more robust.
9.0.125 Nov 2018 23:14
minor feature:
9.019 Jun 2018 19:44
major feature:
See docs/HISTORY.txt for a list of the major changes in this release, Or read the github commit history. They are too numerous to list here.