Add Q3Rally items to botfiles

Q3Rally renames some items and adds some items. Bots should try to pick them up now.
This commit is contained in:
zturtleman 2017-11-04 13:51:46 +00:00
parent 95fbb18fa1
commit 26fcf173be
9 changed files with 556 additions and 313 deletions

View file

@ -37,7 +37,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define WS(x) balance($evalfloat(FP(x)), $evalfloat(FP(x/WEAPON)), $evalfloat(FP(x*WEAPON))) #define WS(x) balance($evalfloat(FP(x)), $evalfloat(FP(x/WEAPON)), $evalfloat(FP(x*WEAPON)))
weight "item_armor_shard" weight "item_armor_green"
{ {
switch(INVENTORY_SCOUT) switch(INVENTORY_SCOUT)
{ {
@ -72,7 +72,7 @@ switch(INVENTORY_SCOUT)
} }
} }
weight "item_armor_combat" weight "item_armor_yellow"
{ {
switch(INVENTORY_SCOUT) switch(INVENTORY_SCOUT)
{ {
@ -107,7 +107,7 @@ weight "item_armor_combat"
} }
} }
weight "item_armor_body" weight "item_armor_red"
{ {
switch(INVENTORY_SCOUT) switch(INVENTORY_SCOUT)
{ {
@ -287,6 +287,15 @@ weight "weapon_bfg"
} }
} }
weight "weapon_flamethrower"
{
switch(INVENTORY_FLAMETHROWER)
{
case 1: return WS(BFW);
default: return 1;
}
}
weight "weapon_nailgun" weight "weapon_nailgun"
{ {
switch(INVENTORY_NAILGUN) switch(INVENTORY_NAILGUN)
@ -459,6 +468,24 @@ weight "ammo_bfg"
} }
} }
weight "ammo_flame"
{
switch(INVENTORY_FLAMETHROWERAMMO)
{
case 20: return AS(30);
case 40: return AS(30);
case 60: return AS(11);
case 80: return AS(11);
case 100: return AS(11);
case 120: return AS(11);
case 140: return AS(11);
case 160: return AS(11);
case 180: return AS(11);
case 200: return AS(11);
default: return 0;
}
}
weight "ammo_nails" weight "ammo_nails"
{ {
@ -535,6 +562,15 @@ weight "holdable_medkit"
} }
} }
weight "rally_item_turbo"
{
switch(INVENTORY_TURBO)
{
case 1: return PS(TELW);
default: return 0;
}
}
weight "holdable_kamikaze" weight "holdable_kamikaze"
{ {
switch(INVENTORY_TELEPORTER) switch(INVENTORY_TELEPORTER)
@ -587,10 +623,17 @@ weight "item_regen"
return PS(REGW); return PS(REGW);
} }
/*
weight "item_flight" weight "item_flight"
{ {
return PS(FLW); return PS(FLW);
} }
*/
weight "rally_item_shield"
{
return PS(FLW);
}
weight "item_scout" weight "item_scout"
{ {
@ -676,17 +719,67 @@ weight "item_botroam"
return 1; return 1;
} }
weight "team_dom_pointWhite" weight "rally_weapon_smoke"
{ {
return 1000; switch(INVENTORY_RWP_SMOKE)
{
case 20: return AS(30);
case 40: return AS(30);
case 60: return AS(11);
case 80: return AS(11);
case 100: return AS(11);
default: return 0;
}
} }
weight "team_dom_pointRed" weight "rally_weapon_oil"
{ {
return 700; switch(INVENTORY_RWP_OIL)
{
case 20: return AS(30);
case 40: return AS(30);
case 60: return AS(11);
case 80: return AS(11);
case 100: return AS(11);
default: return 0;
}
} }
weight "team_dom_pointBlue" weight "rally_weapon_mine"
{ {
return 700; switch(INVENTORY_RWP_MINE)
{
case 20: return AS(30);
case 40: return AS(30);
case 60: return AS(11);
case 80: return AS(11);
case 100: return AS(11);
default: return 0;
}
}
weight "rally_weapon_flame"
{
switch(INVENTORY_RWP_FLAME)
{
case 20: return AS(30);
case 40: return AS(30);
case 60: return AS(11);
case 80: return AS(11);
case 100: return AS(11);
default: return 0;
}
}
weight "rally_weapon_bio"
{
switch(INVENTORY_RWP_BIO)
{
case 20: return AS(30);
case 40: return AS(30);
case 60: return AS(11);
case 80: return AS(11);
case 100: return AS(11);
default: return 0;
}
} }

View file

@ -280,3 +280,26 @@ weight "Shotgun"
} }
} }
} }
weight "Flame Thrower"
{
switch(INVENTORY_FLAMETHROWER)
{
case 1: return 0;
default:
{
switch(INVENTORY_FLAMETHROWERAMMO)
{
case 1: return 0;
default:
{
switch(ENEMY_HORIZONTAL_DIST)
{
case 600: return SGW;
default: return $evalint(SGW*0.1);
}
}
}
}
}
}

View file

