1
0
mirror of https://github.com/Paintball/BO2-GSC-Releases.git synced 2025-06-08 05:48:21 -05:00

Compare commits

...

31 Commits
1.2 ... master

Author SHA1 Message Date
Cahz
c5976bbc10
Add files via upload 2025-06-05 20:22:17 -08:00
Cahz
a14eae9269
Update README.md 2025-06-05 20:21:27 -08:00
Cahz
e80bd7a4a6
Update README.md 2025-06-05 20:17:16 -08:00
Cahz
14cea9e700
Add files via upload 2025-06-05 20:16:49 -08:00
Cahz
6219b71a40
Add files via upload 2025-06-05 20:12:35 -08:00
Nick // Cahz
7b3b6378ff
Delete README.md 2021-10-27 17:07:37 -07:00
Nick // Cahz
f65778c1f3
Delete _clientids.gsc 2021-10-27 17:07:30 -07:00
Nick // Cahz
212e290fc9
Delete _clientids.gsc 2021-10-27 17:07:22 -07:00
Nick // Cahz
174b02faef
Add files via upload 2021-08-02 08:00:44 -07:00
Nick // Cahz
4cae325157
Add files via upload 2021-08-02 07:55:10 -07:00
Nick // Cahz
27d103daf9
Add files via upload 2021-08-02 07:50:39 -07:00
Nick // Cahz
f96a2ced1a
Update README.md 2021-06-14 06:19:37 -07:00
Nick // Cahz
4e3cf30970
Update README.md 2021-06-14 06:19:17 -07:00
Nick // Cahz
89ad6833b9
Update README.md 2021-06-14 06:19:02 -07:00
Nick // Cahz
fc41704d15
Add files via upload 2021-06-14 06:17:38 -07:00
Nick // Cahz
d85df5fed9
Update _zm_nightmode.gsc 2021-06-14 05:15:32 -07:00
Nick // Cahz
d8a0ed3627
Update _zm_nightmode.gsc 2021-06-14 05:12:39 -07:00
Nick // Cahz
74df3b1543
Add files via upload 2021-06-14 04:51:55 -07:00
Nick // Cahz
2bd5951cd5
Delete _zm_nightmode.gsc 2021-06-14 04:51:35 -07:00
Nick // Cahz
e418f7bb3a
Add files via upload 2021-06-14 04:42:33 -07:00
Nick // Cahz
00b4f148cd
fixed scripts that broke with an update 2021-06-10 16:11:07 -07:00
Nick // Cahz
7e93bc0924
Delete Zombies Mods/Zombies++ v1.2 directory 2021-06-10 16:10:06 -07:00
Nick // Cahz
23cfc59314
Update README.md 2021-06-10 16:04:37 -07:00
Nick // Cahz
80a2b0cd1b
Delete README.md 2021-06-10 15:59:02 -07:00
Nick // Cahz
34f7c29579
Delete _clientids.gsc 2021-06-10 15:58:54 -07:00
Nick // Cahz
3731a3504f
Add files via upload 2021-06-10 14:32:46 -07:00
Nick // Cahz
80ca3a62d9
added recompileable gsc 2021-06-10 14:27:43 -07:00
Nick // Cahz
26206c76c8
Added to github 2021-04-05 16:00:26 -07:00
Nick // Cahz
050da2ba5a
Added MP Mapvote 2021-04-05 15:58:36 -07:00
Nick // Cahz
187f4c200f
Update README.md 2021-03-22 10:58:01 -07:00
Nick // Cahz
f1cd1a67fc
Update _clientids.gsc 2021-03-22 10:56:05 -07:00
27 changed files with 5072 additions and 57 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
# BETTER ZOMBIES COUNTER
## NOTES
- Take the precompiled version and place it inside %localappdata%/Plutonium/storage/t6/scripts/zm/ or use the source code for your own GSC

View File

