Bot talk

Discussion for Level editing, modeling, programming, or any of the other technical aspects of Quake
Post Reply
DoomsRemorse
Posts: 2
Joined: Thu May 31, 2007 5:55 am

Bot talk

Post by DoomsRemorse »

Been trying to find information on how the files can be edited to change what the bots say and when they say it when playing in single mode. Please let me know if you have any info or can point me in the right direction. Thanks
corsair
Posts: 972
Joined: Fri May 18, 2001 7:00 am

Post by corsair »

Its in the pak0.pk3 file under botfiles\bots, the files that end with _t.c store data for what each bot will say in game.
Though be aware that you cannot change anything within the pak0 file, so you must duplicate some of the files that together create one character in the game, rename the lot, then alter the chatlines.
maz0r
Posts: 157
Joined: Wed Apr 21, 2004 7:00 am

Post by maz0r »

As corsair said, extract those files and edit them. Now you have two options: place them in corresponding directories (according to pak0.pk3) inside baseq3 and play with sv_pure 0 or make a new pk3-file with those files included (again watch those directories) and give the pak a name which lies behind pak0 alphabetically (e.g. z-mybotchat.pk3).
Todtsteltzer
Posts: 93
Joined: Thu Nov 28, 2002 8:00 am

Post by Todtsteltzer »

As corsair and maz0r said each bot has his own chat file (*_t.c), but there are also some chat files with random chat lines, chat lines to chat with the bots and chat lines for teamplay, you'll find these in pak1.pk3:
- botfiles\rnd.c
- botfiles\rchat.c
- botfiles\teamplay.h

If you want to modify the bot chats, I would recommend to do the following (most things are said by corsair and maz0r already, this is just a version with some more details ;)) :
- Unzip pak0.pk3 and pak1.pk3 into a new, separate folder (for example 'C:\My Documents\Q3\temp)'
- delete all files you don't want to change in this folder
- modify the bot chats
- zip the modified files again
- (re)name the packed file (for example to z_bchats.pk3)
- copy this new pk3 to your baseq3 folder to see the results (you may also use a sub folder in baseq3, then the whole thing will work like a mod. If you do so, you'll have to load the mod before you'll see any changes).

Important:
1. Keep the folder structure and the names of the original files when unzipping, zipping and modifying! If you don't, the modified files won't overwrite the original ones.
2. Q3A opens all pk3 files in alphabetical order. To overwrite existing files, which are located in the standard pk3s (pak0.pk3 - pak8.pk3), new/modified pk3 files have to be opened after the original files (that's the reason why I named the modified file 'z_bchats.pk3' and not simply 'bchats.pk3'). If you'd name it 'bchats.pk3' this file would be opened before the original pk3s and the contents of the original files would overwrite your modified file.
v1l3
Posts: 822
Joined: Wed Apr 02, 2003 8:00 am

Post by v1l3 »

chat "slash"
{
#include "teamplay.h"
//
type "game_enter"
{
"^7Ready to die over and over^1?";
"^7Everybody kill me";
HELLO5;
} //end type

type "game_exit"
{
"^7C^3y^7a";
"^7I^1'^7m ^2O^7u^2t";
} //end type

type "level_start"
{
"^7Hmm";
"^7Here we Go^1!";
} //end type

type "level_end"
{
"^7gg";
"^5Damn ^7Cl^1o^5ck";
} //end type

type "level_end_victory"
{
"^7O^4wn^7e^4d";
"^3GG";
LEVEL_END_VICTORY2;
} //end type

type "level_end_lose"
{
"^3gg";
"^7wp";
"^1G^7oo^1d^3G^7a^3m^7e";
"^7gg";
} //end type

//======================================================
//======================================================
type "hit_talking" //bot is hit while chat balloon is visible;
{
"^3Ch^7a^3tFr^7a^3gg^7e^3r";
} //end type

type "damaged_nokill" //bot is hit by an opponent's weapon attack; either praise or insult
{
"";
} //end type

type "hit_nokill" //bot hits an opponent but does not kill it
{
"";
} //end type
type "enemy_suicide"
{
"^7Suicidal^1?";
//0 = enemy
} //end type

//================================================================
//================================================================

type "death_telefrag"
{
"^1L^7o^1L";
} //end type

type "death_lava"
{
"^1Hmm";
} //end type

type "death_slime"
{
"^7Shit^1!";
} //end type

type "death_drown"
{
"^7Shit^1!";
} //end type

type "death_suicide" //includes weapon, cratering, & trigger_hurt
{
"^2W^7oo^2ps^3!";
} //end type

type "death_gauntlet"
{
"^7I feel so humiliated";
} //end type

type "death_rail"
{
"^7n^11";
"^1N^7i^1c^7e ^1Sh^7o^1t";
"^4Gr^3e^7a^4t ^1Sh^7o^1t";
"^3nice";
"^7wtf";
"^7woh^2!";
"^7Ow^3!";
} //end type

type "death_bfg"
{
"^7wtf";
} //end type

type "death_insult"
{
"^4sh^7i^4t";
} //end type

type "death_praise"
{
"^7heheh";
} //end type

type "death_kamikaze" //initiated when the bot is killed by kamikaze blast
{
"";
} //end type


//======================================================
//======================================================

type "kill_kamikaze" //initiated when the bot kills someone with kamikaze
{
"";
} //end type

type "kill_rail"
{
"^7Ow^1?^4?";
} //end type

type "kill_gauntlet"
{
"";
} //end type

type "kill_telefrag"
{
"BABOOM!!!";
} //end type

type "kill_insult"
{
"^1You^7'^1ve ^4b^3ee^4n ^7o^2wn^7e^2d";
} //end type

type "kill_praise"
{
"^7haha";
} //end type

//================================================================
//================================================================

type "random_insult"
{
"^3wtf";
"^4sh^7i^4t^1h^7ea^1d";
} //end type

type "random_misc"
{
"^7Listen to ^2T^7oo^2l^3!";
} //end type

} //end chat slash
//___________________________


or the easy way, go to the site below and download it... :icon25:

Botstudio
DoomsRemorse
Posts: 2
Joined: Thu May 31, 2007 5:55 am

Post by DoomsRemorse »

Thanks for all the help. I will give it a try.
Post Reply