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.


Topics - Suna

Pages: [1]
1
General Discussion / BountyHunter! II
« on: December 14, 2015, 08:48:30 PM »
Watch the server trailer here!

*We are open 24/7!
Will be back up shortly.

Click the server status to join now!


What is it?
*A brief description of the gamemode.

BountyHunter! II (Formally known as "BountyHunter! X-Mas") is a gamemode where players are assigned a random player as a target and are provided a tracker/compass to pinpoint their location and eliminate them for points. Each round is 15 minutes, the player with the most points by the end of the round wins! Players are fully equipped with weapons and tools to help them maneuver around each map to their best abilities. Players are also hunted by other players while they are tracking down their own assigned target.  This server is using Bushido's Quake-Type Weapons. Each and every player has parkour abilities to their disposal. You can use these abilities to maneuver, evade, and scale the map in countless ways! This server was developed around 2014-2015 late December, so we are going to stick with the X-Mas layout. We update the server frequently, so expect more to come!


How to play?
Current Version: *1.2

Since we've been getting a lot of complaints about this and players joining the server clueless, this guide here will assist you in learning how to play at the server. You will also be provided a link in-game to this forum topic in case you just still need 'that' help.

*You are provided a 'tracker/compass' that sits on the bottom of your screen/HUD. The colors will indicate where your target is and how to locate them. Every time you successfully take out your target, you will be assigned a new one. The colors will adjust to your new target, from there, you must track the next one down. Your tracker/compass pinpoints the exact location of your target. Green indicates that your target is above you, red indicates that your target is bellow you, blue indicates that your target is on the same ground level. The smaller your colored bar is, the further away your target is. The bigger your colored bar is, the closer your target is. If your colored bar is more off to the left, then your target is to the left of you, vice versa with all the other directions.

*Yes, you can kill your hunter. Players have a hunter sense/sixth sense that gives a notification popup on screen that informs a player that their hunter is nearby along with a proximity beeping sound.

*Each and every individual player has a Freekilling Penalty Limit. The maximum amount of penalties that a player can receive for freekilling is 8max. If you are freekilled by someone, either by mistake or etcetera, depending on how you use your own reasoning, you can choose to /forgive that player on prompt, or ignore it and allow that player to receive a penalty. If a player reaches 8 penalties, the console will ban them from the server for 1-5 minutes. We urge everyone to play fairly.

*Players have special parkour abilities. You can climb by tapping or holding your Spacebar/Jump key. You can only climb a maximum of 10 times! You can also slide by tapping your Shift/Crouch key while running. Holding your Shift/Crouch key before the impact of a fall will decrease the amount of falling damage a player intakes. Landing on a basket will prevent players from taking any falling damage what so ever. There are more than one type of baskets!


Updates!
Last updated: *12/13/15

*You can now Flip & Roll! By double-tapping your crouch keybind, you can flip and roll in any direction; on the ground and mid air! Double-tapping and holding your crouch keybind midair while moving will allow continuous flipping. If you're someone who's picky, then this command is just for you! You can enable/disable the Flip & Roll feature for yourself by typing /togglePhysJump.

*Players now have access to the HatMod. Simple type /hat (hatname) to equip any hat that you have earned while you are playing at the server. Hats that players wear will save on exit and will be visible upon return!

*Players now have access to Votekick. This feature was added in consideration of times of non-player administration. In any given moment when an admin isn't avaiable, players can vote to remove unwanted players by simply typing /votekick (playername).

*Thanks to the tremendous help of Pecon, players now have a Hunter Sense/Sixth Sense! This allows players to detect when their current hunter is nearby. Further updates will allow a continuous "beep" loop that changes based on the proximity to the hunter. There will be a [gif] image provided to showcase this new feature.

*Players are now fully equipped with a working Grapple Hook! This is a more realistic grapple and was provided by Hata. This tool creates a static shape rope that allows you to grapple bricks, players, and vehicles! You can also climb up and down your rope by pressing your jump keybind to climb up, and using your crouch keybind to climb down. This tool is very useful at times when you find yourself falling from a high point, or swinging from building to building to get to your desired destination. You can use the grapple by clicking and holding to spawn your rope, then releasing to let go of your rope. You can use this tool as many times as you please.
Disclaimer: This is not the same grapple as seen used on other servers that appears as a reskin of the printer.

*We have provided players with a Butterfly Knife - Candy Cane reskin for the "Lumbertown" map. There are a few known bugs with this reskin, other than that, it works perfectly fine. We intend to address them as soon as possible.

