I no longer work on this plugin. R3dw3r3w0lf has taken over development and has released his version of it on the forums. You can find it here
machede
07-16-2013 07:43
Re: [TF2] Boss Spawner Deluxe v1.0
THX Perfect.
captaindeterprimary
07-16-2013 11:20
Re: [TF2] Boss Spawner Deluxe v1.0
2 Attachment(s)
Quote:
Originally Posted by abrandnewday
(Post 1991714)
Spoiler
Commands
sm_boss1 - Spawn the Horseless Headless Horsemann
sm_boss2 [Optional: Level] - Spawn the MONOCULUS! (Optional: What level will he spawn at?)
sm_boss3 [Optional: Health] - Spawn Merasmus (Optional: How much health will he have?)
sm_boss4 - Spawn a Zombie (tf_zombie entity). Very glitchy. They attack, but don't have weapons. They also often stop at random intervals to do the Thriller dance. When they die, their body disappears leaving just the "zombie" body parts. No way to control their health either, so they are very weak.
sm_slayboss1 - Slays all Horseless Headless Horsemann entities on the map
sm_slayboss2 - Slays all MONOCULUS entities on the map
sm_slayboss3 - Slays all Merasmus entities on the map
sm_slayboss4 - Slays all Zombie entities on the map
Changed commands from sm_boss to name of boss, because easier for admins to remember. Will upload later.
Spoiler
sm_hatman - Spawn the Horseless Headless Horsemann
sm_eyeboss [Optional: Level] - Spawn the MONOCULUS! (Optional: What level will he spawn at?)
sm_merasmus [Optional: Health] - Spawn Merasmus (Optional: How much health will he have?)
sm_zombie - Spawn a Zombie
sm_slayhatman - Slays all Horseless Headless Horsemann entities on the map
sm_slayeyeboss - Slays all MONOCULUS entities on the map
sm_slaymerasmus - Slays all Merasmus entities on the map
sm_slayzombie - Slays all Zombie entities on the map
==Edit==
Also removed unused handles g_spawned; g_HP;.
new Handle:v_EyeBossHPLevel2 = INVALID_HANDLE; new Handle:v_EyeBossHPPlayer = INVALID_HANDLE; new Handle:v_EyeBossHPLevel = INVALID_HANDLE; new Handle:v_MerasmusBaseHP = INVALID_HANDLE; new Handle:v_MerasmusHP_Per_Player = INVALID_HANDLE;
new Float:g_pos[3];
new g_NumClients; // new g_HP; //UNUSED new g_trackEntity = -1; new g_healthBar = -1; // new g_spawned; //UNUSED new g_iLetsChangeThisEvent = 0;
public Plugin:myinfo = { name = "Halloween Boss Spawner", author = "abrandnewday", description = "Enables the ability for admins to spawn Halloween bosses", version = PLUGIN_VERSION, url = "https://forums.alliedmods.net/member.php?u=165383" }
public OnPluginStart() { CreateConVar("bossspawnerdeluxe_version", PLUGIN_VERSION, "Plugin Version", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY);
RegAdminCmd("sm_hatman", Command_SpawnHatman, ADMFLAG_GENERIC, "Spawns the Horsemann - Usage: sm_hatman"); RegAdminCmd("sm_eyeboss", Command_SpawnEyeBoss, ADMFLAG_GENERIC, "Spawns the MONOCULUS - Usage: sm_eyeboss <level>"); RegAdminCmd("sm_merasmus", Command_SpawnMerasmus, ADMFLAG_GENERIC, "Spawns Merasmus - Usage: sm_merasmus <health>"); RegAdminCmd("sm_zombie", Command_SpawnZombie, ADMFLAG_GENERIC, "Spawns a Zombie - Usage: sm_zombie"); RegAdminCmd("sm_slayhatman", Command_SlayHatman, ADMFLAG_GENERIC, "Slays all Horsemenn on the map - Usage: sm_slayhatman"); RegAdminCmd("sm_slayeyeboss", Command_SlayEyeBoss, ADMFLAG_GENERIC, "Slays all MONOCULUS' on the map - Usage: sm_slayeyeboss"); RegAdminCmd("sm_slaymerasmus", Command_SlayMerasmus, ADMFLAG_GENERIC, "Slays all Merasmus' on the map - Usage: sm_slaymerasmus"); RegAdminCmd("sm_slayzombie", Command_SlayZombie, ADMFLAG_GENERIC, "Slays all Zombies on the map - Usage: sm_slayzombie");
public Action:Command_SpawnMerasmus(client, args) { new String:sHealth[15], HP = -1; if(args == 1) { GetCmdArgString(sHealth, sizeof(sHealth)); HP = StringToInt(sHealth); }
new iBaseHP = GetConVarInt(v_MerasmusBaseHP); new iPlayer = GetConVarInt(v_MerasmusHP_Per_Player); if(args == 0) { HP = iBaseHP + (iPlayer*g_NumClients); } if(!SetTeleportEndPoint(client)) { CPrintToChat(client, "{unusual}[BOSS] {default}Could not find spawn point"); return Plugin_Handled; } if(args > 1) { CReplyToCommand(client, "{unusual}[BOSS] {default} Format: sm_merasmus <health>"); } if(GetEntityCount() >= GetMaxEntities()-32) { CPrintToChat(client, "{unusual}[BOSS] {default}Too many entities have been spawned, reload the map."); return Plugin_Handled; } new entity = CreateEntityByName("merasmus"); if(!IsValidEntity(entity)) { CPrintToChat(client, "{unusual}[BOSS] {default}Couldn't spawn {unusual}MERASMUS!{default} for some reason."); return Plugin_Handled; } DispatchSpawn(entity); CPrintToChat(client,"{unusual}[BOSS] {default}You spawned {unusual}MERASMUS!{default}"); LogAction(client, client, "\"%L\" spawned Merasmus", client); if(HP > -1) { SetEntProp(entity, Prop_Data, "m_iHealth", HP * 4); SetEntProp(entity, Prop_Data, "m_iMaxHealth", HP * 4); // g_HP = HP; }
public OnMerasmusDamaged(victim, attacker, inflictor, Float:damage, damagetype) { UpdateBossHealth(victim); UpdateDeathEvent(victim); }
public UpdateDeathEvent(entity) { if (IsValidEntity(entity)) { new maxHP = GetEntProp(entity, Prop_Data, "m_iMaxHealth"); new HP = GetEntProp(entity, Prop_Data, "m_iHealth");
public UpdateBossHealth(entity) { if (g_healthBar == -1) { return; }
new percentage; if (IsValidEntity(entity)) { new maxHP = GetEntProp(entity, Prop_Data, "m_iMaxHealth"); new HP = GetEntProp(entity, Prop_Data, "m_iHealth");
I don't know if removing g_spawned and g_HP broke anything, also I don't know if the plugin worked in the first place, I don't have access to tf2 here in the office.
404UserNotFound
07-16-2013 12:41
Re: [TF2] Boss Spawner Deluxe v1.0
Quote:
Originally Posted by vman315
(Post 1992160)
I don't know if removing g_spawned and g_HP broke anything, also I don't know if the plugin worked in the first place, I don't have access to tf2 here in the office.
1. Plugin worked just fine in the first place, so nothing to worry about there.
2. As for the unused handles, those were from either the Monoculus or Merasmus plugin (I forget which), but for some reason I can't remember where they were used and/or why.
luki1412
07-16-2013 12:43
Re: [TF2] Boss Spawner Deluxe v1.0
Was looking for one complete plugin. Thank you. Will test it.
Btw: Never heard of the zombie boss LOL
Chaosxk
07-16-2013 12:44
Re: [TF2] Boss Spawner Deluxe v1.0
Those handles were used for automatic spawning for Merasmus
luki1412
07-16-2013 12:50
Re: [TF2] Boss Spawner Deluxe v1.0
When I loaded the plugin on the server. This message appeared in console:
Attempted to create unknown entity type m_iBossHealthPercentageByte!
404UserNotFound
07-16-2013 12:53
Re: [TF2] Boss Spawner Deluxe v1.0
Quote:
Originally Posted by luki1412
(Post 1992216)
When I loaded the plugin on the server. This message appeared in console:
Attempted to create unknown entity type m_iBossHealthPercentageByte!
Yeaahhh...that'll happen. Sometimes, Merasmus' HP bar gets screwy, so you only need to take the health bar down to about half to kill him.
Nothing to worry about there!
Quote:
Originally Posted by Chaosxk
(Post 1992209)
Those handles were used for automatic spawning for Merasmus
Ah! That was it! Thank you sir! So they were not required after all!
EDIT: I forgot that I didn't precache the models for the zombie bosses, mostly because they are an "unused" boss, and they use the same models that players do when using the Voodoo Cursed <Class> Soul items. HHH, Monoc and Meras all precache just fine.
friagram
07-16-2013 13:11
Re: [TF2] Boss Spawner Deluxe v1.1
You should change the names of the commands to be clearer, or only use one command an d spawn by name, and just store ent refs in an array. The healthbar should also be stored as an ent ref. also, the healthbar should be set up to work with all of the bosses.
luki1412
07-16-2013 13:14
Re: [TF2] Boss Spawner Deluxe v1.1
I tried zombie bosses. They are funny xD. I spawn a lot of them at once, because they are weak. They are silent though and all taunt at once. Also only blue ones have been used. Bots kill them too, like regular bosses.
Also about that error, it showed up right after I loaded the plugin using sm command. But if you say that it is not a problem then fine ;)