ZIPEXCLUDE ?= -x\!*.pk3 -xr\!\.svn -x\!qcsrc
DIFF ?= diff
-FTEQCCFLAGS ?= -Werror -Wall -Wno-mundane -O3 -Ono-c -Ono-cs -flo
+FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"^1$(shell git describe) TEST BUILD"'
+FTEQCCFLAGS ?= -Werror -Wall -Wno-mundane -O3 -Ono-c -Ono-cs -flo $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK)
FTEQCCFLAGS_PROGS ?=
FTEQCCFLAGS_MENU ?=
rm -f progs.dat menu.dat csprogs.dat
csprogs.dat: qcsrc/client/*.* qcsrc/common/*.* qcsrc/warpzonelib/*.*
+ @echo make[1]: Entering directory \`$(PWD)/qcsrc/client\'
cd qcsrc/client && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS)
progs.dat: qcsrc/server/*.* qcsrc/common/*.* qcsrc/server/*/*.* qcsrc/server/*/*/*.* qcsrc/warpzonelib/*.*
+ @echo make[1]: Entering directory \`$(PWD)/qcsrc/server\'
cd qcsrc/server && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_PROGS)
menu.dat: qcsrc/menu/*.* qcsrc/menu/*/*.* qcsrc/common/*.*
+ @echo make[1]: Entering directory \`$(PWD)/qcsrc/menu\'
cd qcsrc/menu && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_MENU)
gfx/menu/default/skinvalues.txt: qcsrc/menu/skin-customizables.inc
set g_balance_laser_secondary_delay 0
// }}}
// {{{ shotgun
-set g_balance_shotgun_primary_bullets 36
-set g_balance_shotgun_primary_damage 3
+set g_balance_shotgun_primary_bullets 25
+set g_balance_shotgun_primary_damage 4
set g_balance_shotgun_primary_force 10
set g_balance_shotgun_primary_spread 0.18
set g_balance_shotgun_primary_refire 1
set g_balance_uzi_first_spread 0.007
set g_balance_uzi_first_refire 0.15
set g_balance_uzi_first_ammo 1
-set g_balance_uzi_sustained_damage 7
-set g_balance_uzi_sustained_force 30
+set g_balance_uzi_sustained_damage 5
+set g_balance_uzi_sustained_force 10
set g_balance_uzi_sustained_spread 0.02
set g_balance_uzi_sustained_refire 0.1
set g_balance_uzi_sustained_ammo 1
set g_balance_crylink_secondary_line_fadetime 2
// }}}
// {{{ nex
-set g_balance_nex_damage 100
+set g_balance_nex_damage 80
set g_balance_nex_force 200
set g_balance_nex_refire 1.25
-set g_balance_nex_animtime 0.8
+set g_balance_nex_animtime 1.25
set g_balance_nex_ammo 5
set g_balance_nex_damagefalloff_mindist 1000
set g_balance_nex_damagefalloff_maxdist 3000
//bot configuration: name model skin shirt pants team keyboard use moving dodging ping weapon use aggressivity range aiming calmhand mouse fightthink aithink
//default team values (team-override): 1 = red, 2 = blue, 3 = yellow, 4 = pink
//use -1 for shirt-color or pants-color to get random colors
-Hellfire nexus 0 4 0 0 0 0 -0.5 -1 1 1 -0.5 -1 -1 2 0.5 -1
-Toxic nexus 1 14 7 0 -1 -1.5 -0.5 0 1 0 0 0 2 -0.5 -0.5 1
-Discovery nexus 0 2 6 0 0 -1 -0.5 -0.5 1 -0.5 0.5 1.5 -0.5 -1 1 0.5
-Pegasus nexus 0 13 11 0 1 1 1 1 -1 0 0.5 0 -2 0 -1 0
-Eureka nexus 0 12 7 0 0 0 -1.5 -0.5 -0.5 0 0 0 0 -0.5 1.5 1.5
-Airhead nexus 0 11 1 0 -1 -1.5 -1 -0.5 1 1 -1 1 -0.5 1 0.5 0
-Gator nexus 0 3 10 0 0 1 0 0.5 -0.5 0.5 -0.5 -1 0 0 -0.5 0
-Delirium nexus 1 8 12 0 0 -1 -1 -1 0 2 0 1 0 2 -1 -1
-Death nexus 0 4 11 0 -0.5 0 0 1 -0.5 0 1 0 0 0 0 0
-Scorcher nexus 0 13 13 0 0 -1 0 -0.5 0.5 1 0 1 -2 1 0 0
-Necrotic nexus 0 12 14 0 0 0 0 1 0 -1 -0.5 -1 1 0 0 0
-Dominator nexus 1 3 9 0 0 0 0 2 -1 0 0 0 -1 0 0 0
-Thunderstorm nexus 2 13 6 0 0 0 0 -0.5 -1 1 0.5 0.5 -0.5 0 0.5 0
-Mystery nexus 0 9 14 0 1 1 1 1 -1 -1 0 1 1 -2 -1 -1
-Lion nexus 0 0 4 0 1 1.5 2 -1 -1 -1 1 0 1 -0.5 -1 -1
-Sensible nexus 0 9 9 0 0 0 0.5 -1 0 -1 0 -1 2.5 -1.5 1 0.5
-Shadow nexus 0 4 8 0 -0.5 2 1 0 0 -1 0 -1 0 1 -1 -0.5
-Resurrection nexus 0 1 1 0 0 -0.5 -0.5 0 2 -1 -1 -1 0 -1 1 1
+Hellfire umbra 0 4 0 0 0 0 -0.5 -1 1 1 -0.5 -1 -1 2 0.5 -1
+Toxic umbra 0 14 7 0 -1 -1.5 -0.5 0 1 0 0 0 2 -0.5 -0.5 1
+Discovery umbra 0 2 6 0 0 -1 -0.5 -0.5 1 -0.5 0.5 1.5 -0.5 -1 1 0.5
+Pegasus umbra 0 13 11 0 1 1 1 1 -1 0 0.5 0 -2 0 -1 0
+Eureka umbra 0 12 7 0 0 0 -1.5 -0.5 -0.5 0 0 0 0 -0.5 1.5 1.5
+Airhead umbra 0 11 1 0 -1 -1.5 -1 -0.5 1 1 -1 1 -0.5 1 0.5 0
+Gator umbra 0 3 10 0 0 1 0 0.5 -0.5 0.5 -0.5 -1 0 0 -0.5 0
+Delirium umbra 0 8 12 0 0 -1 -1 -1 0 2 0 1 0 2 -1 -1
+Death umbra 0 4 11 0 -0.5 0 0 1 -0.5 0 1 0 0 0 0 0
+Scorcher umbra 0 13 13 0 0 -1 0 -0.5 0.5 1 0 1 -2 1 0 0
+Necrotic umbra 0 12 14 0 0 0 0 1 0 -1 -0.5 -1 1 0 0 0
+Dominator umbra 0 3 9 0 0 0 0 2 -1 0 0 0 -1 0 0 0
+Thunderstorm umbra 0 13 6 0 0 0 0 -0.5 -1 1 0.5 0.5 -0.5 0 0.5 0
+Mystery umbra 0 9 14 0 1 1 1 1 -1 -1 0 1 1 -2 -1 -1
+Lion umbra 0 0 4 0 1 1.5 2 -1 -1 -1 1 0 1 -0.5 -1 -1
+Sensible umbra 0 9 9 0 0 0 0.5 -1 0 -1 0 -1 2.5 -1.5 1 0.5
+Shadow umbra 0 4 8 0 -0.5 2 1 0 0 -1 0 -1 0 1 -1 -0.5
+Resurrection umbra 0 1 1 0 0 -0.5 -0.5 0 2 -1 -1 -1 0 -1 1 1
set g_xonoticversion 2.5svn "Xonotic version (formatted for humans)"
-//!<showbrand
-showbrand 3
-echo
-echo A warning about this being a SVN development version was set up.
-echo This build shall be used for development and testing only!
-echo
-echo If you want to disable this warning, add the line
-echo showbrand 0
-echo to your autoexec.cfg.
-echo
-//!>showbrand
-
// changes a cvar and reports it to the server (for the menu to notify the
// server about changes)
alias setreport "set \"$1\" \"$2\" ; sendcvar \"$1\""
// player defaults
_cl_color 102
_cl_name Player
-_cl_playermodel models/player/marine.zym
+_cl_playermodel models/player/umbra.iqm
_cl_playerskin 0
crosshair 1
seta crosshair_per_weapon 0 "when 1, each gun will display a different crosshair"
lightcolor 0.4 0.9 0.9
// cloud of particles which expand rapidly and then slow to form a ball
effect TE_WIZSPIKE
-count 100
+count 50
type static
color 0x63F2EA 0x63f2EA
size 2 2
size 24 24
// sparks that rapidly expand and rapidly slow down to form an interesting spherical effect
effect TE_KNIGHTSPIKE
-count 256
+count 128
type spark
color 0x800000 0xFF8020
alpha 256 256 1024
originjitter 6 6 6
// dust/smoke drifting away from the impact
effect TE_SPIKE
-count 8
+count 4
type smoke
tex 0 8
color 0x101010 0x101010
velocityjitter 8 8 8
// dust/smoke staying at the impact
effect TE_SPIKE
-count 1
+count 0.5
type smoke
tex 0 8
color 0x505050 0x505050
velocityjitter 0 0 0
// bouncing sparks
effect TE_SPIKE
-count 20
+count 10
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
alpha 256 256 128
// large sparks
effect TE_SPIKEQUAD
-count 20
+count 10
type static
color 0x2030FF 0x80C0FF
size 32 32
originjitter 6 6 6
// dust/smoke drifting away from the impact
effect TE_SUPERSPIKE
-count 8
+count 4
type smoke
tex 0 8
color 0x101010 0x101010
velocityjitter 8 8 8
// dust/smoke staying at the impact
effect TE_SUPERSPIKE
-count 1
+count 0.5
type smoke
tex 0 8
color 0x505050 0x505050
velocityjitter 0 0 0
// sparks that disappear on impact
effect TE_SUPERSPIKE
-count 30
+count 15
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
lightcolor 0.15 0.15 1.5
// dust/smoke drifting away from the impact
effect TE_SUPERSPIKEQUAD
-count 8
+count 4
type smoke
tex 0 8
color 0x101010 0x101010
velocityjitter 8 8 8
// dust/smoke staying at the impact
effect TE_SUPERSPIKEQUAD
-count 1
+count 0.5
type smoke
tex 0 8
color 0x505050 0x505050
velocityjitter 0 0 0
// sparks that disappear on impact
effect TE_SUPERSPIKEQUAD
-count 30
+count 15
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
originjitter 6 6 6
// dust/smoke drifting away from the impact
effect TE_GUNSHOT
-count 4
+count 2
type smoke
tex 0 8
color 0x101010 0x101010
velocityjitter 8 8 8
// dust/smoke staying at the impact
effect TE_GUNSHOT
-count 1
+count 0.5
type smoke
tex 0 8
color 0x505050 0x505050
velocityjitter 0 0 0
// bouncing sparks
effect TE_GUNSHOT
-count 10
+count 5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
alpha 256 256 512
// purple sparks
effect TE_GUNSHOTQUAD
-count 12
+count 6
type spark
color 0xA040C0 0xFFFFFF
size 1 1
// fire effect which expands then slows
effect TE_EXPLOSION
notunderwater
-count 128
+count 64
type static
tex 48 55
color 0x902010 0xFFD080
// underwater bubbles
effect TE_EXPLOSION
underwater
-count 32
+count 16
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect TE_EXPLOSION
notunderwater
-count 32
+count 16
type spark
color 0x903010 0xFFD030
size 2 2
// smoke cloud
effect TE_EXPLOSIONQUAD
notunderwater
-count 32
+count 16
type smoke
color 0x202020 0x404040
tex 0 8
// underwater bubbles
effect TE_EXPLOSIONQUAD
underwater
-count 32
+count 16
type bubble
tex 62 62
color 0x404040 0x808080
// sparks which go through walls
effect TE_EXPLOSIONQUAD
notunderwater
-count 128
+count 64
type spark
color 0x903010 0xFFD030
size 1 1
// smoke cloud
effect TE_TAREXPLOSION
notunderwater
-count 32
+count 16
type smoke
color 0x202020 0x404040
tex 0 8
// underwater bubbles
effect TE_TAREXPLOSION
underwater
-count 32
+count 16
type bubble
tex 62 62
color 0x404040 0x808080
// sparks which go through walls
effect TE_TAREXPLOSION
notunderwater
-count 128
+count 64
type spark
color 0x903010 0xFFD030
size 1 1
// bloody impact effect indicating damage
// used nowhere in code
effect TE_BLOOD
-count 0.333
+count 0.167
type blood
tex 24 32
size 8 8
// used in qcsrc/server/antilag.qc: te_spark(antilag_takebackorigin(e, time - e.antilag_debug), '0 0 0', 32)
// used in qcsrc/server/g_triggers.qc: self.mdl = "TE_SPARK"
effect TE_SPARK
-count 1
+count 0.5
type spark
tex 40 40
color 0x8f4333 0xfff31b
alpha 256 256 512
// small sparks which form a sphere as they slow down
effect TE_PLASMABURN
-count 256
+count 128
type spark
color 0x2030FF 0x80C0FF
size 1 2
// quake effect
// used nowhere in code
effect TE_FLAMEJET
-count 1
+count 0.5
type smoke
color 0x6f0f00 0xe3974f
size 4 4
// quake effect
// used nowhere in code
effect TE_LAVASPLASH
-count 64
+count 32
type alphastatic
color 0x6f0f00 0xe3974f
size 12 12
// player teleport effect
// used nowhere in code
effect TE_TELEPORT
-count 112
+count 56
type static
color 0xA0A0A0 0xFFFFFF
size 10 10
alpha 128 128 256
// experimental
effect TE_TEI_G3
-trailspacing 2
+trailspacing 4
type static
color 0x202020 0x404040
size 1 1
// smoke effect
// used nowhere in code
effect TE_TEI_SMOKE
-count 0.333
+count 0.167
type smoke
color 0x202020 0x404040
tex 0 8
// fire effect
effect TE_TEI_BIGEXPLOSION
notunderwater
-count 256
+count 128
type static
tex 48 55
color 0x902010 0xFFD080
// underwater bubbles
effect TE_TEI_BIGEXPLOSION
underwater
-count 64
+count 32
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect TE_TEI_BIGEXPLOSION
notunderwater
-count 128
+count 64
type spark
color 0x903010 0xFFD030
size 2 2
alpha 256 256 512
// cloud of bouncing sparks
effect TE_TEI_PLASMAHIT
-count 1
+count 0.5
type spark
color 0x2030FF 0x80C0FF
size 2 4
// used in qcsrc/client/gibs.qc: pointparticles(particleeffectnum("blood"), self.origin + '0 0 1', '0 0 30', 10)
// used in qcsrc/client/gibs.qc: pointparticles(particleeffectnum("blood"), org, vel, amount * 16)
effect blood
-count 0.333
+count 0.167
type blood
tex 24 32
size 3 8
// used in qcsrc/server/t_teleporters.qc: pointparticles(particleeffectnum("teleport"), player.origin, '0 0 0', 1)
// used in qcsrc/server/t_teleporters.qc: pointparticles(particleeffectnum("teleport"), to + v_forward * 32, '0 0 0', 1)
effect teleport
-count 1000
+count 500
type spark
tex 64 64
color 0xff8400 0xff2a00
// normal super gory blood trail (used by gibs)
// used in qcsrc/client/gibs.qc: trailparticles(self, particleeffectnum("TR_BLOOD"), oldorg, self.origin)
effect TR_BLOOD
-trailspacing 16
+trailspacing 32
type blood
color 0xA8FFFF 0xA8FFFF
tex 24 32
// thinner blood trail (used by quake zombies)
// used in qcsrc/client/gibs.qc: trailparticles(self, particleeffectnum("TR_SLIGHTBLOOD"), oldorg, self.origin)
effect TR_SLIGHTBLOOD
-trailspacing 32
+trailspacing 64
type blood
color 0xA8FFFF 0xA8FFFF
tex 24 32
// used in qcsrc/server/g_triggers.qc: self.effects = EF_STARDUST
// used in qcsrc/server/portals.qc: portal.effects = EF_STARDUST | EF_BLUE
effect EF_STARDUST
-count 75
+count 37.5
type static
color 0xfff368 0xfff368
size 1.0 2.0
alpha 128 128 128
// cloud of particles which expand rapidly and then slow to form a ball
effect item_respawn
-count 256
+count 128
type spark
tex 41 41
color 0x63F2EA 0x63f2EA
lightcolor 3 0.1 0.1
// electricity
effect laser_muzzleflash
-count 6
+count 3
type spark
color 0xb44215 0xff0000
tex 43 43
rotate -180 180 4000 -4000
// fire
effect laser_muzzleflash
-count 12
+count 6
type spark
color 0xff4200 0xff0000
tex 8 15
size 24 24
// sparks that rapidly expand and rapidly slow down to form an interesting spherical effect
effect laser_impact
-count 256
+count 128
type spark
color 0x800000 0xFF8020
alpha 256 256 1024
//originjitter 32 32 32
velocityjitter 256 256 256
effect laser_impact
-count 8
+count 4
type smoke
tex 48 55
color 0x800000 0xFF8020
// used in qcsrc/server/w_shotgun.qc: pointparticles(particleeffectnum("shotgun_muzzleflash"), w_shotorg, w_shotdir * 1000, cvar("g_balance_shotgun_primary_ammo"))
// used in qcsrc/server/w_shotgun.qc: pointparticles(particleeffectnum("shotgun_muzzleflash"), w_shotorg, w_shotdir * 1000, cvar("g_balance_shotgun_secondary_ammo"))
effect shotgun_muzzleflash
-count 3
+count 1.5
type smoke
color 0x202020 0x404040
tex 0 8
sizeincrease 12
velocitymultiplier 0.05
effect shotgun_muzzleflash
-count 32
+count 16
type spark
tex 48 55
color 0xffdb96 0xff5400
type alphastatic
notunderwater
tex 0 8
-count 6
+count 3
size 10 20
sizeincrease 25
alpha 300 550 756
type alphastatic
notunderwater
tex 36 36
-count 1
+count 0.5
size 10 11
sizeincrease 74
alpha 200 350 500
// sparks
effect shotgun_impact
notunderwater
-count 3
+count 1.5
type spark
tex 40 40
color 0xFDFFD9 0xFDFFD9
// used in qcsrc/server/w_uzi.qc: pointparticles(particleeffectnum("uzi_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
effect uzi_muzzleflash
-count 2
+count 1
type static
color 0x202020 0x404040
tex 0 8
lightcolor 2 1.5 0.2
gravity -0.1
effect uzi_muzzleflash
-count 20
+count 10
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
type alphastatic
notunderwater
tex 0 8
-count 6
+count 3
size 10 20
sizeincrease 15
alpha 300 550 456
type alphastatic
notunderwater
tex 36 36
-count 1
+count 0.5
size 10 11
sizeincrease 74
alpha 200 350 500
type alphastatic
notunderwater
tex 66 68
-count 2
+count 1
size 1 5
airfriction 1
gravity 1.4
// sparks
effect machinegun_impact
notunderwater
-count 2
+count 1
type spark
tex 40 40
color 0xFDFFD9 0xFDFFD9
// used in qcsrc/server/w_grenadelauncher.qc: pointparticles(particleeffectnum("grenadelauncher_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
// used in qcsrc/server/w_porto.qc: //pointparticles(particleeffectnum("grenadelauncher_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
effect grenadelauncher_muzzleflash
-count 3
+count 1.5
type smoke
color 0x202020 0x404040
tex 0 8
lightradiusfade 2000
lightcolor 2 1.5 0.2
effect grenadelauncher_muzzleflash
-count 32
+count 16
type spark
tex 48 55
color 0xffdb96 0xff5400
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_GRENADE"), from, to)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_GRENADE"), from, to)
effect TR_GRENADE
-trailspacing 2
+trailspacing 4
type smoke
color 0x101010 0x000000
tex 0 8
// fire
effect TR_GRENADE
notunderwater
-trailspacing 2
+trailspacing 4
type static
color 0xffdf72 0x811200
tex 48 55
// bubbles
effect TR_GRENADE
underwater
-trailspacing 8
+trailspacing 16
type bubble
tex 62 62
color 0x404040 0x808080
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_KNIGHTSPIKE"), from, to)
effect TR_KNIGHTSPIKE // used for MF_TRACER2
notunderwater
-trailspacing 3
+trailspacing 6
type smoke
color 0x303030 0x000000
tex 0 8
tex 62 62
size 1 1
sizeincrease -0.1
-trailspacing 1
+trailspacing 2
alpha 256 256 720
// bubbles
effect TR_KNIGHTSPIKE // used for MF_TRACER2
underwater
-trailspacing 16
+trailspacing 32
type bubble
tex 62 62
color 0x404040 0x808080
// fire effect which expands then slows
effect grenade_explode
notunderwater
-count 80
+count 40
type static
tex 48 55
color 0xe03f00 0x5e0000
// fire effect which make brigt dot inside
effect grenade_explode
notunderwater
-count 30
+count 15
type static
tex 48 55
color 0xe03f00 0xffdf92
type alphastatic
notunderwater
tex 0 8
-count 20
+count 10
size 20 40
sizeincrease 34
alpha 300 550 556
// underwater bubbles
effect grenade_explode
underwater
-count 64
+count 32
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect grenade_explode
notunderwater
-count 32
+count 16
type spark
tex 40 40
color 0xffa35b 0xfff2be
// derbis
effect grenade_explode
notunderwater
-count 24
+count 12
type alphastatic
tex 66 68
color 0x6a3d25 0xcac5b4
lightcolor 1.5 3 6
effect electro_muzzleflash
-count 14
+count 7
type spark
tex 8 15
color 0xD9FDFF 0xD9FDFF
stretchfactor 1.5
effect electro_muzzleflash
-count 10
+count 5
type spark
tex 41 41
color 0xD9FDFF 0xD9FDFF
// glowing vapor trail
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_NEXUIZPLASMA"), from, to)
effect TR_NEXUIZPLASMA
-trailspacing 1
+trailspacing 2
type static
color 0x283880 0x283880
size 3 3
velocitymultiplier -0.1
// bright sparks
effect TR_NEXUIZPLASMA
-trailspacing 6
-count 3
+trailspacing 12
+count 1.5
type snow
tex 42 42
color 0x629dff 0x0018ff
alpha 256 256 512
// cloud of bouncing sparks
effect electro_impact
-count 60
+count 30
type smoke
tex 42 42
color 0x629dff 0x0018ff
rotate -180 180 -9999 9999
// inner cloud of smoke
effect electro_impact
-count 60
+count 30
type smoke
color 0x629dff 0x0018ff
tex 0 8
alpha 256 256 512
// cloud of bouncing sparks
effect electro_ballexplode
-count 128
+count 64
type spark
tex 41 41
color 0xFDFFD9 0xFDFFD9
velocityjitter 512 512 512
// inner cloud of smoke
effect electro_ballexplode
-count 16
+count 8
type smoke
color 0x202020 0x404040
tex 0 8
alpha 128 128 64
// large sparks
effect electro_combo
-count 10
+count 5
type static
color 0x2030FF 0x80C0FF
size 32 32
//velocityoffset 0 0 120
velocityjitter 512 512 512
effect electro_combo
-count 64
+count 32
type spark
tex 41 41
color 0xa9cacf 0x0054ff
velocityjitter 312 312 312
// inner cloud of smoke
effect electro_combo
-count 0.25
+count 0.125
type smoke
color 0x202020 0x404040
tex 0 8
// used in qcsrc/server/w_crylink.qc: pointparticles(particleeffectnum("crylink_muzzleflash"), w_shotorg, w_shotdir * 1000, shots)
// used in qcsrc/server/w_crylink.qc: pointparticles(particleeffectnum("crylink_muzzleflash"), w_shotorg, w_shotdir * 1000, shots)
effect crylink_muzzleflash
-count 1
+count 0.5
type smoke
color 0xdd9cff 0xff0090
tex 65 65
lightradiusfade 2000
lightcolor 1.6 0.2 2
effect crylink_muzzleflash
-count 10
+count 5
type spark
tex 35 36
color 0xA080C0 0xA080C0
alpha 256 256 512
// purple sparks
effect crylink_impact
-count 20
+count 10
type spark
tex 41 41
color 0xA040C0 0xA040C0
velocityjitter 256 256 256
// purple splash
effect crylink_impact
-count 3
+count 1.5
type static
color 0xE070FF 0xE070FF
size 8 8
velocityjitter 8 8 8
// purple splash
effect crylink_impact
-count 3
+count 1.5
type static
color 0xE070FF 0xE070FF
size 8 8
// used in qcsrc/server/w_minstanex.qc: pointparticles(particleeffectnum("nex_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
// used in qcsrc/client/particles.qc: pointparticles(particleeffectnum("nex_muzzleflash"), shotorg, normalize(endpos - shotorg) * 1000, 1)
effect nex_muzzleflash
-count 24
+count 12
type spark
color 0x202020 0x0072ff
tex 48 55
lightradiusfade 200
lightcolor 2 2.5 3
effect nex_muzzleflash
-count 100
+count 50
type spark
tex 41 41
color 0xD9FDFF 0xD9FDFF
// nex beam: ring smoke
// used in qcsrc/client/particles.qc: trailparticles(world, particleeffectnum("nex_beam"), shotorg, endpos)
effect nex_beam
-trailspacing 32
+trailspacing 64
color 0x1680A0 0x1680A0
size 4 4
tex 32 32
type static
// nex beam: drifting smoke
effect nex_beam
-trailspacing 6
+trailspacing 12
color 0x5080A0 0x5080A0
size 1 1
tex 0 8
type static
// nex beam: bright core
effect nex_beam
-trailspacing 6
+trailspacing 12
color 0x80CDFF 0x80CDFF
size 4 4
//tex 48 55
type static
//sparks
effect nex_beam
-trailspacing 8
+trailspacing 16
color 0x1680A0 0x1680A0
size 1 1
tex 63 63
rotate -180 180 0 0
// rotating something
effect nex_impact
-count 10
+count 5
type smoke
tex 46 46
color 0x1680A0 0x1680A0
//velocityjitter 384 384 384
// small sparks which glow brightly but live briefly
effect nex_impact
-count 128
+count 64
type spark
tex 41 41
color 0xD9FDFF 0xD9FDFF
airfriction 9
// small sparks that live longer
effect nex_impact
-count 32
+count 16
type spark
tex 41 41
color 0xD9FDFF 0xD9FDFF
// used in qcsrc/server/w_hagar.qc: pointparticles(particleeffectnum("hagar_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
// used in qcsrc/server/w_seeker.qc: pointparticles(particleeffectnum("hagar_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
effect hagar_muzzleflash
-count 4
+count 2
type smoke
color 0x202020 0x404040
tex 0 8
lightradiusfade 2000
lightcolor 2 1.5 0.2
effect hagar_muzzleflash
-count 30
+count 15
type spark
tex 48 55
color 0xff8400 0xff4200
// used in qcsrc/server/w_hagar.qc: pointparticles(particleeffectnum("hagar_bounce"), self.origin, self.velocity, 1)
effect hagar_bounce
-count 4
+count 2
type smoke
color 0x202020 0x404040
tex 0 8
lightradiusfade 300
lightcolor 2 1.5 0.2
effect hagar_bounce
-count 30
+count 15
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
// fire effect which make bright dot inside
effect hagar_explode
notunderwater
-count 10
+count 5
type smoke
tex 48 55
color 0xffe955 0xff5a00
// fire effect which expands then slows
effect hagar_explode
notunderwater
-count 24
+count 12
type static
tex 48 55
color 0x8f0d00 0xff5a00
type alphastatic
notunderwater
tex 0 8
-count 20
+count 10
size 20 40
sizeincrease 20
alpha 200 500 600
// underwater bubbles
effect hagar_explode
underwater
-count 32
+count 16
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect hagar_explode
notunderwater
-count 8
+count 4
type spark
tex 40 40
color 0xffa35b 0xfff2be
// used in qcsrc/server/w_rocketlauncher.qc: pointparticles(particleeffectnum("rocketlauncher_muzzleflash"), w_shotorg, w_shotdir * 1000, 1)
effect rocketlauncher_muzzleflash
-count 20
+count 10
type smoke
color 0x202020 0x404040
tex 0 8
//lightradiusfade 2000
//lightcolor 2 1.5 0.2
effect rocketlauncher_muzzleflash
-count 12
+count 6
type smoke
tex 35 36
color 0xFFFDD9 0xFFFDD9
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_ROCKET"), from, to)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_ROCKET"), from, to)
effect TR_ROCKET
-trailspacing 5
+trailspacing 10
type smoke
notunderwater
color 0x000000 0x666666
//gravity -0.11
// fire
effect TR_ROCKET
-trailspacing 2
+trailspacing 4
type static
color 0xffdf72 0x811200
tex 48 55
effect TR_ROCKET
type bubble
underwater
-trailspacing 8
+trailspacing 16
tex 62 62
size 1 2
alpha 256 256 256
// sparks
effect TR_ROCKET
notunderwater
-trailspacing 10
+trailspacing 20
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
// fire effect
effect rocket_explode
notunderwater
-count 64
+count 32
type static
tex 48 55
color 0x8f0d00 0xff5a00
// fire effect 2
effect rocket_explode
notunderwater
-count 28
+count 14
type smoke
tex 48 55
color 0xea691b 0xeed05a
type alphastatic
notunderwater
tex 0 8
-count 64
+count 32
size 20 40
sizeincrease 44
alpha 200 450 456
// underwater bubbles
effect rocket_explode
underwater
-count 64
+count 32
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect rocket_explode
notunderwater
-count 32
+count 16
type spark
tex 40 40
color 0xffa35b 0xfff2be
// derbis
effect rocket_explode
notunderwater
-count 24
+count 12
type alphastatic
tex 66 68
color 0x6a3d25 0xcac5b4
// used nowhere in code
effect nex242_misc_laser_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_beam_fast_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_green_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_blue_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_yellow_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_cyan_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_magenta_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_white_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_black_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
// used nowhere in code
effect nex242_misc_laser_orange_beam_end
-count 1
+count 0.5
type spark
color 0x8f4333 0xfff31b
size 0.4 0.4
alpha 256 256 512
// purple sparks
effect crylink_impactbig
-count 80
+count 40
type spark
tex 41 41
color 0xA040C0 0xA040C0
velocityjitter 512 512 512
// purple splash
effect crylink_impactbig
-count 3
+count 1.5
type static
color 0xE070FF 0xE070FF
size 16 16
velocityjitter 32 32 32
// purple splash
effect crylink_impactbig
-count 6
+count 3
type static
color 0xE070FF 0xE070FF
size 16 16
// used in qcsrc/client/gibs.qc: pointparticles(particleeffectnum("damage_hit"), org, vel, amount * 16)
effect damage_hit
tex 48 55
-count 1
+count 0.5
type alphastatic
color 0x00FFFF 0xFF00FF
size 16 16
velocityjitter 256 256 256
effect damage_hit
tex 48 55
-count 1
+count 0.5
type alphastatic
color 0xFF00FF 0xFFFF00
size 16 16
velocityjitter 256 256 256
effect damage_hit
tex 48 55
-count 1
+count 0.5
type alphastatic
color 0xFFFF00 0x00FFFF
size 16 16
// used in qcsrc/client/gibs.qc: pointparticles(particleeffectnum("damage_dissolve"), org, vel, amount)
effect damage_dissolve
tex 48 55
-count 30
+count 15
type alphastatic
color 0x00FFFF 0xFF00FF
size 32 32
velocityjitter 512 512 512
effect damage_dissolve
tex 48 55
-count 30
+count 15
type alphastatic
color 0xFF00FF 0xFFFF00
size 32 32
velocityjitter 512 512 512
effect damage_dissolve
tex 48 55
-count 30
+count 15
type alphastatic
color 0xFFFF00 0x00FFFF
size 32 32
originjitter 6 6 6
// dust/smoke drifting away from the impact
effect laser_deadly
-count 0.05 // 50 per second
+count 0.025
type smoke
tex 48 55
color 0xFFFFFF 0xFFFFFF
// sparks
effect laser_deadly
notunderwater
-count 0.05 // 50 per second
+count 0.025
type spark
tex 40 40
color 0xFDFFD9 0xFDFFD9
// used nowhere in code
effect torch_small
//notunderwater
-count 16
+count 8
type smoke
tex 48 55
size 1 11
// smoke
effect torch_small
type alphastatic
-count 8
+count 4
tex 0 8
size 5 10
sizeincrease 5
//fountain01
// used nowhere in code
effect fountain01
-count 32
+count 16
tex 0 8
size 10 15
alpha 0 100 100
// decal
// used in qcsrc/client/damage.qc: pointparticles(particleeffectnum("hookbomb_explode"), org2, '0 0 0', 1)
effect hookbomb_explode
-count 50
+count 25
type static
tex 38 38
color 0x807aff 0x4463d5
originjitter 6 6 6
// some sparks
effect hookbomb_explode
-count 60
+count 30
type spark
tex 38 38
color 0x807aff 0x4463d5
// smoke
effect EF_MGTURRETTRAIL
notunderwater
-trailspacing 5
+trailspacing 10
type smoke
color 0xd0d0a0 0xffffff
tex 0 8
// bubbles
effect EF_MGTURRETTRAIL
underwater
-trailspacing 16
+trailspacing 32
type bubble
tex 62 62
color 0x404040 0x808080
// used nowhere in code
effect fire_big
//notunderwater
-count 52
+count 26
type smoke
tex 48 55
size 11 31
// smoke
effect fire_big
type alphastatic
-count 22
+count 11
tex 0 8
size 22 33
sizeincrease 11
// used nowhere in code
effect red_flare
type alphastatic
-count 21
+count 10.5
tex 0 8
size 1 11
sizeincrease 11
// used nowhere in code
effect blue_flare
type alphastatic
-count 21
+count 10.5
tex 0 8
size 1 11
sizeincrease 11
// used in qcsrc/server/ctf.qc: pointparticles(particleeffectnum("smoke_ring"), 0.5 * (self.absmin + self.absmax), '0 0 0', 1);
effect smoke_ring
type smoke
-count 90
+count 45
tex 0 8
size 1 11
sizeincrease 21
// used nowhere in code
effect smoke_large
type alphastatic
-count 50
+count 25
tex 0 8
size 11 21
sizeincrease 21
//sparks
// used nowhere in code
effect sparks
-count 30
+count 15
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
//sparks
// used nowhere in code
effect electricity_sparks
-count 70
+count 35
type spark
tex 40 40
color 0x807aff 0x4463d5
// used nowhere in code
effect steam
type smoke
-count 2
+count 1
tex 0 8
size 1 3
sizeincrease 7
// smoke emiter
// used nowhere in code
effect smoking
-count 20
+count 10
type alphastatic
tex 0 8
color 0x292929 0x000000
//golden dust (create it once per second to cover large area in small yellow particles)
// used nowhere in code
effect goldendust
-count 50
+count 25
type snow
tex 38 38
color 0xff9600 0xffefb8
// used nowhere in code
effect healing_fx
-count 50
+count 25
type spark
tex 40 40
color 0xff0000 0xff0000
// used nowhere in code
effect armorrepair_fx
-count 50
+count 25
type spark
tex 40 40
color 0x00ff00 0x00ff00
// used nowhere in code
effect ammoregen_fx
-count 50
+count 25
type spark
tex 40 40
color 0x0000ff 0x0000ff
// red-yellow flame like fx
// used nowhere in code
effect rage
-count 5
+count 2.5
type smoke
tex 35 36
color 0xff0000 0xff7800
// pieces of glass or ice falling on the floor
// used nowhere in code
effect iceorglass
-count 30
+count 15
type alphastatic
tex 44 44
color 0xffffff 0xb2d3e6
// cover small area in poison gas, spawn it once per second
// used nowhere in code
effect poisonfield
-count 30
+count 15
type smoke
tex 0 8
color 0x00ff00 0x7db843
// cover small area in icy mist, spawn it once per second
// used nowhere in code
effect icefield
-count 20
+count 10
type smoke
tex 0 8
color 0x008aff 0x75e7ff
velocityjitter 5 5 30
airfriction 1
effect icefield
-count 10
+count 5
type smoke
tex 48 55
size 1 1
// flames that go up
// used nowhere in code
effect firefield
-count 200
+count 100
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1
//flames that stay on the ground
effect firefield
-count 100
+count 50
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
originjitter 180 180 0
// smoke
effect firefield
-count 40
+count 20
type alphastatic
tex 0 8
size 1 1
//fast fire
// used nowhere in code
effect flamethrower
-count 6
+count 3
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
//slowfire
effect flamethrower
-count 5
+count 2.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
// very slow and small fire
effect flamethrower
-count 3
+count 1.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//decreasing fire
effect flamethrower
-count 4
+count 2
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//smoke
effect flamethrower
-count 1
+count 0.5
type alphastatic
tex 0 8
size 5 15
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_WIZSPIKE"), from, to)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_WIZSPIKE"), from, to)
effect TR_WIZSPIKE
-trailspacing 2
+trailspacing 4
type static
color 0x404040 0x404040
size 3 3
velocitymultiplier -0.1
// bright sparks
effect TR_WIZSPIKE
-trailspacing 6
-count 3
+trailspacing 12
+count 1.5
type snow
tex 42 42
color 0x404040 0x404040
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_VORESPIKE"), from, to)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_VORESPIKE"), from, to)
effect TR_VORESPIKE
-trailspacing 2
+trailspacing 4
type static
color 0x804000 0x804000
size 3 3
velocitymultiplier -0.1
// bright sparks
effect TR_VORESPIKE
-trailspacing 6
-count 3
+trailspacing 12
+count 1.5
type snow
tex 42 42
color 0xff8000 0xff8000
// fire effect which make bright dot inside
effect flac_explode
notunderwater
-count 6
+count 3
type smoke
tex 48 55
color 0xffe955 0xff5a00
// fire effect which expands then slows
effect flac_explode
notunderwater
-count 12
+count 6
type static
tex 48 55
color 0x8f0d00 0xff5a00
type alphastatic
notunderwater
tex 0 8
-count 10
+count 5
size 10 20
sizeincrease 20
alpha 500 600 556
// underwater bubbles
effect flac_explode
underwater
-count 16
+count 8
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect flac_explode
notunderwater
-count 8
+count 4
type spark
color 0x903010 0xFFD030
size 2 2
// used in qcsrc/server/w_common.qc: zcurveparticles_from_tracetoss(particleeffectnum("tr_bullet"), self.origin, trace_endpos, self.velocity)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("tr_bullet"), from, to)
effect tr_bullet
-trailspacing 128
+trailspacing 256
type spark
color 0x800000 0xFF8020
alpha 256 256 2560
// smoke emitter for small pipes
// used nowhere in code
effect smoking_smallemitter
-count 20
+count 10
type alphastatic
tex 0 8
color 0x292929 0x000000
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_CRYLINKPLASMA"), from, to)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("TR_CRYLINKPLASMA"), from, to)
effect TR_CRYLINKPLASMA
-trailspacing 64
+trailspacing 128
type static
color 0x5522aa 0x6622ff
size 2 2
velocitymultiplier -0.01
// crylink main trail
effect TR_CRYLINKPLASMA
-trailspacing 8
+trailspacing 16
type static
color 0x5522aa 0x6622ff
size 3 3
velocitymultiplier 0.01
effect cherryblossom
-count 3
+count 1.5
type static
color 0xb123ff 0xb183ff
size 1.5 2
//lighttime 0
effect alien_blood
-count 0.333
+count 0.167
type blood
tex 24 32
size 3 8
originjitter 11 11 11
effect robot_blood
-count 0.333
+count 0.167
type blood
tex 24 32
size 3 8
effect alien_TR_BLOOD
-trailspacing 16
+trailspacing 32
type blood
color 0xC080B0 0xC080B0
tex 24 32
staintex 16 24
effect robot_TR_BLOOD
-trailspacing 16
+trailspacing 32
type blood
color 0xC0D890 0xC0D890
tex 24 32
staintex 16 24
effect alien_TR_SLIGHTBLOOD
-trailspacing 32
+trailspacing 64
type blood
color 0xC080B0 0xC080B0
tex 24 32
staintex 16 24
effect robot_TR_SLIGHTBLOOD
-trailspacing 32
+trailspacing 64
type blood
color 0xC0D890 0xC0D890
tex 24 32
alpha 128 64 64
// cloud of particles which expand rapidly and then slow to form a ball
effect item_pickup
-count 64
+count 32
type spark
tex 41 41
color 0x63F2EA 0xB0C5C4
// used in qsrc/server/ctf.qc: pointparticles(particleeffectnum("red_ground_quake"), self.origin, '0 0 0', 1);
effect red_ground_quake
type smoke
-count 180
+count 90
tex 0 8
size 20 50
sizeincrease 100
notunderwater
effect red_ground_quake
type smoke
-count 80
+count 40
tex 0 8
size 10 30
sizeincrease 60
notunderwater
effect red_ground_quake
//notunderwater
-count 32
+count 16
type smoke
tex 48 55
size 4 20
// smoke
effect red_ground_quake
type alphastatic
-count 22
+count 11
tex 0 8
size 22 33
sizeincrease 11
// used in qsrc/server/ctf.qc: pointparticles(particleeffectnum("blue_ground_quake"), self.origin, '0 0 0', 1);
effect blue_ground_quake
type smoke
-count 180
+count 90
tex 0 8
size 20 50
sizeincrease 100
notunderwater
effect blue_ground_quake
type smoke
-count 80
+count 40
tex 0 8
size 10 30
sizeincrease 60
notunderwater
effect blue_ground_quake
//notunderwater
-count 32
+count 16
type smoke
tex 48 55
size 4 20
// smoke
effect blue_ground_quake
type alphastatic
-count 22
+count 11
tex 0 8
size 22 33
sizeincrease 11
// used in qcsrc/client/gibs.qc: pointparticles(particleeffectnum("damage_hit"), org, vel, amount * 16)
effect morphed_damage_hit
tex 43 43
-count 1
+count 0.5
type spark
color 0xffffff 0x9271fb
size 14 24
effect morphed_damage_hit
tex 0 8
-count 1
+count 0.5
type smoke
color 0xffffff 0x9271fb
size 24 24
// used in qcsrc/client/gibs.qc: pointparticles(particleeffectnum("damage_dissolve"), org, vel, amount)
effect morphed_damage_dissolve
tex 43 43
-count 20
+count 10
type smoke
color 0xffffff 0x9271fb
size 40 40
effect morphed_damage_dissolve
tex 43 43
-count 5
+count 2.5
type smoke
color 0x7bdbff 0xbed2ff
size 40 40
effect morphed_damage_dissolve
tex 65 65
-count 10
+count 5
type smoke
color 0xffffff 0x9271fb
size 44 44
effect morphed_damage_dissolve
tex 46 46
-count 30
+count 15
type smoke
color 0xffffff 0x9271fb
size 32 32
alpha 128 128 256
// experimental
effect TE_TEI_G3RED
-trailspacing 4
+trailspacing 8
type static
color 0x200000 0x400000
size 0.3 0.3
alpha 128 128 256
// experimental
effect TE_TEI_G3RED_HIT
-trailspacing 10
+trailspacing 20
type static
color 0xFFFFFF 0xFF0011
size 2 2
type smoke
// rings
effect TE_TEI_G3RED_HIT
-trailspacing 20
+trailspacing 40
type static
color 0xFF0000 0xFF0011
size 10 10
alpha 128 128 256
// experimental
effect TE_TEI_G3BLUE
-trailspacing 4
+trailspacing 8
type static
color 0x000020 0x000040
size 0.3 0.3
alpha 128 128 256
// experimental
effect TE_TEI_G3BLUE_HIT
-trailspacing 10
+trailspacing 20
type static
color 0xFFFFFF 0x100FF
size 2 2
type smoke
// rings
effect TE_TEI_G3BLUE_HIT
-trailspacing 20
+trailspacing 40
type static
color 0x0000FF 0x1100FF
size 10 10
size 4 4
alpha 128 128 256
effect TE_TEI_G3YELLOW
-trailspacing 4
+trailspacing 8
type static
color 0x202000 0x404000
size 0.3 0.3
size 8 8
alpha 128 128 256
effect TE_TEI_G3YELLOW_HIT
-trailspacing 10
+trailspacing 20
type static
color 0xFFFFFF 0xffff10
size 2 2
type smoke
// rings
effect TE_TEI_G3YELLOW_HIT
-trailspacing 20
+trailspacing 40
type static
color 0xffff00 0xffff11
size 10 10
alpha 128 128 256
// experimental
effect TE_TEI_G3PINK
-trailspacing 4
+trailspacing 8
type static
color 0x200020 0x400040
size 0.3 0.3
alpha 128 128 256
// experimental
effect TE_TEI_G3PINK_HIT
-trailspacing 10
+trailspacing 20
type static
color 0xFFFFFF 0xFF10FF
size 2 2
type smoke
// rings
effect TE_TEI_G3PINK_HIT
-trailspacing 20
+trailspacing 40
type static
color 0xFF00FF 0xFF11FF
size 10 10
// core decal
effect particlegibs_damage_hit
type blood
-count 1
+count 0.5
tex 0 8
size 5 10
color 0xA8FFFF 0xA8FFFFF
// front blood
effect particlegibs_damage_hit
type blood
-count 0.2
+count 0.1
tex 24 32
size 10 20
color 0xA8FFFF 0xA8FFFFF
// back blood
effect particlegibs_damage_hit
type blood
-count 0.2
+count 0.1
tex 24 32
size 5 15
color 0xA8FFFF 0xA8FFFFF
// small core blood no decals
effect particlegibs_damage_dissolve
type blood
-count 64
+count 32
tex 0 8
size 15 20
color 0x00ffff 0x82ffff
// core decal
effect particlegibs_damage_dissolve
type blood
-count 24
+count 12
tex 0 8
size 20 40
color 0xA8FFFF 0xA8FFFFF
// front blood
effect particlegibs_damage_dissolve
type blood
-count 64
+count 32
tex 24 32
size 10 20
color 0xA8FFFF 0xA8FFFFF
// back blood
effect particlegibs_damage_dissolve
type blood
-count 64
+count 32
tex 24 32
size 5 15
color 0xA8FFFF 0xA8FFFFF
// small bits
effect particlegibs_damage_dissolve
type blood
-count 150
+count 75
tex 24 32
size 1 1
color 0xA8FFFF 0xA8FFFFF
// fire effect which expands then slows
effect onslaught_generator_gib_explode
notunderwater
-count 34
+count 17
type static
tex 48 55
color 0x8f0d00 0xff5a00
type alphastatic
notunderwater
tex 0 8
-count 12
+count 6
size 1 10
sizeincrease 90
gravity -0.3
// underwater bubbles
effect onslaught_generator_gib_explode
underwater
-count 32
+count 16
type bubble
tex 62 62
color 0x404040 0x808080
// fire effect which expands then slows
effect onslaught_generator_gib_flame
notunderwater
-count 30
+count 15
type static
tex 48 55
color 0x8f0d00 0xff5a00
type alphastatic
notunderwater
tex 0 8
-count 2
+count 1
size 10 20
sizeincrease 30
gravity -0.8
// underwater bubbles
effect onslaught_generator_gib_flame
underwater
-count 32
+count 16
type bubble
tex 62 62
color 0x404040 0x808080
// used nowhere in code
effect firemine
-trailspacing 1
-count 1
+trailspacing 2
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
//slowfire
effect firemine
-trailspacing 1
-count 1
+trailspacing 2
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
// very slow and small fire
effect firemine
-trailspacing 2
-count 1
+trailspacing 4
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//decreasing fire
effect firemine
-trailspacing 2
-count 1
+trailspacing 4
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//smoke
effect firemine
-trailspacing 4
-count 1
+trailspacing 8
+count 0.5
type alphastatic
tex 0 8
size 1 4
airfriction 1
//fastfire
effect firemine
-trailspacing 0.5
-count 1
+trailspacing 1
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
// light only
effect firemine
-trailspacing 8
+trailspacing 16
lightradius 50
lightradiusfade 50000
lightcolor 2.7 2.7 0.6
// used nowhere in code
effect fireball
-trailspacing 1
-count 1
+trailspacing 2
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
//slowfire
effect fireball
-trailspacing 1
-count 1
+trailspacing 2
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
// very slow and small fire
effect fireball
-trailspacing 2
-count 1
+trailspacing 4
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//decreasing fire
effect fireball
-trailspacing 2
-count 1
+trailspacing 4
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//smoke
effect fireball
-trailspacing 4
-count 1
+trailspacing 8
+count 0.5
type alphastatic
tex 0 8
size 5 15
airfriction 1
//fastfire
effect fireball
-trailspacing 0.5
-count 1
+trailspacing 1
+count 0.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
// light only
effect fireball
-trailspacing 8
+trailspacing 16
lightradius 300
lightradiusfade 3000
lightcolor 2.7 2.7 0.6
// fireball
effect fireball_laser
-count 20
+count 10
type spark
color 0x800000 0xFF8020
alpha 192 256 2560
// fire effect
effect fireball_explode
notunderwater
-count 256
+count 128
type static
tex 48 55
color 0x902010 0xFFD080
// underwater bubbles
effect fireball_explode
underwater
-count 64
+count 32
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect fireball_explode
notunderwater
-count 128
+count 64
type spark
color 0x903010 0xFFD030
size 2 2
velocityjitter 384 384 384
effect fireball_muzzleflash
-count 4
+count 2
type smoke
color 0x202020 0x404040
tex 0 8
lightradiusfade 2000
lightcolor 2 1.5 0.2
effect fireball_muzzleflash
-count 30
+count 15
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
airfriction 12
effect fireball_preattack_muzzleflash
-count 4
+count 2
type smoke
color 0x202020 0x404040
tex 0 8
lightradiusfade 2000
lightcolor 2 1.5 0.2
effect fireball_preattack_muzzleflash
-count 30
+count 15
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
airfriction 12
effect fireball_bfgdamage
-count 4
+count 2
type smoke
color 0x202020 0x404040
tex 0 8
lightradiusfade 2000
lightcolor 2 1.5 0.2
effect fireball_bfgdamage
-count 30
+count 15
type spark
tex 40 40
color 0xFFFDD9 0xFFFDD9
// used nowhere in code
effect EF_FLAME
//notunderwater
-count 200
+count 100
type smoke
tex 48 55
size 5 21
// smoke
effect EF_FLAME
type alphastatic
-count 100
+count 50
tex 0 8
size 11 15
sizeincrease 6
velocityjitter 11 11 50
bounce 2
effect EF_FLAME
-count 1
+count 0.5
lightradius 200
lightradiusfade 10000
lightcolor 0.9 0.9 0.2
// used in qcsrc/server/w_common.qc: zcurveparticles_from_tracetoss(particleeffectnum("tr_bullet"), self.origin, trace_endpos, self.velocity)
// used in qcsrc/client/projectile.qc: trailparticles(self, particleeffectnum("tr_bullet"), from, to)
effect tr_rifle
-trailspacing 128
+trailspacing 256
type spark
color 0x800000 0xFF8020
alpha 256 256 2560
effect tr_rifle
notunderwater
tex 0 8
-trailspacing 8
+trailspacing 16
type static
color 0x202020 0x404040
size 2 2
type smoke
effect tr_rifle
underwater
-trailspacing 32
+trailspacing 64
type bubble
tex 62 62
color 0x404040 0x808080
// underwater bubbles
effect rocket_guide
underwater
-count 4
+count 2
type bubble
tex 62 62
color 0x404040 0x808080
// bouncing sparks
effect rocket_guide
notunderwater
-count 16
+count 8
type spark
color 0x903010 0xFFD030
size 0.3 0.7
// used in qcsrc/server/w_laser.qc
effect laser_gauntlet
tex 43 43
-count 3
+count 1.5
type spark
color 0xff00ff 0xff0000
size 4 8
//fast fire
// used nowhere in code, meant for maps
effect torchflame
-count 6
+count 3
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
//slowfire
effect torchflame
-count 5
+count 2.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 1.2
// very slow and small fire
effect torchflame
-count 3
+count 1.5
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//decreasing fire
effect torchflame
-count 4
+count 2
type smoke
tex 48 55
color 0x8f0d00 0xff5a00
airfriction 0.3
//smoke
effect torchflame
-count 1
+count 0.5
type alphastatic
tex 0 8
size 5 15
//happy death fx for cl_gentle
effect happy_damage_dissolve
tex 69 69
-count 30
+count 15
type alphastatic
color 0x00FFFF 0xFF00FF
size 32 32
velocityjitter 312 312 312
effect happy_damage_dissolve
tex 69 69
-count 30
+count 15
type alphastatic
color 0xFF00FF 0xFFFF00
size 32 32
velocityjitter 312 312 312
effect happy_damage_dissolve
tex 69 69
-count 30
+count 15
type alphastatic
color 0xFFFF00 0x00FFFF
size 32 32
//happy damage fx for cl_gentle
effect happy_damage_hit
tex 69 69
-count 0.2
+count 0.1
type alphastatic
color 0x00FFFF 0xFF00FF
size 26 26
velocityjitter 156 156 156
effect happy_damage_hit
tex 69 69
-count 0.2
+count 0.1
type alphastatic
color 0xFF00FF 0xFFFF00
size 26 26
velocityjitter 156 156 156
effect happy_damage_hit
tex 69 69
-count 0.2
+count 0.1
type alphastatic
color 0xFFFF00 0x00FFFF
size 26 26
cl_decals 1
cl_decals_time 4
-cl_particles_quality 0.75
+cl_particles_quality 1
gl_flashblend 0
gl_picmip 1
gl_texture_anisotropy 16
cl_decals 1
cl_decals_time 2
-cl_particles_quality 0.2
+cl_particles_quality 0.4
gl_flashblend 1
gl_picmip 2
gl_texture_anisotropy 1
cl_decals 1
cl_decals_time 2
-cl_particles_quality 0.5
+cl_particles_quality 1
gl_flashblend 0
gl_picmip 1
gl_texture_anisotropy 1
cl_decals 1
cl_decals_time 2
-cl_particles_quality 0.5
+cl_particles_quality 1
gl_flashblend 0
gl_picmip 1
gl_texture_anisotropy 1
cl_decals 0
cl_decals_time 2
-cl_particles_quality 0.2
+cl_particles_quality 0.4
gl_flashblend 1
gl_picmip 1337
gl_texture_anisotropy 1
+++ /dev/null
-lurk,lurk
\ No newline at end of file
+++ /dev/null
-//TAG: reptilian\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/reptilian/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/reptilian/coms/attackinfive 0\r
-coverme sound/player/reptilian/coms/coverme 0\r
-defend sound/player/reptilian/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/reptilian/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-incoming sound/player/reptilian/coms/incoming 0\r
-meet sound/player/reptilian/coms/meet 0\r
-needhelp sound/player/reptilian/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/reptilian/coms/seenflag 0\r
-taunt sound/player/reptilian/coms/taunt 3\r
-teamshoot sound/player/reptilian/coms/teamshoot 3\r
-death sound/player/reptilian/player/death 3\r
-drown sound/player/reptilian/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/reptilian/player/falling 0\r
-gasp sound/player/reptilian/player/gasp 0\r
-jump sound/player/reptilian/player/jump 0\r
-pain25 sound/player/reptilian/player/pain25 0\r
-pain50 sound/player/reptilian/player/pain50 0\r
-pain75 sound/player/reptilian/player/pain75 0\r
-pain100 sound/player/reptilian/player/pain100 0\r
+++ /dev/null
-name Lurk
-species alien
-weight 84
-age 47
-
-Reptilian Combatant
+++ /dev/null
-lurk,reptile
\ No newline at end of file
+++ /dev/null
-//TAG: reptilian\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/reptilian/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/reptilian/coms/attackinfive 0\r
-coverme sound/player/reptilian/coms/coverme 0\r
-defend sound/player/reptilian/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/reptilian/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-incoming sound/player/reptilian/coms/incoming 0\r
-meet sound/player/reptilian/coms/meet 0\r
-needhelp sound/player/reptilian/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/reptilian/coms/seenflag 0\r
-taunt sound/player/reptilian/coms/taunt 3\r
-teamshoot sound/player/reptilian/coms/teamshoot 3\r
-death sound/player/reptilian/player/death 3\r
-drown sound/player/reptilian/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/reptilian/player/falling 0\r
-gasp sound/player/reptilian/player/gasp 0\r
-jump sound/player/reptilian/player/jump 0\r
-pain25 sound/player/reptilian/player/pain25 0\r
-pain50 sound/player/reptilian/player/pain50 0\r
-pain75 sound/player/reptilian/player/pain75 0\r
-pain100 sound/player/reptilian/player/pain100 0\r
+++ /dev/null
-name Reptile
-species alien
-weight 80
-age 32
-
-Reptilian Combatant
+++ /dev/null
-lurk,lurk
\ No newline at end of file
+++ /dev/null
-lurk,reptile
\ No newline at end of file
+++ /dev/null
-lurk,lurk
\ No newline at end of file
+++ /dev/null
-lurk,reptile
\ No newline at end of file
+++ /dev/null
-marine,marine
\ No newline at end of file
+++ /dev/null
-//TAG: marine\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/marine/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/marine/coms/attackinfive 0\r
-coverme sound/player/marine/coms/coverme 0\r
-defend sound/player/marine/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/marine/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-incoming sound/player/marine/coms/incoming 0\r
-meet sound/player/marine/coms/meet 0\r
-needhelp sound/player/marine/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/marine/coms/seenflag 0\r
-taunt sound/player/marine/coms/taunt 3\r
-teamshoot sound/player/marine/coms/teamshoot 4\r
-death sound/player/marine/player/death 3\r
-drown sound/player/marine/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/marine/player/fall 1\r
-gasp sound/player/marine/player/gasp 0\r
-jump sound/player/marine/player/jump 0\r
-pain25 sound/player/marine/player/pain25 0\r
-pain50 sound/player/marine/player/pain50 0\r
-pain75 sound/player/marine/player/pain75 0\r
-pain100 sound/player/marine/player/pain100 0\r
+++ /dev/null
-name Marine
-species human
-sex Male
-weight 93
-age 35
-
-Service Man
+++ /dev/null
-marine,marine
\ No newline at end of file
+++ /dev/null
-marine,marine
\ No newline at end of file
+++ /dev/null
-nexus,nexus
\ No newline at end of file
+++ /dev/null
-//TAG: soldier\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/soldier/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/soldier/coms/attackinfive 0\r
-coverme sound/player/soldier/coms/coverme 0\r
-defend sound/player/soldier/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/soldier/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-//incoming sound/player/soldier/coms/incoming 0\r
-meet sound/player/soldier/coms/meet 0\r
-needhelp sound/player/soldier/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/soldier/coms/seenflag 0\r
-taunt sound/player/soldier/coms/taunt 3\r
-teamshoot sound/player/soldier/coms/teamshoot 3\r
-death sound/player/soldier/player/death 3\r
-drown sound/player/soldier/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/soldier/player/falling 0\r
-gasp sound/player/soldier/player/gasp 0\r
-jump sound/player/soldier/player/jump 0\r
-pain25 sound/player/soldier/player/pain25 0\r
-pain50 sound/player/soldier/player/pain50 0\r
-pain75 sound/player/soldier/player/pain75 0\r
-pain100 sound/player/soldier/player/pain100 0\r
+++ /dev/null
-name Nexus
-species human
-weight 282
-age 313
-
-Nexuiz's Soldier
+++ /dev/null
-nexus,mulder
+++ /dev/null
-//TAG: soldier\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/soldier/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/soldier/coms/attackinfive 0\r
-coverme sound/player/soldier/coms/coverme 0\r
-defend sound/player/soldier/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/soldier/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-//incoming sound/player/soldier/coms/incoming 0\r
-meet sound/player/soldier/coms/meet 0\r
-needhelp sound/player/soldier/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/soldier/coms/seenflag 0\r
-taunt sound/player/soldier/coms/taunt 3\r
-teamshoot sound/player/soldier/coms/teamshoot 3\r
-death sound/player/soldier/player/death 3\r
-drown sound/player/soldier/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/soldier/player/falling 0\r
-gasp sound/player/soldier/player/gasp 0\r
-jump sound/player/soldier/player/jump 0\r
-pain25 sound/player/soldier/player/pain25 0\r
-pain50 sound/player/soldier/player/pain50 0\r
-pain75 sound/player/soldier/player/pain75 0\r
-pain100 sound/player/soldier/player/pain100 0\r
+++ /dev/null
-name Mulder
-species robot_solid
-weight 282
-age 313
-
-Nexuiz's Soldier
+++ /dev/null
-nexus,nexus
+++ /dev/null
-nexus,fbgreen
+++ /dev/null
-nexus,fbred
+++ /dev/null
-nexus,fborange
+++ /dev/null
-nexus,fbcolored
+++ /dev/null
-//TAG: soldier\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/soldier/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/soldier/coms/attackinfive 0\r
-coverme sound/player/soldier/coms/coverme 0\r
-defend sound/player/soldier/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/soldier/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-//incoming sound/player/soldier/coms/incoming 0\r
-meet sound/player/soldier/coms/meet 0\r
-needhelp sound/player/soldier/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/soldier/coms/seenflag 0\r
-taunt sound/player/soldier/coms/taunt 3\r
-teamshoot sound/player/soldier/coms/teamshoot 3\r
-death sound/player/soldier/player/death 3\r
-drown sound/player/soldier/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/soldier/player/falling 0\r
-gasp sound/player/soldier/player/gasp 0\r
-jump sound/player/soldier/player/jump 0\r
-pain25 sound/player/soldier/player/pain25 0\r
-pain50 sound/player/soldier/player/pain50 0\r
-pain75 sound/player/soldier/player/pain75 0\r
-pain100 sound/player/soldier/player/pain100 0\r
+++ /dev/null
-nexus,nexus
\ No newline at end of file
+++ /dev/null
-nexus,mulder
+++ /dev/null
-nexus,xolar
+++ /dev/null
-nexus,fbgreen
+++ /dev/null
-nexus,fbred
+++ /dev/null
-nexus,fborange
+++ /dev/null
-nexus,fbcolored
+++ /dev/null
-nexus,nexus
\ No newline at end of file
+++ /dev/null
-nexus,mulder
+++ /dev/null
-nexus,xolar
+++ /dev/null
-nexus,fbgreen
+++ /dev/null
-nexus,fbred
+++ /dev/null
-nexus,fborange
+++ /dev/null
-nexus,fbcolored
--- /dev/null
+0 36 15.000000 0 // dieone
+36 20 15.000000 0 // dietwo
+56 15 15.000000 1 // draw
+71 10 15.000000 1 // duck
+81 11 15.000000 1 // duckwalk
+92 16 15.000000 0 // duckjump
+108 15 5.000000 1 // duckidle
+123 16 5.000000 1 // idle
+139 16 15.000000 0 // jump
+155 15 15.000000 0 // painone
+170 17 15.000000 0 // paintwo
+187 3 15.000000 1 // shoot
+190 35 15.000000 1 // taunt
+225 12 20.000000 1 // run
+237 12 20.000000 1 // runbackwards
+249 12 20.000000 1 // strafeleft
+261 12 20.000000 1 // straferight
+273 2 15.000000 0 // deadone
+275 2 15.000000 0 // deadtwo
+277 12 20.000000 1 // forwardright
+289 12 20.000000 1 // forwardleft
+301 12 20.000000 1 // backright
+313 12 20.000000 1 // backleft
--- /dev/null
+//TAG: pyria-skadi
+//affirmative sound/player/carni-lycan/player/affirmative 0
+attack sound/player/pyria-skadi/coms/attack 2
+//attacking sound/player/carni-lycan/player/attacking 0
+attackinfive sound/player/pyria-skadi/coms/attackinfive 0
+//coverme sound/player/pyria-skadi/coms/coverme 0
+//defend sound/player/pyria-skadi/coms/defend 0
+//defending sound/player/carni-lycan/player/defending 0
+//droppedflag sound/player/carni-lycan/player/droppedflag 0
+//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0
+freelance sound/player/pyria-skadi/coms/freelance 2
+//getflag sound/player/carni-lycan/player/getflag 0
+//incoming sound/player/pyria-skadi/coms/incoming 0
+meet sound/player/pyria-skadi/coms/meet 0
+needhelp sound/player/pyria-skadi/coms/needhelp 2
+//negative sound/player/carni-lycan/player/negative 0
+//onmyway sound/player/carni-lycan/player/onmyway 0
+//roaming sound/player/carni-lycan/player/roaming 0
+//seenenemy sound/player/carni-lycan/player/seenenemy 0
+seenflag sound/player/pyria-skadi/coms/seenflag 0
+taunt sound/player/pyria-skadi/coms/taunt 5
+teamshoot sound/player/pyria-skadi/coms/teamshoot 4
+death sound/player/pyria-skadi/player/death 3
+drown sound/player/pyria-skadi/player/drown 0
+//fall sound/player/carni-lycan/player/fall 0
+falling sound/player/pyria-skadi/player/falling 0
+gasp sound/player/pyria-skadi/player/gasp 0
+jump sound/player/pyria-skadi/player/jump 0
+pain25 sound/player/pyria-skadi/player/pain25 0
+pain50 sound/player/pyria-skadi/player/pain50 0
+pain75 sound/player/pyria-skadi/player/pain75 0
+pain100 sound/player/pyria-skadi/player/pain100 0
--- /dev/null
+name Pyria
+species human
+sex Female
+weight 57
+age 53
+
+Necro Warrior
+++ /dev/null
-0 36 15.000000 0 // dieone
-36 20 15.000000 0 // dietwo
-56 15 15.000000 1 // draw
-71 10 15.000000 1 // duck
-81 11 15.000000 1 // duckwalk
-92 16 15.000000 0 // duckjump
-108 15 5.000000 1 // duckidle
-123 16 5.000000 1 // idle
-139 16 15.000000 0 // jump
-155 15 15.000000 0 // painone
-170 17 15.000000 0 // paintwo
-187 3 15.000000 1 // shoot
-190 35 15.000000 1 // taunt
-225 12 20.000000 1 // run
-237 12 20.000000 1 // runbackwards
-249 12 20.000000 1 // strafeleft
-261 12 20.000000 1 // straferight
-273 2 15.000000 0 // deadone
-275 2 15.000000 0 // deadtwo
-277 12 20.000000 1 // forwardright
-289 12 20.000000 1 // forwardleft
-301 12 20.000000 1 // backright
-313 12 20.000000 1 // backleft
age 25
Lightweight Xonotic Solider
-
-Sex: Female
-Weight: 61 kg
-Age: 25
+++ /dev/null
-/*
-Generated framegroups file for xolar
-Used by DarkPlaces to simulate frame groups in DPM models.
-*/
-
-1 41 15 0 // xolar die1
-42 47 30 0 // xolar die2
-89 11 30 1 // xolar draw
-100 11 30 1 // xolar duck
-111 81 60 1 // xolar duckwalk
-192 41 60 0 // xolar duckjump
-233 21 10 1 // xolar duckidle
-254 301 10 1 // xolar idle
-555 41 60 0 // xolar jump
-596 6 15 0 // xolar pain1
-602 6 15 0 // xolar pain2
-608 8 30 1 // xolar shoot
-616 31 30 1 // xolar taunt
-647 41 60 1 // xolar run
-688 41 60 1 // xolar runbackwards
-729 41 60 1 // xolar strafeleft
-770 41 60 1 // xolar straferight
-811 3 30 0 // xolar dead1
-814 3 30 0 // xolar dead2
-817 41 60 1 // xolar forwardright
-858 41 60 1 // xolar forwardleft
-899 41 60 1 // xolar backright
-940 41 60 1 // xolar backleft
+++ /dev/null
-//TAG: soldier\r
-//affirmative sound/player/carni-lycan/player/affirmative 0\r
-attack sound/player/soldier/coms/attack 0\r
-//attacking sound/player/carni-lycan/player/attacking 0\r
-attackinfive sound/player/soldier/coms/attackinfive 0\r
-coverme sound/player/soldier/coms/coverme 0\r
-defend sound/player/soldier/coms/defend 0\r
-//defending sound/player/carni-lycan/player/defending 0\r
-//droppedflag sound/player/carni-lycan/player/droppedflag 0\r
-//flagcarriertakingdamage sound/player/carni-lycan/player/flagcarriertakingdamage 0\r
-freelance sound/player/soldier/coms/freelance 2\r
-//getflag sound/player/carni-lycan/player/getflag 0\r
-//incoming sound/player/soldier/coms/incoming 0\r
-meet sound/player/soldier/coms/meet 0\r
-needhelp sound/player/soldier/coms/needhelp 2\r
-//negative sound/player/carni-lycan/player/negative 0\r
-//onmyway sound/player/carni-lycan/player/onmyway 0\r
-//roaming sound/player/carni-lycan/player/roaming 0\r
-//seenenemy sound/player/carni-lycan/player/seenenemy 0\r
-seenflag sound/player/soldier/coms/seenflag 0\r
-taunt sound/player/soldier/coms/taunt 3\r
-teamshoot sound/player/soldier/coms/teamshoot 3\r
-death sound/player/soldier/player/death 3\r
-drown sound/player/soldier/player/drown 0\r
-//fall sound/player/carni-lycan/player/fall 0\r
-falling sound/player/soldier/player/falling 0\r
-gasp sound/player/soldier/player/gasp 0\r
-jump sound/player/soldier/player/jump 0\r
-pain25 sound/player/soldier/player/pain25 0\r
-pain50 sound/player/soldier/player/pain50 0\r
-pain75 sound/player/soldier/player/pain75 0\r
-pain100 sound/player/soldier/player/pain100 0\r
+++ /dev/null
-name Xolar
-species robot_solid
-weight 582
-age 439
-
-Heavy Nexuiz's Soldier
+++ /dev/null
-/*
-Generated framegroups file for xolar_lod1
-Used by DarkPlaces to simulate frame groups in DPM models.
-*/
-
-1 41 15 0 // xolar_lod1 die1
-42 47 30 0 // xolar_lod1 die2
-89 11 30 1 // xolar_lod1 draw
-100 11 30 1 // xolar_lod1 duck
-111 81 60 1 // xolar_lod1 duckwalk
-192 41 60 0 // xolar_lod1 duckjump
-233 21 10 1 // xolar_lod1 duckidle
-254 301 10 1 // xolar_lod1 idle
-555 41 60 0 // xolar_lod1 jump
-596 6 15 0 // xolar_lod1 pain1
-602 6 15 0 // xolar_lod1 pain2
-608 8 30 1 // xolar_lod1 shoot
-616 31 30 1 // xolar_lod1 taunt
-647 41 60 1 // xolar_lod1 run
-688 41 60 1 // xolar_lod1 runbackwards
-729 41 60 1 // xolar_lod1 strafeleft
-770 41 60 1 // xolar_lod1 straferight
-811 3 30 0 // xolar_lod1 dead1
-814 3 30 0 // xolar_lod1 dead2
-817 41 60 1 // xolar_lod1 forwardright
-858 41 60 1 // xolar_lod1 forwardleft
-899 41 60 1 // xolar_lod1 backright
-940 41 60 1 // xolar_lod1 backleft
+++ /dev/null
-/*
-Generated animinfo file for xolar_lod2
-Useful for game code to simulate frame groups in DPM models.
-*/
-
-
-// end of animinfo definitions for xolar_lod2
-
-
+++ /dev/null
-/*
-Generated framegroups file for xolar_lod2
-Used by DarkPlaces to simulate frame groups in DPM models.
-*/
-
-1 41 15 0 // xolar_lod2 die1
-42 47 30 0 // xolar_lod2 die2
-89 11 30 1 // xolar_lod2 draw
-100 11 30 1 // xolar_lod2 duck
-111 81 60 1 // xolar_lod2 duckwalk
-192 41 60 0 // xolar_lod2 duckjump
-233 21 10 1 // xolar_lod2 duckidle
-254 301 10 1 // xolar_lod2 idle
-555 41 60 0 // xolar_lod2 jump
-596 6 15 0 // xolar_lod2 pain1
-602 6 15 0 // xolar_lod2 pain2
-608 8 30 1 // xolar_lod2 shoot
-616 31 30 1 // xolar_lod2 taunt
-647 41 60 1 // xolar_lod2 run
-688 41 60 1 // xolar_lod2 runbackwards
-729 41 60 1 // xolar_lod2 strafeleft
-770 41 60 1 // xolar_lod2 straferight
-811 3 30 0 // xolar_lod2 dead1
-814 3 30 0 // xolar_lod2 dead2
-817 41 60 1 // xolar_lod2 forwardright
-858 41 60 1 // xolar_lod2 forwardleft
-899 41 60 1 // xolar_lod2 backright
-940 41 60 1 // xolar_lod2 backleft
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 39 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 39 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
+++ /dev/null
-1 8 20 0 // fire
-9 5 20 0 // fire2
-15 200 20 1 // idle
-215 40 20 0 // reload
--- /dev/null
+1 8 20 0 // fire
+9 5 20 0 // fire2
+15 200 20 1 // idle
+215 40 20 0 // reload
sv_wateraccelerate -1
sv_waterfriction -1
sv_airaccel_sideways_friction -0.125
-sv_airaccel_qw -0.95
+sv_airaccel_qw -0.965
sv_airstopaccelerate 0
sv_airstrafeaccelerate 0
sv_maxairstrafespeed 0
check_unacceptable_compiler_bugs();
+#ifdef WATERMARK
+ print("^4CSQC Build information: ", WATERMARK(), "\n");
+#endif
+
float i;
CSQC_CheckEngine();
#endif
#ifdef IMPLEMENTATION
-void configureAnimationAnimation(entity me, entity obj, void(entity, float) setter, float startTime, float duration, float startValue, float end)
+void configureAnimationAnimation(entity me, entity obj, void(entity, float) objSetter, float animStartTime, float animDuration, float animStartValue, float animEndValue)
{
- me.setObjectSetter(me, obj, setter);
- me.setTimeStartDuration(me, startTime, duration);
- me.setValueStartEnd(me, startValue, end);
+ me.setObjectSetter(me, obj, objSetter);
+ me.setTimeStartDuration(me, animStartTime, animDuration);
+ me.setValueStartEnd(me, animStartValue, animEndValue);
}
void setTimeStartEndAnimation(entity me, float s, float e)
me.setter = s;
}
-void tickAnimation(entity me, float time)
+void tickAnimation(entity me, float tickTime)
{
- if (me.isStopped(me) || me.isFinished(me) || (time < me.startTime))
+ if (me.isStopped(me) || me.isFinished(me) || (tickTime < me.startTime))
return;
- if (time >= (me.startTime + me.duration))
+ if (tickTime >= (me.startTime + me.duration))
me.finishAnim(me);
else
- me.value = me.calcValue(me, (time - me.startTime), me.duration, me.startValue, me.delta);
+ me.value = me.calcValue(me, (tickTime - me.startTime), me.duration, me.startValue, me.delta);
me.setter(me.object, me.value);
}
-float calcValueAnimation(entity me, float time, float duration, float startValue, float delta)
+float calcValueAnimation(entity me, float tickTime, float animDuration, float animStartValue, float animDelta)
{
- return startValue;
+ return animStartValue;
}
float isStoppedAnimation(entity me)
me.finished = TRUE;
}
-void setterDummy(entity object, float value)
+void setterDummy(entity obj, float objValue)
{
}
#endif
#ifdef IMPLEMENTATION
-entity makeHostedEasing(entity obj, void(entity, float) setter, float(float, float, float, float) func, float duration, float startValue, float end)
+entity makeHostedEasing(entity obj, void(entity, float) objSetter, float(float, float, float, float) func, float animDuration, float animStartValue, float animEnd)
{
entity me;
- me = makeEasing(obj, setter, func, time, duration, startValue, end);
+ me = makeEasing(obj, objSetter, func, time, animDuration, animStartValue, animEnd);
anim.addAnim(anim, me);
return me;
}
-entity makeEasing(entity obj, void(entity, float) setter, float(float, float, float, float) func, float startTime, float duration, float startValue, float end)
+entity makeEasing(entity obj, void(entity, float) objSetter, float(float, float, float, float) func, float animStartTime, float animDuration, float animStartValue, float animEnd)
{
entity me;
me = spawnEasing();
- me.configureAnimation(me, obj, setter, startTime, duration, startValue, end);
+ me.configureAnimation(me, obj, objSetter, animStartTime, animDuration, animStartValue, animEnd);
me.setMath(me, func);
return me;
}
-float calcValueEasing(entity me, float time, float duration, float start, float delta)
+float calcValueEasing(entity me, float tickTime, float animDuration, float animStart, float animDelta)
{
- return me.math(time, duration, start, delta);
+ return me.math(tickTime, animDuration, animStart, animDelta);
}
void setMathEasing(entity me, float(float, float, float, float) func)
me.math = func;
}
-float easingLinear(float time, float duration, float start, float delta)
+float easingLinear(float tickTime, float animDuration, float animStart, float animDelta)
{
- return (delta * (time / duration)) + start;
+ return (animDelta * (tickTime / animDuration)) + animStart;
}
-float easingQuadIn(float time, float duration, float start, float delta)
+float easingQuadIn(float tickTime, float animDuration, float animStart, float animDelta)
{
- float frac = time / duration;
- return (delta * frac * frac) + start;
+ float frac = tickTime / animDuration;
+ return (animDelta * frac * frac) + animStart;
}
-float easingQuadOut(float time, float duration, float start, float delta)
+float easingQuadOut(float tickTime, float animDuration, float animStart, float animDelta)
{
- float frac = time / duration;
- return (-delta * frac * (frac - 2)) + start;
+ float frac = tickTime / animDuration;
+ return (-animDelta * frac * (frac - 2)) + animStart;
}
-float easingQuadInOut(float time, float duration, float start, float delta)
+float easingQuadInOut(float tickTime, float animDuration, float animStart, float animDelta)
{
- if (time < (duration / 2))
+ if (tickTime < (animDuration / 2))
{
- return easingQuadIn(time, (duration / 2), start, (delta / 2));
+ return easingQuadIn(tickTime, (animDuration / 2), animStart, (animDelta / 2));
}
else
{
- return easingQuadOut((time - (duration / 2)), (duration / 2), (start + (delta / 2)), (delta / 2));
+ return easingQuadOut((tickTime - (animDuration / 2)), (animDuration / 2), (animStart + (animDelta / 2)), (animDelta / 2));
}
}
#endif
#ifdef IMPLEMENTATION
-entity makeHostedKeyframe(entity obj, void(entity, float) setter, float duration, float start, float end)
+entity makeHostedKeyframe(entity obj, void(entity, float) objSetter, float animDuration, float animStart, float animEnd)
{
entity me;
- me = makeKeyframe(obj, setter, duration, start, end);
+ me = makeKeyframe(obj, objSetter, animDuration, animStart, animEnd);
anim.addAnim(anim, me);
return me;
}
-entity makeKeyframe(entity obj, void(entity, float) setter, float duration, float start, float end)
+entity makeKeyframe(entity obj, void(entity, float) objSetter, float animDuration, float animStart, float animEnd)
{
entity me;
me = spawnKeyframe();
- me.configureAnimation(me, obj, setter, time, duration, start, end);
+ me.configureAnimation(me, obj, objSetter, time, animDuration, animStart, animEnd);
return me;
}
-entity addEasingKeyframe(entity me, float durationTime, float end, float(float, float, float, float) func)
+entity addEasingKeyframe(entity me, float animDurationTime, float animEnd, float(float, float, float, float) func)
{
entity other;
- other = makeEasing(me.object, me.setter, func, getNewChildStart(me), getNewChildDuration(me, durationTime), getNewChildValue(me), end);
+ other = makeEasing(me.object, me.setter, func, getNewChildStart(me), getNewChildDuration(me, animDurationTime), getNewChildValue(me), animEnd);
me.addAnim(me, other);
return other;
}
me.lastChild = other;
}
-float calcValueKeyframe(entity me, float time, float duration, float startValue, float delta)
+float calcValueKeyframe(entity me, float tickTime, float animDuration, float animStartValue, float animDelta)
{
if (me.currentChild)
if (me.currentChild.isFinished(me.currentChild))
if (me.currentChild)
{
- me.currentChild.tick(me.currentChild, time);
+ me.currentChild.tick(me.currentChild, tickTime);
return me.currentChild.value;
}
- return startValue + delta;
+ return animStartValue + animDelta;
}
#endif
if(hit)
{
// calculate new pos to v
- float delta;
- delta = (pos_y - me.pressOffset) / (1 - (me.controlBottom - me.controlTop)) * (me.nItems * me.itemHeight - 1);
- me.scrollPos = me.previousValue + delta;
+ float d;
+ d = (pos_y - me.pressOffset) / (1 - (me.controlBottom - me.controlTop)) * (me.nItems * me.itemHeight - 1);
+ me.scrollPos = me.previousValue + d;
}
else
me.scrollPos = me.previousValue;
check_unacceptable_compiler_bugs();
+#ifdef WATERMARK
+ print("^4MQC Build information: ", WATERMARK(), "\n");
+#endif
+
// list all game dirs (TEST)
if(cvar("developer"))
{
me.TR(me);
me.TR(me);
me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Particle quality:"));
- me.TD(me, 1, 2, e = makeXonoticSlider(0.1, 1.0, 0.05, "cl_particles_quality"));
+ me.TD(me, 1, 2, e = makeXonoticSlider(0.2, 1.0, 0.1, "cl_particles_quality"));
me.TR(me);
me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Particle dist.:"));
me.TD(me, 1, 2, e = makeXonoticSlider(500, 2000, 100, "r_drawparticles_drawdistance"));
string campaign_name_previous;
float campaign_won_previous;
+#ifdef WATERMARK
+var string autocvar_menu_watermark = WATERMARK();
+#else
+var string autocvar_menu_watermark = "";
+#endif
void postMenuDraw()
{
+ if(autocvar_menu_watermark != "")
+ {
+ vector fs = '48 48 0';
+ draw_CenterText('0.5 0.1 0', autocvar_menu_watermark, globalToBoxSize('32 32 0', draw_scale), '1 1 1', 0.05, 1);
+ }
}
void preMenuDraw()
{
else bot_name = "Bot";
if(argv(1) != "") bot_model = argv(1);
- else bot_model = "marine";
+ else bot_model = "";
if(argv(2) != "") bot_skin = argv(2);
else bot_skin = "0";
// pick the model and skin
if(substring(bot_model, -4, 1) != ".")
- bot_model = strcat(bot_model, ".zym");
+ bot_model = strcat(bot_model, ".iqm");
self.playermodel = self.playermodel_freeme = strzone(strcat("models/player/", bot_model));
self.playerskin = self.playerskin_freeme = strzone(bot_skin);
IS_CHEAT(i, 0, 0);
FOR_EACH_PLAYER(e)
{
- if( e.playermodel == "models/player/jeandarc.zym"
- || e.playermodel == "models/player/pyria.zym"
- || e.playermodel == "models/player/skadi.zym"
- || (e.playermodel == "models/player/specop.zym" && random() < 0.5) // you never know
- || e.playermodel == "models/player/visitant.zym")
+ get_model_parameters(e.playermodel, e.skinindex);
+ if(get_model_parameters_sex == "Female")
{
makevectors(e.angles);
traceline(e.origin, e.origin + v_right * 256, MOVE_NORMAL, e);
Returns a valid one in doubt.
=============
*/
-string FallbackPlayerModel = "models/player/marine.zym";
+string FallbackPlayerModel;
string CheckPlayerModel(string plyermodel) {
+ if(FallbackPlayerModel != cvar_defstring("_cl_playermodel"))
+ {
+ // note: we cannot summon Don Strunzone here, some player may
+ // still have the model string set. In case anyone manages how
+ // to change a cvar default, we'll have a small leak here.
+ FallbackPlayerModel = strzone(cvar_defstring("_cl_playermodel"));
+ }
if(strlen(plyermodel) < 4)
return FallbackPlayerModel;
if( substring(plyermodel,0,14) != "models/player/")
DecodeLevelParms();
+#ifdef WATERMARK
+ sprint(self, strcat("^4SVQC Build information: ", WATERMARK(), "\n"));
+#endif
+
self.classname = "player_joining";
self.flags = FL_CLIENT;
}
else
{
- setmodel(self, strcat("models/weapons/h_", self.owner.weaponname, ".dpm")); // precision set below
- animfilename = strcat("models/weapons/h_", self.owner.weaponname, ".dpm.animinfo");
+ setmodel(self, strcat("models/weapons/h_", self.owner.weaponname, ".iqm")); // precision set below
+ animfilename = strcat("models/weapons/h_", self.owner.weaponname, ".iqm.animinfo");
animfile = fopen(animfilename, FILE_READ);
// preset some defaults that work great for renamed zym files (which don't need an animinfo)
self.anim_fire1 = '0 1 0.01';
precache_all_playermodels("models/player/*.dpm");
precache_all_playermodels("models/player/*.md3");
precache_all_playermodels("models/player/*.psk");
+ precache_all_playermodels("models/player/*.iqm");
}
if (cvar("sv_defaultcharacter"))
{
// center
vecs_y = 0;
- vecs_z -= 4;
+ vecs_z -= 2;
}
else
{
{
// center
vecs_y = 0;
- vecs_z -= 4;
+ vecs_z -= 2;
}
else
{
else
{
vecs_y = 0;
- vecs_z -= 4;
+ vecs_z -= 2;
}
}
else if ((s = cvar_string("g_shootfromfixedorigin")) != "")
{
precache_model ("models/weapons/g_campingrifle.md3");
precache_model ("models/weapons/v_campingrifle.md3");
- precache_model ("models/weapons/h_campingrifle.dpm");
+ precache_model ("models/weapons/h_campingrifle.iqm");
precache_sound ("weapons/campingrifle_reload.wav");
precache_sound ("weapons/campingrifle_fire.wav");
precache_sound ("weapons/campingrifle_fire2.wav");
{
precache_model ("models/weapons/g_crylink.md3");
precache_model ("models/weapons/v_crylink.md3");
- precache_model ("models/weapons/h_crylink.dpm");
+ precache_model ("models/weapons/h_crylink.iqm");
precache_sound ("weapons/crylink_fire.wav");
precache_sound ("weapons/crylink_fire2.wav");
}
{
precache_model ("models/weapons/g_electro.md3");
precache_model ("models/weapons/v_electro.md3");
- precache_model ("models/weapons/h_electro.dpm");
+ precache_model ("models/weapons/h_electro.iqm");
precache_sound ("weapons/electro_bounce.wav");
precache_sound ("weapons/electro_fire.wav");
precache_sound ("weapons/electro_fire2.wav");
{
precache_model ("models/weapons/g_fireball.md3");
precache_model ("models/weapons/v_fireball.md3");
- precache_model ("models/weapons/h_fireball.dpm");
+ precache_model ("models/weapons/h_fireball.iqm");
precache_model ("models/sphere/sphere.md3");
precache_sound ("weapons/fireball_fire.wav");
precache_sound ("weapons/fireball_fire2.wav");
{
precache_model ("models/weapons/g_gl.md3");
precache_model ("models/weapons/v_gl.md3");
- precache_model ("models/weapons/h_gl.dpm");
+ precache_model ("models/weapons/h_gl.iqm");
precache_sound ("weapons/grenade_bounce1.wav");
precache_sound ("weapons/grenade_bounce2.wav");
precache_sound ("weapons/grenade_bounce3.wav");
{
precache_model ("models/weapons/g_hagar.md3");
precache_model ("models/weapons/v_hagar.md3");
- precache_model ("models/weapons/h_hagar.dpm");
+ precache_model ("models/weapons/h_hagar.iqm");
precache_sound ("weapons/hagar_fire.wav");
}
else if (req == WR_SETUP)
{
precache_model ("models/weapons/g_hlac.md3");
precache_model ("models/weapons/v_hlac.md3");
- precache_model ("models/weapons/h_hlac.dpm");
+ precache_model ("models/weapons/h_hlac.iqm");
precache_sound ("weapons/lasergun_fire.wav");
}
{
precache_model ("models/weapons/g_hookgun.md3");
precache_model ("models/weapons/v_hookgun.md3");
- precache_model ("models/weapons/h_hookgun.dpm");
+ precache_model ("models/weapons/h_hookgun.iqm");
precache_sound ("weapons/hook_impact.wav"); // done by g_hook.qc
precache_sound ("weapons/hook_fire.wav");
precache_sound ("weapons/hookbomb_fire.wav");
{
precache_model ("models/weapons/g_laser.md3");
precache_model ("models/weapons/v_laser.md3");
- precache_model ("models/weapons/h_laser.dpm");
+ precache_model ("models/weapons/h_laser.iqm");
precache_sound ("weapons/lasergun_fire.wav");
precache_sound ("weapons/gauntlet_fire.wav");
}
precache_model ("models/nexflash.md3");
precache_model ("models/weapons/g_minstanex.md3");
precache_model ("models/weapons/v_minstanex.md3");
- precache_model ("models/weapons/h_minstanex.dpm");
+ precache_model ("models/weapons/h_minstanex.iqm");
precache_sound ("weapons/minstanexfire.wav");
precache_sound ("weapons/nexwhoosh1.wav");
precache_sound ("weapons/nexwhoosh2.wav");
precache_model ("models/nexflash.md3");
precache_model ("models/weapons/g_nex.md3");
precache_model ("models/weapons/v_nex.md3");
- precache_model ("models/weapons/h_nex.dpm");
+ precache_model ("models/weapons/h_nex.iqm");
precache_sound ("weapons/nexfire.wav");
precache_sound ("weapons/nexwhoosh1.wav");
precache_sound ("weapons/nexwhoosh2.wav");
{
precache_model ("models/weapons/g_porto.md3");
precache_model ("models/weapons/v_porto.md3");
- precache_model ("models/weapons/h_porto.dpm");
+ precache_model ("models/weapons/h_porto.iqm");
precache_model ("models/portal.md3");
precache_sound ("porto/bounce.wav");
precache_sound ("porto/create.wav");
precache_model ("models/flash.md3");
precache_model ("models/weapons/g_rl.md3");
precache_model ("models/weapons/v_rl.md3");
- precache_model ("models/weapons/h_rl.dpm");
+ precache_model ("models/weapons/h_rl.iqm");
precache_sound ("weapons/rocket_det.wav");
precache_sound ("weapons/rocket_fire.wav");
precache_sound ("weapons/rocket_mode.wav");
{
precache_model ("models/weapons/g_seeker.md3");
precache_model ("models/weapons/v_seeker.md3");
- precache_model ("models/weapons/h_seeker.dpm");
+ precache_model ("models/weapons/h_seeker.iqm");
precache_sound ("weapons/tag_fire.wav");
precache_sound ("weapons/flac_fire.wav");
precache_sound ("weapons/seeker_fire.wav");
precache_model ("models/uziflash.md3");
precache_model ("models/weapons/g_shotgun.md3");
precache_model ("models/weapons/v_shotgun.md3");
- precache_model ("models/weapons/h_shotgun.dpm");
+ precache_model ("models/weapons/h_shotgun.iqm");
precache_sound ("misc/itempickup.wav");
precache_sound ("weapons/shotgun_fire.wav");
}
{
precache_model ("models/weapons/g_tuba.md3");
precache_model ("models/weapons/v_tuba.md3");
- precache_model ("models/weapons/h_tuba.dpm");
+ precache_model ("models/weapons/h_tuba.iqm");
//float i;
//for(i = -18; i <= +27; ++i)
precache_model ("models/uziflash.md3");
precache_model ("models/weapons/g_uzi.md3");
precache_model ("models/weapons/v_uzi.md3");
- precache_model ("models/weapons/h_uzi.dpm");
+ precache_model ("models/weapons/h_uzi.iqm");
precache_sound ("weapons/uzi_fire.wav");
}
else if (req == WR_SETUP)
--- /dev/null
+// shaders to be used on models
+
+nodraw
+{
+ surfaceparm nodraw
+ surfaceparm nolightmap
+ surfaceparm nonsolid
+ surfaceparm trans
+ surfaceparm nomarks
+}
--- /dev/null
+pyriahair
+{
+
+ surfaceparm trans
+ cull none
+
+ {
+ map textures/pyriahair
+ alphaFunc GE128
+ blendFunc blend
+ rgbGen identity
+ }
+}
+++ /dev/null
-pyrianewhair
-{
-
- surfaceparm trans
- cull none
-
- {
- map textures/pyrianewhair
- alphaFunc GE128
- blendFunc blend
- rgbGen identity
- }
-}
--- /dev/null
+models/turrets/tesla_chrome\r
+{\r
+\r
+ qer_editorimage models/turrets/chrome.tga\r
+\r
+ //dp_reflect 0 0.75 0.75 1 0.5 \r
+ {\r
+ map models/turrets/chrome.tga \r
+ rgbGen vertex\r
+ tcGen environment \r
+ tcMod scale 2 2\r
+ \r
+ }\r
+}\r
+\r
+models/turrets/phaser_beam\r
+{\r
+ surfaceparm trans\r
+ cull none\r
+ nopicmip\r
+\r
+ qer_editorimage models/turrets/phaser_beam\r
+ { \r
+ map models/turrets/phaser_beam\r
+ blendFunc add\r
+ }\r
+\r
+}\r
+\r
+models/turrets/reactor_beams\r
+{\r
+ surfaceparm trans\r
+ cull none\r
+\r
+ qer_editorimage models/turrets/reactor\r
+ { \r
+ map models/turrets/reactor\r
+ blendFunc add\r
+ }\r
+}\r
+\r
+models/turrets/r_fx1\r
+{\r
+ surfaceparm nomarks\r
+ surfaceparm trans\r
+ surfaceparm pointlight\r
+ surfaceparm nolightmap \r
+ nopicmip\r
+ qer_editorimage models/turrets/r_fx1_1\r
+\r
+ {\r
+ animmap 10 models/turrets/r_fx1_3 models/turrets/r_fx1_4 models/turrets/r_fx1_5 models/turrets/r_fx1_4 models/turrets/r_fx1_3 models/turrets/r_fx1_2 models/turrets/r_fx1_1 models/turrets/r_fx1_2 \r
+ }\r
+\r
+}\r
+\r
+\r
-**Team Leaders:
+(THIS FILE IS A HUGE TODO)
+(YES, REALLY, NOTHING HERE IS TRUE)
+(PLEASE FIX THIS FILE)
-Lee Vermeulen
-*Project Founder and Co-Designer
-Forest "LordHavoc" Hale
-*Lead Programmer and Co-Designer
+**Team Leaders:
-Rudolf "div0" Polzer
-*Programmer
**Project maintainers:
**Development Team:
+Rudolf "div0" Polzer
+*Programmer
+
Andreas "Black" Kirsch
*Programmer
Marius "GreEn`mArine" Shekow
*Programmer
+Forest "LordHavoc" Hale
+*DarkPlaces Engine Programmer
+
Braden "meoblast001" Walters
*Music
Jody Gallagher
Juergen "LowDragon" Timm
Lee David Ash
+Lee Vermeulen
Mathieu "Elric" Olivier
Mephisto
MirceaKitsune