QuakeSpasm
QuakeSpasm 0.85.4 (19 February 2011)
QuakeSpasm is a Quake 1 engine based on the SDL port of FitzQuake.
It includes 64bit CPU support, a new sound driver, several networking fixes and a few graphical niceities.
http://quakespasm.sourceforge.net
Source
Linux (x86)
Windows (x86)
OSX universal binary
Visit the
FitzQuake Homepage for a full run-down of the engine's commands and variables.
- To disable some changes, use "quakespasm -fitz"
- For different sound drivers use "SDL_AUDIODRIVER=DRIVER ./quakespasm"
, where DRIVER may be alsa, dsp, pulse, esd ...
- Shift+Escape draws the Console.
- From the console, use UP to browse the command line history and
TAB to autocomplete command and map names.
- There is currently no CD Music volume support. cd_sdl.c needs replacing with cd_linux.c, cd_bsd.c etc..
- In windows, alternative CD drives are accessible by "quakespasm -cddev F" (for example)
- Quakespasm allows loading new games (mods) on the fly with "game GAMENAME"
Since version 0.85.4, Quakespasm can play back external MP3, OGG and Wave music files.
- Tracks should be named like "track02.ogg", "track03.ogg" ... (there is no track01) and placed into "Quake/id1/music".
- Unix users may need some extra libraries installed: "libmad" for MP3, and "libogg" and "libvorbis" for OGG.
- Use the "-noextmusic" option to disable this feature.
After extracting the source tarball, browse the Makefile and edit the music streaming options, then
make
cp quakespasm /usr/local/games/quake (for example)
Compile time options include
- make DEBUG=1 for debugging
- make SDLNET=1 to enable SDL_net (Otherwise the socket api will be used directly)
- make SDL_CONFIG=/PATH/TO/SDL-CONFIG for unusual SDL installations
Streaming music playback requires "libmad" or "libmpg123" for MP3, and "libogg" and "libvorbis" for OGG files.
HOME directory support can be enabled via Misc/homedir_0.patch
The project can also be built with Codeblocks (project files included).
.
- Implement music (OGG, MP3, WAV) playback
- A better fix for the infamous SV_TouchLinks problem, no more hard lockups with maps such as "whiteroom"
- Add support for mouse buttons 4 and 5
- Fix the "unalias" console command
- Restore the "screen size" menu item
- Fixed an erroneous protocol check in the server code
- Raised the default zone memory size to 384 kb
- Raised the default max_edicts from 1024 to 2048
- Revised lit file loading, the lit file must be from the same game directory as the map itself or from a searchpath with a higher priority
- Fixed rest of the compiler warnings
- Other minor sound and cdaudio updates
- Fix the "-dedicated" option (thanks Oz) and add platform specific networking code (default) rather than SDL_net
- Much needed OSX framework stuff from Kristian
- Add a persistent history feature (thanks Baker)
- Add a slider for scr_sbaralpha, which now defaults to 0.95 (slightly transparent, allowing for a nicer status bar)
- Allow player messages longer than 32 characters
- Sockaddr fix for FreeBSD/OSX/etc networking
- Connect status bar size to the scale slider
- Include an ISNAN (is not-a-number) fix to catch the occassional quake C bug giving traceline problems
- Enumerate options menus
- Add a "prev weapon" menu item (from Sander)
- Small fix to Sound Block/Unblock on win32
- Lots of code fixes (some from uhexen2)
- Sys_Error calls Host_Shutdown
- Added MS Visual Studio support
- Add a "-cd" option to let the CD Player work in dedicated mode, and some other CD tweaks.
- Replace the old "Screen size" slider with a "Scale" slider
- Don't constantly open and close condebug log
- Heap of C clean-ups
- Fix mapname sorting
- Alias the "mods" command to "games"
- Block/Unblock sound upon focus loss/gain
- NAT fix (networking protocol fix)
- SDLNet_ResolveHost bug-fix allowing connection to ports other than 26000
- sv_main.c (localmodels) Bumped array size from 5 to 6 in order for it to operate correctly with the raised limits of fitzquake-0.85
- Accept commandline options like "+connect ip:port"
- Add OSX Makefile (tested?)
- 64 bit CPU support
- Restructured SDL sound driver
- Custom conback
- Tweaked the command line completion and added a map/changelevel autocompletion function
- Alt+Enter toggles fullscreen
- Disable Draw_BeginDisc which causes core dumps when called excessively
- Show helpful info on start-up
- Include real map name (sv.name) and skill in the status bar
- Remove confirm quit dialog
- Don't spam the console with PackFile seek requests
- Default to window mode
- Withdraw console when playing demos
- Don't play demos on program init
- Default Heapsize is 64meg
- Changes to default console alpha, speed
- Changes to cvar persistence gl_flashblend (default 0), r_shadow, r_wateralpha, r_dynamic, r_novis
- Add HoT's first person camera (and menu item)
- Native CD audio support (if desired). cd_sdl.c doesn't have proper volume controls
- Test usb keyboards. Do the keypads work? Make the OSX apple key work.
- Tested HOME directory support
- Finalize OSX automatic updating feature
- Fix Centerview (V_StartPitchDrift)
- There is still an unnecessary screen render on program init under some conditions, when using the "-window/-fullscreen" options.
QuakeSpasm Homepage
QuakeSpasm Project page
FitzQuake Homepage
Sleepwalkr's Original SDL Port
Baker's 0.85 Source Code
Func Quakespasm forum
Func SDL Fitzquake forum
Ozkan's email
Stevenaaus email
Kristian's email