
Posts
307
Respect
89Add +1
Forum Rank
Perk Hacker
Primary Group
Scripter
Login Issues
Forgot password?Activate Issues
Account activation email not received? Wrong account activation email used?Other Problems?
Contact Support - Help Center Get help on the UGX Discord. Join it now!
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
#include maps\_utility;
#include common_scripts\utility;
#include maps\_zombiemode_utility;
main()
{
iPrintLnBold ("Delta Manager started");
thread delta_zones_init();
}
delta_zones_init()
{
thread zone_hide();
level waittill ("deltastart");
level thread zone_active( "start_zone" );
level waittill ("between_round_over");
level thread zone_delete( "start_zone" );
level thread zone_active( "zone2" );
level waittill ("between_round_over");
level thread zone_delete( "zone2" );
level thread zone_active( "zone3" );
level waittill ("between_round_over");
level thread zone_delete( "zone3" );
}
zone_delete( zone )
{
for(x=0;x<level.zones[ zone ].spawners.size;x++)
{
level.zones[ zone ].spawners[x].locked_spawner = true;
level.enemy_spawns = array_remove_nokeys(level.enemy_spawns, level.zones[ zone ].spawners[x]);
}
level.zones[ zone ].is_enabled = false;
level.zones[ zone ].is_occupied = false;
level.zones[ zone ].is_active = false;
iPrintLnBold ("" + zone + " delete");
}
zone_hide()
{
level thread zone_delete( "start_zone" );
level thread zone_delete( "zone2" );
level thread zone_delete( "zone3" );
}
zone_active( zone )
{
for(x=0;x<level.zones[ zone ].spawners.size;x++)
{
level.zones[ zone ].spawners[x].locked_spawner = false;
level.enemy_spawns = array_remove_nokeys(level.enemy_spawns, level.zones[ zone ].spawners[x]);
}
level.zones[ zone ].is_enabled = true;
level.zones[ zone ].is_occupied = true;
level.zones[ zone ].is_active = true;
iPrintLnBold ("" + zone + " active");
}
![]() | Has released one or more maps to the UGX-Mods community. |
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
Make cents told us that if you just put all your zones under the initial zones and remove your add adjacent zones and they will only spawn in the zone you are in. And you can use a respawn script to make sure no zombies get left behind
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
Don't do a respawn script. You arent fixing the root problem that way.



![]() | Benevolent Soul who has our eternal gratitude and exclusive access to betas and the donator section of the forum. |
![]() | Has shown excellence and experience in the area of custom scripting in the UGX-Mods community. |
![]() Oil Rig Beta Access |
Make cents told us that if you just put all your zones under the initial zones and remove your add adjacent zones and they will only spawn in the zone you are in. And you can use a respawn script to make sure no zombies get left behind
![]() | Has released one or more maps to the UGX-Mods community. |
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
^
think he's right though, there was a topic about this a little while ago. You should try just removing the adjacent_zone lines from your mapname.gsc, and add them all as an initial zone. See if that works, you're switching zones in between rounds so prob dont need a respawn script.
![]() | Has released one or more maps to the UGX-Mods community. |
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
![]() BO3 Modtools Alpha | This user has access to the Black Ops 3 Modtools Alpha |
Ok, but what can i do instead of respawn the ai? I thougth of making jumps for the ai, but then i would need over 80 of them and this would slow down the gameplay of the map.
I already added the zones only as initial zones.
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
Move the zombies to acceptable areas would be more suiting than jumps.
Show us what you script looks like, and when you did, did you stop calling the script you posted?
There are a few ways to do this. You could just put all zones as starting zones, like said already. Or, you could just move the zombies to structs on spawn like risers work. You would have to track active zones probably with a level var, and give a kvp to the structs you want to move the zombies to, that relates to the active zone tracking. Get an array of all the structs and then make an array of the ones matching that kvp. Then any zombie that spawns would be in the zone you needed. You could further add a notify and a while loop to this function that moves the zombies, with an endon death. Then you could even teleport mid round if you liked. I would randomize the array of acceptable structs each time you move a zombie just to make it more interesting, if you decided to do it this way. I would only do it this way if you wanted to teleport mid round though.
![]() | Has released one or more maps to the UGX-Mods community. |
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
![]() BO3 Modtools Alpha | This user has access to the Black Ops 3 Modtools Alpha |
I setup the zones like this:
zones[ zones.size ] = "start_zone"
zones[ zones.size ] = "zone2"
zones[ zones.size ] = "zone3"
and i call my script above in the first post under zombiemode::main (); in my mapname.gsc.
But is it possible to move riser structs? It tried it with getstructarray but it doesnt work.
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
It's usually best to copy your code and put in code tags. Re typing often doesn't show the mistake. If this is copied then your missing ; at the end of each line, but would cause a serious error.
You can move structs, by changing there origin, but that won't help with risers since they are randomly selected from available zones.
![]() | Has released one or more maps to the UGX-Mods community. |
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
![]() BO3 Modtools Alpha | This user has access to the Black Ops 3 Modtools Alpha |
I thougth of making only one zone for the map. When i teleport the players, i would like to move the riser structs to the next area - so i don't need other zones if this would work.
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
I'm fairly certain you can move a struct just by getting the struct and then setting the origin to the new origin.
Personally I would find it easier to move a normal zombie and then play riser anims and fx, but to each their own.
![]() | Has released one or more maps to the UGX-Mods community. |
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
![]() BO3 Modtools Alpha | This user has access to the Black Ops 3 Modtools Alpha |
Can i move the spawner with getEnt and a targetname followed by spawner movez (777,7); or spawner setorigin (xyz);? Or is there something like getspawner?
![]() | Has shown effort and knowledge in the area of scripting while being a part of the UGX-Mods community. |
Let me look at your original code and see what your issue is, rather than doing all this. But in the mean time you can read the scripts in spawner for risers, in the do_zombie_rise function, to familiarize yourself with how they work.
