Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - gympie6



This is an alternative version of the electricity zombie.
These kind of zombies also set your screen on fire after you got hit by them.
Not much special but it creates a bit uniqueness to your map

________________________________________________

1. copy the following files from raw/maps folder into your mod: 
_zombiemode
_zombiemode_spawner
(If you already have those files you don't need to copy them)

________________________________________________

2. In your mod make a new script file (MODNAME/maps) and paste the following code in there:
#include maps\_utility; 
#include common_scripts\utility;
#include maps\_zombiemode_utility;

#using_animtree( "generic_human" );
spawn_burnzombie()
{
// Settings
self.pathEnemyFightDist = 72;
self.meleeAttackDist = 72;
self.fire_range = 75;
self.fire_duration = 0.75; // in seconds
self.maxhealth = int(level.zombie_health * 1.5);

self.health = self.maxhealth;

self detachAll();
self.hatModel = "char_ger_honorgd_zomb_behead";
self attach(self.hatModel);

self thread burn_zombie_fx();

while ( 1 )
{
self waittill( "meleeanim", note );
if ( note == "fire" )
{
if( IsDefined( self.favoriteenemy ) )
{
if (!self.favoriteenemy maps\_laststand::player_is_in_laststand() && distance( self.favoriteenemy.origin, self.origin ) < self.fire_range)
{
self.favoriteenemy SetBurn( self.fire_duration );
self.favoriteenemy shellshock( "pain", self.fire_duration );
self.favoriteenemy playsound( "small_fire" );
}
}
}
}
}

burn_zombie_fx()
{
self endon ("death");

while(1)
{
PlayFxOnTag( level._effect["character_fire_death_sm"], self, "j_thumb_le_1" );
PlayFxOnTag( level._effect["character_fire_death_sm"], self, "j_thumb_ri_1" );
PlayFxOnTag( level._effect["character_fire_death_sm"], self, "j_head" );
wait 12;
}
}
(You can for example copy the _zombiemode.gsc file, clear that file and paste this in)
________________________________________________

3. openup _zombiemode_spawner and look for:
self notify( "zombie_init_done" );
change it to this:
self notify( "zombie_init_done" );

if (self.animname != "quad_zombie" && self.animname != "boss_zombie" && self.animname != "zombie_dog")
{
    spawn_round = 3; // the starting round the banzai zombie will spawn
    spawn_percentage = 10; // the spawn percentage the banzai zombie will spawn

    if (level.round_number >= spawn_round && randomInt(100) <= spawn_percentage)
    {
        self thread maps\_zombiemode_ai_burnzombie::spawn_burnzombie();
    }
}
________________________________________________

4. Build mod and you're done! Have fun! :)
You don't need to add any fx because I am re-using the flamethrower fx.
3 days ago


I made this mini boss a few years back for the map called: Bayern
These kind of zombies also electrify you after you got hit by them.
Not much special but it creates a bit uniqueness to your map

________________________________________________


1. copy the following files from raw/maps folder into your mod: 
_zombiemode
_zombiemode_spawner
(If you already have those files you don't need to copy them)

________________________________________________


2. In your mod make a new script file (MODNAME/maps) and paste the following code in there:
#include maps\_utility; 
#include common_scripts\utility;
#include maps\_zombiemode_utility;

#using_animtree( "generic_human" );
spawn_electricityzombie()
{       
    // Settings
    self.pathEnemyFightDist = 72;
    self.meleeAttackDist = 72;
    self.electricity_range = 75;
    self.electrified_duration = 0.75; // in seconds
    self.maxhealth = int(level.zombie_health * 1.5);
   
    self.health = self.maxhealth;
   
    if (randomInt(100) <= 85)
    {
        self.hatModel = "char_ger_honorgd_headgear3";
        self attach(self.hatModel);
    }
    if (randomInt(100) <= 75)
    {
        self.hatModel2 = "char_ger_hnrgd_player_shades";
        self attach(self.hatModel2);
    }
   
    self thread electricity_zombie_fx();
   
    while ( 1 )
    {
        self waittill( "meleeanim", note );
        if ( note == "fire" )
        {
            if( IsDefined( self.favoriteenemy ) )
            {
                if (!self.favoriteenemy maps\_laststand::player_is_in_laststand() && distance( self.favoriteenemy.origin, self.origin ) < self.electricity_range)
                {
                    self.favoriteenemy setelectrified( self.electrified_duration );
                    self.favoriteenemy shellshock( "electrocution", self.electrified_duration );
                    self.favoriteenemy playsound( "tesla_bounce" );
                }
            }
        }       
    }
}

electricity_zombie_fx()
{
    self endon ("death");

    while(1)
    {
        PlayFxOnTag( level._effect["elec_sm"], self, "j_thumb_le_1" );
        PlayFxOnTag( level._effect["elec_sm"], self, "j_thumb_ri_1" );
        wait 6;
    }
}
(You can for example copy the _zombiemode.gsc file, clear that file and paste this in)
3. openup _zombiemode and look for: 
precache_models()
{
    precachemodel( "char_ger_honorgd_zomb_behead" );
    precachemodel( "char_ger_zombieeye" );
    PrecacheModel( "tag_origin" );
}
change it to this:
precache_models()
{
    precachemodel( "char_ger_honorgd_zomb_behead" );
    precachemodel( "char_ger_zombieeye" );
    PrecacheModel( "tag_origin" );

    precachemodel( "char_ger_honorgd_headgear3" );
    precachemodel( "char_ger_hnrgd_player_shades" );
}
________________________________________________

4. openup _zombiemode_spawner and look for:
self notify( "zombie_init_done" );
change it to this:
self notify( "zombie_init_done" );

if (self.animname != "quad_zombie" && self.animname != "boss_zombie" && self.animname != "zombie_dog")
{
    spawn_round = 3; // the starting round the banzai zombie will spawn
    spawn_percentage = 10; // the spawn percentage the banzai zombie will spawn

    if (level.round_number >= spawn_round && randomInt(100) <= spawn_percentage)
    {
        self thread maps\_zombiemode_ai_electricityzombie::spawn_electricityzombie();
    }
}
________________________________________________

5. Add this to your modbuilder:
// Electricity zombie
xmodel,char_ger_hnrgd_player_shades
xmodel,char_ger_honorgd_headgear3
// Electricity zombie
________________________________________________

6. Build mod and you're done! Have fun! :)
You don't need to add any fx because I am re-using the dlc3 fx.
3 days ago
@gympie6 What the fuck is this, This map is heresy I don't care if it's a first map just don't upload it.

 I don't know
4 days ago
This tutorial is original written by Bamskater33 aka Jei9363!
go to your _zombiemode_spawner.gsc

find
zombie_head_gib( attacker )
go to
if(isdefined(self.hatmodel))
add:
self.hatmodel_launch = spawn("script_model",self.origin + (0,0,64));
self.hatmodel_launch setmodel(self.hatmodel);
self.hatmodel_launch PhysicsLaunch( self.hatmodel_launch.origin, (0,0,5000) ); //adjust to your hatmodel 3000 - 5000
self.hatmodel_launch thread timed_delete(5);
add to bottom of script
timed_delete(time)
{
    wait time;
    self delete();
}
hatmodels are attached in character/ char_ger_honorguard_zombies and char_ger_honorguard_zombies2
self.hatmodel = "your_model";
self attach(self.hatmodel, "", true);
go in asset viewer, look at the char_ models and pick out a fabulous hat for your zombie!
add to bottom
precacheModel("your_model");
add:
xmodel,your_model
to mod.csv
4 days ago


I made this mini boss a few years back for my big map called: Snowblind
It works fine but they are maybe too focused on their targets even if they are in laststand.
If you are able to fix this issue be my guest and post it here. 
I re-checked and fixed some old issues so maybe it's already solved but who knows?

________________________________________________

1. copy the following files from raw/maps folder to your mod: 
  • _zombiemode
  • _zombiemode_spawner
  • dlc3_code
 (If you already have those files you don't need to copy them)

________________________________________________

2. In your mod make a new script file (MODNAME/maps) and paste the following code in there:
#include maps\_utility; 
#include common_scripts\utility;
#include maps\_zombiemode_utility;

#using_animtree( "generic_human" );
spawn_banzaizombie()
{   
    self.gib_override = false;
    self.gibbed = true;
   
    self setModel("char_ger_ansel_body");
   
    self.hatmodel = "char_ger_wermachtwet_helm1";
    self Attach( self.hatmodel, "j_head" );

    // Wait until the zombie entered the player area
    while(1)
    {
        if (!self.ignoreall)
        {
            self thread banzai_zombie();
            break;
        }
        wait 0.5;
    }
}

banzai_zombie()
{
    self endon( "death" );

    // Settings
    self.moveplaybackrate = 0.80; // Play banzai animation at 80%
    self.banzai_minimum_damage = 65; // Melee minimum damage with bayonet
    self.banzai_maximum_damage = 75; // Melee maximum damage with bayonet
    self.banzai_range = 70; // Melee range with bayonet
    self.banzai_hit_range = 30; // Melee hit range with bayonet
    // Settings
   
    self.pathEnemyFightDist = 0.0000001; // To Disable hand melee attacks.
    self.banzai_stop_stabbing = false;
    self thread banzai_zombie_stop_stabbing();
    self thread banzai_zombie_draw_weapon();
   
    self.zombie_move_speed = "sprint";
    banzaiRandom = randomFloat(100);
    if (banzaiRandom <= 25) self.run_combatanim = %ai_bonzai_sprint_a;
    else if (banzaiRandom > 25 && banzaiRandom <= 50) self.run_combatanim = %ai_bonzai_sprint_b;
    else if (banzaiRandom > 50 && banzaiRandom <= 75) self.run_combatanim = %ai_bonzai_sprint_c;
    else self.run_combatanim = %ai_bonzai_sprint_d;
   
    players = get_players();
   
    while( 1 )
    {
        if (isdefined(self.favoriteenemy))
        {
            target = self.favoriteenemy;
            if (self.banzai_stop_stabbing)
            {
                return;
            }
           
            if (target.is_zombie || target maps\_laststand::player_is_in_laststand() || target.sessionstate == "spectator" || !isalive(target))
            {
                continue;
            }
           
            if (distance( target.origin, self.origin ) <= self.banzai_range && target.origin != self.origin)
            {       
                self thread banzai_zombie_attack(target, target.origin);
                self waittill( "attack_done" );
            }
        }
        wait .05;
    }
}

banzai_zombie_attack(player, player_pos)
{
    angles = VectorToAngles( player_pos - self.origin );
    self OrientMode( "face angle", angles );
    self animscripted("melee_zombies", self.origin, self.angles, %ai_bayonet_stab_melee);       
   
    while ( 1 )
    {
        self waittill( "melee_zombies", note );
        if ( note == "fire" )
        {
            if( isalive(player) )
            {
                if (distance( player.origin, self.origin ) < self.banzai_range)
                {
                    radiusdamage(player_pos, 45, self.banzai_maximum_damage, self.banzai_minimum_damage, self, "MOD_MELEE");
                   
                    //Give the player the feeling he got stabbed
                    radiusdamage(player_pos, 45, 0, 0, player, "MOD_MELEE");
                    wait .2;
                    self stopAnimScripted();
                    break;
                }
            }
        }
        if ( note == "end" )
            break;       
    }
    self notify( "attack_done" );
}

banzai_zombie_stop_stabbing()
{
    self endon( "death" );

    level waittill( "end_game" );
   
    self.banzai_stop_stabbing = true;
}

banzai_zombie_draw_weapon()
{
    self endon( "death" );
   
    wait 3; // Otherwise you see spooky things
    self.primaryweapon = "kar98k_bayonet";
    self animscripts\shared::placeWeaponOn( self.primaryweapon, "right" );
}
(You can for example copy the _zombiemode.gsc file, clear that file and paste this in)
________________________________________________
3. openup _zombiemode and look for: 
precache_models()
{
    precachemodel( "char_ger_honorgd_zomb_behead" );
    precachemodel( "char_ger_zombieeye" );
    PrecacheModel( "tag_origin" );
}
change it to this:
precache_models()
{
    precachemodel( "char_ger_honorgd_zomb_behead" );
    precachemodel( "char_ger_zombieeye" );
    PrecacheModel( "tag_origin" );
   
    precachemodel( "char_ger_ansel_body" );
    precachemodel( "char_ger_wermachtwet_helm1" );
}
 ________________________________________________
4. openup _zombiemode_spawner and look for:
self notify( "zombie_init_done" );
change it to this:
self notify( "zombie_init_done" );

if (self.animname != "quad_zombie" && self.animname != "boss_zombie" && self.animname != "zombie_dog")
{
    spawn_round = 6; // the starting round the banzai zombie will spawn
    spawn_percentage = 10; // the spawn percentage the banzai zombie will spawn

    if (level.round_number >= spawn_round && randomInt(100) <= spawn_percentage)
    {
        self thread maps\_zombiemode_ai_banzaizombie::spawn_banzaizombie();
    }
}
________________________________________________
5. openup dlc3_code and look for:
include_weapon
 along the others add this:
include_weapon( "kar98k_bayonet", false );
________________________________________________
6. Add this to your modbuilder:
// Banzai Zombie
xmodel,char_ger_ansel_body
xmodel,char_ger_wermachtwet_helm1
xanim,ai_bonzai_sprint_a
xanim,ai_bonzai_sprint_b
xanim,ai_bonzai_sprint_c
xanim,ai_bonzai_sprint_d
xanim,ai_bayonet_stab_melee
weapon,sp/kar98k_bayonet
// Banzai Zombie
________________________________________________
7. Build mod and you're done! Have fun! :)
4 days ago
I don't know if someone said this before but I think you're one of the coolest guys in the community!
one that takes a lot of time to port weapons, models and bosses to waw and bo1! 
It's amazing how much you have shared over the years to everyone I really appreciate that!

Now you bring life to the bo1 community with those nice new assets!
I am not a bo1 modder myself but I think this will increase the quality of upcoming maps!

Thank you for everything! :)
27 days ago
 Yo! Do you think you can make a special box map dedicated to a Zombies YouTuber or a few of them as a way to sort of say hey we like your content here's a map for you?
Do you have trouble with creating your own zombie map? :confused-smiley: 
32 days ago
I already helped him with this but for the people that want to know the answer to that last question.

When you create your mod and go to the mod tab in the launcher you see this text:
// Zombie Mode Stuff
include,zombiemode
include,zombiemode_dogs
// Zombie Mode Strings
localize,zombie
// Mod Strings
localize,mod
// Edited Loadout For Zombie Heroes
rawfile,maps\_loadout.gsc
// Edited LastStand For Deep Water Like Sumpf
rawfile,maps\_laststand.gsc
// Edited For Developer_Script
rawfile,maps\_debug.gsc
stringtable,maps/mapsTable.csv
localize,mod,,

xanim,ai_zombie_sprint_w_object_5
Just add it at the bottom of that text window.
57 days ago
There are two types of zombies:
  • Risers
  • Barriers
Barrier zombies need barriers to move through first before it can do something.
Risers however automatically go after the players without using the barrier.

Long story short, you need risers for windowless barriers.
57 days ago
There is an animation in raw/xanim called: `xanim,ai_zombie_sprint_w_object_5`
That one looks very simillar to the tranzit sprinter animation.

add this in the modbuilder:
xanim,ai_zombie_sprint_w_object_5

add it with the other sprint animations in _zombiemode and you're done. :)
61 days ago
Thanks somehow I fixed it , but the 400fx error showed up so i gonna try Gympie's perks thanks for the advice :)
 Use the 0 fx package localised_common file, and turn off widow's wine and vulture aid to use zero fx as showed on the screenshot:



If you also want to use those perks tho I am afraid you have to make space for that or use T4M.
67 days ago
bro its his first map chill out
Normally I would agree on that but... this is very minimum. :(



This was my first map that I have released on UGX: https://www.ugx-mods.com/forum/map-releases/29/furtrelock-t4m-needed-16-perks/15793/

I mean a bit more effort wouldn't mind me.
78 days ago
Don't listen to him man, he hasn't been feeling good lately
 Hahahahahahahahaha :joy:
87 days ago
I am glad there's a new release but please you can do more than simply put this low effort map together right?
87 days ago
No i don't like the gravity shown in your screenshot. I am not impressed btw!
 Jokes on you! :D
88 days ago

Login

or login with an authentication provider below
Sign In with Google
Sign In with Twitter
Sign In with Discord
Sign In with Steam
Sign In with Facebook
Sign In with Twitch
Loading ...