Skip to content

snems/OSP2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

359 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OSP2

This Quake 3 mod is an attempt to recover old OSP mod source codes and improve it.

Based on vanilla Q3 and OSP files analysis.

Also used code from :

Features

  • VQ3/Promode physics support
  • CPMA like SuperHUD
  • Proportional fonts
  • Multilevel hitsounds and fragsound
  • Crosshair decoration and animations
  • Client side /mute for players

And many other small features

alt text

Mod state

Only cgame now.

Contacts

Telegram channel.

Telegram chat.

New commands

See docs/osp2-q3-ClientReadme.md

Example config: OSP2.cfg inside mod.

How to install

Caution

OSP 1.03a files are required for this mod to run. Download them from ModDB if you don't have classic OSP installed.

Download zz-osp-pak8.pk3 from Releases and place it into osp folder, located in your Quake 3 Arena directory. Original OSP 1.03a should also be stored in osp folder.

Native libraries

Note

If you don't know what are "native libraries", you don't need them. This section is for advanced users.

Download cgame.dll (for windows) or cgame.so (for linux) and place into osp folder.

Native libraries are not loaded by default. Enable them through vm_cgame 0 and sv_pure 0:

./q3client +set fs_game "osp" +set sv_pure 0 +set vm_cgame 0

The logs should show successful load of native game modules. Example on linux:

Try loading dll file ./osp/cgamex86_64.so
Loading DLL file: ./osp/cgamex86_64.so
Sys_LoadGameDll(./osp/cgamex86_64.so) found vmMain function at 0x7f50e7410269

Note: game and ui may load as qvm. OSP2 currently does not implement them.

How to build

Follow instructions corresponding to your system:

Linux

Install cmake, gcc, make and 7zip. For systems with apt packet manager:

sudo apt install cmake make gcc 7zip

Note

For your linux distro, 7zip may be distributed under p7zip package.

Configure the project

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

Compile

Limit thread count with --parallel <threads> option and compile the mod:

cmake --build build --parallel 8

Install

build/Release/osp now contains:

  • cgame.so - native library build.
  • zz-osp-pak8.pk3 - assets and qvms.

Install it as described in installing instructions.

Windows (MinGW)

Install MinGW, CMake and Ninja. All of them have portable .zip distributions, so each can be installed by just extracting .zip in whatever folder you like. Add their binary folders to system's PATH. It should look somewhat like this:

set PATH=%PATH%;<MinGW>/bin;<CMake>/bin;<Ninja>

Ninja is a portable application, so its binary folder is whatever folder you extracted it in.

Configure the project

cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release

Compile

Limit thread count with --parallel <threads> option and compile the mod:

cmake --build build --parallel 8

Install

build/Release/osp now contains:

  • cgame.dll - native library build.
  • zz-osp-pak8.pk3 - assets and qvms.

Install it as described in installing instructions.

Note

If you see zz-osp-pak8.zip instead of .pk3 one, just change the extension.

Tests

See how to test.

About

Quake3 OSP mod

Resources

License

Stars

33 stars

Watchers

4 watching

Forks

Packages

 
 
 

Contributors