@ -0,0 +1,56 @@
init()
{
level thread onPlayerConnect();
}
onPlayerConnect()
{
for(;;)
{
level waittill("connected", player);
player thread drawZombiesCounter();
}
}
drawZombiesCounter()
{
self endon( "disconnect" );
level endon( "end_game" );
level waittill( "start_of_round" );
self.zombiesCounter = maps/mp/gametypes_zm/_hud_util::createFontString( "hudsmall" , 1.9 );
self.zombiesCounter maps/mp/gametypes_zm/_hud_util::setPoint( "CENTER", "CENTER", "CENTER", 190 );
self.zombiesCounter.alpha = 0;
while( 1 )
{
self.zombiesCounter setValue( ( maps/mp/zombies/_zm_utility::get_round_enemy_array().size + level.zombie_total ) );
if( ( maps/mp/zombies/_zm_utility::get_round_enemy_array().size + level.zombie_total ) != 0 )
{
self.zombiesCounter.label = &"Zombies: ^1";
if( self.zombiesCounter.alpha != 1 )
{
self.zombiesCounter fadeovertime( 0.5 );
self.zombiesCounter.alpha = 1;
}
}
else
{
self.zombiesCounter.label = &"Zombies: ^6";
for( i = 0; i < 15; i++ )
{
if( self.zombiesCounter.alpha == 1 )
{
self.zombiesCounter fadeovertime( 0.5 );
self.zombiesCounter.alpha = 0;
}
else
{
self.zombiesCounter fadeovertime( 0.5 );
self.zombiesCounter.alpha = 1;
}
wait 0.5;
}
level waittill( "start_of_round" );
}
wait 0.05;
}
}

View File

@ -0,0 +1,16 @@
## BO2 GSC RELEASES
BO2 Bonus Survival Map - Cabin
This is ported from the Plutonium release for Console
To Launch this mod:
1. Inject the main.gsc file using your injector of choice
2. Load up default Tranzit
3. Enjoy
Known Bugs:
- Bowie Knife is free rather than 6000 points & trigger hintstring is not visible
- Sometimes the fx for box sharing can glitch out but whatever
Might fix the bugs at some point
**@ItsCahz**

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 MiB

View File

@ -0,0 +1,8 @@
# GIVE POINTS
## NOTES
###### COMMAND: /give playerName amount
- THIS WILL ONLY WORK ON DEDICATED SEVERS - PLUGINS ARE NOT LOADED IN CUSTOM GAMES
- Download @fed's t6-gsc-utils plugin and place the .dll file inside gameserver/t6r/data/plugins https://github.com/fedddddd/t6-gsc-utils
- Take the precompiled version and place it inside %localappdata%/Plutonium/storage/t6/scripts/zm/ or use the source code for your own GSC

View File

@ -0,0 +1,73 @@
#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\gametypes_zm\_hud_util;
#include maps\mp\gametypes_zm\_hud_message;
init()
{
level thread onPlayerConnect();
}
onPlayerConnect()
{
for(;;)
{
level waittill("connected", player);
player thread onPlayerMessage();
}
}
onPlayerMessage()
{
level endon( "game_ended" );
for (;;)
{
level waittill("say", player, message );
message_strings = strToK( message, " " );
for( i = 0; i < level.players.size; i++ )
{
if( tolower( message_strings[ 0 ] ) == "/give" && isSubStr( tolower( getPlayerName( level.players[ i ] )), message_strings[ 1 ] ) )
{
value = int( message_strings[ ( message_strings.size - 1 ) ] );
if( value < 0 )
value = ( value * -1 );
player give_points( level.players[ i ], int( value ));
}
}
}
}
give_points( player, var )
{
if( !isDefined( self.giving_points ) )
{
self.giving_points = true;
if ( player.score == 1000000 )
self tell( getPlayerName( player ) + " already has ^51000000 ^7points" );
else if( self.score >= var )
{
self maps/mp/zombies/_zm_score::minus_to_player_score( var, 1 );
self tell( "^1Gave ^7" + getPlayerName( player ) + " ^1" + var + " ^7points" );
player maps/mp/zombies/_zm_score::add_to_player_score( var, 1 );
player tell( "^2" + getPlayerName( self ) + " ^7gave you ^2" + var + " ^7points" );
}
else
self tell( "^1You don't have enough points for that" );
wait 1;
self.giving_points = undefined;
}
}
getPlayerName( player )
{
playerName = getSubStr( player.name, 0, player.name.size );
for( i = 0; i < playerName.size; i++ )
{
if( playerName[ i ] == "]" )
break;
}
if( playerName.size != i )
playerName = getSubStr( playerName, i + 1, playerName.size );
return playerName;
}

