This commit is contained in:
ineed bots committed 2023-12-04 03:36:03 -06:00
1 parent 551e7f55db
commit aa140d7417
108 files changed
+16 -63477

No files matched your search

+5 -39
View File
@@ -1,40 +1,6 @@
# Ignore everything in repository root
/*
# Files to not ignore
!/.gitignore
!/.vscode
!/.editorconfig
!/.gitattributes
!/z_server.bat
!/.astylerc
!/deploy.bat
!/deploy.js
!/z_deploy.bat
!/main/
/main/*
!/main/server.cfg
!/main_shared/
!README.md
# Folder to not ignore
!/mods/
/mods/*
!/mods/mp_bots/
!/mods/patch_mp/
!/mods/patch_ui_mp/
*.log
missingasset.csv
*.ff
*.files
*.iwd
!/out/
!/out/**/*.ff
!/out/**/*.iwd
*.zip
*.log
*.stat
logs/
demos/
missingasset.csv
+5 -5
View File
@@ -1,11 +1,11 @@
![GitHub Logo](/main_shared/bw-assets/bw-logo.png)
![GitHub Logo](/bw-assets/bw-logo.png)
# BO1 Bot Warfare
Bot Warfare is a GSC mod for [Black Ops 1](https://store.steampowered.com/app/42700/Call_of_Duty_Black_Ops/) (or [this](https://getrektby.us/)).
# T5 Bot Warfare
Bot Warfare is a GSC mod for [Black Ops 1](https://store.steampowered.com/app/42700/Call_of_Duty_Black_Ops/) and [PlutoniumT5](https://plutonium.pw/).
It aims to extend the existing AI in the multiplayer games of Black Ops 1.
You can find the ModDB release post [here](https://www.moddb.com/mods/bot-warfare/downloads/bo1-bot-warfare-latest).
You can find the ModDB release post [here](https://www.moddb.com/mods/bot-warfare/downloads/t5-bot-warfare-latest).
## Contents
- [Features](#Features)
@@ -43,7 +43,7 @@ This mod extends the functionality and features of Combat Training in Black Ops
- Bots can use the valkyrie rocket carepackage streak.
## Installation
0. Download the [latest release](https://github.com/ineedbots/bo1_bot_warfare/releases) of Bot Warfare.
0. Download the [latest release](https://github.com/ineedbots/t5_bot_warfare/releases) of Bot Warfare.
1. Locate the root folder which your game is installed in.
2. Move the files/folders found in 'Move to root of Black Ops folder' from the Bot Warfare release archive you downloaded to the root of your Black Ops folder.
- The folder/file structure should follow as '.Black Ops folder\mods\mp_bots\mp_bots.iwd'.
File renamed without changes.
-2
View File
@@ -1,2 +0,0 @@
xcopy bo1_bot_warfare\main_shared\maps main_shared\maps\ /Y /I /E /H /C
xcopy bo1_bot_warfare\main main\ /Y /I /E /H /C
-54
View File
@@ -1,54 +0,0 @@
// nodejs 14+
const exec = require('util').promisify(require('child_process').exec)
const repo_name = 'bo1_bot_warfare'
const repo_url = `https://github.com/ineedbots/${repo_name}`
const deploy_check_rate = 60000
const title = 'BO1 Bot Warfare Git Deployer'
function printToConsole(what, error = false)
{
log = error ? console.error : console.log
log(`[${new Date().toISOString()}]:`, what)
}
async function doDeploy() {
try {
const { stdout, stderr } = await exec(`cd ${repo_name} && git fetch`)
if (stderr.length <= 0)
return
if (stderr.startsWith('From '))
{
printToConsole('git fetched! Pulling...')
await exec(`cd ${repo_name} && git pull && git submodule update --init --recursive`)
printToConsole('Deploying...')
await exec('deploy.bat')
printToConsole('Deployed!')
}
} catch (e) {
printToConsole(e, true)
if (!e.stderr.startsWith('The system cannot find the path specified'))
return
printToConsole('Cloning repo...')
try {
await exec(`git clone ${repo_url} && cd ${repo_name} && git submodule update --init --recursive`)
printToConsole('Cloned!')
printToConsole('Deploying...')
await exec('deploy.bat')
printToConsole('Deployed!')
} catch (f) {
printToConsole(f, true)
}
}
}
process.stdout.write(`${String.fromCharCode(27)}]0;${title}${String.fromCharCode(7)}`)
doDeploy()
setInterval(doDeploy, deploy_check_rate)
File renamed without changes.
-337
View File
@@ -1,337 +0,0 @@
//////////////////////////////////////////////////
// SERVER NAME & COLORS //
//////////////////////////////////////////////////
// //
// ^1 Red //
// ^2 Green //
// ^3 Orange //
// ^4 Dark Blue //
// ^5 Light Blue //
// ^6 Pink //
// ^7 White //
// ^8 Grey //
// ^9 Brown //
// ^0 Black //
// //
//////////////////////////////////////////////////
set sv_hostname "^1Bot ^3War^5fare ^4Bots ^7Nuketown 24/7" // Please put a server host name here
set logfile "1"
set g_logSync "1" // 1 always flush games_mp.log, 0 only flush on game end
//////////////////////////////////////////////////
// GENERAL SETTINGS //
//////////////////////////////////////////////////
set scr_player_forcerespawn "1" // Players respawn automatically after being fragged.
set scr_game_spectatetype "1" // Enable or Disables Spec mode, putting "1" allows spectators to spectate match.
set scr_hardcore "0" // Enable or Disable Hardcore Mode.
set scr_player_healthregentime "5" // Time it takes you to recover damage.
set scr_team_kickteamkillers "0" // Anyone who team kills, gets kicked automatically if you enable this feature.
set scr_team_teamkillspawndelay "20" // Team Killer gets a respawn penalty of specified seconds (20).
set scr_player_maxhealth "100" // Percent of Health players will have on Respawn.
set scr_player_sprinttime "12" // Sprint run time.
set scr_player_suicidespawndelay "0" // Wait before you respawn if you committed suicide.
set scr_teambalance "1" // Enable or Disable auto balance.
set party_minplayers "1" // Pre-Match Lobby
//////////////////////////////////////////////////
// CLIENT SETTINGS //
//////////////////////////////////////////////////
set g_password "" // Password Protected Game. Leave blank if you want players to join.
set sv_disableClientConsole "0" // Enable or Disable players ability to access server commands.
set sv_reconnectlimit "5" // How many times you can try to reconnect.
set sv_timeout "240" // Timeout time period. You will timeout after (240) seconds when attempting to connect or if you are getting connection interruptions.
set sv_zombietime "10" // Your idle time period before getting kicked.
set g_inactivity "180" // Enable or Disable auto kick feature for idle/AFK players.
set g_allowvote "0" // Allow Vote.
set sv_floodProtect "4" // Chat Spam Protection.
set sv_maxPing "0" // Max Ping allowed.
set sv_maxRate "25000" // Max rate on server.
set sv_minPing "0" // Minimum Ping allowed.
set sv_maxclients "32" // Maximum players that can enter server.
set sv_privateClients "2" // Private reserved slots on server.
set sv_pure "0" // verifying cilent files
set sv_kickBanTime "0" // Kick Ban Duration. Time before player can re-join the server after getting kicked.
set sv_vac "0" // Enable/Disable VAC steam Anti-Cheat.. No use...
//////////////////////////////////////////////////
// SERVER SETTINGS //
//////////////////////////////////////////////////
set scr_game_hardpoints "1" // Hardcore Scoring System.
set scr_game_killstreaks "1" // Enable/Disable Killstreak rewards.
set scr_hardpoint_allowdogs "1" // Enable/Disable Attack Dogs Killstreak.
set scr_hardpoint_allowhelicopter_comlink "1" // Helicopter Com Link
set scr_hardpoint_allowradardirection "1" // Radar Direction
set scr_hardpoint_allowsupply "1" // Care Package
set scr_hardpoint_allowhelicopter_gunner "1" // Helicopter Gunner
set scr_hardpoint_allowcounteruav "1" // Counter Spy Plane
set scr_hardpoint_allowhelicopter_player "1" // Helicopter
set scr_hardpoint_allowmortar "1" // Mortar Team
set scr_hardpoint_allownapalm "1" // Napalm Airstrike
set scr_hardpoint_allowrcbomb "1" // RC-XD Bomb
set scr_hardpoint_allowairstrike "1" // Air Strike
set scr_hardpoint_allowauto_turret "1" // Auto Turret
set scr_hardpoint_allowradar "1" // Allow Radar
//////////////////////////////////////////////////
// SERVER TWEAKS //
//////////////////////////////////////////////////
set g_deadChat "1" // Enable or Disable the ability to read dead chat chat of people who have been fragged.
set scr_game_allowfinalkillcam "1" // Enable/Disable Game Winning Kill Killcam.
set scr_team_allowHardpointStreakAfterDeath "0" // Enable/Disable Killstreak after Death. Player resumes the killstreak even after being fragged.
set scr_game_allowkillcam "1" // Allow Killcam.
set g_allow_teamchange "1" // Allow players to change teams.
set scr_player_allowrevive "1" // Allow players to revive each other.
set scr_team_artilleryTeamKillPenalty "0.25" // If you kill your team member with artillery strike, this amount of percent of your artillery time gets deducted. Logical ?
set scr_game_deathpointloss "0" // Points Loss on death Cod Points.
set scr_team_fftype "0" // Enable or Disable Friendly Fire.
set scr_game_onlyheadshots "0" // Enable/Disable Only Headshots mode. You can only kill players by taking headshots.
set scr_player_healthregentime "5" // Health regeneration time, time it takes for blood splatter to be removed from the screen.
set scr_team_teamkillspawndelay "20" // Team Kill respawn penalty, in seconds.
set scr_player_maxhealth "100" // Players starts with this amount of health in percentage.
set scr_team_mortarTeaTeamKillPenalty "0.25" // Mortar Air Strike Team Kill Penalty, time deducted.
set scr_game_prematchperiod "15" // Time before match starts. Strat time?
set scr_game_allowfinalkillcam "1" // Allow Final Kill Killcam.
set g_speed "190" // Player speed, speed at which player can move.
set scr_player_sprinttime "4" // Sprint time, duration a player can run.
set scr_game_suicidepointloss "0" // Suicide penalty in cod points.
set scr_player_suicidespawndelay "0" // Respawn wait after suicide.
set scr_team_teamkillpointloss "1" // Cod Points Penalty for Team Kill.
set scr_team_teamkillspawndelay "20" // Respawn penalty in time, after team kill.
set scr_team_teamkillerplaylistbanpenalty "0" // Add the team killer to the ban list.
set scr_team_teamkillerplaylistbanquantum "0"
set scr_game_perks "1" // Allow players to have perks
//////////////////////////////////////////////////
// VOIP SETTINGS //
//////////////////////////////////////////////////
set voice_deadChat "1" // Enable/Disable voice over IP chat when a player is dead.
set voice_global "1" // Enable/Disable the use of in-game voice over IP.
set sv_voicequality "0" // Voice Quality, 3 for high, 1 for low. More bandwidth better quality.
set g_voiceChatTalkingDuration "500" // Duration you can chat.
set sv_voice "1" // Allow Voice Chat
//////////////////////////////////////////////////
//CAPTURE THE FLAG GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_ctf_globalbattlechatterprobability "0"
set scr_ctf_enemycarriervisible "0" // Where is the flag carrier, spot visible on radar.
set scr_ctf_flagrespawntime "0" // Time before a captured flag respawns.
set scr_ctf_idleflagreturntime "30" // Time before a dropped flag returns to its default location if not picked.
set scr_ctf_numlives "0" // Number of lives per player 0 for unlimited.
set scr_ctf_playerrespawndelay "0" // Respawn wait in seconds.
set scr_ctf_roundlimit "3" // How many rounds match would last.
set scr_ctf_roundswitch "1" // Rounds before the teams switch sides.
set scr_ctf_scorelimit "3" // Target score before the round ends.
set scr_ctf_timelimit "5" // Round length.
set scr_ctf_touchreturn "1" // Ability to return the flag by touching it.
set scr_ctf_waverespawndelay "15"
//////////////////////////////////////////////////
// DEMOLITION GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_dem_globalbattlechatterprobability "0"
set scr_dem_bombtimer "45" // Time the bomb takes to detonate.
set scr_dem_defusetime "5" // Time taken to defuse the bomb.
set scr_dem_extratime "3"
set scr_dem_numlives "0" // Lives per player 0 for unlimited.
set scr_dem_planttime "5" // Time it takes to plant a bomb in seconds.
set scr_dem_roundlimit "0" // Rounds the game is limited to, if there are no winners.
set scr_dem_roundswitch "1" // Rounds before the teams switch the sides.
set scr_dem_scorelimit "2" // Score limit needed to win.
set scr_dem_timelimit "2.5" // Round time limit.
//////////////////////////////////////////////////
// DOMINATION GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_dom_globalbattlechatterprobability "0"
set scr_dom_flagcapturetime "10" // Time in seconds to capture a flag.
set scr_dom_numlives "0" // Lives per player 0 for unlimited.
set scr_dom_playerrespawndelay "0" // Duration of time you wait to respawn.
set scr_dom_roundlimit "1" // Rounds played per game.
set scr_dom_scorelimit "300" // Score limit per game.
set scr_dom_timelimit "30" // Duration in minutes per round.
set scr_dom_waverespawndelay "0" // Spawn delay at start.
//////////////////////////////////////////////////
// FREE FOR ALL GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_dm_globalbattlechatterprobability "100"
set scr_dm_bonus_leader "0"
set scr_dm_numlives "0" // Lives per player 0 for unlimited.
set scr_dm_playerrespawndelay "0" // Time in seconds wait to respawn.
set scr_dm_roundlimit "1" // Round limit.
set scr_dm_score_assist "100" // Points allotted for an assist.
set scr_dm_score_death "0" // Points allotted for dying.
set scr_dm_score_headshot "0" // Points for headshot.
set scr_dm_score_kill "50" // Points for a kill.
set scr_dm_scorelimit "1500" // Points needed to win the game.
set scr_dm_score_suicide "0" // Points allotted for suicide.
set scr_dm_timelimit "15" // Duration the game lasts in minutes when the score limit isn&#39;t reached.
set scr_dm_waverespawndelay "0" // Delay before the first respawn in the first round.
//////////////////////////////////////////////////
// HEADQUARTERS GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_koth_globalbattlechatterprobability "0"
set scr_koth_numlives "0" // Number of lives per game 0 for unlimited.
set scr_koth_playerrespawndelay "0" // Players respawn wait.
set scr_koth_roundlimit "1" // Rounds to be played.
set scr_koth_roundswitch "1" // Rounds to be played before teams switch sides.
set scr_koth_scorelimit "250" // Score limit to win the game.
set scr_koth_timelimit "15" // Duration in minutes the game will continue if the score isn&#39;t reached.
set scr_koth_waverespawndelay "0" // First respawn delay for each round.
//////////////////////////////////////////////////
// SABOTAGE GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_sab_globalbattlechatterprobability "0"
set scr_sab_bombtimer "30" // Duration in seconds the bomb takes to detonate.
set scr_sab_defusetime "5" // Time taken to defuse the bomb.
set scr_sab_hotpotato "0" // One bomb that the teams must fight over. One defending and one have to plant at the site.
set scr_sab_numlives "0" // Number of lives players get.
set scr_sab_planttime "2.5" // Time taken to plant the bomb.
set scr_sab_playerrespawndelay "7.5" // Time before respawn.
set scr_sab_roundlimit "1" // Rounds per game.
set scr_sab_roundswitch "1" // Rounds needed to be played before the teams switch sides.
set scr_sab_scorelimit "1" // Score limit to win the match.
set scr_sab_timelimit "10" // Duration in minutes the game lasts if the score limit isn&#39;t reached.
set scr_sab_waverespawndelay "0" // Time delay for first respawn before the game.
//////////////////////////////////////////////////
// SEARCH AND DESTROY GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_sd_globalbattlechatterprobability "0"
set scr_sd_bombtimer "45" // Time taken for the bomb to detonate.
set scr_sd_defusetime "5" // Time taken to defuse the bomb.
set scr_sd_game_spectatetype "3" // Allow team spectate.
set scr_sd_multibomb "0" // Allow more than one bomb.
set scr_sd_numlives "1" // Number of lives per player per game.
set scr_sd_planttime "5" // Time taken to plant the bomb.
set scr_sd_playerrespawndelay "0" // Respawn wait.
set scr_sd_roundlimit "0" // Rounds the game is limited to 0 for unlimited.
set scr_sd_roundswitch "3" // Rounds to be played before the teams switch sides.
set scr_sd_scorelimit "4" // Score limit required to win the game.
set scr_sd_timelimit "2.5" // Time limit if the score limit isn&#39;t reached.
set scr_sd_waverespawndelay "0" // Delay for first respawn.
//////////////////////////////////////////////////
// TEAM DEATHMATCH GAMETYPE SETTINGS //
//////////////////////////////////////////////////
set scr_tdm_globalbattlechatterprobability "0"
set scr_tdm_bonus_leader "0" // Top Player on the leaderboard gets this much bonus.
set scr_tdm_numlives "0" // Number of lives per player 0 for unlimited.
set scr_tdm_playerrespawndelay "0" // Respawn wait.
set scr_tdm_roundlimit "1" // Rounds per game.
set scr_tdm_score_assist "50" // Points awarded for an assist.
set scr_tdm_score_death "0" // Points awarded for death.
set scr_tdm_score_headshot "0" // Headshot reward.
set scr_tdm_score_kill "100" // Points awarded for a kill.
set scr_tdm_scorelimit "7500" // Score limit to win the game.
set scr_tdm_score_suicide "0" // Score awarded for suicide.
set scr_tdm_timelimit "15" // Duration in minutes for the game to end if the score limit isn&#39;t reached.
set scr_tdm_waverespawndelay "0" // Duration is seconds before the first respawn in each round.
//////////////////////////////////////////////////
// GAMETYPE & WAGER TIPS //
//////////////////////////////////////////////////
// //
// tdm - Team deathmatch //
// dm - Free-for-all //
// sab - Sabotage //
// dem - Demolition //
// ctf - Capture the flag //
// sd - Search and destroy //
// dom - Domination //
// koth - Headquarters //
// //
//// Wager Matchs ////////////////////////////////
// //
// IMPORTMENT //
// Wager Matchs MUST require xblive_wagermatch 1//
// //
// hlnd - Stick and Stones* //
// gun - Gun mode* //
// shrp - Sharpshooter* //
// oic - One in the Chamber* //
// //
//////////////////////////////////////////////////
set g_gametype "dom" // Select gametype from the list above
set xblive_wagermatch "0" // Set to 1 if you plan on using a wager match. This is a MUST! Failure to do so caused problems
//////////////////////////////////////////////////
// MAP ROTATION TIPS //
//////////////////////////////////////////////////
// //
// mp_array - Array //
// mp_cracked - Cracked //
// mp_crisis - Crysis //
// mp_firingrange - Firingrange //
// mp_duga - Grid //
// mp_hanoi - Hanoi //
// mp_cairo - Havana //
// mp_havoc - Jungle //
// mp_cosmodrome - Launch //
// mp_nuked - Nuketown //
// mp_radiation - Radiation //
// mp_mountain - Summit //
// mp_villla - Villa //
// mp_russianbase - WMD //
// //
//// DLC1 FIRSTSTRIKE ////////////////////////////
// //
// mp_berlinwall2 - Berlin Wall //
// mp_discovery - Discovery //
// mp_kowloon - Kowloon //
// mp_stadium - Stadium //
// //
//// DLC2 ESCALATION /////////////////////////////
// //
// mp_gridlock - Convoy //
// mp_hotel - Hotel //
// mp_outskirts - Stockpile //
// mp_zoo - Zoo //
// //
//// DLC3 ANNIHILATION ///////////////////////////
// //
// mp_drivein - Drive-In //
// mp_area51 - Hanger 18 //
// mp_golfcourse - Hazard //
// mp_silo - Silo //
// //
//////////////////////////////////////////////////
set scr_xpscale "10"
set sv_maprotation "map mp_nuked"
//////////////////////////////////////////////////
// PLAYLIST DVARS //
//////////////////////////////////////////////////
set playlist_enabled "0" // Reserved slots for players in playlist.
set playlist_excludeMap "mapname" // Exclude this map from the server rotation. Type in the map name shortname.
set playlist_excludeGametype "" // Exclude this gametype, type in the gametype shortname.
set playlist_excludeGametypeMap "" // Exclude this gametype map, type in the map shortname.
set bots_manage_add "12"
set bots_manage_fill "12"
set bots_manage_fill_kick "1"
set bots_team_force "1"
set bots_loadout_allow_op "0"
set bots_loadout_reasonable "1"
set bots_manage_fill_spec "0"
set bot_difficulty "2"
-26
View File
@@ -1,26 +0,0 @@
bota
botb
botc
botd
bote
botf
botg
both
boti
botj
botk
botl
botm
botn
boto
botp
botq
botr
bots
bott
botu
botv
botw
botx
boty
botz
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -228,11 +228,11 @@ watchBotDebugEvent()
if ( isDefined( g ) && isString( g ) )
big_str += ": " + g;
Print( big_str );
Println( big_str );
}
else if ( msg == "debug" && GetDvarInt( "bots_main_debug" ) )
{
Print( "Bot Warfare debug: " + self.name + ": " + str );
Println( "Bot Warfare debug: " + self.name + ": " + str );
}
}
}
@@ -715,33 +715,6 @@ addBots_loop()
/*
A server thread for monitoring all bot's in game. Will add and kick bots according to server settings.
Dedis only spawn bots when developer is not 0
This makes the dedi unstable and can crash
Patch the executable to skip the pregame and make it so bots can spawn
pregame:
in the ShouldDoPregame sub:
B8 01 00 00 00: mov eax, 1
change to: B8 00 00 00 00: mov eax, 0
0x4F6C77 in rektmp
0x4598A7 in bg
spawnbots:
in the SV_AddTestClient sub:
0F 85 A4 00 00 00: jnz
change to: 0F 84 A4 00 00 00: jz
0x6B6180 in rektmp
0x4682F0 in bg
allow changing g_antilag dvar:
set the byte from 0x40 to 0x00
0x53B1B2 in rekt
0x59B6F2 in bg
*/
addBots()
{
+4
View File
@@ -3,3 +3,7 @@ menufile,ui_mp/playercards.menu
stringtable,mp/gametypesTable.csv
menufile,ui_mp/custom_game_create.menu
menufile,ui_mp/pc_basictraining.menu
rawfile,maps/mp/gametypes/_bot.gsc
rawfile,maps/mp/bots/_bot_utility.gsc
rawfile,maps/mp/bots/_bot_loadout.gsc
rawfile,maps/mp/bots/_bot_script.gsc
Internal Server Error - AlterWare Git
500 Internal Server Error

An error occurred:

An error occurred