klaussilveira / qengine Goto Github PK
View Code? Open in Web Editor NEWRetro game engine for creating games like it's 1997
License: GNU General Public License v2.0
Retro game engine for creating games like it's 1997
License: GNU General Public License v2.0
First and foremost, thank you :) an awesome idea, and something I'd really like to take some time to play with.
Everything compiles fine on macOS (10.14.2), however, when I run the client, I get a Segmentation Fault (11), and the server prints this:
`Using '/Users/charlesdowns/Desktop/qengine//assets' for writing.
couldn't exec default.cfg
couldn't exec config.cfg
couldn't exec autoexec.cfg
`
And then no other messages - does this mean it's initialised properly?
Thank you :)
Trying to build qengine on FreeBSD:
$ mkdir build
$ cd build/
$ cmake -DBUILD_SDL=OFF -DBUILD_DOCS=OFF ..
This fails, as the following include has to be added to src/platform/unix/memory.c
first:
@@ -36,6 +36,7 @@
#if defined(__FreeBSD__) || defined(__OpenBSD__)
#include <machine/param.h>
+#include <sys/types.h>
#define MAP_ANONYMOUS MAP_ANON
#endif
Then, linking fails:
[ 31%] Building C object CMakeFiles/client.dir/src/game/player/weapon.c.o
[ 32%] Linking C executable client
ld: error: undefined symbol: input_update
>>> referenced by system.c
>>> CMakeFiles/client.dir/src/platform/unix/system.c.o:(Sys_SendKeyEvents)
[โฆ]
Perhaps, input.h
is not found for whatever reason?
I would receive this error upon cmake ..
CMake Error at /usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find Doxygen (missing: dot) (found version "1.8.14")
Call Stack (most recent call first):
/usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.13/Modules/FindDoxygen.cmake:615 (find_package_handle_standard_args)
CMakeLists.txt:289 (find_package)
I've resolved it by installing graphviz
and was able to compile.
Thought this info might help others.
Running Manjaro Linux
make
succeeds, but make install
fails as it is looking for libSDL2.so in the wrong place:-
build$ make install
CMake Error at vendor/SDL2-2.0.8/cmake_install.cmake:196 (file):
file INSTALL cannot find
"[path to current build dir]/vendor/SDL2-2.0.8/libSDL2.so".
Call Stack (most recent call first):
cmake_install.cmake:42 (include)
make: *** [install] Error 1
build$ find -name 'libSDL2.so'
./libSDL2.so
just passing on some info ๐
I was able to build by replacing cmake ..
in the build instructions with this:
cmake -DBUILD_DOCS=off -DCMAKE_C_FLAGS=-I/usr/include/malloc ..
assets
to build/assets
baseq2/*
files into assets
assets/autoexec.cfg
, I replaced references to base1
with demo1
It ran, but some weirdness:
As before I dumped baseq2/*
files in assets
(but from retail copy I have from steam), restored the original autoexec.cfg to reference base1
, and I ran ./client
, and it crashed:
$ ./client
qengine v0.1.0
==============
Byte ordering: little endian
Added packfile './assets/pak0.pak' (3307 files).
Added packfile './assets/pak1.pak' (279 files).
Added packfile './assets/pak2.pak' (2 files).
Added packfile '/Users/swilliam/code/qengine/build/.//assets/pak0.pak' (3307 files).
Added packfile '/Users/swilliam/code/qengine/build/.//assets/pak1.pak' (279 files).
Added packfile '/Users/swilliam/code/qengine/build/.//assets/pak2.pak' (2 files).
Using '/Users/swilliam/code/qengine/build/.//assets' for writing.
execing default.cfg
You can't bind the special key "ESCAPE"!
You can't bind the special key "~"!
You can't bind the special key "`"!
execing config.cfg
You can't bind the special key "ESCAPE"!
You can't bind the special key "`"!
You can't bind the special key "~"!
execing autoexec.cfg
Console initialized.
Sound init
Starting SDL audio callback.
SDL audio driver is "coreaudio".
SDL audio initialized.
Sound sampling rate: 22050
SDL version is: 2.0.8
SDL video driver is "cocoa".
setting mode 0: 320 240
808k surface cache
Byte ordering: little endian
Successfully loaded renderer
Game init
Game is starting up.
Game is base built on Jan 11 2019.
Server init
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_strogg_ship doesn't have a spawn function
misc_strogg_ship doesn't have a spawn function
misc_strogg_ship doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
item_adrenaline doesn't have a spawn function
target_help doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
target_help doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
item_silencer doesn't have a spawn function
misc_gib_head doesn't have a spawn function
misc_deadsoldier doesn't have a spawn function
misc_banner doesn't have a spawn function
misc_banner doesn't have a spawn function
28 entities inhibited.
1 teams with 2 entities.
[0.0.0.0]:0: client_connect
-===================================-
Outer Base
modeSegmentation fault: 11
Hello,
I built the project on MacOS 12.5 Monterey and when I try to run it I get the log below. Any ideas on what I could do to make the project run?
./client
qengine v0.1.0
==============
Byte ordering: little endian
Added packfile './assets/pak0.pak' (3307 files).
Added packfile './assets/pak1.pak' (279 files).
Added packfile './assets/pak2.pak' (2 files).
Added packfile '/Users/asdf/dev/qengine/build//assets/pak0.pak' (3307 files).
Added packfile '/Users/asdf/dev/qengine/build//assets/pak1.pak' (279 files).
Added packfile '/Users/asdf/dev/qengine/build//assets/pak2.pak' (2 files).
Using '/Users/asdf/dev/qengine/build//assets' for writing.
execing default.cfg
You can't bind the special key "ESCAPE"!
You can't bind the special key "~"!
You can't bind the special key "`"!
couldn't exec config.cfg
couldn't exec autoexec.cfg
Console initialized.
Sound init
Starting SDL audio callback.
SDL audio driver is "coreaudio".
SDL audio initialized.
Sound sampling rate: 44100
SDL version is: 2.0.22
SDL video driver is "cocoa".
setting mode 0: 320 240
808k surface cache
Byte ordering: little endian
Successfully loaded renderer
Unknown command "start"
... <long delay> ...
Loading plaque timed out.
Version: 0.1.0
Compiler: Apple LLVM 13.1.6 (clang-1316.0.21.2.5)
Signal: 11
zsh: segmentation fault ./client
This engine should not rely on the original assets of Quake 2 in order to run. The following commit already provides the minimum to get the engine running: 25c6b2e
Unfortunately, that's really bad programmer art. It's a start though, because it provides basic asset documentation through the uigen
tool. fontgen
is also pretty useful. There's a long way to go and contributions are welcome:
m_main_*
m_cursor
So, after running CMAKE and creating the VS 2017 projects, the solution isn't compiling. It gives a invalid numeric argument /Wextra
for a lot of projects.
How to fix that?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.