View File

@ -6,25 +6,8 @@
- Copy the scripts and place them in your **_clientids.gsc** file - Copy the scripts and place them in your **_clientids.gsc** file
- Add **thread high_round_tracker();** into your **init()** function - Add **thread high_round_tracker();** into your **init()** function
- Add **player thread high_round_info();** into your **onPlayerConnect()** function - Add **player thread high_round_info();** into your **onPlayerConnect()** function
###### IF YOU NEED TO RESET YOUR SERVER AND WANT TO KEEP RECORDS - Download @fed's t6-gsc-utils plugin and place the .dll file inside gameserver/t6r/data/plugins
- Logs by default are kept in your game folder **/t6r/data/logs/games_zm.log** https://github.com/fedddddd/t6-gsc-utils
- Open your log and check for any new records *(you can ctrl+f and search for "set by")*
- Add the record into your **dedicated_zm.cfg** file *(high round number & players)* Using these steps will allow the server to track the highest round achieved on the server, and the players who were in the lobby at the time.
- When the server restarts, it will check the **dedicated_zm.cfg** file for any manually written records All high round records will be recorded in .txt files inside gameserver/t6r/data/logs and they will be updated automatically.
###### EXAMPLES FOR ALL MAPS
```
set BuriedHighRound 1
set BuriedPlayers "Player1, Player2"
set DieRiseHighRound 1
set DieRisePlayers "Player1, Player2"
set MotdHighRound 1
set MotdPlayers "Player1, Player2"
set OriginsHighRound 1
set OriginsPlayers "Player1, Player2"
set NuketownHighRound 1
set NuketownPlayers "Player1, Player2"
set TransitHighRound 1
set TransitPlayers "Player1, Player2"
set TownHighRound 1
set TownPlayers "Player1, Player2"
```

View File

