Spearmint 0.4
·
933 commits
to master
since this release
Spearmint 0.4 provides a few bug fixes and improves dynamic memory handling for Game and CGame VMs.
Spearmint 0.4 is not backward compatible with Spearmint 0.3 VMs. The network protocol number was changed from 5 to 10 in order to separate Spearmint 0.4 game servers from previous Spearmint/Turtle Arena versions.
VM Heap Memory system
- Improved and unified DLL and QVM memory allocation code.
- Allocate space on hunk but use zone memory functions to allocate and free blocks.
- Replace
vm_qvmMinHunkMegs
withvm_cgameHeapMegs
andvm_gameHeapMegs
which affect both DLLs and QVMs and are separate for CGame and Game VM. - Remove name string from VM memory allocate function that was used for sharing memory between Game and CGame DLLs.
- Add system call to get available memory.
- Add system call to free memory!
void *trap_HeapMalloc( int size )
int trap_HeapAvailable( void )
void trap_HeapFree( void *data )
Engine
- Fix cvar default override in mint-game.settings causing error if same name as VM cmd
- Explicitly set cull type for skybox
- Don't colorize missing lightmaps by default
- Add setu2, setu3, setu4 commands
- Don't list mods that only have Spearmint patch pk3s
VM common
- Make using Yacc optional, disabled by default
CGame VM
- Improve keyboard/joystick input in Team Arena UI
- Fix 4-player splitscreen HUD in 5:4 window
- Make TrueType fonts match Q3 bitmap sizes
- Improve TrueType text input cursor fallback
- Resize cinematic when window is resized
- Prevent third person from near clipping wall in 16:9
- Fix team order menu not being centered
Game VM
- Restore bot activating blocking entity even if predicting obstacles
- Fix bot team order to kill last player it killed
spearmint-0.4-data.tar.xz only includes the docs and pk3s; for when you're going to compile the engine yourself.