*We have made a few tweaks to the playertype. In previous versions, the jump height and the falling damage were absurd, so we took the initiative to increase the maximum jump height and lower the falling damage just a tad. Overall, players will still have to crouch before impact depending on the height of the fall in order to avoid taking any damage.

*We have finally finished designing two playable maps! Players can now choose between playing on "Lumbertown" or "Shipment". Map rotations aren't available yet, we are still currently working on that.

*Players now spawn/respawn with one randomly selected weapon from the entire weapon pack! Originally, you could receive one random weapon from a list/small portion of the complete weapon pack.

*With the help of Pecon, players can now receive random weapons from Present pickups! This is a mod currently under development. This feature will be implemented as soon as possible. Originally, brick presents would have to be setup with an extensive amount of events to grant players one random weapon from the selected weapon pack. This version/system was efficient, but very difficult to work with.

This is a list of current administrators on the server. If you would like to apply for admin, I'm pretty sure by now you all are very aware of how to do so. Leave your username, Blockland BL_ID#, past experience, and at least 2-3 references.

Yoke (Suna)
Conan
DragonoidSlayer
Faraday
Bushido




Maps and downloading.
*We will provide two separate links to the game mode each specifically packaged for every individual map. We will update them every so often, so please make sure to check back every so often to update your files. You are welcome to modify anything provided, just make sure that credit is given where due and that you know exactly what you're doing.

Required files.
*Everything that you need in order to run and play the game mode efficiently will be provided for you here. Make sure that everything that you download is up to date to avoid any issues.

Server Music *For anyone who doesn't want to wait as long to play, I highly recommend that you download all the required server music used in this game mode.







Credits: Faraday, Magus, Armageddon, jitank, DraganoidSlayer, TenSpeed, Tetrahedron, Bushido, Crystalwarrior, Hata, Blocktistic, Conan, Yoke.
*If any names are misspelled or incorrect, please notify me.

2
Gallery / Yoke's Project Showcase (Links)
« on: September 22, 2015, 09:58:48 PM »
A basic construction site. The map itself is large in size. It consists of shipment crates, a crane, hidden areas, along with the present randomizers that are included in BountyHunter! II. In order to load and use this map properly without any faults, please download the required add-ons list and download everything that is included. If you wish to modify the present randomizers, please make sure that you know exactly what you're doing before fooling around with the event code(s).

Credits:
Conan, Xenos_the_Red, Bushido, Yoke
Whenever there is a map update, please make sure to re-download and install!






3
General Discussion / BountyHunter! II [Beta]
« on: August 06, 2015, 10:06:42 AM »
Watch the server trailer here!

*We are open 24/7!
Will be back up shortly.

Click the server status to join now!


What is it?
*A brief description of the gamemode.

BountyHunter! II (Formally known as "BountyHunter! X-Mas") is a gamemode where players are assigned a random player as a target and are provided a tracker/compass to pinpoint their location and eliminate them for points. Each round is 15 minutes, the player with the most points by the end of the round wins! Players are fully equipped with weapons and tools to help them maneuver around each map to their best abilities. Players are also hunted by other players while they are tracking down their own assigned target.  This server is using Bushido's Quake-Type Weapons. Each and every player has parkour abilities to their disposal. You can use these abilities to maneuver, evade, and scale the map in countless ways! This server was developed around 2014-2015 late December, so we are going to stick with the X-Mas layout. We update the server frequently, so expect more to come!


How to play?
Current Version: *1.2

Since we've been getting a lot of complaints about this and players joining the server clueless, this guide here will assist you in learning how to play at the server. You will also be provided a link in-game to this forum topic in case you just still need 'that' help.

*You are provided a 'tracker/compass' that sits on the bottom of your screen/HUD. The colors will indicate where your target is and how to locate them. Every time you successfully take out your target, you will be assigned a new one. The colors will adjust to your new target, from there, you must track the next one down. Your tracker/compass pinpoints the exact location of your target. Green indicates that your target is above you, red indicates that your target is bellow you, blue indicates that your target is on the same ground level. The smaller your colored bar is, the further away your target is. The bigger your colored bar is, the closer your target is. If your colored bar is more off to the left, then your target is to the left of you, vice versa with all the other directions.

*Yes, you can kill your hunter. Players have a hunter sense/sixth sense that gives a notification popup on screen that informs a player that their hunter is nearby along with a proximity beeping sound.