@ -1,61 +1,134 @@
high_round_tracker() high_round_tracker()
{ {
level.HighRound = getDvarIntDefault( mapName( level.script ) + "HighRound", 1 ); thread high_round_info_giver();
level.HighRoundPlayers = getDvar( mapName( level.script ) + "Players" ); gamemode = gamemodeName( getDvar( "ui_gametype" ) );
if ( level.HighRoundPlayers == "" ) map = mapName( level.script );
{ if( level.script == "zm_transit" && getDvar( "ui_gametype" ) == "zsurvival" )
level.HighRoundPlayers = "UnNamed Players"; map = startLocationName( getDvar( "ui_zm_mapstartlocation" ) );
} //file handling//
level.basepath = getDvar("fs_basepath") + "/" + getDvar("fs_basegame") + "/";
path = level.basepath + "/logs/" + map + gamemode + "HighRound.txt";
file = fopen(path, "r");
text = fread(file);
fclose(file);
//end file handling//
highroundinfo = strToK( text, ";" );
level.HighRound = int( highroundinfo[ 0 ] );
level.HighRoundPlayers = highroundinfo[ 1 ];
for ( ;; ) for ( ;; )
{ {
level waittill ( "end_game" ); level waittill ( "end_game" );
if ( level.round_number > level.HighRound ) if ( level.round_number > level.HighRound )
{ {
setDvar( mapName( level.script ) + "HighRound", level.round_number ); level.HighRoundPlayers = "";
setDvar( mapName( level.script ) + "Players", "" );
level.HighRound = getDvarIntDefault( mapName( level.script ) + "HighRound", 1 );
players = get_players(); players = get_players();
for ( i = 0; i < players.size; i++ ) for ( i = 0; i < players.size; i++ )
{ {
if ( getDvar( mapName( level.script ) + "Players" ) == "" ) if( level.HighRoundPlayers == "" )
{ {
setDvar( mapName( level.script ) + "Players", players[i].name ); level.HighRoundPlayers = players[i].name;
level.HighRoundPlayers = getDvar( mapName( level.script ) + "Players" );
} }
else else
{ {
setDvar( mapName( level.script ) + "Players", level.HighRoundPlayers + ", " + players[i].name ); level.HighRoundPlayers = level.HighRoundPlayers + "," + players[i].name;
level.HighRoundPlayers = getDvar( mapName( level.script ) + "Players" );
} }
} }
iprintln ( "New Record: ^1" + level.HighRound ); foreach( player in level.players )
iprintln ( "Set by: ^1" + level.HighRoundPlayers ); {
logprint( "Map: " + mapName( level.script ) + " Record: " + level.HighRound + " Set by: " + level.HighRoundPlayers ); player tell( "New Record: ^1" + level.round_number );
player tell( "Set by: ^1" + level.HighRoundPlayers );
}
log_highround_record( level.round_number + ";" + level.HighRoundPlayers );
} }
} }
} }
mapName( name ) log_highround_record( newRecord )
{ {
if( name == "zm_highrise" ) gamemode = gamemodeName( getDvar( "ui_gametype" ) );
return "DieRise"; map = mapName( level.script );
else if( name == "zm_buried" ) if( level.script == "zm_transit" && getDvar( "ui_gametype" ) == "zsurvival" )
return "Buried"; map = startLocationName( getDvar( "ui_zm_mapstartlocation" ) );
else if( name == "zm_prison" ) level.basepath = getDvar("fs_basepath") + "/" + getDvar("fs_basegame") + "/";
return "Motd"; path = level.basepath + "/logs/" + map + gamemode + "HighRound.txt";
else if( name == "zm_tomb" ) file = fopen( path, "w" );
return "Origins"; fputs( newRecord, file );
else if( name == "zm_nuked" ) fclose( file );
return "Nuketown"; }
else if( name == "zm_transit" && level.scr_zm_map_start_location == "transit" )
return "Transit"; startLocationName( location )
else if( name == "zm_transit" && level.scr_zm_map_start_location == "town" ) {
if( location == "cornfield" )
return "Cornfield";
else if( location == "diner" )
return "Diner";
else if( location == "farm" )
return "Farm";
else if( location == "power" )
return "Power";
else if( location == "town" )
return "Town"; return "Town";
else if( location == "transit" )
return "BusDepot";
else if( location == "tunnel" )
return "Tunnel";
}
mapName( map )
{
if( map == "zm_buried" )
return "Buried";
else if( map == "zm_highrise" )
return "DieRise";
else if( map == "zm_prison" )
return "Motd";
else if( map == "zm_nuked" )
return "Nuketown";
else if( map == "zm_tomb" )
return "Origins";
else if( map == "zm_transit" )
return "Tranzit";
return "NA";
}
gamemodeName( gamemode )
{
if( gamemode == "zstandard" )
return "Standard";
else if( gamemode == "zclassic" )
return "Classic";
else if( gamemode == "zsurvival" )
return "Survival";
else if( gamemode == "zgrief" )
return "Grief";
else if( gamemode == "zcleansed" )
return "Turned";
return "NA";
}
high_round_info_giver()
{
highroundinfo = 1;
roundmultiplier = 5;
level endon( "end_game" );
while( 1 )
{
level waittill( "start_of_round" );
if( level.round_number == ( highroundinfo * roundmultiplier ))
{
highroundinfo++;
foreach( player in level.players )
{
player tell( "High Round Record for this map: ^1" + level.HighRound );
player tell( "Record set by: ^1" + level.HighRoundPlayers );
}
}
}
} }
high_round_info() high_round_info()
{ {
wait 5; wait 6;
self iprintln ( "Highest Round for this Map: ^1" + level.HighRound ); self tell( "High Round Record for this map: ^1" + level.HighRound );
self iprintln ( "Record set by: ^1" + level.HighRoundPlayers ); self tell( "Record set by: ^1" + level.HighRoundPlayers );
} }