@ -1,21 +1,22 @@
/* /*
=========================================================================== ===========================================================================
Copyright (C) 1999-2005 Id Software, Inc. Copyright (C) 1999-2005 Id Software, Inc.
Copyright (C) 2002-2015 Q3Rally Team (Per Thormann - q3rally@gmail.com)
This file is part of Quake III Arena source code. This file is part of q3rally source code.
Quake III Arena source code is free software; you can redistribute it q3rally source code is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License as and/or modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the License, published by the Free Software Foundation; either version 2 of the License,
or (at your option) any later version. or (at your option) any later version.
Quake III Arena source code is distributed in the hope that it will be q3rally source code is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with Foobar; if not, write to the Free Software along with q3rally; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
=========================================================================== ===========================================================================
*/ */
@ -32,11 +33,12 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define INVENTORY_LIGHTNING 9 #define INVENTORY_LIGHTNING 9
#define INVENTORY_RAILGUN 10 #define INVENTORY_RAILGUN 10
#define INVENTORY_PLASMAGUN 11 #define INVENTORY_PLASMAGUN 11
#define INVENTORY_BFG10K 13 #define INVENTORY_BFG10K 12
#define INVENTORY_GRAPPLINGHOOK 14 #define INVENTORY_GRAPPLINGHOOK 13
#define INVENTORY_NAILGUN 15 #define INVENTORY_NAILGUN 14
#define INVENTORY_PROXLAUNCHER 16 #define INVENTORY_PROXLAUNCHER 15
#define INVENTORY_CHAINGUN 17 #define INVENTORY_CHAINGUN 16
#define INVENTORY_FLAMETHROWER 17 // rally
//ammo //ammo
#define INVENTORY_SHELLS 18 #define INVENTORY_SHELLS 18
#define INVENTORY_BULLETS 19 #define INVENTORY_BULLETS 19
@ -46,51 +48,50 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define INVENTORY_ROCKETS 23 #define INVENTORY_ROCKETS 23
#define INVENTORY_SLUGS 24 #define INVENTORY_SLUGS 24
#define INVENTORY_BFGAMMO 25 #define INVENTORY_BFGAMMO 25
#define INVENTORY_NAILS 26 #define INVENTORY_FLAMETHROWERAMMO 26 // rally
#define INVENTORY_MINES 27 #define INVENTORY_NAILS 27
#define INVENTORY_BELT 28 #define INVENTORY_MINES 28
#define INVENTORY_BELT 29
//powerups //powerups
#define INVENTORY_HEALTH 29 #define INVENTORY_HEALTH 30
#define INVENTORY_TELEPORTER 30 #define INVENTORY_TELEPORTER 31
#define INVENTORY_MEDKIT 31 #define INVENTORY_MEDKIT 32
#define INVENTORY_KAMIKAZE 32 #define INVENTORY_TURBO 33 // rally
#define INVENTORY_PORTAL 33 #define INVENTORY_KAMIKAZE 34
#define INVENTORY_INVULNERABILITY 34 #define INVENTORY_PORTAL 35
#define INVENTORY_QUAD 35 #define INVENTORY_INVULNERABILITY 36
#define INVENTORY_ENVIRONMENTSUIT 36 #define INVENTORY_QUAD 37
#define INVENTORY_HASTE 37 #define INVENTORY_ENVIRONMENTSUIT 38
#define INVENTORY_INVISIBILITY 38 #define INVENTORY_HASTE 39
#define INVENTORY_REGEN 39 #define INVENTORY_INVISIBILITY 40
#define INVENTORY_FLIGHT 40 #define INVENTORY_REGEN 41
#define INVENTORY_SCOUT 41 //#define INVENTORY_FLIGHT
#define INVENTORY_GUARD 42 #define INVENTORY_SHIELD 42 // rally
#define INVENTORY_DOUBLER 43 //missionpack
#define INVENTORY_AMMOREGEN 44 #define INVENTORY_SCOUT 43
#define INVENTORY_GUARD 44
#define INVENTORY_REDFLAG 45 #define INVENTORY_DOUBLER 45
#define INVENTORY_BLUEFLAG 46 #define INVENTORY_AMMOREGEN 46
#define INVENTORY_NEUTRALFLAG 47 #define INVENTORY_REDFLAG 47
#define INVENTORY_REDCUBE 48 #define INVENTORY_BLUEFLAG 48
#define INVENTORY_BLUECUBE 49 #define INVENTORY_NEUTRALFLAG 49
//Elimination mod: Domination inventory #define INVENTORY_REDCUBE 50
#define INVENTORY_POINTWHITE 50 #define INVENTORY_BLUECUBE 51
#define INVENTORY_POINTRED 51 //rally rearfire weapons
#define INVENTORY_POINTBLUE 52 #define INVENTORY_RWP_SMOKE 52
#define INVENTORY_RWP_OIL 53
#define INVENTORY_RWP_MINE 54
#define INVENTORY_RWP_FLAME 55
#define INVENTORY_RWP_BIO 56
//enemy stuff //enemy stuff
#define ENEMY_HORIZONTAL_DIST 200 #define ENEMY_HORIZONTAL_DIST 200
#define ENEMY_HEIGHT 201 #define ENEMY_HEIGHT 201
#define NUM_VISIBLE_ENEMIES 202 #define NUM_VISIBLE_ENEMIES 202
#define NUM_VISIBLE_TEAMMATES 203 #define NUM_VISIBLE_TEAMMATES 203
// if running the mission pack // if running the mission pack
#ifdef MISSIONPACK #ifdef MISSIONPACK
//#error "running mission pack" //#error "running mission pack"
#endif #endif
//item numbers (make sure they are in sync with bg_itemlist in bg_misc.c) //item numbers (make sure they are in sync with bg_itemlist in bg_misc.c)
#define MODELINDEX_ARMORSHARD 1 #define MODELINDEX_ARMORSHARD 1
#define MODELINDEX_ARMORCOMBAT 2 #define MODELINDEX_ARMORCOMBAT 2
@ -109,63 +110,62 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define MODELINDEX_RAILGUN 14 #define MODELINDEX_RAILGUN 14
#define MODELINDEX_PLASMAGUN 15 #define MODELINDEX_PLASMAGUN 15
#define MODELINDEX_BFG10K 16 #define MODELINDEX_BFG10K 16
#define MODELINDEX_GRAPPLINGHOOK 17 //#define MODELINDEX_GRAPPLINGHOOK
#define MODELINDEX_FLAMETHROWER 17 // rally
#define MODELINDEX_SHELLS 18 //rally rearfire weapons
#define MODELINDEX_BULLETS 19 #define MODELINDEX_RWP_SMOKE 18
#define MODELINDEX_GRENADES 20 #define MODELINDEX_RWP_OIL 19
#define MODELINDEX_CELLS 21 #define MODELINDEX_RWP_MINE 20
#define MODELINDEX_LIGHTNINGAMMO 22 #define MODELINDEX_RWP_FLAME 21
#define MODELINDEX_ROCKETS 23 #define MODELINDEX_RWP_BIO 22
#define MODELINDEX_SLUGS 24
#define MODELINDEX_BFGAMMO 25
#define MODELINDEX_TELEPORTER 26 #define MODELINDEX_SHELLS 23
#define MODELINDEX_MEDKIT 27 #define MODELINDEX_BULLETS 24
#define MODELINDEX_QUAD 28 #define MODELINDEX_GRENADES 25
#define MODELINDEX_ENVIRONMENTSUIT 29 #define MODELINDEX_CELLS 26
#define MODELINDEX_HASTE 30 #define MODELINDEX_LIGHTNINGAMMO 27
#define MODELINDEX_INVISIBILITY 31 #define MODELINDEX_ROCKETS 28
#define MODELINDEX_REGEN 32 #define MODELINDEX_SLUGS 29
#define MODELINDEX_FLIGHT 33 #define MODELINDEX_BFGAMMO 30
#define MODELINDEX_FLAMETHROWERAMMO 31 // rally
#define MODELINDEX_REDFLAG 34 #define MODELINDEX_TELEPORTER 32
#define MODELINDEX_BLUEFLAG 35 #define MODELINDEX_MEDKIT 33
#define MODELINDEX_TURBO 34 // rally
#define MODELINDEX_QUAD 35
#define MODELINDEX_ENVIRONMENTSUIT 36
#define MODELINDEX_HASTE 37
#define MODELINDEX_INVISIBILITY 38
#define MODELINDEX_REGEN 39
//#define MODELINDEX_FLIGHT
#define MODELINDEX_SHIELD 40 // rally
#define MODELINDEX_REDFLAG 41
#define MODELINDEX_BLUEFLAG 42
// mission pack only defines // mission pack only defines
#define MODELINDEX_KAMIKAZE 36 #define MODELINDEX_KAMIKAZE 43
#define MODELINDEX_PORTAL 37 #define MODELINDEX_PORTAL 44
#define MODELINDEX_INVULNERABILITY 38 #define MODELINDEX_INVULNERABILITY 45
#define MODELINDEX_NAILS 39 #define MODELINDEX_NAILS 46
#define MODELINDEX_MINES 40 #define MODELINDEX_MINES 47
#define MODELINDEX_BELT 41 #define MODELINDEX_BELT 48
#define MODELINDEX_SCOUT 42 #define MODELINDEX_SCOUT 49
#define MODELINDEX_GUARD 43 #define MODELINDEX_GUARD 50
#define MODELINDEX_DOUBLER 44 #define MODELINDEX_DOUBLER 51
#define MODELINDEX_AMMOREGEN 45 #define MODELINDEX_AMMOREGEN 52
#define MODELINDEX_NEUTRALFLAG 46 #define MODELINDEX_NEUTRALFLAG 53
#define MODELINDEX_REDCUBE 47 #define MODELINDEX_REDCUBE 54
#define MODELINDEX_BLUECUBE 48 #define MODELINDEX_BLUECUBE 55
#define MODELINDEX_NAILGUN 49 #define MODELINDEX_NAILGUN 56
#define MODELINDEX_PROXLAUNCHER 50 #define MODELINDEX_PROXLAUNCHER 57
#define MODELINDEX_CHAINGUN 51 #define MODELINDEX_CHAINGUN 58
//Elimination mod: Double Domination and Standard Domination
#define MODELINDEX_POINTABLUE 52
#define MODELINDEX_POINTBBLUE 53
#define MODELINDEX_POINTARED 54
#define MODELINDEX_POINTBRED 55
#define MODELINDEX_POINTAWHITE 56
#define MODELINDEX_POINTBWHITE 57
#define MODELINDEX_POINTWHITE 58
#define MODELINDEX_POINTRED 59
#define MODELINDEX_POINTBLUE 60
// //
@ -178,7 +178,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define WEAPONINDEX_RAILGUN 7 #define WEAPONINDEX_RAILGUN 7
#define WEAPONINDEX_PLASMAGUN 8 #define WEAPONINDEX_PLASMAGUN 8
#define WEAPONINDEX_BFG 9 #define WEAPONINDEX_BFG 9
#define WEAPONINDEX_GRAPPLING_HOOK 10 //#define WEAPONINDEX_GRAPPLING_HOOK
#define WEAPONINDEX_FLAME_THROWER 10 // rally
#define WEAPONINDEX_NAILGUN 11 #define WEAPONINDEX_NAILGUN 11
#define WEAPONINDEX_PROXLAUNCHER 12 #define WEAPONINDEX_PROXLAUNCHER 12
#define WEAPONINDEX_CHAINGUN 13 #define WEAPONINDEX_CHAINGUN 13

