mirror of
https://github.com/JezuzLizard/Recompilable-gscs-for-BO2-zombies-and-multiplayer.git
synced 2025-06-08 01:47:50 -05:00
fixed exe_client_field_mismatch for _zm
This commit is contained in:
parent
ffac476a7e
commit
e5bf6a75a0
@ -83,23 +83,11 @@ init() //checked matches cerberus output
|
|||||||
}
|
}
|
||||||
if ( !isDefined( level.disable_deadshot_clientfield ) )
|
if ( !isDefined( level.disable_deadshot_clientfield ) )
|
||||||
{
|
{
|
||||||
level.disable_deadshot_clientfield = 0; //needs to be 0 for buried and origins to fix exe_client_field_mismatch
|
level.disable_deadshot_clientfield = 0; //needs to be 0 even if the map doesn't have the perk
|
||||||
if ( level.script == "zm_transit" )
|
|
||||||
{
|
|
||||||
level.disable_deadshot_clientfield = 1;
|
|
||||||
}
|
|
||||||
if ( level.script == "zm_nuked" )
|
|
||||||
{
|
|
||||||
level.disable_deadshot_clientfield = 1;
|
|
||||||
}
|
|
||||||
if ( level.script == "zm_highrise" )
|
|
||||||
{
|
|
||||||
level.disable_deadshot_clientfield = 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if ( !isDefined( level.use_clientside_rock_tearin_fx ) )
|
if ( !isDefined( level.use_clientside_rock_tearin_fx ) )
|
||||||
{
|
{
|
||||||
level.use_clientside_rock_tearin_fx = 1;
|
level.use_clientside_rock_tearin_fx = 0;
|
||||||
}
|
}
|
||||||
if ( !isDefined( level.no_end_game_check ) )
|
if ( !isDefined( level.no_end_game_check ) )
|
||||||
{
|
{
|
||||||
@ -122,7 +110,7 @@ init() //checked matches cerberus output
|
|||||||
level.player_out_of_playable_area_monitor = 1;
|
level.player_out_of_playable_area_monitor = 1;
|
||||||
level.player_too_many_weapons_monitor = 1;
|
level.player_too_many_weapons_monitor = 1;
|
||||||
level.player_too_many_weapons_monitor_func = ::player_too_many_weapons_monitor;
|
level.player_too_many_weapons_monitor_func = ::player_too_many_weapons_monitor;
|
||||||
level.player_too_many_players_check = 0;
|
level.player_too_many_players_check = 0; //doesn't do anything on a plutonium server but probably best to keep it off anyway
|
||||||
level.player_too_many_players_check_func = ::player_too_many_players_check;
|
level.player_too_many_players_check_func = ::player_too_many_players_check;
|
||||||
level._use_choke_weapon_hints = 1;
|
level._use_choke_weapon_hints = 1;
|
||||||
level._use_choke_blockers = 1;
|
level._use_choke_blockers = 1;
|
||||||
@ -281,36 +269,6 @@ init() //checked matches cerberus output
|
|||||||
level thread onallplayersready();
|
level thread onallplayersready();
|
||||||
level thread startunitriggers();
|
level thread startunitriggers();
|
||||||
level thread maps/mp/gametypes_zm/_zm_gametype::post_init_gametype();
|
level thread maps/mp/gametypes_zm/_zm_gametype::post_init_gametype();
|
||||||
if ( level.debugLogging_zm )
|
|
||||||
{
|
|
||||||
logline1 = "INFO: _zm.gsc init() The value of level.createfx_enabled is: " + level.createfx_enabled + "\n";
|
|
||||||
logprint( logline1 );
|
|
||||||
logline2 = "INFO: _zm.gsc init() The value of level.disable_blackscreen_clientfield is: " + level.disable_blackscreen_clientfield + "\n";
|
|
||||||
logprint( logline2 );
|
|
||||||
logline3 = "INFO: _zm.gsc init() The value of level._no_equipment_activated_clientfield is: " + level._no_equipment_activated_clientfield + "\n";
|
|
||||||
logprint( logline3 );
|
|
||||||
logline4 = "INFO: _zm.gsc init() The value of level.zombie_vars[ zombie_spawn_delay ] is: " + level.zombie_vars[ "zombie_spawn_delay" ] + "\n";
|
|
||||||
logprint( logline4 );
|
|
||||||
logline5 = "INFO: _zm.gsc init() The value of level.scr_zm_ui_gametype is: " + level.scr_zm_ui_gametype + "\n";
|
|
||||||
logprint( logline5 );
|
|
||||||
logline6 = "INFO: _zm.gsc init() The value of level.scr_zm_ui_gametype_group is: " + level.scr_zm_ui_gametype_group + "\n";
|
|
||||||
logprint( logline6 );
|
|
||||||
logline7 = "INFO: _zm.gsc init() The value of level.scr_zm_map_start_location is: " + level.scr_zm_map_start_location + "\n";
|
|
||||||
logprint( logline7 );
|
|
||||||
mapname = getDvar( "mapname" );
|
|
||||||
logline8 = "INFO: _zm.gsc init() The value of mapname is: " + mapname + "\n";
|
|
||||||
logprint( logline8 );
|
|
||||||
ui_mapname = getDvar( "ui_mapname" );
|
|
||||||
logline9 = "INFO: _zm.gsc init() The value of ui_mapname is: " + ui_mapname + "\n";
|
|
||||||
logprint( logline9 );
|
|
||||||
g_gametype = getDvar( "g_gametype" );
|
|
||||||
logline10 = "INFO: _zm.gsc init() The value of g_gametype is: " + g_gametype + "\n";
|
|
||||||
logprint( logline10 );
|
|
||||||
map = getDvar( "map" );
|
|
||||||
logline11 = "INFO: _zm.gsc init() The value of map is: " + map + "\n";
|
|
||||||
logprint( logline11 );
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
post_main() //checked matches cerberus output
|
post_main() //checked matches cerberus output
|
||||||
@ -399,6 +357,7 @@ onallplayersready() //checked changed to match cerberus output
|
|||||||
wait 0.1;
|
wait 0.1;
|
||||||
}
|
}
|
||||||
player_count_actual = 0;
|
player_count_actual = 0;
|
||||||
|
//fixed fast restart
|
||||||
while ( player_count_actual < players.size )
|
while ( player_count_actual < players.size )
|
||||||
{
|
{
|
||||||
players = get_players();
|
players = get_players();
|
||||||
@ -431,7 +390,6 @@ onallplayersready() //checked changed to match cerberus output
|
|||||||
{
|
{
|
||||||
player.lives = 0;
|
player.lives = 0;
|
||||||
}
|
}
|
||||||
//this was commented out
|
|
||||||
level set_default_laststand_pistol( 1 );
|
level set_default_laststand_pistol( 1 );
|
||||||
}
|
}
|
||||||
flag_set( "initial_players_connected" );
|
flag_set( "initial_players_connected" );
|
||||||
@ -439,7 +397,7 @@ onallplayersready() //checked changed to match cerberus output
|
|||||||
{
|
{
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
}
|
}
|
||||||
thread start_zombie_logic_in_x_sec( 3 ); //default input 3
|
thread start_zombie_logic_in_x_sec( 3 );
|
||||||
}
|
}
|
||||||
fade_out_intro_screen_zm( 5, 1.5, 1 );
|
fade_out_intro_screen_zm( 5, 1.5, 1 );
|
||||||
}
|
}
|
||||||
@ -946,7 +904,7 @@ init_levelvars() //checked changed to match cerberus output
|
|||||||
level.round_number = level.start_round;
|
level.round_number = level.start_round;
|
||||||
level.enable_magic = getgametypesetting( "magic" );
|
level.enable_magic = getgametypesetting( "magic" );
|
||||||
level.headshots_only = getgametypesetting( "headshotsonly" );
|
level.headshots_only = getgametypesetting( "headshotsonly" );
|
||||||
level.player_starting_points = level.round_number * 500000;
|
level.player_starting_points = level.round_number * 500;
|
||||||
level.round_start_time = 0;
|
level.round_start_time = 0;
|
||||||
level.pro_tips_start_time = 0;
|
level.pro_tips_start_time = 0;
|
||||||
level.intermission = 0;
|
level.intermission = 0;
|
||||||
@ -954,10 +912,6 @@ init_levelvars() //checked changed to match cerberus output
|
|||||||
level.zombie_total = 0;
|
level.zombie_total = 0;
|
||||||
level.total_zombies_killed = 0;
|
level.total_zombies_killed = 0;
|
||||||
level.hudelem_count = 0;
|
level.hudelem_count = 0;
|
||||||
//added these since they are undefined
|
|
||||||
level.no_end_game_check = 0;
|
|
||||||
level.zm_disable_recording_stats = 0;
|
|
||||||
|
|
||||||
level.zombie_spawn_locations = [];
|
level.zombie_spawn_locations = [];
|
||||||
level.zombie_rise_spawners = [];
|
level.zombie_rise_spawners = [];
|
||||||
level.current_zombie_array = [];
|
level.current_zombie_array = [];
|
||||||
@ -1098,6 +1052,7 @@ init_function_overrides() //checked does not match cerberus output did not chang
|
|||||||
//these don't work and it works fine without so why?
|
//these don't work and it works fine without so why?
|
||||||
level.callbackactorkilled = ::actor_killed_override;
|
level.callbackactorkilled = ::actor_killed_override;
|
||||||
level.callbackactordamage = ::actor_damage_override_wrapper;
|
level.callbackactordamage = ::actor_damage_override_wrapper;
|
||||||
|
|
||||||
level.custom_introscreen = ::zombie_intro_screen;
|
level.custom_introscreen = ::zombie_intro_screen;
|
||||||
level.custom_intermission = ::player_intermission;
|
level.custom_intermission = ::player_intermission;
|
||||||
level.global_damage_func = maps/mp/zombies/_zm_spawner::zombie_damage;
|
level.global_damage_func = maps/mp/zombies/_zm_spawner::zombie_damage;
|
||||||
@ -1287,6 +1242,7 @@ init_client_flags() //checked matches cerberus output
|
|||||||
|
|
||||||
init_fx() //checked partially changed to match cerberus output //csc partially matches cerberus output
|
init_fx() //checked partially changed to match cerberus output //csc partially matches cerberus output
|
||||||
{
|
{
|
||||||
|
//this function does not cause exe_client_field_mismatch if the effects aren't loaded
|
||||||
if ( !isDefined( level._uses_default_wallbuy_fx ) )
|
if ( !isDefined( level._uses_default_wallbuy_fx ) )
|
||||||
{
|
{
|
||||||
level._uses_default_wallbuy_fx = 1;
|
level._uses_default_wallbuy_fx = 1;
|
||||||
@ -1420,7 +1376,7 @@ players_playing() //checked matches cerberus output
|
|||||||
|
|
||||||
onplayerconnect_clientdvars() //checked matches cerberus output
|
onplayerconnect_clientdvars() //checked matches cerberus output
|
||||||
{
|
{
|
||||||
self setclientcompass( 0 );
|
self setclientcompass( 0 ); //was 0
|
||||||
self setclientthirdperson( 0 );
|
self setclientthirdperson( 0 );
|
||||||
self resetfov();
|
self resetfov();
|
||||||
self setclientthirdpersonangle( 0 );
|
self setclientthirdpersonangle( 0 );
|
||||||
@ -2462,7 +2418,7 @@ last_stand_compare_pistols( struct_array ) //checked changed to match cerberus o
|
|||||||
{
|
{
|
||||||
self.hadpistol = 0;
|
self.hadpistol = 0;
|
||||||
self._special_solo_pistol_swap = 1;
|
self._special_solo_pistol_swap = 1;
|
||||||
if ( isDefined( level.force_solo_quick_revive ) && level.force_solo_quick_revive && !self hasperk( "specialty_quickrevive" ) && !self hasperk( "specialty_quickrevive" ) )
|
if ( isDefined( level.force_solo_quick_revive ) && level.force_solo_quick_revive || !self hasperk( "specialty_quickrevive" ) )
|
||||||
{
|
{
|
||||||
return highest_score_pistol.gun;
|
return highest_score_pistol.gun;
|
||||||
}
|
}
|
||||||
@ -2596,12 +2552,10 @@ last_stand_take_thrown_grenade() //checked matches cerberus output
|
|||||||
|
|
||||||
last_stand_grenade_save_and_return() //checked changed to match cerberus output
|
last_stand_grenade_save_and_return() //checked changed to match cerberus output
|
||||||
{
|
{
|
||||||
//broken for now
|
|
||||||
if ( isDefined( level.isresetting_grief ) && level.isresetting_grief )
|
if ( isDefined( level.isresetting_grief ) && level.isresetting_grief )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
//return; //added for debug purposes
|
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "bled_out" );
|
self endon( "bled_out" );
|
||||||
level endon( "between_round_over" );
|
level endon( "between_round_over" );
|
||||||
@ -3099,7 +3053,8 @@ round_spawning() //checked changed to match cerberus output
|
|||||||
{
|
{
|
||||||
level thread zombie_speed_up();
|
level thread zombie_speed_up();
|
||||||
}
|
}
|
||||||
level.zombie_total = 100; //added for debugging purposes
|
level.zombie_total = [[ level.max_zombie_func ]]( max );
|
||||||
|
level notify( "zombie_total_set" );
|
||||||
mixed_spawns = 0;
|
mixed_spawns = 0;
|
||||||
old_spawn = undefined;
|
old_spawn = undefined;
|
||||||
while ( 1 )
|
while ( 1 )
|
||||||
@ -3113,7 +3068,7 @@ round_spawning() //checked changed to match cerberus output
|
|||||||
clear_all_corpses();
|
clear_all_corpses();
|
||||||
wait 0.1;
|
wait 0.1;
|
||||||
}
|
}
|
||||||
//flag_wait( "spawn_zombies" );
|
flag_wait( "spawn_zombies" );
|
||||||
while ( level.zombie_spawn_locations.size <= 0 )
|
while ( level.zombie_spawn_locations.size <= 0 )
|
||||||
{
|
{
|
||||||
wait 0.1;
|
wait 0.1;
|
||||||
@ -3367,7 +3322,6 @@ round_pause( delay ) //checked changed to match cerberus output
|
|||||||
{
|
{
|
||||||
wait 1;
|
wait 1;
|
||||||
delay--;
|
delay--;
|
||||||
|
|
||||||
level.countdown_hud setvalue( delay );
|
level.countdown_hud setvalue( delay );
|
||||||
}
|
}
|
||||||
players = get_players();
|
players = get_players();
|
||||||
@ -4401,7 +4355,7 @@ player_damage_override( einflictor, eattacker, idamage, idflags, smeansofdeath,
|
|||||||
//checked against bo3 _zm.gsc changed to match
|
//checked against bo3 _zm.gsc changed to match
|
||||||
if ( count < players.size || isDefined( level._game_module_game_end_check ) && ![[ level._game_module_game_end_check ]]() )
|
if ( count < players.size || isDefined( level._game_module_game_end_check ) && ![[ level._game_module_game_end_check ]]() )
|
||||||
{
|
{
|
||||||
if ( isDefined( self.lives ) && self.lives > 0 && isDefined( level.force_solo_quick_revive ) && level.force_solo_quick_revive && self hasperk( "specialty_quickrevive" ) )
|
if ( isDefined( self.lives ) && self.lives > 0 || isDefined( level.force_solo_quick_revive ) && level.force_solo_quick_revive || self hasperk( "specialty_quickrevive" ) )
|
||||||
{
|
{
|
||||||
self thread wait_and_revive();
|
self thread wait_and_revive();
|
||||||
}
|
}
|
||||||
@ -4645,11 +4599,6 @@ actor_damage_override_wrapper( inflictor, attacker, damage, flags, meansofdeath,
|
|||||||
damage_override = self actor_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, vpoint, vdir, shitloc, psoffsettime, boneindex );
|
damage_override = self actor_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, vpoint, vdir, shitloc, psoffsettime, boneindex );
|
||||||
if ( ( self.health - damage_override ) > 0 || isDefined( self.dont_die_on_me ) && !self.dont_die_on_me )
|
if ( ( self.health - damage_override ) > 0 || isDefined( self.dont_die_on_me ) && !self.dont_die_on_me )
|
||||||
{
|
{
|
||||||
if ( level.debugLogging_zm )
|
|
||||||
{
|
|
||||||
logline10 = "_zm.gsc actor_killed_override_wrapper() actor survives taking: " + damage_override + " damage " + "\n";
|
|
||||||
logprint( logline10 );
|
|
||||||
}
|
|
||||||
self finishactordamage( inflictor, attacker, damage_override, flags, meansofdeath, weapon, vpoint, vdir, shitloc, psoffsettime, boneindex );
|
self finishactordamage( inflictor, attacker, damage_override, flags, meansofdeath, weapon, vpoint, vdir, shitloc, psoffsettime, boneindex );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -4711,10 +4660,12 @@ actor_killed_override( einflictor, attacker, idamage, smeansofdeath, sweapon, vd
|
|||||||
{
|
{
|
||||||
self [[ self.actor_killed_override ]]( einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime );
|
self [[ self.actor_killed_override ]]( einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime );
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
if ( isDefined( self.deathfunction ) ) //added from bo3 _zm.gsc
|
if ( isDefined( self.deathfunction ) ) //added from bo3 _zm.gsc
|
||||||
{
|
{
|
||||||
self [[ self.deathfunction ]]( eInflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime );
|
self [[ self.deathfunction ]]( eInflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime );
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
round_end_monitor() //checked matches cerberus output //checked against bo3 _zm.gsc matches within reason
|
round_end_monitor() //checked matches cerberus output //checked against bo3 _zm.gsc matches within reason
|
||||||
@ -4731,7 +4682,6 @@ round_end_monitor() //checked matches cerberus output //checked against bo3 _zm.
|
|||||||
end_game() //checked changed to match cerberus output
|
end_game() //checked changed to match cerberus output
|
||||||
{
|
{
|
||||||
level waittill( "end_game" );
|
level waittill( "end_game" );
|
||||||
//return; //added for debugging purposes
|
|
||||||
check_end_game_intermission_delay();
|
check_end_game_intermission_delay();
|
||||||
clientnotify( "zesn" );
|
clientnotify( "zesn" );
|
||||||
if ( isDefined( level.sndgameovermusicoverride ) )
|
if ( isDefined( level.sndgameovermusicoverride ) )
|
||||||
@ -5655,6 +5605,8 @@ player_too_many_players_check() //checked matches cerberus output
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -31,6 +31,7 @@ patch_zm/maps/mp/zombies/_zm_zonemgr.gsc
|
|||||||
```
|
```
|
||||||
### The following scripts compile and run successfully with minor errors:
|
### The following scripts compile and run successfully with minor errors:
|
||||||
```
|
```
|
||||||
|
patch_zm/maps/mp/zombies/_zm.gsc
|
||||||
patch_zm/maps/mp/zombies/_zm_timer.gsc
|
patch_zm/maps/mp/zombies/_zm_timer.gsc
|
||||||
```
|
```
|
||||||
### The following scripts compile and run successfully with major errors:
|
### The following scripts compile and run successfully with major errors:
|
||||||
@ -40,7 +41,6 @@ patch_zm/maps/mp/zombies/_zm_utility.gsc
|
|||||||
```
|
```
|
||||||
### The following scripts compile and run serverside but clients cannot join due to exe_client_field_mismatch
|
### The following scripts compile and run serverside but clients cannot join due to exe_client_field_mismatch
|
||||||
```
|
```
|
||||||
patch_zm/maps/mp/zombies/_zm.gsc
|
|
||||||
```
|
```
|
||||||
### The following scripts compile but cause a minidump or other severe error:
|
### The following scripts compile but cause a minidump or other severe error:
|
||||||
```
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user