*Each and every individual player has a Freekilling Penalty Limit. The maximum amount of penalties that a player can receive for freekilling is 8max. If you are freekilled by someone, either by mistake or etcetera, depending on how you use your own reasoning, you can choose to /forgive that player on prompt, or ignore it and allow that player to receive a penalty. If a player reaches 8 penalties, the console will ban them from the server for 1-5 minutes. We urge everyone to play fairly.

*Players have special parkour abilities. You can climb by tapping or holding your Spacebar/Jump key. You can only climb a maximum of 10 times! You can also slide by tapping your Shift/Crouch key while running. Holding your Shift/Crouch key before the impact of a fall will decrease the amount of falling damage a player intakes. Landing on a basket will prevent players from taking any falling damage what so ever. There are more than one type of baskets!


Updates!
Last updated: *12/13/15

*You can now Flip & Roll! By double-tapping your crouch keybind, you can flip and roll in any direction; on the ground and mid air! Double-tapping and holding your crouch keybind midair while moving will allow continuous flipping. If you're someone who's picky, then this command is just for you! You can enable/disable the Flip & Roll feature for yourself by typing /togglePhysJump.

*Players now have access to the HatMod. Simple type /hat (hatname) to equip any hat that you have earned while you are playing at the server. Hats that players wear will save on exit and will be visible upon return!

*Players now have access to Votekick. This feature was added in consideration of times of non-player administration. In any given moment when an admin isn't avaiable, players can vote to remove unwanted players by simply typing /votekick (playername).

*Thanks to the tremendous help of Pecon, players now have a Hunter Sense/Sixth Sense! This allows players to detect when their current hunter is nearby. Further updates will allow a continuous "beep" loop that changes based on the proximity to the hunter. There will be a [gif] image provided to showcase this new feature.

*Players are now fully equipped with a working Grapple Hook! This is a more realistic grapple and was provided by Hata. This tool creates a static shape rope that allows you to grapple bricks, players, and vehicles! You can also climb up and down your rope by pressing your jump keybind to climb up, and using your crouch keybind to climb down. This tool is very useful at times when you find yourself falling from a high point, or swinging from building to building to get to your desired destination. You can use the grapple by clicking and holding to spawn your rope, then releasing to let go of your rope. You can use this tool as many times as you please.
Disclaimer: This is not the same grapple as seen used on other servers that appears as a reskin of the printer.

*We have provided players with a Butterfly Knife - Candy Cane reskin for the "Lumbertown" map. There are a few known bugs with this reskin, other than that, it works perfectly fine. We intend to address them as soon as possible.

*We have made a few tweaks to the playertype. In previous versions, the jump height and the falling damage were absurd, so we took the initiative to increase the maximum jump height and lower the falling damage just a tad. Overall, players will still have to crouch before impact depending on the height of the fall in order to avoid taking any damage.

*We have finally finished designing two playable maps! Players can now choose between playing on "Lumbertown" or "Shipment". Map rotations aren't available yet, we are still currently working on that.

*Players now spawn/respawn with one randomly selected weapon from the entire weapon pack! Originally, you could receive one random weapon from a list/small portion of the complete weapon pack.

*With the help of Pecon, players can now receive random weapons from Present pickups! This is a mod currently under development. This feature will be implemented as soon as possible. Originally, brick presents would have to be setup with an extensive amount of events to grant players one random weapon from the selected weapon pack. This version/system was efficient, but very difficult to work with.

This is a list of current administrators on the server. If you would like to apply for admin, I'm pretty sure by now you all are very aware of how to do so. Leave your username, Blockland BL_ID#, past experience, and at least 2-3 references.

Yoke (Suna)
Conan
DragonoidSlayer
Faraday
Bushido




Maps and downloading.
*We will provide two separate links to the game mode each specifically packaged for every individual map. We will update them every so often, so please make sure to check back every so often to update your files. You are welcome to modify anything provided, just make sure that credit is given where due and that you know exactly what you're doing.

Required files.
*Everything that you need in order to run and play the game mode efficiently will be provided for you here. Make sure that everything that you download is up to date to avoid any issues.

Server Music *For anyone who doesn't want to wait as long to play, I highly recommend that you download all the required server music used in this game mode.







Credits: Faraday, Magus, Armageddon, jitank, DraganoidSlayer, TenSpeed, Tetrahedron, Bushido, Crystalwarrior, Hata, Blocktistic, Conan, Yoke.
*If any names are misspelled or incorrect, please notify me.

