ZombieTag

Discussion in 'Plugin Requests' started by Yoxio, Sep 20, 2016.

Thread Status:
Not open for further replies.
  1. Offline

    Yoxio

    Okay so I've been making server for a while now and I want to make a zombie themed one. A few games I have came up with include Zombie Tag, Zombie Survival and Another game mode I can't remember ahah,
    Anyway lets start with the Tag plugin.
    I would like a plugin what can run by itself with no one there.
    The idea is one person is randomly chosen at the start of a round then they can go round and tag others, to make it easy to pick a winner it would be as if they join your zombie team when you tag them so in the end theres 1 normal player left all the rest are zombies. Rounds can last as long as they want until theres one player left.
    Features that I'd like
    • Sign Joining
    • Score Board on the side (With the player names in Green for Alive and Red for Zombie)
    • Ranking, maybe based on how many games you've won
    • Easy setup of map
    • 4-15 Player Games
    Permission Ideas:
    • zombietag.join (Default Join Permission)
    • zombietag.leave
    • zombietag.forcestart (Can forcestart the game)
    All other permissions for creating an arena are fine as they will be set up by an OP

    Command Ideas:
    • /zombietag join <Arena Number> (Alternative to signs)
    • /zombietag leave (Leave the game early)
    • /zombietag arena create <Name> (Create an arena, with WorldEdit regions)
    • /zombietag arena setspawn <Player,Zombie> (Sets spawnpoints of players and Zombies
    • /zombietag forcestart <Arena Number> (Starts a game early)
    In future kits could be added like slow arrows, but lets get the basics first.
    Thats all the coder can think of a name as it's all there plugin.

    Also It would be running on one sever so it would need Multiverse support, would also be nice if you could have multiple arenas in one world.
    ~Nearus
     
    Last edited: Sep 20, 2016
  2. @Yoxio Please add more detail. What commands do you want? What permissions? How long are the rounds? How do you play (in detail) how does the ranking work? What does the scoreboard look like? How do you set up the maps?

    You can't give minimal details as we can't read your mind.
     
  3. Offline

    Yoxio

    Updated
     
  4. Offline

    Yoxio

    Bump
     
    Last edited: Sep 22, 2016
  5. Offline

    9UjtOAtcBA

    Get mycommand, enable blockset listeners.

    Setup a sign that triggers a mycommand command that can only be triggered from blockset. Make this command teleport the player to a lobby and set their InMinigame score to 1 (or the ID of the minigame, if you want)

    Periodically check if the amount of players with the same InMinigame score is greater than X (X being the minimum player count)

    If so, teleport @a[score_InMinigame=1,score_InMinigane_min=1,c=Y] to the coordinates of the arena. Y is the amount of maximum players.
    Also set these players' InLobby score to 0. If any players with InMinigame==1 but InLobby==1 exist, teleport them to spawn and reset all of their minigame related scores.

    Make a command that selects a random player of players whose scores are InMinigame==1, InLobby==0, and set their IsZombie to 1.

    Join all participants to team "green"

    Teleport that player (@a[score_InMinigame=1,score_InMinigame_min=1,score_InLobby=0,score_IsZombie_min=1]) to a random location within the arena with /spreadplayers

    Join that player to team "red"

    Set the scoreboard objective "ZombieTag" to display slot sidebar.team.red
    Set the scoreboard objective "ZombieTag" to display slot sidebar.team.green

    Setup a command to trigger on player kill that sets the killed player's IsZombie to 1, and joins them to team "red", and increment the killers score by an amount you like. Optionally also use LibsDisguises to disguise those players as zombies.

    Periodically test if there are any IsZombie==0 players left. If not, end the game. Perform the following operations:

    Code:
    /scoreboard players operation ?TopScore? DynamicValue > -@a[score_InMinigame_min=1,score_InMinigame=1,score_InLobby=0] Score
    /execute @a[score_InMinigame_min=1,score_InMinigame=1,score_InLobby=0] ~ ~ ~ /scoreboard players operation @p temp = @p  Score
    /scoreboard players operation @a[score_InMinigame_min=1,score_InMinigame=1,score_InLobby=0] temp -= ?TopScore? DynamicValue
    /scoreboard players operation @a[score_InMinigame_min=1,score_InMinigame=1,score_InLobby=0,score_temp=0,score_temp_min=0] Winner = ?WinnerCount? DynamicValue
    /scoreboard players add ?WinnerCount? DynamicValue 1
    /scoreboard players set 
    @a[score_InMinigame_min=1,score_InMinigame=1,score_InLobby=0,score_temp=0,score_temp_min=0] Score 0
    
    Iterate the above to recursively get the top scores (Winner==0 is 1, Winner==1 is 2, etc), then if you want increase their ZombieExp score by how much xp you want to get from the match. (Why not get creative and base the amount of xp on the other participants amount and skill?)

    Then just create the interface commands that remove player from the match, join to the lobby, and so forth.



    TL;DR

    Doable with mycommand
     
  6. Offline

    Yoxio

    Going to attempt this now, looks a bit confusing but I'll try, thanks!

    Is this all done with MyCommand or is it partly CommandBlocks?

    EDIT: I'm so lost I'm not familiar with myCommand and have no clue what I'm doing. I do belive it would be alot easier and simpler for it to be a plugin it would also be a lot more reliable
     
    Last edited: Sep 22, 2016
  7. Offline

    9UjtOAtcBA

    @Yoxio
    I personally prefer commandblocks, but mycommand's built-in command scheduler also works perfectly well.

    Regarding your last edit, yeah, it'll be easier for you. After all, all you need to do is ask for something to be made for you. That is the whole point of this forums section, yes, but what I'm saying is you have far more control, much more abilities to customize the feature, and can link it with anything and everything you want. As for your reliability concern, I assure you any correctly set of mycommand features is equally reliable to a proper plugin. Slightly more resource intensive, but it's the third best option if you don't have what it takes to make a plugin.
     
    Yoxio likes this.
  8. Offline

    Yoxio

    I've found this plugin named 'Mini-Games' and it has a mode called Infection and thats pretty much one starts as a zombie and tags. Thanks anyway
     
Thread Status:
Not open for further replies.

Share This Page