View File

@ -0,0 +1,4 @@
# ZOMBIES HITMARKERS
## NOTES
- Take the precompiled version and place it inside %localappdata%/Plutonium/storage/t6/scripts/zm/ or use the source code for your own GSC

Binary file not shown.

View File

@ -0,0 +1,88 @@
#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\gametypes_zm\_hud_util;
#include maps\mp\gametypes_zm\_hud_message;
init()
{
level thread init_hitmarkers();
}
init_hitmarkers()
{
precacheshader( "damage_feedback" );
maps/mp/zombies/_zm_spawner::register_zombie_damage_callback(::do_hitmarker);
maps/mp/zombies/_zm_spawner::register_zombie_death_event_callback(::do_hitmarker_death);
for( ;; )
{
level waittill( "connected", player );
player.hud_damagefeedback = newdamageindicatorhudelem( player );
player.hud_damagefeedback.horzalign = "center";
player.hud_damagefeedback.vertalign = "middle";
player.hud_damagefeedback.x = -12;
player.hud_damagefeedback.y = -12;
player.hud_damagefeedback.alpha = 0;
player.hud_damagefeedback.archived = 1;
player.hud_damagefeedback.color = ( 1, 1, 1 );
player.hud_damagefeedback setshader( "damage_feedback", 24, 48 );
player.hud_damagefeedback_red = newdamageindicatorhudelem( player );
player.hud_damagefeedback_red.horzalign = "center";
player.hud_damagefeedback_red.vertalign = "middle";
player.hud_damagefeedback_red.x = -12;
player.hud_damagefeedback_red.y = -12;
player.hud_damagefeedback_red.alpha = 0;
player.hud_damagefeedback_red.archived = 1;
player.hud_damagefeedback_red.color = ( 1, 0, 0 );
player.hud_damagefeedback_red setshader( "damage_feedback", 24, 48 );
}
}
updatedamagefeedback( mod, inflictor, death ) //checked matches cerberus output
{
if ( !isplayer( self ) || isDefined( self.disable_hitmarkers ))
{
return;
}
if ( isDefined( mod ) && mod != "MOD_CRUSH" && mod != "MOD_GRENADE_SPLASH" && mod != "MOD_HIT_BY_OBJECT" )
{
if ( isDefined( inflictor ))
{
self playlocalsound( "mpl_hit_alert" );
}
if( death && getdvarintdefault( "redhitmarkers", 1 ))
{
self.hud_damagefeedback_red setshader( "damage_feedback", 24, 48 );
self.hud_damagefeedback_red.alpha = 1;
self.hud_damagefeedback_red fadeovertime( 1 );
self.hud_damagefeedback_red.alpha = 0;
}
else
{
self.hud_damagefeedback setshader( "damage_feedback", 24, 48 );
self.hud_damagefeedback.alpha = 1;
self.hud_damagefeedback fadeovertime( 1 );
self.hud_damagefeedback.alpha = 0;
}
}
return 0;
}
do_hitmarker_death()
{
if( isDefined( self.attacker ) && isplayer( self.attacker ) && self.attacker != self )
{
self.attacker thread updatedamagefeedback( self.damagemod, self.attacker, 1 );
}
return 0;
}
do_hitmarker(mod, hitloc, hitorig, player, damage)
{
if( isDefined( player ) && isplayer( player ) && player != self )
{
player thread updatedamagefeedback( mod, player, 0 );
}
return 0;
}

Binary file not shown.

View File

@ -0,0 +1,4 @@
# Nightmode
## NOTES
- Take the precompiled version and place it inside %localappdata%/Plutonium/storage/t6/scripts/zm/ or use the source code for your own GSC

View File