4
Faces, Decals, Prints / Yoke's Faces
« on: July 14, 2015, 08:58:24 PM »
First face add-on, more of an edit. I might make some more.







*DeterminedSmile
*Durr

That is all.

Yes.

5
Modification Help / [Solved]
« on: July 14, 2015, 04:55:01 PM »
Hi,

I have a very quick question. The task is so simple, but I don't know how to carry it out myself. I've done it before, but I don't remember how I did it. The default sword has a stable image, as if it's glued to the screen and does not move or correspond with the players movements (Bouncing, etc). Is there a way to remove that? Like Kaje's Sniper, how it has a stable image for the weapon in first person, it does not move whatsoever. Can I remove that from the default sword? What line of code am I looking for?

6
Add-Ons / Yoke's Add-Ons [Updates]
« on: July 14, 2015, 02:37:49 AM »


My 4 Team weapon pack is nothing drastically significant. It's a collection of multiple color coded and slightly modified swords and bows. I intend to release more versions consisting of different abilities and effects. But for now, this is all. Players who have joined any of my servers and played around with them have said to enjoy them. The swords have a glowing effect emitting from the weapon and the bows shoot laser like arrows that explode on impact rather than sticking for a brief moment. I got this idea from how TDMs were conducted long ago in the earlier stages of Blockland.

Development:
4Team Guns (Default)





*Updates: The bows now have maximum velocity, damage increased, no more gravity, bounce increased. The swords eyeoffset have been changed.










This is a "Default Gold" weapon set consisting of a few modified core tools and weapons. Each weapon does the exact same damage. It's not really purposed for anything, it's just a little kinky prop to play around with.

*Updates: The "GoldBow" has been removed from the pack due to similarities with the "YellowBow" (Obviously).

If you would still like the GoldSword anyway, despite similarities, you can download it here.










- Photo credits with -Corvette-

The M16AR "M16A4 Burst Rifle" is a 3 round bust assault rifle. The model was designed by Stratofortress/Peaceful War. I equipped this weapon with a custom muzzle, shell and bullet. This weapon is highly accurate and all purposed.


*Updates: The "M16AR" no longer impulses players on bullet impact.







7
Modification Help / Endless Zombies Modification
« on: July 09, 2015, 11:04:04 PM »
I am trying to make a slight adjustment to the "Endless Zombies" gamemode by Gravity Cat. I'm trying to remove all custom weapons that the zombies hold so that they appear as normal zombies with both hands forward. I also have tried to reduce the boss zombie to normal size, but whatever I did, it didn't work. If anyone has any idea how to help me out, I would greatly appreciate it.

http://www.mediafire.com/download/emfqvoq8rq1dmov/Gamemode_EndlessZombies.zip

Server.cs
Quote
//########## Endless Zombies for Slayer

// Grab date for stuff
$date = strReplace(getDateTime(),"/"," ");
$sysmonth = getWord($date,0);

