exec vehicles.cfg
exec crosshairs.cfg
exec gamemodes.cfg
+ exec mutators.cfg
exec notifications.cfg
+exec monsters.cfg
// load console command aliases and settings
exec commands.cfg
sizeincrease -80
color 0xFFFFFF 0xFFFFFF
- // waypoint_link_red - red waypoint linking effect
- effect waypoint_link_red
- countabsolute 1
- type beam
- tex 200 200
-
+ // nade effects
+ effect nade_blue
+ trailspacing 1
+ type smoke
+ color 0x006cff 0x0600ff
+ tex 65 65
+ size 3 3
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_blue
+ notunderwater
+ trailspacing 8
+ type smoke
+ color 0x0600ff 0x9794ff
+ tex 65 65
+ size 15 25
+ sizeincrease -10
+ alpha 30 30 150
+ // bubbles
+ effect nade_blue
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0x006cff 0x0600ff
size 1 1
- alpha 256 256 64
- color 0xFF0F0F 0xFF0F0F
- sizeincrease 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
- // waypoint_link_blue - blue waypoint linking effect
- effect waypoint_link_blue
- countabsolute 1
- type beam
- tex 200 200
+ effect nade_red
+ trailspacing 1
+ type smoke
+ color 0xff0000 0xff3c00
+ tex 65 65
+ size 3 3
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_red
+ notunderwater
+ trailspacing 8
+ type smoke
+ color 0xff0000 0xffa2a2
+ tex 65 65
+ size 15 25
+ sizeincrease -10
+ alpha 30 30 150
+ // bubbles
+ effect nade_red
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xff0000 0xff3c00
size 1 1
- alpha 256 256 64
- color 0x0F0FFF 0x0F0FFF
- sizeincrease 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
- // waypoint_link_yellow - yellow waypoint linking effect
- effect waypoint_link_yellow
- countabsolute 1
- type beam
- tex 200 200
- size 1 1
- alpha 256 256 64
+ effect nade_yellow
+ trailspacing 1
+ type smoke
color 0xFFFF0F 0xFFFF0F
- sizeincrease 1
+ tex 65 65
+ size 3 3
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_yellow
+ notunderwater
+ trailspacing 8
+ type smoke
+ color 0xFFFF0F 0xFFFF0F
+ tex 65 65
+ size 15 25
+ sizeincrease -10
+ alpha 30 30 150
+ // bubbles
+ effect nade_yellow
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xFFFF0F 0xFFFF0F
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
- // waypoint_link_pink - pink waypoint linking effect
- effect waypoint_link_pink
- countabsolute 1
- type beam
- tex 200 200
+ effect nade_pink
+ trailspacing 1
+ type smoke
+ color 0xFF0FFF 0xFF0FFF
+ tex 65 65
+ size 3 3
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_pink
+ notunderwater
+ trailspacing 8
+ type smoke
+ color 0xFF0FFF 0xFF0FFF
+ tex 65 65
+ size 15 25
+ sizeincrease -10
+ alpha 30 30 150
+ // bubbles
+ effect nade_pink
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xFF0FFF 0xFF0FFF
size 1 1
- alpha 256 256 64
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+
+ effect nade
+ trailspacing 1
+ type smoke
+ color 0xFFFFFF 0xFFFFFF
+ tex 65 65
+ size 3 3
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade
+ notunderwater
+ trailspacing 8
+ type smoke
+ color 0xFFFFFF 0xFFFFFF
+ tex 65 65
+ size 15 25
+ sizeincrease -10
+ alpha 30 30 150
+ // bubbles
+ effect nade
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xFFFFFF 0xFFFFFF
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+
+ effect nade_red_burn
+ trailspacing 1
+ type smoke
+ color 0xff0000 0xff3c00
+ tex 65 65
+ size 5 5
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_red_burn
+ notunderwater
+ trailspacing 64
+ type smoke
+ color 0xff0000 0xffa2a2
+ tex 65 65
+ size 45 25
+ sizeincrease -30
+ alpha 200 200 1000
+ // bubbles
+ effect nade_red_burn
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xff0000 0xff3c00
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+ effect nade_red_burn
+ trailspacing 16
+ type smoke
+ color 0xff0000 0xff3c00
+ tex 71 73
+ size 15 25
+ sizeincrease -40
+ rotate -180 180 20 -20
+ originjitter 2 2 2
+ velocityjitter 10 10 10
+ alpha 300 900 1500
+
+ effect nade_blue_burn
+ trailspacing 1
+ type smoke
+ color 0x006cff 0x0600ff
+ tex 65 65
+ size 5 5
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_blue_burn
+ notunderwater
+ trailspacing 64
+ type smoke
+ color 0x0600ff 0x9794ff
+ tex 65 65
+ size 45 25
+ sizeincrease -30
+ alpha 200 200 1000
+ // bubbles
+ effect nade_blue_burn
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0x006cff 0x0600ff
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+ effect nade_blue_burn
+ trailspacing 16
+ type smoke
+ color 0x006cff 0x0600ff
+ tex 33 33
+ size 25 25
+ sizeincrease -30
+
+ effect nade_yellow_burn
+ trailspacing 1
+ type smoke
+ color 0xFFFF0F 0xFFFF0F
+ tex 65 65
+ size 5 5
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_yellow_burn
+ notunderwater
+ trailspacing 64
+ type smoke
+ color 0xFFFF0F 0xFFFF0F
+ tex 65 65
+ size 45 25
+ sizeincrease -30
+ alpha 200 200 1000
+ // bubbles
+ effect nade_yellow_burn
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xFFFF0F 0xFFFF0F
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+ effect nade_yellow_burn
+ trailspacing 16
+ type smoke
+ color 0xFFFF0F 0xFFFF0F
+ tex 33 33
+ size 25 25
+ sizeincrease -30
+
+ effect nade_pink_burn
+ trailspacing 1
+ type smoke
color 0xFF0FFF 0xFF0FFF
- sizeincrease 1
+ tex 65 65
+ size 5 5
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_pink_burn
+ notunderwater
+ trailspacing 64
+ type smoke
+ color 0xFF0FFF 0xFF0FFF
+ tex 65 65
+ size 45 25
+ sizeincrease -30
+ alpha 200 200 1000
+ // bubbles
+ effect nade_pink_burn
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xFF0FFF 0xFF0FFF
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+ effect nade_pink_burn
+ trailspacing 16
+ type smoke
+ color 0xFF0FFF 0xFF0FFF
+ tex 33 33
+ size 25 25
+ sizeincrease -30
+
+ effect nade_burn
+ trailspacing 1
+ type smoke
+ color 0xFFFFFF 0xFFFFFF
+ tex 65 65
+ size 5 5
+ sizeincrease -1
+ alpha 100 100 250
+ //gravity -0.11
+ // fire
+ effect nade_burn
+ notunderwater
+ trailspacing 64
+ type smoke
+ color 0xFFFFFF 0xFFFFFF
+ tex 65 65
+ size 45 25
+ sizeincrease -30
+ alpha 200 200 1000
+ // bubbles
+ effect nade_burn
+ underwater
+ trailspacing 16
+ type bubble
+ tex 62 62
+ color 0xFFFFFF 0xFFFFFF
+ size 1 1
+ alpha 256 256 256
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 4
+ velocityjitter 16 16 16
+ effect nade_burn
+ trailspacing 16
+ type smoke
+ color 0xFFFFFF 0xFFFFFF
+ tex 33 33
+ size 25 25
+ sizeincrease -30
+
+ effect nade_blue_explode
+ countabsolute 1
+ type decal
+ tex 8 16
+ size 88 88
+ alpha 256 256 0
+ originjitter 26 26 26
+ lightradius 300
+ lightradiusfade 1500
+ lightcolor 20 20 100
+ // shockwave
+ effect nade_blue_explode
+ type smoke
+ countabsolute 1
+ tex 33 33
+ size 32 32
+ sizeincrease 1800
+ color 0x80C0FF 0x80C0FF
+ alpha 80 80 650
+ velocitymultiplier 44
+ // fire
+ effect nade_blue_explode
+ notunderwater
+ count 16
+ type smoke
+ color 0x629dff 0x0018ff
+ tex 48 55
+ size 20 24
+ sizeincrease 555
+ alpha 400 656 2000
+ airfriction 30
+ originjitter 50 50 50
+ velocityjitter 320 320 320
+ rotate -180 180 -9 9
+ // fire streched
+ effect nade_blue_explode
+ count 8
+ type spark
+ tex 48 55
+ color 0x629dff 0x0018ff
+ size 60 90
+ alpha 1500 3000 13000
+ stretchfactor 80
+ sizeincrease 40
+ velocityjitter 30 30 30
+ airfriction -9
+ //smoke
+ effect nade_blue_explode
+ type smoke
+ count 32
+ blend alpha
+ tex 0 7
+ size 60 30
+ color 0x222222 0x000000
+ alpha 128 328 390
+ rotate -180 180 2 -2
+ velocityjitter 200 200 200
+ velocityoffset 0 0 180
+ originjitter 50 50 10
+ sizeincrease 50
+ airfriction 0.04
+ gravity 0.4
+ // underwater bubbles
+ effect nade_blue_explode
+ underwater
+ count 32
+ type bubble
+ tex 62 62
+ color 0x404040 0x808080
+ size 3 6
+ alpha 128 256 64
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 0.25
+ originjitter 16 16 16
+ velocityjitter 196 196 196
+ rotate 0 0 0 0
+ // bouncing sparks
+ effect nade_blue_explode
+ notunderwater
+ count 8
+ type spark
+ tex 40 40
+ color 0x006cff 0x0600ff
+ size 1 2
+ alpha 644 956 484
+ gravity 1
+ airfriction 1
+ bounce 1.6
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // notbouncing sparks
+ effect nade_blue_explode
+ count 16
+ type spark
+ tex 40 40
+ color 0x006cff 0x0600ff
+ size 1 2
+ alpha 644 956 684
+ gravity 0.5
+ airfriction 0.7
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // derbis
+ effect nade_blue_explode
+ notunderwater
+ count 12
+ type alphastatic
+ tex 66 68
+ color 0x6a3d25 0xcac5b4
+ size 2 6
+ alpha 644 956 684
+ gravity 1.3
+ airfriction 0.5
+ bounce 1.6
+ velocityjitter 324 324 524
+ rotate -180 180 -1000 1000
+
+ effect nade_red_explode
+ countabsolute 1
+ type decal
+ tex 8 16
+ size 88 88
+ alpha 256 256 0
+ originjitter 26 26 26
+ lightradius 300
+ lightradiusfade 1500
+ lightcolor 100 20 20
+ // shockwave
+ effect nade_red_explode
+ type smoke
+ countabsolute 1
+ tex 33 33
+ size 32 32
+ sizeincrease 2200
+ color 0xff0000 0xffa2a2
+ alpha 80 80 650
+ velocitymultiplier 44
+ // fire
+ effect nade_red_explode
+ notunderwater
+ count 16
+ type smoke
+ color 0xff0000 0xff4200
+ tex 48 55
+ size 20 24
+ sizeincrease 555
+ alpha 400 656 2000
+ airfriction 30
+ originjitter 50 50 50
+ velocityjitter 320 320 320
+ rotate -180 180 -9 9
+ // fire streched
+ effect nade_red_explode
+ count 8
+ type spark
+ tex 48 55
+ color 0xff0000 0xff4200
+ size 60 90
+ alpha 1500 3000 13000
+ stretchfactor 80
+ sizeincrease 40
+ velocityjitter 30 30 30
+ airfriction -9
+ //smoke
+ effect nade_red_explode
+ type smoke
+ count 32
+ blend alpha
+ tex 0 7
+ size 60 30
+ color 0x222222 0x000000
+ alpha 128 328 390
+ rotate -180 180 2 -2
+ velocityjitter 200 200 200
+ velocityoffset 0 0 180
+ originjitter 50 50 10
+ sizeincrease 50
+ airfriction 0.04
+ gravity 0.4
+ // underwater bubbles
+ effect nade_red_explode
+ underwater
+ count 32
+ type bubble
+ tex 62 62
+ color 0x404040 0x808080
+ size 3 6
+ alpha 128 256 64
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 0.25
+ originjitter 16 16 16
+ velocityjitter 196 196 196
+ rotate 0 0 0 0
+ // bouncing sparks
+ effect nade_red_explode
+ notunderwater
+ count 8
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 484
+ gravity 1
+ airfriction 1
+ bounce 1.6
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // notbouncing sparks
+ effect nade_red_explode
+ count 16
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 684
+ gravity 0.5
+ airfriction 0.7
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // derbis
+ effect nade_red_explode
+ notunderwater
+ count 8
+ type smoke
+ tex 71 73
+ color 0xff0000 0xffa2a2
+ size 20 40
+ alpha 644 956 2500
+ originjitter 64 64 64
+ velocityjitter 324 324 324
+ rotate -180 180 -100 100
+
+ effect nade_yellow_explode
+ countabsolute 1
+ type decal
+ tex 8 16
+ size 88 88
+ alpha 256 256 0
+ originjitter 26 26 26
+ lightradius 300
+ lightradiusfade 1500
+ lightcolor 100 20 20
+ // shockwave
+ effect nade_yellow_explode
+ type smoke
+ countabsolute 1
+ tex 33 33
+ size 32 32
+ sizeincrease 2200
+ color 0xff0000 0xffa2a2
+ alpha 80 80 650
+ velocitymultiplier 44
+ // fire
+ effect nade_yellow_explode
+ notunderwater
+ count 16
+ type smoke
+ color 0xFFFF0F 0xFFFF0F
+ tex 48 55
+ size 20 24
+ sizeincrease 555
+ alpha 400 656 2000
+ airfriction 30
+ originjitter 50 50 50
+ velocityjitter 320 320 320
+ rotate -180 180 -9 9
+ // fire streched
+ effect nade_yellow_explode
+ count 8
+ type spark
+ tex 48 55
+ color 0xFFFF0F 0xFFFF0F
+ size 60 90
+ alpha 1500 3000 13000
+ stretchfactor 80
+ sizeincrease 40
+ velocityjitter 30 30 30
+ airfriction -9
+ //smoke
+ effect nade_yellow_explode
+ type smoke
+ count 32
+ blend alpha
+ tex 0 7
+ size 60 30
+ color 0x222222 0x000000
+ alpha 128 328 390
+ rotate -180 180 2 -2
+ velocityjitter 200 200 200
+ velocityoffset 0 0 180
+ originjitter 50 50 10
+ sizeincrease 50
+ airfriction 0.04
+ gravity 0.4
+ // underwater bubbles
+ effect nade_yellow_explode
+ underwater
+ count 32
+ type bubble
+ tex 62 62
+ color 0x404040 0x808080
+ size 3 6
+ alpha 128 256 64
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 0.25
+ originjitter 16 16 16
+ velocityjitter 196 196 196
+ rotate 0 0 0 0
+ // bouncing sparks
+ effect nade_yellow_explode
+ notunderwater
+ count 8
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 484
+ gravity 1
+ airfriction 1
+ bounce 1.6
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // notbouncing sparks
+ effect nade_yellow_explode
+ count 16
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 684
+ gravity 0.5
+ airfriction 0.7
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // derbis
+ effect nade_yellow_explode
+ notunderwater
+ count 8
+ type smoke
+ tex 71 73
+ color 0xff0000 0xffa2a2
+ size 20 40
+ alpha 644 956 2500
+ originjitter 64 64 64
+ velocityjitter 324 324 324
+ rotate -180 180 -100 100
+
+ effect nade_pink_explode
+ countabsolute 1
+ type decal
+ tex 8 16
+ size 88 88
+ alpha 256 256 0
+ originjitter 26 26 26
+ lightradius 300
+ lightradiusfade 1500
+ lightcolor 100 20 20
+ // shockwave
+ effect nade_pink_explode
+ type smoke
+ countabsolute 1
+ tex 33 33
+ size 32 32
+ sizeincrease 2200
+ color 0xff0000 0xffa2a2
+ alpha 80 80 650
+ velocitymultiplier 44
+ // fire
+ effect nade_pink_explode
+ notunderwater
+ count 16
+ type smoke
+ color 0xFF0FFF 0xFF0FFF
+ tex 48 55
+ size 20 24
+ sizeincrease 555
+ alpha 400 656 2000
+ airfriction 30
+ originjitter 50 50 50
+ velocityjitter 320 320 320
+ rotate -180 180 -9 9
+ // fire streched
+ effect nade_pink_explode
+ count 8
+ type spark
+ tex 48 55
+ color 0xFF0FFF 0xFF0FFF
+ size 60 90
+ alpha 1500 3000 13000
+ stretchfactor 80
+ sizeincrease 40
+ velocityjitter 30 30 30
+ airfriction -9
+ //smoke
+ effect nade_pink_explode
+ type smoke
+ count 32
+ blend alpha
+ tex 0 7
+ size 60 30
+ color 0x222222 0x000000
+ alpha 128 328 390
+ rotate -180 180 2 -2
+ velocityjitter 200 200 200
+ velocityoffset 0 0 180
+ originjitter 50 50 10
+ sizeincrease 50
+ airfriction 0.04
+ gravity 0.4
+ // underwater bubbles
+ effect nade_pink_explode
+ underwater
+ count 32
+ type bubble
+ tex 62 62
+ color 0x404040 0x808080
+ size 3 6
+ alpha 128 256 64
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 0.25
+ originjitter 16 16 16
+ velocityjitter 196 196 196
+ rotate 0 0 0 0
+ // bouncing sparks
+ effect nade_pink_explode
+ notunderwater
+ count 8
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 484
+ gravity 1
+ airfriction 1
+ bounce 1.6
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // notbouncing sparks
+ effect nade_pink_explode
+ count 16
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 684
+ gravity 0.5
+ airfriction 0.7
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // derbis
+ effect nade_pink_explode
+ notunderwater
+ count 8
+ type smoke
+ tex 71 73
+ color 0xff0000 0xffa2a2
+ size 20 40
+ alpha 644 956 2500
+ originjitter 64 64 64
+ velocityjitter 324 324 324
+ rotate -180 180 -100 100
+
+ effect nade_explode
+ countabsolute 1
+ type decal
+ tex 8 16
+ size 88 88
+ alpha 256 256 0
+ originjitter 26 26 26
+ lightradius 300
+ lightradiusfade 1500
+ lightcolor 100 20 20
+ // shockwave
+ effect nade_explode
+ type smoke
+ countabsolute 1
+ tex 33 33
+ size 32 32
+ sizeincrease 2200
+ color 0xff0000 0xffa2a2
+ alpha 80 80 650
+ velocitymultiplier 44
+ // fire
+ effect nade_explode
+ notunderwater
+ count 16
+ type smoke
+ color 0xFFFFFF 0xFFFFFF
+ tex 48 55
+ size 20 24
+ sizeincrease 555
+ alpha 400 656 2000
+ airfriction 30
+ originjitter 50 50 50
+ velocityjitter 320 320 320
+ rotate -180 180 -9 9
+ // fire streched
+ effect nade_explode
+ count 8
+ type spark
+ tex 48 55
+ color 0xFFFFFF 0xFFFFFF
+ size 60 90
+ alpha 1500 3000 13000
+ stretchfactor 80
+ sizeincrease 40
+ velocityjitter 30 30 30
+ airfriction -9
+ //smoke
+ effect nade_explode
+ type smoke
+ count 32
+ blend alpha
+ tex 0 7
+ size 60 30
+ color 0x222222 0x000000
+ alpha 128 328 390
+ rotate -180 180 2 -2
+ velocityjitter 200 200 200
+ velocityoffset 0 0 180
+ originjitter 50 50 10
+ sizeincrease 50
+ airfriction 0.04
+ gravity 0.4
+ // underwater bubbles
+ effect nade_explode
+ underwater
+ count 32
+ type bubble
+ tex 62 62
+ color 0x404040 0x808080
+ size 3 6
+ alpha 128 256 64
+ gravity -0.125
+ bounce 1.5
+ liquidfriction 0.25
+ originjitter 16 16 16
+ velocityjitter 196 196 196
+ rotate 0 0 0 0
+ // bouncing sparks
+ effect nade_explode
+ notunderwater
+ count 8
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 484
+ gravity 1
+ airfriction 1
+ bounce 1.6
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // notbouncing sparks
+ effect nade_explode
+ count 16
+ type spark
+ tex 40 40
+ color 0xff0000 0xffa2a2
+ size 1 2
+ alpha 644 956 684
+ gravity 0.5
+ airfriction 0.7
+ liquidfriction 0.8
+ velocityoffset 0 0 80
+ originjitter 16 16 16
+ velocityjitter 424 424 624
+ // derbis
+ effect nade_explode
+ notunderwater
+ count 8
+ type smoke
+ tex 71 73
+ color 0xff0000 0xffa2a2
+ size 20 40
+ alpha 644 956 2500
+ originjitter 64 64 64
+ velocityjitter 324 324 324
+ rotate -180 180 -100 100
--- /dev/null
- set g_monster_zombie_attack_leap_damage 45 "Damage when zombie performs an attack leap"
+// Misc
+set g_monsters 1 "Enable monsters (master switch)"
+set g_monsters_think_delay 0.1 "Delay between monster think frames"
+set g_monsters_skill 1 "Monster skill (affecting some of their attributes). 1 - easy, 2 - medium, 3 - hard, 4 - insane, 5 - nightmare"
+set g_monsters_miniboss_chance 5
+set g_monsters_miniboss_healthboost 100
+set g_monsters_forcedrop 0 "Force all monsters to drop this item on death. Use g_monsters_drop_* cvars to change forced drop item"
+set g_monsters_drop_time 10 "Amount of time before monster's dropped loot disappears"
+set g_monsters_drop_type armor "Type of item to drop when forced. Possible values are: health, armor, ammo"
+set g_monsters_drop_size medium "Size of the item monsters drop. Possible health/amor values are: small, medium, large. Possible ammo values are: shells, bullets, cells, rockets"
+set g_monsters_owners 1 "Monsters will not attack their owners in team matches if set to 1"
+set g_monsters_teams 1
+set g_monsters_spawnshieldtime 2 "Monsters will not take damage for this amount of seconds"
+set g_monsters_typefrag 1
+set g_monsters_healthbars 1 "Show health bars above monsters"
+set g_monsters_target_range 2000
+set g_monsters_target_infront 0 "Only find targets infront of the monster"
+set g_monsters_respawn 1 "Enable monster respawning"
+set g_monsters_respawn_delay 20 "Monsters respawn in this amount of seconds"
+set g_monsters_score_kill 1 "Get this many points for killing a naturally spawned monster"
+set g_monsters_max 20 "Global maximum player-spawned monsters"
+set g_monsters_max_perplayer 0 "Maximum monsters per-player"
+set g_monsters_skill_easy 2 "Monster easy skill level (used for skill based functions)"
+set g_monsters_skill_normal 4 "Monster normal skill level (used for skill based functions)"
+set g_monsters_skill_hard 5 "Monster hard skill level (used for skill based functions)"
+set g_monsters_skill_insane 7 "Monster insane skill level (used for skill based functions)"
+set g_monsters_skill_nightmare 10 "Monster nightmare skill level (used for skill based functions)"
+
+// Brute
+set g_monster_brute 1 "Enable Brutes"
+set g_monster_brute_health 200 "Brute health"
+set g_monster_brute_chainsaw_damage 15 "Brute chainsaw damage (hits multiple times)"
+set g_monster_brute_drop ammo "Brute drops this item on death"
+set g_monster_brute_drop_size bullets "Size of the item Brutes drop. Possible values are: small, medium, large"
+set g_monster_brute_speed_walk 100 "Brute walk speed"
+set g_monster_brute_speed_run 150 "Brute run speed"
+set g_monster_brute_attack_uzi_bullets 3 "Number of machine gun bullets Brute fires"
+set g_monster_brute_attack_uzi_chance 0.1 "Chance for Brute to fire machine gun"
+set g_monster_brute_attack_uzi_damage 10 "Brute machine gun damage per bullet"
+set g_monster_brute_attack_uzi_force 5 "Brute machine gun knockback"
+set g_monster_brute_attack_grenade_damage 50 "Brute grenade damage"
+set g_monster_brute_attack_grenade_edgedamage 25 "Brute grenade indirect hit damage"
+set g_monster_brute_attack_grenade_radius 200 "Brute grenade explosion radius"
+set g_monster_brute_attack_grenade_force 15 "Brute grenade knockback"
+
+// Animus
+set g_monster_animus 1 "Enable Animuses"
+set g_monster_animus_health 300 "Animus health"
+set g_monster_animus_attack_jump_damage 40 "Animus jump attack damage"
+set g_monster_animus_damage 20 "Animus melee attack damage"
+set g_monster_animus_drop health "Animus drops this item on death"
+set g_monster_animus_drop_size medium "Size of the item Animuses drop. Possible values are: small, medium, large"
+set g_monster_animus_speed_walk 150 "Animus walk speed"
+set g_monster_animus_speed_run 300 "Animus run speed"
+
+// Shambler
+set g_monster_shambler 1 "Enable Shamblers"
+set g_monster_shambler_health 600 "Shambler health"
+set g_monster_shambler_damage 50 "Shambler melee attack damage"
+set g_monster_shambler_attack_lightning_damage 20 "Shambler lightning attack damage per frame"
+set g_monster_shambler_attack_claw_damage 30 "Shambler claw attack damage"
+set g_monster_shambler_drop health "Shambler drops this item on death"
+set g_monster_shambler_drop_size large "Size of the item Shamblers drop. Possible values are: small, medium, large"
+set g_monster_shambler_speed_walk 100 "Shambler walk speed"
+set g_monster_shambler_speed_run 150 "Shambler run speed"
+
+// Bruiser
+set g_monster_bruiser 1 "Enable Bruisers"
+set g_monster_bruiser_health 75 "Bruiser Health"
+set g_monster_bruiser_drop armor "Bruiser drops this item on death"
+set g_monster_bruiser_drop_size medium "Size of the item Bruisers drop. Possible values are: small, medium, large"
+set g_monster_bruiser_melee_damage 20 "Bruiser melee attack damage"
+set g_monster_bruiser_melee_side_damage 10 "Bruiser melee attack side damage"
+set g_monster_bruiser_speed_walk 40 "Bruiser walk speed"
+set g_monster_bruiser_speed_run 70 "Bruiser run speed"
+
+// Wyvern
+set g_monster_wyvern 1 "Enable Wyverns"
+set g_monster_wyvern_health 80 "Wyvern health"
+set g_monster_wyvern_drop ammo "Wyvern drops this item on death"
+set g_monster_wyvern_drop_size cells "Size of the item Wyverns drop. Possible values are: small, medium, large"
+set g_monster_wyvern_speed_walk 40 "Wyvern walk speed"
+set g_monster_wyvern_speed_run 70 "Wyvern run speed"
+set g_monster_wyvern_fireball_damagetime 3 "How long the enemy will burn if it's within fireball radius"
+set g_monster_wyvern_fireball_damage 30 "Wyvern fireball projectile damage"
+set g_monster_wyvern_fireball_edgedamage 20 "Wyvern fireball indirect hit damage"
+set g_monster_wyvern_fireball_force 50 "Wyvern fireball projectile push force"
+set g_monster_wyvern_fireball_radius 70 "Wyvern fireball projectile damage radius"
+set g_monster_wyvern_fireball_speed 400 "Wyvern fireball projectile speed"
+
+// Cerberus
+set g_monster_cerberus 1 "Enable Cerberuses"
+set g_monster_cerberus_health 25 "Cerberus health"
+set g_monster_cerberus_bite_damage 15 "Cerberus bite attack damage"
+set g_monster_cerberus_attack_jump_damage 30 "Cerberus jump attack damage"
+set g_monster_cerberus_drop health "Cerberus drops this item on death"
+set g_monster_cerberus_drop_size small "Size of the item Cerberuss drop. Possible values are: small, medium, large"
+set g_monster_cerberus_speed_walk 60 "Cerberus walk speed"
+set g_monster_cerberus_speed_run 120 "Cerberus run speed"
+
+// Slime
+set g_monster_slime 1 "Enable Slime"
+set g_monster_slime_health 80 "Slime health"
+set g_monster_slime_drop ammo "Slime drops this item when it explodes"
+set g_monster_slime_drop_size rockets "Size of the item Slime drops. Possible values are: small, medium, large"
+set g_monster_slime_speed_walk 20 "Slime walk speed"
+set g_monster_slime_speed_run 30 "Slime run speed"
+
+// Knight
+set g_monster_knight 1 "Enable Knights"
+set g_monster_knight_health 250 "Knight health"
+set g_monster_knight_drop armor "Knight drops this item on death"
+set g_monster_knight_drop_size medium "Size of the item Knights drop. Possible values are: small, medium, large"
+set g_monster_knight_inferno_damage 40 "Knight inferno damage"
+set g_monster_knight_inferno_chance 0.4 "Knight inferno attack chance"
+set g_monster_knight_inferno_damagetime 3 "How long the inferno should burn the player"
+set g_monster_knight_fireball_damage 30 "Knight fireball projectile damage"
+set g_monster_knight_fireball_edgedamage 10 "Knight fireball indirect hit damage"
+set g_monster_knight_fireball_force 50 "Knight fireball projectile push force"
+set g_monster_knight_fireball_radius 70 "Knight fireball projectile damage radius"
+set g_monster_knight_fireball_speed 600 "Knight fireball projectile speed"
+set g_monster_knight_fireball_spread 0 "Knight fireball projectile spread"
+set g_monster_knight_fireball_chance 0.3 "Chance for Knight to throw a fireball"
+set g_monster_knight_jump_chance 0.2 "Chance for Knight to jump at the player (always 1 if enemy is further than _dist)"
+set g_monster_knight_jump_damage 25 "Knight jump attack damage"
+set g_monster_knight_jump_dist 500 "Knight will prioritise jumping if the enemy is this far away"
+set g_monster_knight_melee_damage 20 "Knight melee attack damage"
+set g_monster_knight_spike_damage 5 "Knight spike projectile damage"
+set g_monster_knight_spike_edgedamage 5 "Knight spike projectile indirect hit damage"
+set g_monster_knight_spike_radius 20 "Knight spike projectile damage radius"
+set g_monster_knight_spike_force 5 "Knight spike projectile force"
+set g_monster_knight_spike_chance 0.5 "Knight spike attack chance"
+set g_monster_knight_speed_walk 75 "Knight walk speed"
+set g_monster_knight_speed_run 150 "Knight run speed"
+
+// Stingray
+set g_monster_stingray 1 "Enable Stingray"
+set g_monster_stingray_health 25 "Stingray health"
+set g_monster_stingray_damage 10 "Stingray bite attack damage"
+set g_monster_stingray_drop health "Stingray drops this item on death"
+set g_monster_stingray_drop_size small "Size of the item Stingray drop. Possible values are: small, medium, large"
+set g_monster_stingray_speed_walk 40 "Stingray walk speed"
+set g_monster_stingray_speed_run 70 "Stingray run speed"
+
+// Mage
+set g_monster_mage 1 "Enable Mages"
+set g_monster_mage_health 200 "Mage health"
+set g_monster_mage_drop health "Mage drops this item on death"
+set g_monster_mage_drop_size medium "Size of the item Mages drop. Possible values are: small, medium, large"
+set g_monster_mage_speed 50 "Mage move speed"
+set g_monster_mage_attack_spike_damage 30 "Mage homing spike explosion damage"
+set g_monster_mage_attack_spike_radius 60 "Mage homing spike explosion radius"
+set g_monster_mage_attack_spike_delay 2 "Delay between Mage homing spike attacks"
+set g_monster_mage_attack_melee_damage 30 "Mage magic attack damage"
+set g_monster_mage_attack_melee_delay 0.7 "Delay between Mage melee attacks"
+set g_monster_mage_heal_self 35 "Amount of health Mage will regenerate every attack when its low on health"
+set g_monster_mage_heal_friends 15 "Amount of health Mage will regenerate nearby friends"
+set g_monster_mage_heal_minhealth 250 "Health limit below which Mage will try to heal itself"
+set g_monster_mage_heal_range 200 "Maximum healing distance"
+set g_monster_mage_heal_delay 1.5 "Delay between healing bursts"
+set g_monster_mage_shield_blockpercent 40 "% of damage inflicted on Mage if using a force field"
+set g_monster_mage_shield_delay 7 "Refire for Mage force shield"
+set g_monster_mage_shield_time 3 "Amount of time Mage force field lasts"
+set g_monster_mage_attack_grenade_damage 25 "Mage fake item grenade attack damage"
+set g_monster_mage_attack_grenade_edgedamage 20 "Mage fake item grenade attack edge damage"
+set g_monster_mage_attack_grenade_radius 100 "Mage fake item grenade attack explosion radius"
+set g_monster_mage_attack_grenade_lifetime 5 "Mage fake item grenade life time"
+set g_monster_mage_attack_grenade_speed 150 "Mage fake item grenade forward speed"
+set g_monster_mage_attack_grenade_speed_up 95 "Mage fake item grenade upwards speed"
+set g_monster_mage_attack_grenade_speed_z 0 "Mage fake item grenade speed angle"
+set g_monster_mage_attack_grenade_spread 0 "Mage fake item grenade spread"
+set g_monster_mage_attack_grenade_force 170 "Mage fake item grenade damage knockback"
+set g_monster_mage_attack_grenade_chance 30 "% chance of Mage attack being fake item grenade"
+
+// Zombie
+set g_monster_zombie 1 "Enable Zombies"
- set g_monster_zombie_attack_stand_damage 35 "Damage when zombie hits from a standing position"
++set g_monster_zombie_attack_leap_damage 50 "Damage when zombie performs an attack leap"
+set g_monster_zombie_attack_leap_delay 1.5 "Delay after zombie attack leap"
+set g_monster_zombie_attack_leap_force 55 "Force of zombie attack leap"
+set g_monster_zombie_attack_leap_range 96 "Range of zombie attack leap"
+set g_monster_zombie_attack_leap_speed 500 "The speed of a zombie attack leap"
- set g_monster_zombie_health 200 "Zombie health"
++set g_monster_zombie_attack_stand_damage 40 "Damage when zombie hits from a standing position"
+set g_monster_zombie_attack_stand_delay 1.2 "Delay after a zombie hits from a standing position"
+set g_monster_zombie_attack_stand_range 48 "Range of a zombie standing position attack"
++set g_monster_zombie_health 150 "Zombie health"
+set g_monster_zombie_speed_walk 150 "Zombie walk speed"
+set g_monster_zombie_speed_run 400 "Zombie run speed"
+set g_monster_zombie_stopspeed 100 "Speed at which zombie stops"
+set g_monster_zombie_drop health "Zombie drops this item on death"
+set g_monster_zombie_drop_size large "Size of the item zombies drop. Possible values are: small, medium, large"
+
+// Spider
+set g_monster_spider 1 "Enable Spiders"
+set g_monster_spider_attack_type 0 "Spider attack type (0 = ice, 1 = fire, ...)"
+set g_monster_spider_attack_leap_delay 1.5 "Delay after spider attack leap"
+set g_monster_spider_attack_stand_damage 35 "Damage when spider hits from a standing position"
+set g_monster_spider_attack_stand_delay 1.2 "Delay after a spider hits from a standing position"
+set g_monster_spider_attack_fire_time 2 "Spider fire attack burn time"
+set g_monster_spider_attack_web_speed 1000 "Spider web fly speed"
+set g_monster_spider_attack_web_speed_up 150 "Spider web upwards fly speed"
+set g_monster_spider_attack_web_spread 0 "Spider web spread"
+set g_monster_spider_attack_web_speed_z 0 "Spider web upwards angle"
+set g_monster_spider_health 200 "Spider health"
+set g_monster_spider_idle_timer_min 1 "Minimum time a spider can stay idle"
+set g_monster_spider_speed_walk 150 "Spider walk speed"
+set g_monster_spider_speed_run 400 "Spider run speed"
+set g_monster_spider_stopspeed 100 Speed at which spider stops"
+set g_monster_spider_drop health "Spider drops this item on death"
+set g_monster_spider_drop_size large "Size of the item spiders drop. Possible values are: small, medium, large"
float PROJECTILE_BUMBLE_GUN = 30;
float PROJECTILE_BUMBLE_BEAM = 31;
+float PROJECTILE_MAGE_SPIKE = 32;
+
+ float PROJECTILE_NADE_RED = 50;
+ float PROJECTILE_NADE_RED_BURN = 51;
+ float PROJECTILE_NADE_BLUE = 52;
+ float PROJECTILE_NADE_BLUE_BURN = 53;
+ float PROJECTILE_NADE_YELLOW = 54;
+ float PROJECTILE_NADE_YELLOW_BURN = 55;
+ float PROJECTILE_NADE_PINK = 56;
+ float PROJECTILE_NADE_PINK_BURN = 57;
+ float PROJECTILE_NADE = 58;
+ float PROJECTILE_NADE_BURN = 59;
+
float SPECIES_HUMAN = 0;
float SPECIES_ROBOT_SOLID = 1;
float SPECIES_ALIEN = 2;
DEATHTYPE(DEATH_KILL, DEATH_SELF_SUICIDE, NO_MSG, NORMAL_POS) \
DEATHTYPE(DEATH_LAVA, DEATH_SELF_LAVA, DEATH_MURDER_LAVA, NORMAL_POS) \
DEATHTYPE(DEATH_MIRRORDAMAGE, DEATH_SELF_BETRAYAL, NO_MSG, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_CERBERUS_BITE, DEATH_SELF_MON_CERBERUS_BITE, DEATH_MURDER_MONSTER, DEATH_MONSTER_FIRST) \
+ DEATHTYPE(DEATH_MONSTER_CERBERUS_JUMP, DEATH_SELF_MON_CERBERUS_JUMP, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_ANIMUS, DEATH_SELF_MON_ANIMUS, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_STINGRAY, DEATH_SELF_MON_STINGRAY, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_KNIGHT_CRUSH, DEATH_SELF_MON_KNIGHT_CRUSH, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_KNIGHT_FBALL, DEATH_SELF_MON_KNIGHT_FBALL, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_KNIGHT_INFERNO, DEATH_SELF_MON_KNIGHT_INFERNO, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_KNIGHT_MELEE, DEATH_SELF_MON_KNIGHT_MELEE, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_KNIGHT_SPIKE, DEATH_SELF_MON_KNIGHT_SPIKE, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_BRUISER, DEATH_SELF_MON_BRUISER, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_BRUTE_BLADE, DEATH_SELF_MON_BRUTE_BLADE, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_BRUTE_GRENADE, DEATH_SELF_MON_BRUTE_GRENADE, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_BRUTE_UZI, DEATH_SELF_MON_BRUTE_UZI, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_MAGE, DEATH_SELF_MON_MAGE, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_SHAMBLER_CLAW, DEATH_SELF_MON_SHAMBLER_CLAW, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_SHAMBLER_SMASH, DEATH_SELF_MON_SHAMBLER_SMASH, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_SHAMBLER_ZAP, DEATH_SELF_MON_SHAMBLER_ZAP, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_SPIDER, DEATH_SELF_MON_SPIDER, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_SPIDER_FIRE, DEATH_SELF_MON_SPIDER_FIRE, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_SLIME, DEATH_SELF_MON_SLIME, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_WYVERN, DEATH_SELF_MON_WYVERN, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_ZOMBIE_JUMP, DEATH_SELF_MON_ZOMBIE_JUMP, DEATH_MURDER_MONSTER, NORMAL_POS) \
+ DEATHTYPE(DEATH_MONSTER_ZOMBIE_MELEE, DEATH_SELF_MON_ZOMBIE_MELEE, DEATH_MURDER_MONSTER, DEATH_MONSTER_LAST) \
+ DEATHTYPE(DEATH_NADE, DEATH_SELF_NADE, DEATH_MURDER_NADE, NORMAL_POS) \
DEATHTYPE(DEATH_NOAMMO, DEATH_SELF_NOAMMO, NO_MSG, NORMAL_POS) \
DEATHTYPE(DEATH_ROT, DEATH_SELF_ROT, NO_MSG, NORMAL_POS) \
DEATHTYPE(DEATH_SHOOTING_STAR, DEATH_SELF_SHOOTING_STAR, DEATH_MURDER_SHOOTING_STAR, NORMAL_POS) \
MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_FALL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_fall", _("^BG%s%s^K1 was grounded by ^BG%s^K1%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_FIRE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was burnt up into a crisp by ^BG%s^K1%s%s\n"), _("^BG%s%s^K1 felt a little hot from ^BG%s^K1's fire^K1%s%s\n")) \
MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_LAVA, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_lava", _("^BG%s%s^K1 was cooked by ^BG%s^K1%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_MONSTER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "", "", _("^BG%s%s^K1 was pushed infront of a monster by ^BG%s^K1%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was blown up by ^BG%s^K1's Nade%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SHOOTING_STAR, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_shootingstar", _("^BG%s%s^K1 was shot into space by ^BG%s^K1%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SLIME, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_slime", _("^BG%s%s^K1 was slimed by ^BG%s^K1%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SWAMP, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_slime", _("^BG%s%s^K1 was preserved by ^BG%s^K1%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_SELF_FIRE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 became a bit too crispy%s%s\n"), _("^BG%s^K1 felt a little hot%s%s\n")) \
MSG_INFO_NOTIF(1, INFO_DEATH_SELF_GENERIC, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 died%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_SELF_LAVA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_lava", _("^BG%s^K1 turned into hot slag%s%s\n"), _("^BG%s^K1 found a hot place%s%s\n")) \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_CERBERUS_BITE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was mauled by a Cerberus%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_CERBERUS_JUMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 didn't see the pouncing Cerberus%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ANIMUS, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was eviscerated by an Animus%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_STINGRAY, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was fatally wounded by a Stingray%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_KNIGHT_CRUSH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was crushed by a pouncing Knight%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_KNIGHT_FBALL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was turned to ash by a Knight%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_KNIGHT_INFERNO, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was burned to death by a Knight%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_KNIGHT_MELEE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was slain by a Knight%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_KNIGHT_SPIKE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was cursed by a Knight%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_BRUISER, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was beaten in a fistfight by a Bruiser%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_BRUTE_BLADE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was cut down by a Brute%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_BRUTE_GRENADE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 almost dodged a Brute's grenade%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_BRUTE_UZI, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was nailed by a Brute%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_MAGE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was exploded by a Mage%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_CLAW, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1's innards became outwards by a Shambler%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_SMASH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was smashed by a Shambler%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_ZAP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was zapped to death by a Shambler%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SPIDER, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was bitten by a Spider%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SPIDER_FIRE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was incinerated by a Spider%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SLIME, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blown up by a Slime%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_WYVERN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was fireballed by a Wyvern%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ZOMBIE_JUMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 joins the Zombies%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ZOMBIE_MELEE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was given kung fu lessons by a Zombie%s%s\n"), "") \
+ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 mastered the art of self-nading%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NOAMMO, 2, 1, "s1 s2loc spree_lost", "s1", "notify_outofammo", _("^BG%s^K1 died%s%s. What's the point of living without ammo?\n"), _("^BG%s^K1 ran out of ammo%s%s\n")) \
MSG_INFO_NOTIF(1, INFO_DEATH_SELF_ROT, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 rotted away%s%s\n"), "") \
MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SHOOTING_STAR, 2, 1, "s1 s2loc spree_lost", "s1", "notify_shootingstar", _("^BG%s^K1 became a shooting star%s%s\n"), "") \
MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_FIRE, 0, 0, "", NO_CPID, "0 0", _("^K1You got a little bit too crispy!"), _("^K1You felt a little too hot!")) \
MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_GENERIC, 0, 0, "", NO_CPID, "0 0", _("^K1You killed your own dumb self!"), _("^K1You need to be more careful!")) \
MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_LAVA, 0, 0, "", NO_CPID, "0 0", _("^K1You couldn't stand the heat!"), "") \
+ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_MONSTER, 0, 0, "", NO_CPID, "0 0", _("^K1You were killed by a monster!"), _("^K1You need to watch out for monsters!")) \
+ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE, 0, 0, "", NO_CPID, "0 0", _("^K1You forgot to put the pin back in!"), _("^K1Tastes like chicken!")) \
MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NOAMMO, 0, 0, "", NO_CPID, "0 0", _("^K1You were killed for running out of ammo..."), _("^K1You are respawning for running out of ammo...")) \
MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_ROT, 0, 0, "", NO_CPID, "0 0", _("^K1You grew too old without taking your medicine"), _("^K1You need to preserve your health")) \
MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SHOOTING_STAR, 0, 0, "", NO_CPID, "0 0", _("^K1You became a shooting star!"), "") \
MSG_MULTI_NOTIF(1, DEATH_MURDER_FALL, NO_MSG, INFO_DEATH_MURDER_FALL, NO_MSG) \
MSG_MULTI_NOTIF(1, DEATH_MURDER_FIRE, NO_MSG, INFO_DEATH_MURDER_FIRE, NO_MSG) \
MSG_MULTI_NOTIF(1, DEATH_MURDER_LAVA, NO_MSG, INFO_DEATH_MURDER_LAVA, NO_MSG) \
+ MSG_MULTI_NOTIF(1, DEATH_MURDER_MONSTER, NO_MSG, INFO_DEATH_MURDER_MONSTER, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_MURDER_NADE, NO_MSG, INFO_DEATH_MURDER_NADE, NO_MSG) \
MSG_MULTI_NOTIF(1, DEATH_MURDER_SHOOTING_STAR, NO_MSG, INFO_DEATH_MURDER_SHOOTING_STAR, NO_MSG) \
MSG_MULTI_NOTIF(1, DEATH_MURDER_SLIME, NO_MSG, INFO_DEATH_MURDER_SLIME, NO_MSG) \
MSG_MULTI_NOTIF(1, DEATH_MURDER_SWAMP, NO_MSG, INFO_DEATH_MURDER_SWAMP, NO_MSG) \
MSG_MULTI_NOTIF(1, DEATH_SELF_FIRE, NO_MSG, INFO_DEATH_SELF_FIRE, CENTER_DEATH_SELF_FIRE) \
MSG_MULTI_NOTIF(1, DEATH_SELF_GENERIC, NO_MSG, INFO_DEATH_SELF_GENERIC, CENTER_DEATH_SELF_GENERIC) \
MSG_MULTI_NOTIF(1, DEATH_SELF_LAVA, NO_MSG, INFO_DEATH_SELF_LAVA, CENTER_DEATH_SELF_LAVA) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_CERBERUS_BITE, NO_MSG, INFO_DEATH_SELF_MON_CERBERUS_BITE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_CERBERUS_JUMP, NO_MSG, INFO_DEATH_SELF_MON_CERBERUS_JUMP, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_ANIMUS, NO_MSG, INFO_DEATH_SELF_MON_ANIMUS, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_STINGRAY, NO_MSG, INFO_DEATH_SELF_MON_STINGRAY, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_KNIGHT_CRUSH, NO_MSG, INFO_DEATH_SELF_MON_KNIGHT_CRUSH, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_KNIGHT_FBALL, NO_MSG, INFO_DEATH_SELF_MON_KNIGHT_FBALL, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_KNIGHT_INFERNO, NO_MSG, INFO_DEATH_SELF_MON_KNIGHT_INFERNO, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_KNIGHT_MELEE, NO_MSG, INFO_DEATH_SELF_MON_KNIGHT_MELEE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_KNIGHT_SPIKE, NO_MSG, INFO_DEATH_SELF_MON_KNIGHT_SPIKE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_BRUISER, NO_MSG, INFO_DEATH_SELF_MON_BRUISER, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_BRUTE_BLADE, NO_MSG, INFO_DEATH_SELF_MON_BRUTE_BLADE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_BRUTE_GRENADE, NO_MSG, INFO_DEATH_SELF_MON_BRUTE_GRENADE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_BRUTE_UZI, NO_MSG, INFO_DEATH_SELF_MON_BRUTE_UZI, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_MAGE, NO_MSG, INFO_DEATH_SELF_MON_MAGE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_SHAMBLER_CLAW, NO_MSG, INFO_DEATH_SELF_MON_SHAMBLER_CLAW, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_SHAMBLER_SMASH, NO_MSG, INFO_DEATH_SELF_MON_SHAMBLER_SMASH, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_SHAMBLER_ZAP, NO_MSG, INFO_DEATH_SELF_MON_SHAMBLER_ZAP, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_SPIDER, NO_MSG, INFO_DEATH_SELF_MON_SPIDER, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_SPIDER_FIRE, NO_MSG, INFO_DEATH_SELF_MON_SPIDER_FIRE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_SLIME, NO_MSG, INFO_DEATH_SELF_MON_SLIME, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_WYVERN, NO_MSG, INFO_DEATH_SELF_MON_WYVERN, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_ZOMBIE_JUMP, NO_MSG, INFO_DEATH_SELF_MON_ZOMBIE_JUMP, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_MON_ZOMBIE_MELEE, NO_MSG, INFO_DEATH_SELF_MON_ZOMBIE_MELEE, CENTER_DEATH_SELF_MONSTER) \
+ MSG_MULTI_NOTIF(1, DEATH_SELF_NADE, NO_MSG, INFO_DEATH_SELF_NADE, CENTER_DEATH_SELF_NADE) \
MSG_MULTI_NOTIF(1, DEATH_SELF_NOAMMO, NO_MSG, INFO_DEATH_SELF_NOAMMO, CENTER_DEATH_SELF_NOAMMO) \
MSG_MULTI_NOTIF(1, DEATH_SELF_ROT, NO_MSG, INFO_DEATH_SELF_ROT, CENTER_DEATH_SELF_ROT) \
MSG_MULTI_NOTIF(1, DEATH_SELF_SHOOTING_STAR, NO_MSG, INFO_DEATH_SELF_SHOOTING_STAR, CENTER_DEATH_SELF_SHOOTING_STAR) \
float autocvar_g_touchexplode_damage;
float autocvar_g_touchexplode_edgedamage;
float autocvar_g_touchexplode_force;
+float autocvar_g_invasion_round_timelimit;
+float autocvar_g_invasion_round_limit;
+float autocvar_g_invasion_warmup;
+float autocvar_g_invasion_monster_count;
+float autocvar_g_invasion_zombies_only;
+ #define autocvar_g_bloodloss cvar("g_bloodloss")
+ float autocvar_g_random_gravity_negative_chance;
+ float autocvar_g_random_gravity_min;
+ float autocvar_g_random_gravity_max;
+ float autocvar_g_random_gravity_positive;
+ float autocvar_g_random_gravity_negative;
+ float autocvar_g_random_gravity_delay;
+ float autocvar_g_nades;
+ float autocvar_g_nades_spawn;
+ float autocvar_g_nades_nade_lifetime;
+ float autocvar_g_nades_nade_minforce;
+ float autocvar_g_nades_nade_maxforce;
+ float autocvar_g_nades_nade_health;
+ float autocvar_g_nades_nade_refire;
+ float autocvar_g_nades_nade_damage;
+ float autocvar_g_nades_nade_edgedamage;
+ float autocvar_g_nades_nade_radius;
+ float autocvar_g_nades_nade_force;
+ float autocvar_g_nades_nade_newton_style;
+ float autocvar_g_campcheck_damage;
+ float autocvar_g_campcheck_distance;
+ float autocvar_g_campcheck_interval;
+ float autocvar_g_jump_grunt;
float do_crouch = self.BUTTON_CROUCH;
if(self.hook.state)
do_crouch = 0;
- if(self.health <= g_bloodloss)
- do_crouch = 1;
if(self.vehicle)
do_crouch = 0;
- if(self.freezetag_frozen)
+ if(self.frozen)
do_crouch = 0;
if(self.weapon == WEP_SHOTGUN && self.weaponentity.wframe == WFRAME_FIRE2 && time < self.weapon_nextthink)
do_crouch = 0;
*/
void PlayerJump (void)
{
+ if(self.frozen)
+ return; // no jumping in freezetag when frozen
++
+ float doublejump = FALSE;
- float mjumpheight;
- float doublejump;
+ player_multijump = doublejump;
+ if(MUTATOR_CALLHOOK(PlayerJump))
+ return;
+
+ doublejump = player_multijump;
- doublejump = FALSE;
+ float mjumpheight;
+
if (autocvar_sv_doublejump)
{
tracebox(self.origin + '0 0 0.01', self.mins, self.maxs, self.origin - '0 0 0.01', MOVE_NORMAL, self);
self.disableclientprediction = 0;
if(time < self.ladder_time)
self.disableclientprediction = 1;
- self.movement = '0 0 0';
+
+ if(self.frozen)
+ {
++ if(autocvar_sv_dodging_frozen && IS_REAL_CLIENT(self))
++ {
++ self.movement_x = bound(-5, self.movement_x, 5);
++ self.movement_y = bound(-5, self.movement_y, 5);
++ self.movement_z = bound(-5, self.movement_z, 5);
++ }
++ else
++ self.movement = '0 0 0';
+ self.disableclientprediction = 1;
+ }
MUTATOR_CALLHOOK(PlayerPhysics);
return 1;
}
-MUTATOR_HOOKFUNCTION(freezetag_PlayerPhysics)
-{
- if(self.freezetag_frozen)
- {
- if(autocvar_sv_dodging_frozen && IS_REAL_CLIENT(self))
- {
- self.movement_x = bound(-5, self.movement_x, 5);
- self.movement_y = bound(-5, self.movement_y, 5);
- self.movement_z = bound(-5, self.movement_z, 5);
- }
- else
- self.movement = '0 0 0';
-
- self.disableclientprediction = 1;
- }
- return 1;
-}
-
MUTATOR_HOOKFUNCTION(freezetag_PlayerDamage_Calculate)
{
- if(frag_target.freezetag_frozen && frag_deathtype != DEATH_HURTTRIGGER)
+ if(frag_target.frozen == 1 && frag_deathtype != DEATH_HURTTRIGGER)
{
+ if(autocvar_g_freezetag_revive_falldamage > 0)
+ if(frag_deathtype == DEATH_FALL)
+ if(frag_damage >= autocvar_g_freezetag_revive_falldamage)
+ {
+ freezetag_Unfreeze(frag_target);
+ frag_target.health = autocvar_g_freezetag_revive_falldamage_health;
+ pointparticles(particleeffectnum("iceorglass"), frag_target.origin, '0 0 0', 3);
+ Send_Notification(NOTIF_ALL, world, MSG_INFO, INFO_FREEZETAG_REVIVED_FALL, frag_target.netname);
+ Send_Notification(NOTIF_ONE, frag_target, MSG_CENTER, CENTER_FREEZETAG_REVIVE_FALL);
+ }
+
frag_damage = 0;
frag_force = frag_force * autocvar_g_freezetag_frozen_force;
}
float new_velocity_gain;
float velocity_difference;
float clean_up_and_do_nothing;
- if(self.freezetag_frozen)
+ float horiz_speed = autocvar_sv_dodging_horiz_speed;
+
++ if(self.frozen)
+ horiz_speed = autocvar_sv_dodging_horiz_speed_frozen;
if (self.deadflag != DEAD_NO)
return 0;
tap_direction_x = 0;
tap_direction_y = 0;
- frozen_dodging = (self.freezetag_frozen && autocvar_sv_dodging_frozen);
+
+ float frozen_dodging;
++ frozen_dodging = (self.frozen && autocvar_sv_dodging_frozen);
float dodge_detected;
if (g_dodging == 0)
mutators/gamemode_keepaway.qh
mutators/gamemode_nexball.qh
mutators/gamemode_lms.qh
+mutators/gamemode_invasion.qh
mutators/mutator_dodging.qh
+ mutators/mutator_nades.qh
//// tZork Turrets ////
tturrets/include/turrets_early.qh
tuba
turrets
weapons
+barricade
+monsters
+ ok_nade_counter