Coder Social home page Coder Social logo

3zb2's Issues

Can't build on Windows

Hi!

Trying to build on Windows

Running make shows this short log:

c:\games\Yamagi\bots_src\3zb2>make
===> Building game.dll
process_begin: CreateProcess(NULL, mkdir -p release, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [Makefile:169: 3zb2] Error 2

My system: Windows 11. Build was started under cmd.exe shell.

gcc and make versions:

make --version
GNU Make 4.4.1
Built for Windows32
Copyright (C) 1988-2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later https://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

gcc --version
gcc (GCC) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Build issues using mingw on windows

I managed to compile dll but it doesnt work for some reason. Lots of warnings about unknown pragma. i cannot execute sv spb $.

Could you release windows binaries please?

-arch i386 should be removed for Darwin

Looks like we need to remove support for i386 architecture for newer OSX versions (ifeq ($(YQ2_OSTYPE), Darwin) case). There should be no "-arch i386" or "make" will fail with:

ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [release/game.dylib] Error 1
make: *** [3zb2] Error 2

Build warnings on Debian

Building 3zb2 on Debian 12 there are lots of warnings.
Most of them are easy to remedy:

[  3%] Building C object CMakeFiles/game.dir/src/bot/fire.c.o
/home/arjen/dev/Q2RTX/workingdir/_yquake2/3zb2/src/bot/fire.c: In function ‘B_UseHyperBlaster’:
/home/arjen/dev/Q2RTX/workingdir/_yquake2/3zb2/src/bot/fire.c:539:11: warning: variable ‘zc’ set but not used [-Wunused-but-set-variable]
  539 |  zgcl_t  *zc;
      |           ^~

But this one I don't know how to resolve:

In file included from /home/arjen/dev/Q2RTX/workingdir/_yquake2/3zb2/src/g_ctf.c:1:
/home/arjen/dev/Q2RTX/workingdir/_yquake2/3zb2/src/g_ctf.c: In function ‘SelectCTFSpawnPoint’:
/home/arjen/dev/Q2RTX/workingdir/_yquake2/3zb2/src/header/local.h:537:17: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  537 | #define FOFS(x) (int)&(((edict_t *)0)->x)
      |                 ^
/home/arjen/dev/Q2RTX/workingdir/_yquake2/3zb2/src/g_ctf.c:410:31: note: in expansion of macro ‘FOFS’
  410 |  while ((spot = G_Find (spot, FOFS(classname), cname)) != NULL)
      |                               ^~~~

I've been searching on stackoverflow.com but couldn't find something that could help in this case.

Anybody has an idea?

Help Needed on Linux

I think I'm close but I'm missing something. I have compiled Yamagi on Linux and I've copied the assets from this repo to 3zb2 folder, I put game.so into that folder also, and I'm running the game w/ this alias:

alias quake2="cd ~/Games/Linux/Quake\ II &&  ./quake2 -datadir ~/Games/Linux/Quake\ II +set game 3zb2 +set deathmatch 1 +disconnect"

The game loads fine, but here are my issues:

  • The game doesn't autoexec game.cfg, so I have to do it manually.
  • The game doesn't autoexec addbot.cfg, so I have to do it manually.
  • When I type addbot it says Add bot 1 but nothing ever happens.
  • When I type sv spb 2 it says server command spb not found.

Any help would be appreciated.

How to run with Yamagi Quake2 on Linux?

The README states:

For more informations refer to the user guide, included with the assets.

The user guide contains no information about running this modification though.

locating 3ZBConfig.cfg w/ +basedir

I'm trying to run a server on Ubuntu using their quake2-server package (which uses yamagi quake2). I've got 3zb2 installed and the game finds the game.so in /usr/lib/yamagi-quake2/3zb2 and is able to find the pak6.pak in /usr/share/games/quake2/3zb2... but doesn't appear to be able to locate the 3ZBConfig.cfg, routes, etc. even though they are in that same directory. Looking at the source a little, I think this is because the code is simply using fopen with relative paths like 3zb2/3ZBConfig.cfg which aren't guaranteed to be relative to the basedir. I think when the basedir is set, it should probably be using that as the base path to use when opening those files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.