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)
{ {
@ -286,6 +286,15 @@ weight "weapon_bfg"
default: return 1; default: return 1;
} }
} }
weight "weapon_flamethrower"
{
switch(INVENTORY_FLAMETHROWER)
{
case 1: return WS(BFW);
default: return 1;
}
}
weight "weapon_nailgun" weight "weapon_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

@ -279,4 +279,27 @@ 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,184 +1,186 @@
/* /*
=========================================================================== ===========================================================================
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.
Quake III Arena source code is free software; you can redistribute it
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,
or (at your option) any later version.
Quake III Arena source code is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Foobar; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
===========================================================================
*/
#define INVENTORY_NONE 0
//armor
#define INVENTORY_ARMOR 1
//weapons
#define INVENTORY_GAUNTLET 4
#define INVENTORY_SHOTGUN 5
#define INVENTORY_MACHINEGUN 6
#define INVENTORY_GRENADELAUNCHER 7
#define INVENTORY_ROCKETLAUNCHER 8
#define INVENTORY_LIGHTNING 9
#define INVENTORY_RAILGUN 10
#define INVENTORY_PLASMAGUN 11
#define INVENTORY_BFG10K 13
#define INVENTORY_GRAPPLINGHOOK 14
#define INVENTORY_NAILGUN 15
#define INVENTORY_PROXLAUNCHER 16
#define INVENTORY_CHAINGUN 17
//ammo
#define INVENTORY_SHELLS 18
#define INVENTORY_BULLETS 19
#define INVENTORY_GRENADES 20
#define INVENTORY_CELLS 21
#define INVENTORY_LIGHTNINGAMMO 22
#define INVENTORY_ROCKETS 23
#define INVENTORY_SLUGS 24
#define INVENTORY_BFGAMMO 25
#define INVENTORY_NAILS 26
#define INVENTORY_MINES 27
#define INVENTORY_BELT 28
//powerups
#define INVENTORY_HEALTH 29
#define INVENTORY_TELEPORTER 30
#define INVENTORY_MEDKIT 31
#define INVENTORY_KAMIKAZE 32
#define INVENTORY_PORTAL 33
#define INVENTORY_INVULNERABILITY 34
#define INVENTORY_QUAD 35
#define INVENTORY_ENVIRONMENTSUIT 36
#define INVENTORY_HASTE 37
#define INVENTORY_INVISIBILITY 38
#define INVENTORY_REGEN 39
#define INVENTORY_FLIGHT 40
#define INVENTORY_SCOUT 41
#define INVENTORY_GUARD 42
#define INVENTORY_DOUBLER 43
#define INVENTORY_AMMOREGEN 44
#define INVENTORY_REDFLAG 45
#define INVENTORY_BLUEFLAG 46
#define INVENTORY_NEUTRALFLAG 47
#define INVENTORY_REDCUBE 48
#define INVENTORY_BLUECUBE 49
//Elimination mod: Domination inventory
#define INVENTORY_POINTWHITE 50
#define INVENTORY_POINTRED 51
#define INVENTORY_POINTBLUE 52
This file is part of q3rally source code.
//enemy stuff
#define ENEMY_HORIZONTAL_DIST 200
#define ENEMY_HEIGHT 201
#define NUM_VISIBLE_ENEMIES 202
#define NUM_VISIBLE_TEAMMATES 203
// if running the mission pack
#ifdef MISSIONPACK
//#error "running mission pack"
#endif
//item numbers (make sure they are in sync with bg_itemlist in bg_misc.c)
#define MODELINDEX_ARMORSHARD 1
#define MODELINDEX_ARMORCOMBAT 2
#define MODELINDEX_ARMORBODY 3
#define MODELINDEX_HEALTHSMALL 4
#define MODELINDEX_HEALTH 5
#define MODELINDEX_HEALTHLARGE 6
#define MODELINDEX_HEALTHMEGA 7
#define MODELINDEX_GAUNTLET 8
#define MODELINDEX_SHOTGUN 9
#define MODELINDEX_MACHINEGUN 10
#define MODELINDEX_GRENADELAUNCHER 11
#define MODELINDEX_ROCKETLAUNCHER 12
#define MODELINDEX_LIGHTNING 13
#define MODELINDEX_RAILGUN 14
#define MODELINDEX_PLASMAGUN 15
#define MODELINDEX_BFG10K 16
#define MODELINDEX_GRAPPLINGHOOK 17
#define MODELINDEX_SHELLS 18
#define MODELINDEX_BULLETS 19
#define MODELINDEX_GRENADES 20
#define MODELINDEX_CELLS 21
#define MODELINDEX_LIGHTNINGAMMO 22
#define MODELINDEX_ROCKETS 23
#define MODELINDEX_SLUGS 24
#define MODELINDEX_BFGAMMO 25
#define MODELINDEX_TELEPORTER 26
#define MODELINDEX_MEDKIT 27
#define MODELINDEX_QUAD 28
#define MODELINDEX_ENVIRONMENTSUIT 29
#define MODELINDEX_HASTE 30
#define MODELINDEX_INVISIBILITY 31
#define MODELINDEX_REGEN 32
#define MODELINDEX_FLIGHT 33
#define MODELINDEX_REDFLAG 34
#define MODELINDEX_BLUEFLAG 35
// mission pack only defines
#define MODELINDEX_KAMIKAZE 36
#define MODELINDEX_PORTAL 37
#define MODELINDEX_INVULNERABILITY 38
#define MODELINDEX_NAILS 39
#define MODELINDEX_MINES 40
#define MODELINDEX_BELT 41
#define MODELINDEX_SCOUT 42
#define MODELINDEX_GUARD 43
#define MODELINDEX_DOUBLER 44
#define MODELINDEX_AMMOREGEN 45
#define MODELINDEX_NEUTRALFLAG 46
#define MODELINDEX_REDCUBE 47
#define MODELINDEX_BLUECUBE 48
#define MODELINDEX_NAILGUN 49
#define MODELINDEX_PROXLAUNCHER 50
#define MODELINDEX_CHAINGUN 51
//Elimination mod: Double Domination and Standard Domination q3rally source code is free software; you can redistribute it
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,
or (at your option) any later version.
q3rally source code is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with q3rally; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
===========================================================================
*/
#define INVENTORY_NONE 0
//armor
#define INVENTORY_ARMOR 1
//weapons
#define INVENTORY_GAUNTLET 4
#define INVENTORY_SHOTGUN 5
#define INVENTORY_MACHINEGUN 6
#define INVENTORY_GRENADELAUNCHER 7
#define INVENTORY_ROCKETLAUNCHER 8
#define INVENTORY_LIGHTNING 9
#define INVENTORY_RAILGUN 10
#define INVENTORY_PLASMAGUN 11
#define INVENTORY_BFG10K 12
#define INVENTORY_GRAPPLINGHOOK 13
#define INVENTORY_NAILGUN 14
#define INVENTORY_PROXLAUNCHER 15
#define INVENTORY_CHAINGUN 16
#define INVENTORY_FLAMETHROWER 17 // rally
//ammo
#define INVENTORY_SHELLS 18
#define INVENTORY_BULLETS 19
#define INVENTORY_GRENADES 20
#define INVENTORY_CELLS 21
#define INVENTORY_LIGHTNINGAMMO 22
#define INVENTORY_ROCKETS 23
#define INVENTORY_SLUGS 24
#define INVENTORY_BFGAMMO 25
#define INVENTORY_FLAMETHROWERAMMO 26 // rally
#define INVENTORY_NAILS 27
#define INVENTORY_MINES 28
#define INVENTORY_BELT 29
//powerups
#define INVENTORY_HEALTH 30
#define INVENTORY_TELEPORTER 31
#define INVENTORY_MEDKIT 32
#define INVENTORY_TURBO 33 // rally
#define INVENTORY_KAMIKAZE 34
#define INVENTORY_PORTAL 35
#define INVENTORY_INVULNERABILITY 36
#define INVENTORY_QUAD 37
#define INVENTORY_ENVIRONMENTSUIT 38
#define INVENTORY_HASTE 39
#define INVENTORY_INVISIBILITY 40
#define INVENTORY_REGEN 41
//#define INVENTORY_FLIGHT
#define INVENTORY_SHIELD 42 // rally
//missionpack
#define INVENTORY_SCOUT 43
#define INVENTORY_GUARD 44
#define INVENTORY_DOUBLER 45
#define INVENTORY_AMMOREGEN 46
#define INVENTORY_REDFLAG 47
#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
#define ENEMY_HORIZONTAL_DIST 200
#define ENEMY_HEIGHT 201
#define NUM_VISIBLE_ENEMIES 202
#define NUM_VISIBLE_TEAMMATES 203
// if running the mission pack
#ifdef MISSIONPACK
//#error "running mission pack"
#endif
//item numbers (make sure they are in sync with bg_itemlist in bg_misc.c)
#define MODELINDEX_ARMORSHARD 1
#define MODELINDEX_ARMORCOMBAT 2
#define MODELINDEX_ARMORBODY 3
#define MODELINDEX_HEALTHSMALL 4
#define MODELINDEX_HEALTH 5
#define MODELINDEX_HEALTHLARGE 6
#define MODELINDEX_HEALTHMEGA 7
#define MODELINDEX_GAUNTLET 8
#define MODELINDEX_SHOTGUN 9
#define MODELINDEX_MACHINEGUN 10
#define MODELINDEX_GRENADELAUNCHER 11
#define MODELINDEX_ROCKETLAUNCHER 12
#define MODELINDEX_LIGHTNING 13
#define MODELINDEX_RAILGUN 14
#define MODELINDEX_PLASMAGUN 15
#define MODELINDEX_BFG10K 16
//#define MODELINDEX_GRAPPLINGHOOK
#define MODELINDEX_FLAMETHROWER 17 // rally
//rally rearfire weapons
#define MODELINDEX_RWP_SMOKE 18
#define MODELINDEX_RWP_OIL 19
#define MODELINDEX_RWP_MINE 20
#define MODELINDEX_RWP_FLAME 21
#define MODELINDEX_RWP_BIO 22
#define MODELINDEX_SHELLS 23
#define MODELINDEX_BULLETS 24
#define MODELINDEX_GRENADES 25
#define MODELINDEX_CELLS 26
#define MODELINDEX_LIGHTNINGAMMO 27
#define MODELINDEX_ROCKETS 28
#define MODELINDEX_SLUGS 29
#define MODELINDEX_BFGAMMO 30
#define MODELINDEX_FLAMETHROWERAMMO 31 // rally
#define MODELINDEX_TELEPORTER 32
#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
#define MODELINDEX_KAMIKAZE 43
#define MODELINDEX_PORTAL 44
#define MODELINDEX_INVULNERABILITY 45
#define MODELINDEX_NAILS 46
#define MODELINDEX_MINES 47
#define MODELINDEX_BELT 48
#define MODELINDEX_SCOUT 49
#define MODELINDEX_GUARD 50
#define MODELINDEX_DOUBLER 51
#define MODELINDEX_AMMOREGEN 52
#define MODELINDEX_NEUTRALFLAG 53
#define MODELINDEX_REDCUBE 54
#define MODELINDEX_BLUECUBE 55
#define MODELINDEX_NAILGUN 56
#define MODELINDEX_PROXLAUNCHER 57
#define MODELINDEX_CHAINGUN 58
//
#define WEAPONINDEX_GAUNTLET 1
#define WEAPONINDEX_MACHINEGUN 2
#define WEAPONINDEX_SHOTGUN 3
#define WEAPONINDEX_GRENADE_LAUNCHER 4
#define WEAPONINDEX_ROCKET_LAUNCHER 5
#define WEAPONINDEX_LIGHTNING 6
#define WEAPONINDEX_RAILGUN 7
#define WEAPONINDEX_PLASMAGUN 8
#define WEAPONINDEX_BFG 9
//#define WEAPONINDEX_GRAPPLING_HOOK
#define WEAPONINDEX_FLAME_THROWER 10 // rally
#define WEAPONINDEX_NAILGUN 11
#define WEAPONINDEX_PROXLAUNCHER 12
#define WEAPONINDEX_CHAINGUN 13
#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
//
#define WEAPONINDEX_GAUNTLET 1
#define WEAPONINDEX_MACHINEGUN 2
#define WEAPONINDEX_SHOTGUN 3
#define WEAPONINDEX_GRENADE_LAUNCHER 4
#define WEAPONINDEX_ROCKET_LAUNCHER 5
#define WEAPONINDEX_LIGHTNING 6
#define WEAPONINDEX_RAILGUN 7
#define WEAPONINDEX_PLASMAGUN 8
#define WEAPONINDEX_BFG 9
#define WEAPONINDEX_GRAPPLING_HOOK 10
#define WEAPONINDEX_NAILGUN 11
#define WEAPONINDEX_PROXLAUNCHER 12
#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"
{ {
@ -701,38 +812,4 @@ index 0
mins {-13,-13,-13} 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