Alien vs Predator Funround (ZM)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Natalya
    Queen of the Internet
    Kung Fu Master
    • Oct 2006
    • 1879

    #1

    Alien vs Predator Funround (ZM)

    As y'all may have seen yesterday, I've finally gotten around to working on an Alien vs Predator script. Here's what it will do:


    - Set Players to Respawn as Zombie when they die (DONE)
    - Zombies will get the Alien model
    - Predator will get the Predator XP model
    - It will randomly choose a predator (DONE)
    - If you kill the predator, you get to be predator next round (DONE)
    - Predator gets 10 seconds to run at round start (DONE)
    - Predator gets the M3 with explosive rounds (DONE)
    - Predator's pistol has explosive rounds (DONE)
    - Predator restricted from buying other guns (DONE)
    - If predator disconnects, it selects a new one for next round (DONE)
    - Everyone except predator gets zombied (DONE)
    - Fix issue with predator spawning as zombie
    - If predator survives, they get to be predator next round

    Most of the basic functionality is already done. There's just a glitch where the predator (since they're the only human) will get zombied by the ZM plugin. I need to either suppress auto-zombification or perhaps once a zombie is chosen, choose a predator randomly then, and then zombie everyone else, but this would suck because predator-ship would not always be hereditary. (Like if who ever was supposed to be predator ended up as first zombie it would suck for them.)

    As for forcing models, I'll need to re-write the model menu once again to allow console-based model forcing for the script to use. D:

    Thoughts?
    Last edited by Natalya; 02-24-2009, 11:40 AM.
    [img]http://unix.org.au/~brett/gif/waldioaw1.gif[/img]
    [color=royalblue][b]Forum and Server Administrator[/b][/color]
    PasTieZ: I am scared now thanks nat
    natalyaaf: D:
    PasTieZ: sio is going to ass rape me

    NatalyaAF ウラヌス: i am the baninator :D
    word jackd ת/ύ: ha the baninator and the pwninator
  • DoT
    Kung Fu Master
    • Mar 2008
    • 2438

    #2
    If your looking for thoughts on the idea. I think it's great for a fun round, just curious...all admins would be able to trigger it?
    [COLOR="RoyalBlue"][B]N/U Retiree[/B]

    8:45 PM - V A N E S S A: give me a sex
    2:53 PM - Tara Ann ت: just wanted to say you're adorable[/COLOR]

    Comment

    • Natalya
      Queen of the Internet
      Kung Fu Master
      • Oct 2006
      • 1879

      #3
      Currently only me or Random can trigger it but I'll make an admin command so that all Admin-A's can do it once all the bugs are worked out.
      [img]http://unix.org.au/~brett/gif/waldioaw1.gif[/img]
      [color=royalblue][b]Forum and Server Administrator[/b][/color]
      PasTieZ: I am scared now thanks nat
      natalyaaf: D:
      PasTieZ: sio is going to ass rape me

      NatalyaAF ウラヌス: i am the baninator :D
      word jackd ת/ύ: ha the baninator and the pwninator

      Comment

      • DoT
        Kung Fu Master
        • Mar 2008
        • 2438

        #4
        Originally posted by NatalyaAF
        Currently only me or Random can trigger it but I'll make an admin command so that all Admin-A's can do it once all the bugs are worked out.
        Ok thats cool then. It sounds like a good idea but only for certain maps. There are maps where maybe the predator might camp a one way in spot and spot the M3 or maybe even the pistols with their higher fire rate. But overall it sounds like a solid idea.
        [COLOR="RoyalBlue"][B]N/U Retiree[/B]

        8:45 PM - V A N E S S A: give me a sex
        2:53 PM - Tara Ann ت: just wanted to say you're adorable[/COLOR]

        Comment

        • kamikaze_bad_ass
          N/U Special Forces
          • Jul 2007
          • 661

          #5
          I'll have to try it to see how it works but if it's a trigger toggle command where ya can turn on or off for the map and the players currently on

          also what does this do to the Ichabod and sailor skins ??
          [IMG]http://i173.photobucket.com/albums/w47/badass4625/KamisSig.gif[/IMG]

          [URL="http://www.gametracker.com/player/Kamikaze%20Bad%20Ass%20%C3%97%C2%AA%2F%C3%8F%C2%8D/74.86.102.230:27015/"][IMG]http://cache.www.gametracker.com/player/Kamikaze%20Bad%20Ass%20%C3%97%C2%AA%2F%C3%8F%C2%8D/74.86.102.230:27015/b_560x95.png[/IMG][/URL]

          Comment

          • Natalya
            Queen of the Internet
            Kung Fu Master
            • Oct 2006
            • 1879

            #6
            Nothing yet.
            [img]http://unix.org.au/~brett/gif/waldioaw1.gif[/img]
            [color=royalblue][b]Forum and Server Administrator[/b][/color]
            PasTieZ: I am scared now thanks nat
            natalyaaf: D:
            PasTieZ: sio is going to ass rape me

            NatalyaAF ウラヌス: i am the baninator :D
            word jackd ת/ύ: ha the baninator and the pwninator

            Comment

            • siosios
              g0d!
              Kung Fu Master
              • Oct 2006
              • 13626

              #7
              this SHOULD NOT be abused just like any of the other commands in the server it should be used with respect for the players.
              ------------------------------------------------

              |W0rd|SexualTurtletara420ת/ύ: Hey there daddy..

              ------------------------------------------------
              \\\ ///
              ( @ @ )
              .....o00o.(_).o00o.....


              ------------------------------------------

              Comment

              • Rey
                Sexiest Motha Fucka Alive
                N/U Commando
                • Feb 2008
                • 459

                #8
                Yea in order to "activate" this, admins will do something like "sm_vote "predator Rounds?" yes no" kinda like knife rounds in GG
                DD [r] иα∂ιαٿ: and your pretty damn hot...just saying

                [url=http://www.sloganizer.net/en/][img]http://www.sloganizer.net/en/style7,Rey.png[/img][/url]
                [IMG]http://i171.photobucket.com/albums/u287/jordan09starmer/900_rey.gif[/IMG]

                Comment

                • Natalya
                  Queen of the Internet
                  Kung Fu Master
                  • Oct 2006
                  • 1879

                  #9
                  It mostly works now. Right now only me and Random can turn them on tho... Random, use rcon es_load Predator to turn them on and rcon es_unload Predator to go back to normal rounds. The round will start like normal, but once the first zombie makes a kill every1 gets frozen in place for 10 seconds, except the Predator. Most people will turn into Aliens, a few will stay human. First Predator is randomly chosen. If you are a human, you will unfreeze after 10 seconds with the Aliens. You'll be terribly outnumbered but if you can survive then you are lucky. The Predator is given a desert eagle and a pump shotgun with explosive shells. Aliens will have to hunt down the Predator. The Predator is obviously more powerful than the Aliens, but they have strength in numbers. Whoever kills the predator will get to become the Predator for the next round, so although the Predator is cheap and will make a lot of kills, every one else has a chance at it as well.

                  When someone stabs the Predator, everyone will be frozen and burned to death to end the round. Admins, if the round doesn't end, try sm_hp @all 1; sm_burn @all. I know it sucks but I don't know how else to end the round with event scripts since on ZM you can't slay players. Note: This will not affect anyone's rank so don't worry about losing places. When everyone dies the round will reset and it starts all over again...

                  I will post the code here so that y'all can see it. If someone finds a way to improve something, please let me know as this is rather shabby.



                  Code:
                  // Script: Aliens vs Predator
                  // Author: Natalya[AF]
                  // Version: Beta 0.2A
                  
                  block config
                  {
                  	// Time before the join message is displayed.
                  	es_xsetinfo p_delay 14
                  	es_xsetinfo p_max server_var(zombie_timer_min)
                  }
                  
                  
                  block load
                  {
                  	es_doblock predator/config
                  	es_doblock predator/setup
                  	es_regsaycmd alienmelol predator/alien "ITS THE ONLY WAY TO BE SURE"
                  	es_msg #green  = Alien vs Predator is IN EFFECT =
                  	es_msg #green One player will spawn as a Predator
                  	es_msg #green and will have 10 seconds to run.  Kill
                  	es_msg #green the Predator to get to be the Predator
                  	es_msg #green during the next round.
                  }
                  
                  
                  block unload
                  {
                  	es_msg #green Alien vs Predator is no longer in effect.
                  	es_msg #green Normal play will now resume.
                  	es_unregsaycmd alienmelol
                  }
                  
                  
                  // Script Introduction
                  event player_activate
                  {
                  	es_delayed server_var(p_delay) es_tell event_var(userid) #green = Alien vs Predator is IN EFFECT =
                  	es_delayed server_var(p_delay) es_tell event_var(userid) #green One player will spawn as a Predator
                  	es_delayed server_var(p_delay) es_tell event_var(userid) #green and will have 10 seconds to run.  Kill
                  	es_delayed server_var(p_delay) es_tell event_var(userid) #green the Predator to get to be the Predator
                  	es_delayed server_var(p_delay) es_tell event_var(userid) #green during the next round.
                  }
                  
                  
                  // Version Info
                  event player_say
                  {
                  	if (event_var(text) equalto !predatorinfo) do
                  	{
                  		es_tell event_var(userid) #green |=== Alien vs Predator ===|
                  		es_tell event_var(userid) #green Script by Natalya[AF]
                  		es_tell event_var(userid) #green www.N00bUnlimited.net
                  		es_tell event_var(userid) #green Version: Beta 0.2A
                  	}
                  }
                  
                  
                  block setup
                  {
                  	zombie_respawn_as_zombie 1
                  	es_set predator "0" "Predator ID"
                  	zombie_timer_min  4
                  	zombie_timer_max  14
                  }
                  
                  
                  event player_spawn
                  {
                  	es_setinfo temp_id event_var(userid)
                  	if (server_var(temp_id) != server_var(predator)) do
                  	{
                  		if (server_var(aliens) == 1) do
                  		{
                  			es_tell event_var(userid) #green You are not the Predator.
                  			es_setinfo sm_id "0"
                  			es_format sm_id "#%1" event_var(userid)
                  			es sm_disarm server_var(sm_id)
                  			es sm_weapon server_var(sm_id) weapon_knife
                  			es_setplayerprop event_var(userid) "CCSPlayer.m_iAccount" 0
                  			es_setplayerprop event_var(userid) "CCSPlayer.baseclass.m_iHealth" 4000
                  			es_setplayerprop event_var(userid) "CBasePlayer.localdata.m_flLaggedMovementValue" 1.2
                  			es sm_forcemodel server_var(sm_id) models/player/slow/aliendrone_v3/slow_alien.mdl
                  		}
                  	}
                  }
                  
                  
                  event player_team
                  {
                  	if (event_var(team) == 1) do
                  	{
                  		es_setinfo spec event_var(userid)
                  		if (server_var(spec) == server_var(predator)) then es_setinfo predator "0"
                  		if (server_var(spec) == server_var(pred_killer)) then es_setinfo pred_killer "0"
                  	}
                  }
                  
                  event player_disconnect
                  {
                  	es_setinfo disc event_var(userid)
                  	if (server_var(disc) == server_var(predator)) then es_setinfo predator "0"
                  	if (server_var(disc) == server_var(pred_killer)) then es_setinfo pred_killer "0"
                  }
                  
                  event round_start
                  {
                  	if (server_var(predator) == 0) do
                  	{
                  		getrandplayer predator #alive
                  		es_xsetinfo aliens 0
                  		es_msg #green [AvP] Round Start!!  Predator will spawn after the first Zombie makes a kill.
                  	}
                  }
                  
                  event zombification
                  {
                  	if (server_var(aliens) == 0) do
                  	{
                  		es_setinfo prem_zombie event_var(attacker)
                  		if (server_var(prem_zombie) != server_var(predator)) do
                  		{
                  			es_setinfo 2nd_zombie event_var(userid)
                  			if (server_var(2nd_zombie) != server_var(predator)) do
                  			{
                  				es_setinfo aliens 1
                  				es_doblock predator/start_pred
                  			}
                  			if (server_var(2nd_zombie) == server_var(predator)) do
                  			{
                  				getrandplayer predator #alive
                  				es_setinfo aliens 1
                  				es_doblock predator/start_pred
                  			}
                  		}
                  		if (server_var(prem_zombie) == server_var(predator)) do
                  		{
                  			getrandplayer predator #alive
                  			es_setinfo aliens 1
                  			es_doblock predator/start_pred
                  		}
                  	}
                  }
                  
                  block start_pred
                  {
                  	es_setinfo sm_pred_id "0"
                  	es_format sm_pred_id "#%1" server_var(predator)
                  	es_msg #green [AvP] The Predator Has Spawned!!
                  	es_msg #green [AvP] Kill the Predator to be Predator Next Round!!
                  	es_tell server_var(predator) #green [AvP] You are the Predator Motherfucka!!
                  	es_setplayerprop server_var(predator) "CCSPlayer.m_iAccount" 0
                  	es_setplayerprop server_var(predator) "CCSPlayer.baseclass.m_iHealth" 255
                  	es_setplayerprop server_var(predator) "CBasePlayer.localdata.m_flLaggedMovementValue" 1.1
                  	es sm_disarm server_var(sm_pred_id)
                  	es_give server_var(predator) weapon_knife
                  	es_give server_var(predator) weapon_m3
                  	es_give server_var(predator) weapon_deagle
                  	es_give server_var(predator) item_nvgs
                  	es sm_forcemodel server_var(sm_pred_id) models/player/slow/predator_xp/predator_xp.mdl
                  	es_keysetvalue expl_players server_var(predator) expl "1"
                  	es sm_freeze @all
                  	es sm_god @all 1
                  	es sm_freeze server_var(sm_pred_id) 0.1
                  	es sm_god server_var(sm_pred_id) 0
                  	es sm_exec @t "say alienmelol"
                  	es_delayed 1 es sm_exec @ct "say alienmelol"
                  	es_delayed 10 es sm_unfreeze @all
                  	es_delayed 10 es sm_god @all 0
                  }
                  
                  event player_death
                  {
                  	if (server_var(aliens) == 1) do
                  	{
                  		if (event_var(userid) == server_var(predator)) do
                  		{
                  			es_keysetvalue expl_players server_var(predator) expl "0"
                  			es_setinfo pred_killer event_var(attacker)
                  			es_msg #green [AvP] event_var(es_attackername) killed the Predator!!
                  			es_msg #green [AvP] event_var(es_attackername) is the new Predator!!
                  			es_setinfo aliens "0"
                  			es_delayed 2.58 es_forcevalue sv_cheats 1
                  			es_delayed 2.59 es endround
                  			es_delayed 2.60 es_forcevalue sv_cheats 0
                  		}
                  	}
                  }
                  
                  event round_end
                  {
                  	es_keysetvalue expl_players server_var(predator) expl "0"
                  	if (server_var(pred_killer) != 0) do
                  	{
                  		es_setinfo predator server_var(pred_killer)
                  		es_setinfo pred_killer "0"
                  	}
                  	es_setinfo aliens "0"
                  }
                  
                  block alien
                  {
                  	es_set plyr "0"
                  	es_getcmduserid plyr
                          if (server_var(plyr) != server_var(predator)) do
                          {
                                  es_setinfo plyr_id "0"
                                  es_format plyr_id "#%1" server_var(plyr)
                                  es zombie_player server_var(plyr_id)
                                  es sm_forcemodel server_var(plyr_id) models/player/slow/aliendrone_v3/slow_alien.mdl
                          }
                  }

                  Notes:
                  - The keyvalue stuff links to the exploding shells script so that the Predator can have explosive bullets. (Otherwise he'd lose so bad.)
                  - The sm_forcemodel command is an admin command used to force player models using a modified version of the ModelMenu plugin. However, I'm the one who did the modifying so the functionality is very crude and has no safeguards. Therefore I've disabled this command for admins because it is very dangerous and can crash the server. Yea it can still be called with RCON in game, but whoever wants to do that should consult me first because of the crash risk. @ Sios: The event script here won't crash the server with this command, so don't worry about this. It's just people using it who might accidentally type something wrong and crash the server.


                  *EDIT*
                  - Rounds end now w/o burning people.
                  - Everything seems to work except some players are left human.
                  - Lots of n00bs who don't know whats going on bitch about it because they don't like getting turned into aliens each round and don't pay attention to wtf is going on and don't know how to become Predator. Any ideas here? Maybe multiple predators or something?
                  Last edited by Natalya; 02-25-2009, 11:57 AM.
                  [img]http://unix.org.au/~brett/gif/waldioaw1.gif[/img]
                  [color=royalblue][b]Forum and Server Administrator[/b][/color]
                  PasTieZ: I am scared now thanks nat
                  natalyaaf: D:
                  PasTieZ: sio is going to ass rape me

                  NatalyaAF ウラヌス: i am the baninator :D
                  word jackd ת/ύ: ha the baninator and the pwninator

                  Comment

                  • Rey
                    Sexiest Motha Fucka Alive
                    N/U Commando
                    • Feb 2008
                    • 459

                    #10
                    To your edit.
                    Us admins can explain it to them, if they still bitch we can gag/mute for not listening? :P
                    DD [r] иα∂ιαٿ: and your pretty damn hot...just saying

                    [url=http://www.sloganizer.net/en/][img]http://www.sloganizer.net/en/style7,Rey.png[/img][/url]
                    [IMG]http://i171.photobucket.com/albums/u287/jordan09starmer/900_rey.gif[/IMG]

                    Comment

                    • DoT
                      Kung Fu Master
                      • Mar 2008
                      • 2438

                      #11
                      Originally posted by Rey
                      To your edit.
                      Us admins can explain it to them, if they still bitch we can gag/mute for not listening? :P
                      Bind AvP rules to a key? Such as the rules to the server?
                      [COLOR="RoyalBlue"][B]N/U Retiree[/B]

                      8:45 PM - V A N E S S A: give me a sex
                      2:53 PM - Tara Ann ت: just wanted to say you're adorable[/COLOR]

                      Comment

                      • Rey
                        Sexiest Motha Fucka Alive
                        N/U Commando
                        • Feb 2008
                        • 459

                        #12
                        Yea, i played AvP today, works good on lvl426 map(somethin like that). Its bad o small maps to
                        DD [r] иα∂ιαٿ: and your pretty damn hot...just saying

                        [url=http://www.sloganizer.net/en/][img]http://www.sloganizer.net/en/style7,Rey.png[/img][/url]
                        [IMG]http://i171.photobucket.com/albums/u287/jordan09starmer/900_rey.gif[/IMG]

                        Comment

                        • DoT
                          Kung Fu Master
                          • Mar 2008
                          • 2438

                          #13
                          Didn't get to play the "final" version yet, i'll have to wait till random or nat are on when I'm on -_-
                          (After the days the servers are down)
                          [COLOR="RoyalBlue"][B]N/U Retiree[/B]

                          8:45 PM - V A N E S S A: give me a sex
                          2:53 PM - Tara Ann ت: just wanted to say you're adorable[/COLOR]

                          Comment

                          Working...