@ -0,0 +1,106 @@
#include common_scripts/utility;
#include maps/mp/zombies/_zm_utility;
init()
{
level thread night_mode();
}
night_mode()
{
for( ;; )
{
level waittill( "connected", player );
player setclientdvar( "r_dof_enable", 0 );
player setclientdvar( "r_lodBiasRigid", -1000 );
player setclientdvar( "r_lodBiasSkinned", -1000 );
player setclientdvar( "r_enablePlayerShadow", 1 );
player setclientdvar( "r_skyTransition", 1 );
player setclientdvar( "sm_sunquality", 2 );
player setclientdvar( "vc_fbm", "0 0 0 0" );
player setclientdvar( "vc_fsm", "1 1 1 1" );
player thread visual_fix();
player thread enable_night_mode();
}
}
enable_night_mode()
{
if( !isDefined( level.default_r_exposureValue ) )
level.default_r_exposureValue = getDvar( "r_exposureValue" );
if( !isDefined( level.default_r_lightTweakSunLight ) )
level.default_r_lightTweakSunLight = getDvar( "r_lightTweakSunLight" );
if( !isDefined( level.default_r_sky_intensity_factor0 ) )
level.default_r_sky_intensity_factor0 = getDvar( "r_sky_intensity_factor0" );
self setclientdvar( "r_filmUseTweaks", 1 );
self setclientdvar( "r_bloomTweaks", 1 );
self setclientdvar( "r_exposureTweak", 1 );
self setclientdvar( "vc_rgbh", "0.1 0 0.3 0" );
self setclientdvar( "vc_yl", "0 0 0.25 0" );
self setclientdvar( "vc_yh", "0.02 0 0.1 0" );
self setclientdvar( "vc_rgbl", "0.02 0 0.1 0" );
self setclientdvar( "r_exposureValue", 3.9 );
self setclientdvar( "r_lightTweakSunLight", 1 );
self setclientdvar( "r_sky_intensity_factor0", 0 );
if( level.script == "zm_buried" )
{
self setclientdvar( "r_exposureValue", 3.5 );
}
else if( level.script == "zm_tomb" )
{
self setclientdvar( "r_exposureValue", 4 );
}
else if( level.script == "zm_nuked" )
{
self setclientdvar( "r_exposureValue", 5.6 );
}
else if( level.script == "zm_highrise" )
{
self setclientdvar( "r_exposureValue", 3.9 );
}
}
disable_night_mode()
{
self notify( "disable_nightmode" );
self setclientdvar( "r_filmUseTweaks", 0 );
self setclientdvar( "r_bloomTweaks", 0 );
self setclientdvar( "r_exposureTweak", 0 );
self setclientdvar( "vc_rgbh", "0 0 0 0" );
self setclientdvar( "vc_yl", "0 0 0 0" );
self setclientdvar( "vc_yh", "0 0 0 0" );
self setclientdvar( "vc_rgbl", "0 0 0 0" );
self setclientdvar( "r_exposureValue", int( level.default_r_exposureValue ) );
self setclientdvar( "r_lightTweakSunLight", int( level.default_r_lightTweakSunLight ) );
self setclientdvar( "r_sky_intensity_factor0", int( level.default_r_sky_intensity_factor0 ) );
}
visual_fix()
{
level endon( "game_ended" );
self endon( "disconnect" );
self endon( "disable_nightmode" );
if( level.script == "zm_buried" )
{
while( getDvar( "r_sky_intensity_factor0" ) != 0 )
{
self setclientdvar( "r_lightTweakSunLight", 1 );
self setclientdvar( "r_sky_intensity_factor0", 0 );
wait 0.05;
}
}
else if( level.script == "zm_prison" || level.script == "zm_tomb" )
{
while( getDvar( "r_lightTweakSunLight" ) != 0 )
{
for( i = getDvar( "r_lightTweakSunLight" ); i >= 0; i = ( i - 0.05 ) )
{
self setclientdvar( "r_lightTweakSunLight", i );
wait 0.05;
}
wait 0.05;
}
}
else return;
}