You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
180 lines
6.0 KiB
180 lines
6.0 KiB
6 years ago
|
|
||
|
# GravGunMod
|
||
|
|
||
|
Extended Half-Life mod
|
||
|
|
||
|
### Main features:
|
||
|
|
||
|
* New weapons (GravGun, AR2, BIG_COCK, Gate of Babylon)
|
||
|
* Pseudo-physics for weapons, ammo, items, props
|
||
|
* Co-op mode
|
||
|
* Advanced game-side enitity tools
|
||
|
* Advanced menu, motd and help system
|
||
|
* Server-side visibility limit
|
||
|
* error.mdl support (like in Source Engine)
|
||
|
* Other tools
|
||
|
|
||
|
## Gravity gun and pseudo-physics
|
||
|
|
||
|
Gravity Gun may drag props, weapons, ammos, items, monsters and pushables
|
||
|
`mp_gravgun_players` option allows dragging players
|
||
|
|
||
|
prop is special entity for pseudo-physical objects (alternative to prop_physics from Source)
|
||
|
While it still use hull for collision, it may change rotation angle and size for fake shape.
|
||
|
|
||
|
### Supported keyvalues:
|
||
|
|
||
|
`"shape"` - fake shape number
|
||
|
|
||
|
Supported shapes:
|
||
|
|
||
|
* cylinder horizontal (0)
|
||
|
* cylinder vertical (1)
|
||
|
* generic (3)
|
||
|
* sphere (4)
|
||
|
|
||
|
`"respawntime"` : idle time before respawn (for multiplayer)
|
||
|
|
||
|
`"customanglesx"`, `"customanglesz"` : custom angles for generic shape
|
||
|
|
||
|
`"hmin"`, `"hmax"`, `"vmin"`, `"vmax"` : size vectors for horizontal and vertical mode.
|
||
|
All shapes except vertical cylinder uses horizontal size. Horizontal and vertical cylinders changes dynamically
|
||
|
|
||
|
Breakable options: `"material"`, `"explosion"`, `"gibmodel"`, `"explodemagnitude"`
|
||
|
|
||
|
Use `dumpprops` command to dump all spawned props to `props.ent` file (need `sv_cheats`)
|
||
|
|
||
|
## Cooperative mode
|
||
|
|
||
|
Cooperative mode still does not work correctly in half-life, you need to remove all blockers on `c3a1` map with entpatch
|
||
|
|
||
|
### Sample cooperative config:
|
||
|
|
||
|
```
|
||
|
set mp_coop 1 // enable cooperative mode. This enables frags from some monsters and unlocks other coop features like menu
|
||
|
set mp_spectator 1 // make players spawned in spectator mode
|
||
|
set mp_coop_changelevel 1 // enable changelevel with hacks
|
||
|
set mp_coop_nofriendlyfire 1 // disallow damage players
|
||
|
set mp_skipdefaults 1 // do not give glock/crowbar on player spawn
|
||
|
set mp_allowmonsters 1 // allow monsters in multiplayer
|
||
|
set mp_flashlight 1 // allow flashlight
|
||
|
set mp_unduck 1 // allow duck hack. need to prevent blocking players on changelevel
|
||
|
set mp_semclip 1 // semclip mode. prevent players blocking narrow places
|
||
|
set mp_coop_checkpoints 1 // allow checkpoints. every player may create checkpoint to continue after respawn
|
||
|
set mp_coop_strongcheckpoints 1 // do not allow changelevel back if map has checkpoints. This preventing some STUPID players from breaking the game
|
||
|
set mp_coop_noangry 1 // prevent ally npc from angrying on bad players
|
||
|
```
|
||
|
|
||
|
## Entity tools
|
||
|
|
||
|
Mod has server-side entity tools
|
||
|
|
||
|
This allows making sandbox servers
|
||
|
|
||
|
To enable it, ensure `sv_enttools_enable` is set to `0` and `mp_enttools_enable` set to` 1`
|
||
|
|
||
|
### Availiable options and commands
|
||
|
|
||
|
```
|
||
|
mp_enttools_enable (1/0) - enable entity tools
|
||
|
mp_enttools_maxfire - limit entity count for ent_fire
|
||
|
mp_enttools_lockmapentities - lock map's own entities from ent_fire
|
||
|
mp_enttools_checkowner owner checking
|
||
|
1: allow ent_fire on entity only if player owns it or disconnected from server
|
||
|
2: allow ent_fire on entity only if player owns it
|
||
|
mp_enttools_players - allow ent_fire on players (dangerous)
|
||
|
mp_enttools_addblacklist <pattern> <per minute limit> <behaviour (0 - block, 1 - kick, 2 - ban)> [<clear>]
|
||
|
rate-limiting and blacklist for ent_create
|
||
|
if per-minute-limit set to 0, refuses to create entity
|
||
|
if per-minute-limit reached, does action set in behaviour
|
||
|
if clear is set, clears all entities created by this player
|
||
|
mp_enttools_clearblacklist - clear blacklist.
|
||
|
Add before addblacklist commands to config to prevent duplicates in blacklist
|
||
|
mp_enttools_checkmodels - check model name before setting model
|
||
|
Useful if you do not want to use error.mdl
|
||
|
```
|
||
|
|
||
|
## Menu command system
|
||
|
|
||
|
GravGumMod has advanced command processing
|
||
|
|
||
|
Command may be entered in console, in chat with `'/'` prefix and from menu
|
||
|
|
||
|
Every command may be associated to menu, custom motd message and short help message
|
||
|
menus placed in `ggm/menus` folder in gamedir
|
||
|
|
||
|
Each menu is plain text file without extension and formmated this way:
|
||
|
```
|
||
|
"Menu title"
|
||
|
"Item name1" "command1"
|
||
|
"Item name2" "command2"
|
||
|
```
|
||
|
Up to 5 items allowed
|
||
|
|
||
|
Each custom motd placed in `ggm/motd` as `plain text`
|
||
|
|
||
|
Each help message placed in `ggm/help` as `plain text`
|
||
|
|
||
|
You may send commands to client with `"client"` command
|
||
|
|
||
|
When client connects to server, it executes` "init" `command
|
||
|
|
||
|
### Touch settings:
|
||
|
|
||
|
```
|
||
|
mp_touchname, mp_touchcommand - add button with specified name
|
||
|
and command to touch controls on connect
|
||
|
mp_touchmenu - upload touch menu to client.
|
||
|
Will not be saved after exit. Will replace all text menus
|
||
|
```
|
||
|
|
||
|
|
||
|
## Other options
|
||
|
|
||
|
|
||
|
server visibility distance limit:
|
||
|
```
|
||
|
mp_serverdistclip - general switch
|
||
|
mp_maxbmodeldist - max distance for bmodels
|
||
|
mp_maxtrashdist - max distance for small monsters and gibs
|
||
|
mp_maxwaterdist - max distance for water
|
||
|
mp_maxmonsterdist - max distance for monsters
|
||
|
mp_maxotherdist - max distance for other entities
|
||
|
mp_servercliptents - switch for tempentity clipping
|
||
|
mp_maxtentdist - tempentity distance Cuts shoots, beams, ligths
|
||
|
```
|
||
|
weapon switches:
|
||
|
|
||
|
```
|
||
|
mp_allow_gravgun
|
||
|
mp_allow_ar2
|
||
|
mp_allow_bigcock
|
||
|
mp_allow_gateofbabylon
|
||
|
0 - disable, 1 - enable (precache), 2 - give to player
|
||
|
```
|
||
|
tweaks:
|
||
|
```
|
||
|
mp_ar2_mp5 - make ar2 use mp5 ammo
|
||
|
mp_ar2_bullets - default ar2 bullets count
|
||
|
mp_ar2_balls - default ar2 balls count
|
||
|
mp_wresptime - weapon respawn time
|
||
|
mp_iresptime - item respawn time
|
||
|
mp_hgibcount - human gibs count
|
||
|
mp_agibcount - alien gibs count
|
||
|
mp_gibtime - set gib stay time
|
||
|
mp_fixhornetbug - enable workaround for hornetgun bug
|
||
|
mp_fixsavetime - cut down time when loading
|
||
|
save (useful for very LOOOOONG game and sandbox
|
||
|
servers with save)
|
||
|
mp_checkentities - check for entity overflow. preventing crash on edicts overflow.
|
||
|
This enables garbage collector
|
||
|
mp_maxdecals - set r_decals from server
|
||
|
mp_errormdl, mp_errormdlpath - replace bad models with error.mdl
|
||
|
mp_lightstyle <number> <pattern> - override lightstyle from server.
|
||
|
For example, mp_lightstyle 0 k makes static light darker.
|
||
|
ent_rungc <mode> [<pattern>] - execute garbage collector manually
|
||
|
0 - default garbage collector
|
||
|
1 - remove all entities created by enttools (freshen map)
|
||
|
2 - remove all entities by given pattern
|
||
|
```
|