%error1 = forceRequiredAddon("Gamemode_Slayer");
%error2 = forceRequiredAddon("Weapon_Gun");
%error3 = forceRequiredAddon("Weapon_Guns_Akimbo");
%error4 = forceRequiredAddon("Weapon_Rocket_Launcher");
%error5 = forceRequiredAddon("Weapon_Sword");
%error6 = forceRequiredAddon("Vehicle_Horse");
%error7 = forceRequiredAddon("Vehicle_Tank");
%error8 = forceRequiredAddon("Weapon_Bow");
if(%error1 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Gamemode_Slayer not found!");
if(%error8 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Weapon_Bow not found!");
if(%error2 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Weapon_Sword not found!");
if(%error6 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Weapon_Gun not found!");
if(%error3 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Weapon_Guns_Akimbo not found!");
if(%error4 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Weapon_Rocket_Launcher not found!");
if(%error5 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Vehicle_Horse not found!");
if(%error7 == $Error::Addon_NotFound)
  error("ERROR: Gamemode_EndlessZombies - Required add-on Vehicle_Tank not found!");

if(%error1 != $Error::Addon_NotFound)
 if(%error2 != $Error::Addon_NotFound)
  if(%error3 != $Error::Addon_NotFound)
   if(%error4 != $Error::Addon_NotFound)
    if(%error5 != $Error::Addon_NotFound)
     if(%error6 != $Error::Addon_NotFound)
      if(%error7 != $Error::Addon_NotFound)
       if(%error8 != $Error::Addon_NotFound)
       {
        exec("./basic.cs");
        if($sysmonth $= "12") exec("./items/christmas.cs");
       }

zombiedata.cs
Quote
//########## Zombie Data Stuff

function EZM_addZombie(%name,%namelist,%datablock,%playersize,%melee,%ranged,%specialwave,%propability,%allow)
{
  if(%name $= "") return;
  if(%datablock $= "") return;

  %i = 0;
  while($EZM_Zombies[%i,"Name"] !$= "") %i += 1;

  if(%namelist $= "" || %namelist $= 0) %namelist = %name;
  if(%melee $= "" || %melee $= 0) %melee = "EZM_SwordImage EZM_ShovelImage EZM_PickaxeImage EZM_FryingPanImage EZM_ButcherKnifeImage";
  if(%ranged $= "" || %ranged $= 0) %ranged = "EZM_BowImage EZM_GunImage EZM_AkimboGunImage";
  if(%propability < 1) %propability = 1;
  if(%allow $= "" || %allow $= 0) %allow = -1;
  if(%specialwave $= "" || %specialwave !$= 1) %specialwave = 0;

  $EZM_Zombies[%i,"Name"] = %name;
  $EZM_Zombies[%i,"Namelist"] = %namelist;
  $EZM_Zombies[%i,"Datablock"] = %datablock;
  $EZM_Zombies[%i,"PlayerSize"] = %playersize;
  $EZM_Zombies[%i,"Melee"] = %melee;
  $EZM_Zombies[%i,"Ranged"] = %ranged;
  $EZM_Zombies[%i,"SpecialWave"] = %specialwave;
  $EZM_Zombies[%i,"Propability"] = %propability;
  $EZM_Zombies[%i,"Allow"] = %allow;
}

function EZM_addBoss(%name,%namelist,%datablock,%playersize,%melee,%ranged,%propability,%allow)
{
  if(%name $= "") return;
  if(%datablock $= "") return;

  %i = 0;
  while($EZM_Bosses[%i,"Name"] !$= "") %i += 1;

  if(%namelist $= "" || %namelist $= 0) %namelist = %name;
  if(%melee $= "" || %melee $= 0) %melee = "EZM_RocketLauncherImage";
  if(%ranged $= "" || %ranged $= 0) %ranged = "EZM_RocketLauncherImage";
  if(%propability < 1) %propability = 1;
  if(%allow $= "" || %allow $= 0) %allow = -1;

  $EZM_Bosses[%i,"Name"] = %name;
  $EZM_Bosses[%i,"Namelist"] = %namelist;
  $EZM_Bosses[%i,"Datablock"] = %datablock;
  $EZM_Bosses[%i,"PlayerSize"] = %playersize;
  $EZM_Bosses[%i,"Melee"] = %melee;
  $EZM_Bosses[%i,"Ranged"] = %ranged;
  $EZM_Bosses[%i,"Propability"] = %propability;
  $EZM_Bosses[%i,"Allow"] = %allow;
}

function EZM_addAppearance(%name,%appearance,%hidenodes,%facedecal,%chestdecal,%mountedimage)
{
  if(%name $= "") return;

  %i = 0;
  while($EZM_ZombieAppearances[%name,%i,"Appearance"] !$= "") %i += 1;

  if(%appearance $= "" || %appearance $= 0) %appearance = -1;
  if(%hidenodes $= "" || %hidenodes $= 0) %hidenodes = -1;
  if(%facedecal $= "" || %facedecal $= 0) %facedecal = "Smiley";
  if(%chestdecal $= "" || %chestdecal $= 0) %chestdecal = "AAA-None";
  if(%mountedimage $= "" || %mountedimage $= 0) %mountedimage = -1;

  $EZM_ZombieAppearances[%name,%i,"Appearance"] = %appearance;
  $EZM_ZombieAppearances[%name,%i,"HideNodes"] = %hidenodes;
  $EZM_ZombieAppearances[%name,%i,"FaceDecal"] = %facedecal;
  $EZM_ZombieAppearances[%name,%i,"ChestDecal"] = %chestdecal;
  $EZM_ZombieAppearances[%name,%i,"MountedImage"] = %mountedimage;
}

//### Spawn Functions

function EZM_SpawnZombie(%this,%mini)
{
  if(!isObject(%this)) return;
  if(!isObject(%mini)) return;
  if(%mini.EZM_IsSpecialWave) %len = %mini.EZM_SpecialWaveZombieType;
  else
  {
    %len = %rnd = 0;
    %propability = $EZM_Zombies[0,"Propability"];
    while($EZM_Zombies[%len + 1,"Name"] !$= "")
    {
      %len += 1;
      %allow = -1;
      if($EZM_Zombies[%len,"Allow"] !$= -1) eval("%allow = %mini." @ $EZM_Zombies[%len,"Allow"] @ "; $evalNoError = 0;");
      if(%allow != 0) %propability += $EZM_Zombies[%len,"Propability"];
    }
    %rnd = getRandom(%propability);
    %len = 0;
    while($EZM_Zombies[%len,"Name"] !$= "")
    {
      %allow = -1;
      if($EZM_Zombies[%len,"Allow"] !$= -1) eval("%allow = %mini." @ $EZM_Zombies[%len,"Allow"] @ "; $evalNoError = 0;");
      if(%allow != 0)
      {
        if($EZM_Zombies[%len,"Propability"] < %rnd)
        {
          %rnd -= $EZM_Zombies[%len,"Propability"];
          %len += 1;
        }
        else
          break;
      }
      else
        %len += 1;
    }
  }
  %name = $EZM_Zombies[%len,"Name"];
  %namelist = $EZM_Zombies[%len,"Namelist"];
  %db = $EZM_Zombies[%len,"Datablock"];
  %playersize = $EZM_Zombies[%len,"PlayerSize"];
  %melee = $EZM_Zombies[%len,"Melee"];
  %ranged = $EZM_Zombies[%len,"Ranged"];

  %intelligence = mClampF(%mini.EZM_ZombieIntelligence + %mini.EZM_ZombieIntelligenceInc,0,100);
  if(%db $= "") return;
  %this.bot = new AIPlayer()
  {
    dataBlock = %db;
    position = %this.getPosition();
    EZMisZombie = true;
    home = %this;
    intelligence = %intelligence;
    sightRange = 50 + (%intelligence * 4.5);
    attackRange = 5;
    minigame = %mini;
    name = %namelist;
  };
  if(isObject(%this.bot))
  {
    %this.bot.setPlayerScale(%playersize);
    %this.bot.spawnexplosion(SpawnProjectile,%this.bot.getScale());
    %this.bot.hType = "enemy";
    %mini.EZM_ZombieCount += 1;
    %mini.EZM_ZombieWaveCount -= 1;
    %this.bot.EZM_Idle();
    %this.bot.client = %this.bot;
    EZMZombies.add(%this.bot);

    %len = %rnd = 0;
    while($EZM_ZombieAppearances[%name,%len,"Appearance"] !$= "") %len += 1;
    %rnd = getRandom(%len - 1);

    %app = $EZM_ZombieAppearances[%name,%rnd,"Appearance"];
    %hide = $EZM_ZombieAppearances[%name,%rnd,"HideNodes"];
    %face = $EZM_ZombieAppearances[%name,%rnd,"FaceDecal"];
    %chest = $EZM_ZombieAppearances[%name,%rnd,"ChestDecal"];
    %image = $EZM_ZombieAppearances[%name,%rnd,"MountedImage"];

    if(%app != -1) {
      for(%i=0;%i<getWordCount(%app);%i++) {
        %this.bot.unHideNode(getWord(%app,%i));
        %this.bot.setNodeColor(getWord(%app,%i),getWords(%app,%i + 1,%i + 4));
        %i += 4; }
    }
    if(%hide != -1) { for(%i=0;%i<getWordCount(%hide);%i++) { %this.bot.hideNode(getWord(%hide,%i)); } }
    %this.bot.setFaceName(getWord(%face,getRandom(getWordCount(%face)-1)));
    %this.bot.setDecalName(getWord(%chest,getRandom(getWordCount(%chest)-1)));
    if(%image != -1) %this.bot.mountImage(%image,2);
    else if(%this.bot.getDataBlock().shapeFile $= "base/data/shapes/player/m.dts" && %mini.EZM_Christmas) {
%this.bot.hideNode(bicorn); %this.bot.hideNode(cophat); %this.bot.hideNode(triplume); %this.bot.hideNode(flarehelmet); %this.bot.hideNode(helmet); %this.bot.hideNode(knithat); %this.bot.hideNode(plume); %this.bot.hideNode(pointyhelmet); %this.bot.hideNode(scouthat); %this.bot.hideNode(septplume); %this.bot.hideNode(visor);
%this.bot.mountImage(EZM_SantahatImage,2); }

    %rnd = 0;
    if(%mini.EZM_ZombieWeapons == 0)
      %weapon = 1;
    else if(%mini.EZM_ZombieWeapons == 1)
      %weapon = 2;
    else
    {
      if(getRandom(3)) %weapon = 1;
      else
        %weapon = 2;
    }
    if(%ranged == -1) %weapon = 1;
    if(%melee == -1) %weapon = 2;
    if(%weapon == 1) {
      %rnd = getRandom(0,getWordCount(%melee) - 1);
      %this.bot.mountImage(getWord(%melee,%rnd),0);
      if(%mini.EZM_Christmas && getRandom(1)) %this.bot.mountImage(EZM_CaneSwordImage,0); }
    else {
      %rnd = getRandom(0,getWordCount(%ranged) - 1);
      %this.bot.mountImage(getWord(%ranged,%rnd),0);
      %this.bot.attackRange = %this.bot.sightRange / 2;
      if(%mini.EZM_Christmas && getRandom(1)) %this.bot.mountImage(EZM_CaneGunImage,0); }
    if(%this.bot.getMountedImage(0).armReady) %this.bot.playThread(0,"armReadyRight");
    if(%mini.EZM_SuddenDeathTimeLimit)
    {
      %timediff = (%mini.EZM_SuddenDeathTimeLimit*60) - %mini.EZM_SuddenDeathTimer;
      if(%timediff == 0)
        if(%mini.EZM_SuddenDeath == 0)
          %this.bot.setDamageLevel(%this.bot.maxDamage - 1);
    }
  }
}

function EZM_SpawnBoss(%this,%mini)
{
  if(!isObject(%this)) return;
  if(!isObject(%mini)) return;

  %len = %rnd = 0;
  %propability = $EZM_Bosses[0,"Propability"];
  while($EZM_Bosses[%len + 1,"Name"] !$= "")
  {
    %len += 1;
    %allow = -1;
    if($EZM_Bosses[%len,"Allow"] !$= -1) eval("%allow = %mini." @ $EZM_Bosses[%len,"Allow"] @ "; $evalNoError = 0;");
    if(%allow != 0) %propability += $EZM_Bosses[%len,"Propability"];
  }
  %rnd = getRandom(%propability);
  %len = 0;
  while($EZM_Bosses[%len,"Name"] !$= "")
  {
    %allow = -1;
    if($EZM_Bosses[%len,"Allow"] !$= -1) eval("%allow = %mini." @ $EZM_Bosses[%len,"Allow"] @ "; $evalNoError = 0;");
    if(%allow != 0)
    {
      if($EZM_Bosses[%len,"Propability"] < %rnd)
      {
        %rnd -= $EZM_Bosses[%len,"Propability"];
        %len += 1;
      }
      else
        break;
    }
    else
      %len += 1;
  }
  %name = $EZM_Bosses[%len,"Name"];
  %namelist = $EZM_Bosses[%len,"Namelist"];
  %db = $EZM_Bosses[%len,"Datablock"];
  %playersize = $EZM_Bosses[%len,"PlayerSize"];
  %melee = $EZM_Bosses[%len,"Melee"];
  %ranged = $EZM_Bosses[%len,"Ranged"];

  %intelligence = mClampF(%mini.EZM_ZombieIntelligence + %mini.EZM_ZombieIntelligenceInc,0,100);
  if(%db $= "") return;
  %this.bot = new AIPlayer()
  {
    dataBlock = %db;
    position = %this.getPosition();
    EZMisZombie = true;
    EZMisBoss = true;
    home = %this;
    intelligence = %intelligence;
    sightRange = 50 + (%intelligence * 4.5);
    attackRange = 5;
    minigame = %mini;
    name = %namelist;
  };
  if(isObject(%this.bot))
  {
    %this.bot.setPlayerScale(%playersize);
    %this.bot.spawnexplosion(SpawnProjectile,%this.bot.getScale());

    %rnd = getRandom(11);
    %prefix = "\c3The mighty";
    if(%rnd == 1) %prefix = "\c3The treacherous";
    else if(%rnd == 2) %prefix = "\c3The terrible";
    else if(%rnd == 3) %prefix = "\c3Behold, ";
    else if(%rnd == 4) %prefix = "\c3Behold, ";
    else if(%rnd == 5) %prefix = "\c3Behold, the mighty";
    else if(%rnd == 6) %prefix = "\c3Behold, the treacherous";
    else if(%rnd == 7) %prefix = "\c3Behold, the terrible";
    else if(%rnd == 8) %prefix = "\c3Heads will roll, for";
    else if(%rnd == 9) %prefix = "\c3Heads will roll, as the mighty";
    else if(%rnd == 10) %prefix = "\c3Heads will roll, for the treacherous";
    else if(%rnd == 11) %prefix = "\c3Heads will roll, as the terrible";
    %rnd = getRandom(2);
    %suffix = " \c3 has appeard!";
    if(%rnd == 1) %suffix = " \c3 stepped out of his grave!";
    else if(%rnd == 2) %suffix = " \c3 has returned from the dead!";
    %mini.messageAll(0,%prefix @ " \c0" @ %this.bot.name @ %suffix);
    %mini.EZM_ZombieCount += 1;
    %mini.EZM_BossCount -= 1;
    %this.bot.EZM_Idle();
    %this.bot.client = %this.bot;
    EZMZombies.add(%this.bot);

    %len = %rnd = 0;
    while($EZM_ZombieAppearances[%name,%len,"Appearance"] !$= "") %len += 1;
    %rnd = getRandom(%len - 1);

    %app = $EZM_ZombieAppearances[%name,%rnd,"Appearance"];
    %hide = $EZM_ZombieAppearances[%name,%rnd,"HideNodes"];
    %face = $EZM_ZombieAppearances[%name,%rnd,"FaceDecal"];
    %chest = $EZM_ZombieAppearances[%name,%rnd,"ChestDecal"];
    %image = $EZM_ZombieAppearances[%name,%rnd,"MountedImage"];

    if(%app != -1) {
      for(%i=0;%i<getWordCount(%app);%i++) {
        %this.bot.unHideNode(getWord(%app,%i));
        %this.bot.setNodeColor(getWord(%app,%i),getWords(%app,%i + 1,%i + 4));
        %i += 4; }
    }
    if(%hide != -1) { for(%i=0;%i<getWordCount(%hide);%i++) { %this.bot.hideNode(getWord(%hide,%i)); } }
    %this.bot.setFaceName(getWord(%face,getRandom(getWordCount(%face)-1)));
    %this.bot.setDecalName(getWord(%chest,getRandom(getWordCount(%chest)-1)));
    if(%image != -1) %this.bot.mountImage(%image,2);
    else if(%this.bot.getDataBlock().shapeFile $= "base/data/shapes/player/m.dts" && %mini.EZM_Christmas) {
%this.bot.hideNode(bicorn); %this.bot.hideNode(cophat); %this.bot.hideNode(triplume); %this.bot.hideNode(flarehelmet); %this.bot.hideNode(helmet); %this.bot.hideNode(knithat); %this.bot.hideNode(plume); %this.bot.hideNode(pointyhelmet); %this.bot.hideNode(scouthat); %this.bot.hideNode(septplume); %this.bot.hideNode(visor);
%this.bot.mountImage(EZM_SantahatImage,2); }

    %rnd = 0;
    %this.bot.playThread(0,"armReadyRight");
    if(%mini.EZM_ZombieWeapons == 0)
      %weapon = 1;
    else if(%mini.EZM_ZombieWeapons == 1)
      %weapon = 2;
    else
    {
      if(getRandom(1)) %weapon = 1;
      else
        %weapon = 2;
    }
    if(%ranged == -1) %weapon = 1;
    if(%melee == -1) %weapon = 2;
    if(%weapon == 1) {
      %rnd = getRandom(0,getWordCount(%melee) - 1);
      %this.bot.mountImage(getWord(%melee,%rnd),0);
      if(%mini.EZM_Christmas && getRandom(1)) %this.bot.mountImage(EZM_CaneSwordImage,0); }
    else {
      %rnd = getRandom(0,getWordCount(%ranged) - 1);
      %this.bot.mountImage(getWord(%ranged,%rnd),0);
      %this.bot.attackRange = %this.bot.sightRange / 2;
      if(%mini.EZM_Christmas && getRandom(1)) %this.bot.mountImage(EZM_CaneGunImage,0); }
  }
}

8
Gallery / Subway [WIP]
« on: July 08, 2015, 07:36:27 PM »
This is a little project that I've been working on. I plan on using this map (when completed) for a TDM. So far, I've only gotten this much completed on my own. Still need to add props around the map, scenery and continue the expansion. I'll update this topic every so often with more screenshots as the build draws closer to being complete.












Pages: [1]