View file

@ -168,6 +168,18 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "ammo_flame"
{
name "Flame Ammo"
model "models/powerups/ammo/bfgam.md3"
modelindex MODELINDEX_FLAMETHROWERAMMO
type AMMOI
index INVENTORY_FLAMETHROWERAMMO
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "holdable_invulnerability" iteminfo "holdable_invulnerability"
{ {
name "Invulnerability" name "Invulnerability"
@ -228,9 +240,21 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "item_armor_body" iteminfo "rally_item_turbo"
{ {
name "Heavy Armor" name "Turbo"
model "models/powerups/turbo/turbo.md3"
modelindex MODELINDEX_TURBO
type POWERI
index INVENTORY_TURBO
respawntime 60
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "item_armor_red"
{
name "Red Armor"
model "models/powerups/armor/armor_red.md3" model "models/powerups/armor/armor_red.md3"
modelindex MODELINDEX_ARMORBODY modelindex MODELINDEX_ARMORBODY
type ARMORI type ARMORI
@ -241,9 +265,9 @@ maxs {13,13,13}
} }
iteminfo "item_armor_combat" iteminfo "item_armor_yellow"
{ {
name "Armor" name "Yellow Armor"
model "models/powerups/armor/armor_yel.md3" model "models/powerups/armor/armor_yel.md3"
modelindex MODELINDEX_ARMORCOMBAT modelindex MODELINDEX_ARMORCOMBAT
type ARMORI type ARMORI
@ -253,10 +277,10 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "item_armor_shard" iteminfo "item_armor_green"
{ {
name "Armor Shard" name "Green Armor"
model "models/powerups/armor/shard.md3" model "models/powerups/armor/greenshard.md3"
modelindex MODELINDEX_ARMORSHARD modelindex MODELINDEX_ARMORSHARD
type ARMORI type ARMORI
index INVENTORY_ARMOR index INVENTORY_ARMOR
@ -352,10 +376,11 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
/*
iteminfo "weapon_grapplinghook" iteminfo "weapon_grapplinghook"
{ {
name "Grappling Hook" name "Grappling Hook"
model "" model "models/weapons2/grapple/grapple.md3"
modelindex MODELINDEX_GRAPPLINGHOOK modelindex MODELINDEX_GRAPPLINGHOOK
type WEAPONI type WEAPONI
index INVENTORY_GRAPPLINGHOOK index INVENTORY_GRAPPLINGHOOK
@ -363,6 +388,19 @@ respawntime 30
mins {-13,-13,-13} mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
*/
iteminfo "weapon_flamethrower"
{
name "Flame Thrower"
model "models/weapons2/flamethrower/flamethrower.md3"
modelindex MODELINDEX_FLAMETHROWER
type WEAPONI
index INVENTORY_FLAMETHROWER
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "weapon_grenadelauncher" iteminfo "weapon_grenadelauncher"
@ -480,10 +518,69 @@ maxs {13,13,13}
} }
iteminfo "rally_weapon_smoke"
{
name "Rearfire Smoke Screen"
model "models/rearfire/rf_smoke.md3"
modelindex MODELINDEX_RWP_SMOKE
type WEAPONI
index INVENTORY_RWP_SMOKE
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "rally_weapon_oil"
{
name "Rearfire Oil Slick"
model "models/rearfire/rf_oil.md3"
modelindex MODELINDEX_RWP_OIL
type WEAPONI
index INVENTORY_RWP_OIL
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "rally_weapon_mine"
{
name "Rearfire Mine"
model "models/rearfire/rf_mines.md3"
modelindex MODELINDEX_RWP_MINE
type WEAPONI
index INVENTORY_RWP_MINE
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "rally_weapon_flame"
{
name "Rearfire Flame Trail"
model "models/rearfire/rf_flame.md3"
modelindex MODELINDEX_RWP_FLAME
type WEAPONI
index INVENTORY_RWP_FLAME
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "rally_weapon_bio"
{
name "Rearfire Bio Sludge"
model "models/rearfire/rf_bio.md3"
modelindex MODELINDEX_RWP_BIO
type WEAPONI
index INVENTORY_RWP_BIO
respawntime 30
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "item_quad" iteminfo "rally_item_quad"
{ {
name "Quad Damage" name "Quad Damage"
model "models/powerups/instant/quad.md3" model "models/powerups/instant/quad.md3"
@ -495,7 +592,7 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "item_enviro" iteminfo "rally_item_env"
{ {
name "Battle Suit" name "Battle Suit"
model "models/powerups/instant/enviro.md3" model "models/powerups/instant/enviro.md3"
@ -507,7 +604,7 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "item_haste" iteminfo "rally_item_haste"
{ {
name "Speed" name "Speed"
model "models/powerups/instant/haste_ring.md3" model "models/powerups/instant/haste_ring.md3"
@ -519,7 +616,7 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "item_invisibility" iteminfo "rally_item_invis"
{ {
name "Invisibility" name "Invisibility"
model "models/powerups/instant/invis.md3" model "models/powerups/instant/invis.md3"
@ -531,7 +628,7 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
iteminfo "item_regen" iteminfo "rally_item_regen"
{ {
name "Regeneration" name "Regeneration"
model "models/powerups/instant/regen_ring.md3" model "models/powerups/instant/regen_ring.md3"
@ -543,6 +640,7 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
/*
iteminfo "item_flight" iteminfo "item_flight"
{ {
name "Flight" name "Flight"
@ -554,6 +652,19 @@ respawntime 60
mins {-13,-13,-13} mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
*/
iteminfo "rally_item_shield"
{
name "Shielding"
model "models/powerups/shield/shield.md3"
modelindex MODELINDEX_SHIELD
type POWERI
index INVENTORY_SHIELD
respawntime 60
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "item_scout" iteminfo "item_scout"
{ {
@ -702,37 +813,3 @@ mins {-13,-13,-13}
maxs {13,13,13} maxs {13,13,13}
} }
//Domination points:
iteminfo "team_dom_pointWhite"
{
name "Neutral domination point"
model "models/dpoints/a_white.md3"
modelindex MODELINDEX_POINTWHITE
type FLAGI
index INVENTORY_POINTWHITE
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "team_dom_pointBlue"
{
name "Blue domination point"
model "models/dpoints/a_blue.md3"
modelindex MODELINDEX_POINTBLUE
type FLAGI
index INVENTORY_POINTBLUE
mins {-13,-13,-13}
maxs {13,13,13}
}
iteminfo "team_dom_pointRed"
{
name "Red domination point"
model "models/dpoints/a_red.md3"
modelindex MODELINDEX_POINTRED
type FLAGI
index INVENTORY_POINTRED
mins {-13,-13,-13}
maxs {13,13,13}
}

View file

@ -29,8 +29,8 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
projectileinfo projectileinfo
{ {
name "bfgexploision" name "bfgexploision"
damage 40 damage 100
radius 100 radius 120
damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE) damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE)
} }
@ -40,7 +40,7 @@ name "BFG10K"
number WEAPONINDEX_BFG number WEAPONINDEX_BFG
projectile "bfgexploision" projectile "bfgexploision"
numprojectiles 1 numprojectiles 1
speed 0 speed 4000
} }
projectileinfo projectileinfo
@ -62,8 +62,8 @@ speed 0
projectileinfo projectileinfo
{ {
name "grenade" name "grenade"
damage 120 damage 40
radius 160 radius 150
damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE) damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE)
} }
@ -73,7 +73,7 @@ name "Grenade Launcher"
number WEAPONINDEX_GRENADE_LAUNCHER number WEAPONINDEX_GRENADE_LAUNCHER
projectile "grenade" projectile "grenade"
numprojectiles 1 numprojectiles 1
speed 700 speed 800
} }
@ -97,7 +97,7 @@ speed 0
projectileinfo projectileinfo
{ {
name "machinegunbullet" name "machinegunbullet"
damage 8 damage 7
damagetype IMPACT_DAMAGE damagetype IMPACT_DAMAGE
} }
@ -124,13 +124,13 @@ name "Plasma Gun"
number WEAPONINDEX_PLASMAGUN number WEAPONINDEX_PLASMAGUN
projectile "plasma" projectile "plasma"
numprojectiles 1 numprojectiles 1
speed 2000 speed 4000
} }
projectileinfo projectileinfo
{ {
name "rail" name "rail"
damage 100 damage 75
damagetype IMPACT_DAMAGE damagetype IMPACT_DAMAGE
} }
@ -146,7 +146,7 @@ speed 0
projectileinfo projectileinfo
{ {
name "rocket" name "rocket"
damage 100 damage 80
radius 120 radius 120
damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE) damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE)
} }
@ -157,7 +157,7 @@ name "Rocket Launcher"
number WEAPONINDEX_ROCKET_LAUNCHER number WEAPONINDEX_ROCKET_LAUNCHER
projectile "rocket" projectile "rocket"
numprojectiles 1 numprojectiles 1
speed 900 speed 1800
} }
@ -177,6 +177,23 @@ numprojectiles 11
speed 0 speed 0
} }
projectileinfo
{
name "flamethrowerexpolision"
damage 30
radius 45
damagetype $evalint(IMPACT_DAMAGE|SPLASH_DAMAGE)
}
weaponinfo
{
name "Flame Thrower"
number WEAPONINDEX_BFG
projectile "flamethrowerexpolision"
numprojectiles 1
speed 300
}
projectileinfo projectileinfo
{ {
name "chaingunbullet" name "chaingunbullet"

View file

@ -361,7 +361,8 @@ int BotValidChatPosition(bot_state_t *bs) {
bs->inventory[INVENTORY_HASTE] || bs->inventory[INVENTORY_HASTE] ||
bs->inventory[INVENTORY_INVISIBILITY] || bs->inventory[INVENTORY_INVISIBILITY] ||
bs->inventory[INVENTORY_REGEN] || bs->inventory[INVENTORY_REGEN] ||
bs->inventory[INVENTORY_FLIGHT]) return qfalse; //bs->inventory[INVENTORY_FLIGHT] ||
bs->inventory[INVENTORY_SHIELD]) return qfalse;
//must be on the ground //must be on the ground
//if (bs->cur_ps.groundEntityNum != ENTITYNUM_NONE) return qfalse; //if (bs->cur_ps.groundEntityNum != ENTITYNUM_NONE) return qfalse;
//do not chat if in lava or slime //do not chat if in lava or slime

View file

@ -1766,6 +1766,7 @@ void BotUpdateInventory(bot_state_t *bs) {
bs->inventory[INVENTORY_ROCKETS] = bs->cur_ps.ammo[WP_ROCKET_LAUNCHER]; bs->inventory[INVENTORY_ROCKETS] = bs->cur_ps.ammo[WP_ROCKET_LAUNCHER];
bs->inventory[INVENTORY_SLUGS] = bs->cur_ps.ammo[WP_RAILGUN]; bs->inventory[INVENTORY_SLUGS] = bs->cur_ps.ammo[WP_RAILGUN];
bs->inventory[INVENTORY_BFGAMMO] = bs->cur_ps.ammo[WP_BFG]; bs->inventory[INVENTORY_BFGAMMO] = bs->cur_ps.ammo[WP_BFG];
bs->inventory[INVENTORY_FLAMETHROWERAMMO] = bs->cur_ps.ammo[WP_FLAME_THROWER];
#ifdef MISSIONPACK #ifdef MISSIONPACK
bs->inventory[INVENTORY_NAILS] = bs->cur_ps.ammo[WP_NAILGUN]; bs->inventory[INVENTORY_NAILS] = bs->cur_ps.ammo[WP_NAILGUN];
bs->inventory[INVENTORY_MINES] = bs->cur_ps.ammo[WP_PROX_LAUNCHER]; bs->inventory[INVENTORY_MINES] = bs->cur_ps.ammo[WP_PROX_LAUNCHER];
@ -1775,6 +1776,7 @@ void BotUpdateInventory(bot_state_t *bs) {
bs->inventory[INVENTORY_HEALTH] = bs->cur_ps.stats[STAT_HEALTH]; bs->inventory[INVENTORY_HEALTH] = bs->cur_ps.stats[STAT_HEALTH];
bs->inventory[INVENTORY_TELEPORTER] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_TELEPORTER; bs->inventory[INVENTORY_TELEPORTER] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_TELEPORTER;
bs->inventory[INVENTORY_MEDKIT] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_MEDKIT; bs->inventory[INVENTORY_MEDKIT] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_MEDKIT;
bs->inventory[INVENTORY_TURBO] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_TURBO;
#ifdef MISSIONPACK #ifdef MISSIONPACK
bs->inventory[INVENTORY_KAMIKAZE] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_KAMIKAZE; bs->inventory[INVENTORY_KAMIKAZE] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_KAMIKAZE;
bs->inventory[INVENTORY_PORTAL] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_PORTAL; bs->inventory[INVENTORY_PORTAL] = bs->cur_ps.stats[STAT_HOLDABLE_ITEM] == MODELINDEX_PORTAL;
@ -1788,6 +1790,7 @@ void BotUpdateInventory(bot_state_t *bs) {
// STONELANCE // STONELANCE
// bs->inventory[INVENTORY_FLIGHT] = bs->cur_ps.powerups[PW_FLIGHT] != 0; // bs->inventory[INVENTORY_FLIGHT] = bs->cur_ps.powerups[PW_FLIGHT] != 0;
// END // END
bs->inventory[INVENTORY_SHIELD] = bs->cur_ps.powerups[PW_SHIELD] != 0;
#ifdef MISSIONPACK #ifdef MISSIONPACK
bs->inventory[INVENTORY_SCOUT] = bs->cur_ps.stats[STAT_PERSISTANT_POWERUP] == MODELINDEX_SCOUT; bs->inventory[INVENTORY_SCOUT] = bs->cur_ps.stats[STAT_PERSISTANT_POWERUP] == MODELINDEX_SCOUT;
bs->inventory[INVENTORY_GUARD] = bs->cur_ps.stats[STAT_PERSISTANT_POWERUP] == MODELINDEX_GUARD; bs->inventory[INVENTORY_GUARD] = bs->cur_ps.stats[STAT_PERSISTANT_POWERUP] == MODELINDEX_GUARD;
@ -1807,6 +1810,12 @@ void BotUpdateInventory(bot_state_t *bs) {
bs->inventory[INVENTORY_BLUECUBE] = bs->cur_ps.generic1; bs->inventory[INVENTORY_BLUECUBE] = bs->cur_ps.generic1;
} }
#endif #endif
//rally rearfire weapons
bs->inventory[INVENTORY_RWP_SMOKE] = bs->cur_ps.ammo[RWP_SMOKE];
bs->inventory[INVENTORY_RWP_OIL] = bs->cur_ps.ammo[RWP_OIL];
bs->inventory[INVENTORY_RWP_MINE] = bs->cur_ps.ammo[RWP_MINE];
bs->inventory[INVENTORY_RWP_FLAME] = bs->cur_ps.ammo[RWP_FLAME];
bs->inventory[INVENTORY_RWP_BIO] = bs->cur_ps.ammo[RWP_BIO];
BotCheckItemPickup(bs, oldinventory); BotCheckItemPickup(bs, oldinventory);
} }

View file

@ -1018,7 +1018,6 @@ gentity_t *fire_bfg (gentity_t *self, vec3_t start, vec3_t dir) {
bolt->s.pos.trType = TR_LINEAR; bolt->s.pos.trType = TR_LINEAR;
bolt->s.pos.trTime = level.time - MISSILE_PRESTEP_TIME; // move a bit on the very first frame bolt->s.pos.trTime = level.time - MISSILE_PRESTEP_TIME; // move a bit on the very first frame
VectorCopy( start, bolt->s.pos.trBase ); VectorCopy( start, bolt->s.pos.trBase );
VectorScale( dir, 2000, bolt->s.pos.trDelta );
// STONELANCE // STONELANCE
// VectorScale( dir, 2000, bolt->s.pos.trDelta ); // VectorScale( dir, 2000, bolt->s.pos.trDelta );
VectorScale( dir, 4000, bolt->s.pos.trDelta ); VectorScale( dir, 4000, bolt->s.pos.trDelta );

View file

@ -38,7 +38,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define INVENTORY_NAILGUN 14 #define INVENTORY_NAILGUN 14
#define INVENTORY_PROXLAUNCHER 15 #define INVENTORY_PROXLAUNCHER 15
#define INVENTORY_CHAINGUN 16 #define INVENTORY_CHAINGUN 16
#define INVENTORY_FLAMETHROWER 17 #define INVENTORY_FLAMETHROWER 17 // rally
//ammo //ammo
#define INVENTORY_SHELLS 18 #define INVENTORY_SHELLS 18
#define INVENTORY_BULLETS 19 #define INVENTORY_BULLETS 19
@ -48,31 +48,41 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define INVENTORY_ROCKETS 23 #define INVENTORY_ROCKETS 23
#define INVENTORY_SLUGS 24 #define INVENTORY_SLUGS 24
#define INVENTORY_BFGAMMO 25 #define INVENTORY_BFGAMMO 25
#define INVENTORY_NAILS 26 #define INVENTORY_FLAMETHROWERAMMO 26 // rally
#define INVENTORY_MINES 27 #define INVENTORY_NAILS 27
#define INVENTORY_BELT 28 #define INVENTORY_MINES 28
#define INVENTORY_BELT 29
//powerups //powerups
#define INVENTORY_HEALTH 29 #define INVENTORY_HEALTH 30
#define INVENTORY_TELEPORTER 30 #define INVENTORY_TELEPORTER 31
#define INVENTORY_MEDKIT 31 #define INVENTORY_MEDKIT 32
#define INVENTORY_KAMIKAZE 32 #define INVENTORY_TURBO 33 // rally
#define INVENTORY_PORTAL 33 #define INVENTORY_KAMIKAZE 34
#define INVENTORY_INVULNERABILITY 34 #define INVENTORY_PORTAL 35
#define INVENTORY_QUAD 35 #define INVENTORY_INVULNERABILITY 36
#define INVENTORY_ENVIRONMENTSUIT 36 #define INVENTORY_QUAD 37
#define INVENTORY_HASTE 37 #define INVENTORY_ENVIRONMENTSUIT 38
#define INVENTORY_INVISIBILITY 38 #define INVENTORY_HASTE 39
#define INVENTORY_REGEN 39 #define INVENTORY_INVISIBILITY 40
#define INVENTORY_FLIGHT 40 #define INVENTORY_REGEN 41
#define INVENTORY_SCOUT 41 //#define INVENTORY_FLIGHT
#define INVENTORY_GUARD 42 #define INVENTORY_SHIELD 42 // rally
#define INVENTORY_DOUBLER 43 //missionpack
#define INVENTORY_AMMOREGEN 44 #define INVENTORY_SCOUT 43
#define INVENTORY_REDFLAG 45 #define INVENTORY_GUARD 44
#define INVENTORY_BLUEFLAG 46 #define INVENTORY_DOUBLER 45
#define INVENTORY_NEUTRALFLAG 47 #define INVENTORY_AMMOREGEN 46
#define INVENTORY_REDCUBE 48 #define INVENTORY_REDFLAG 47
#define INVENTORY_BLUECUBE 49 #define INVENTORY_BLUEFLAG 48
#define INVENTORY_NEUTRALFLAG 49
#define INVENTORY_REDCUBE 50
#define INVENTORY_BLUECUBE 51
//rally rearfire weapons
#define INVENTORY_RWP_SMOKE 52
#define INVENTORY_RWP_OIL 53
#define INVENTORY_RWP_MINE 54
#define INVENTORY_RWP_FLAME 55
#define INVENTORY_RWP_BIO 56
//enemy stuff //enemy stuff
#define ENEMY_HORIZONTAL_DIST 200 #define ENEMY_HORIZONTAL_DIST 200
#define ENEMY_HEIGHT 201 #define ENEMY_HEIGHT 201
@ -100,52 +110,62 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define MODELINDEX_RAILGUN 14 #define MODELINDEX_RAILGUN 14
#define MODELINDEX_PLASMAGUN 15 #define MODELINDEX_PLASMAGUN 15
#define MODELINDEX_BFG10K 16 #define MODELINDEX_BFG10K 16
#define MODELINDEX_GRAPPLINGHOOK 17 //#define MODELINDEX_GRAPPLINGHOOK
#define MODELINDEX_FLAMETHROWER 18 #define MODELINDEX_FLAMETHROWER 17 // rally
#define MODELINDEX_SHELLS 19 //rally rearfire weapons
#define MODELINDEX_BULLETS 20 #define MODELINDEX_RWP_SMOKE 18
#define MODELINDEX_GRENADES 21 #define MODELINDEX_RWP_OIL 19
#define MODELINDEX_CELLS 22 #define MODELINDEX_RWP_MINE 20
#define MODELINDEX_LIGHTNINGAMMO 23 #define MODELINDEX_RWP_FLAME 21
#define MODELINDEX_ROCKETS 24 #define MODELINDEX_RWP_BIO 22
#define MODELINDEX_SLUGS 25
#define MODELINDEX_BFGAMMO 26
#define MODELINDEX_TELEPORTER 27 #define MODELINDEX_SHELLS 23
#define MODELINDEX_MEDKIT 28 #define MODELINDEX_BULLETS 24
#define MODELINDEX_QUAD 29 #define MODELINDEX_GRENADES 25
#define MODELINDEX_ENVIRONMENTSUIT 30 #define MODELINDEX_CELLS 26
#define MODELINDEX_HASTE 31 #define MODELINDEX_LIGHTNINGAMMO 27
#define MODELINDEX_INVISIBILITY 32 #define MODELINDEX_ROCKETS 28
#define MODELINDEX_REGEN 33 #define MODELINDEX_SLUGS 29
#define MODELINDEX_FLIGHT 34 #define MODELINDEX_BFGAMMO 30
#define MODELINDEX_FLAMETHROWERAMMO 31 // rally
#define MODELINDEX_REDFLAG 35 #define MODELINDEX_TELEPORTER 32
#define MODELINDEX_BLUEFLAG 36 #define MODELINDEX_MEDKIT 33
#define MODELINDEX_TURBO 34 // rally
#define MODELINDEX_QUAD 35
#define MODELINDEX_ENVIRONMENTSUIT 36
#define MODELINDEX_HASTE 37
#define MODELINDEX_INVISIBILITY 38
#define MODELINDEX_REGEN 39
//#define MODELINDEX_FLIGHT
#define MODELINDEX_SHIELD 40 // rally
#define MODELINDEX_REDFLAG 41
#define MODELINDEX_BLUEFLAG 42
// mission pack only defines // mission pack only defines
#define MODELINDEX_KAMIKAZE 37 #define MODELINDEX_KAMIKAZE 43
#define MODELINDEX_PORTAL 38 #define MODELINDEX_PORTAL 44
#define MODELINDEX_INVULNERABILITY 39 #define MODELINDEX_INVULNERABILITY 45
#define MODELINDEX_NAILS 40 #define MODELINDEX_NAILS 46
#define MODELINDEX_MINES 41 #define MODELINDEX_MINES 47
#define MODELINDEX_BELT 42 #define MODELINDEX_BELT 48
#define MODELINDEX_SCOUT 43 #define MODELINDEX_SCOUT 49
#define MODELINDEX_GUARD 44 #define MODELINDEX_GUARD 50
#define MODELINDEX_DOUBLER 45 #define MODELINDEX_DOUBLER 51
#define MODELINDEX_AMMOREGEN 46 #define MODELINDEX_AMMOREGEN 52
#define MODELINDEX_NEUTRALFLAG 47 #define MODELINDEX_NEUTRALFLAG 53
#define MODELINDEX_REDCUBE 48 #define MODELINDEX_REDCUBE 54
#define MODELINDEX_BLUECUBE 49 #define MODELINDEX_BLUECUBE 55
#define MODELINDEX_NAILGUN 50 #define MODELINDEX_NAILGUN 56
#define MODELINDEX_PROXLAUNCHER 51 #define MODELINDEX_PROXLAUNCHER 57
#define MODELINDEX_CHAINGUN 52 #define MODELINDEX_CHAINGUN 58
// //
@ -158,7 +178,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define WEAPONINDEX_RAILGUN 7 #define WEAPONINDEX_RAILGUN 7
#define WEAPONINDEX_PLASMAGUN 8 #define WEAPONINDEX_PLASMAGUN 8
#define WEAPONINDEX_BFG 9 #define WEAPONINDEX_BFG 9
#define WEAPONINDEX_GRAPPLING_HOOK 10 //#define WEAPONINDEX_GRAPPLING_HOOK
#define WEAPONINDEX_FLAME_THROWER 10 // rally
#define WEAPONINDEX_NAILGUN 11 #define WEAPONINDEX_NAILGUN 11
#define WEAPONINDEX_PROXLAUNCHER 12 #define WEAPONINDEX_PROXLAUNCHER 12
#define WEAPONINDEX_CHAINGUN 13 #define WEAPONINDEX_CHAINGUN 13