1. Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

Dismiss Notice
This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Resource World - Every Survival server needs this

Discussion in 'Scripts' started by Sombrerian, Nov 11, 2021.

  1. Sombrerian

    Sombrerian New Member

    Joined:
    Nov 8, 2021
    Messages:
    1
    Likes Received:
    0
    An extremely configurable Resource World plugin (Skript) that every Survival server needs!

    Main purpose of a Resource world is to serve as temporary world for your players to gather materials in. Resource world is automatically renewed after a set period of time (configurable). This will keep your primary Survival world tidy and more appealing to newcomers. This Skript is very well optimized and very adjustable to fit your server's needs (Check out the Spoiler at the very bottom to learn more)

    Installation process: Download Skript here: https://github.com/SkriptLang/Skript/releases, restart your server, place resourceworld.sk into /plugins/Skript/scripts/, type /sk reload resourceworld.sk

    Multiverse-Core is used to generate the world. You can download Multivere-Core here if you don't have it installed already: https://dev.bukkit.org/projects/multiverse-core

    90% of functionality is adjustable within the configuration section.

    No addons (apart from Multiverse-Core) are required to run this Skript.

    Fair note: It is expected for most servers to lag when getting teleported straight into an unloaded chunk, especially in a world that is renewed every once in a while. This can be solved by enabling Smart Search in the configuration c:

    I will gladly help you with adjustments or installation through Discord (Sombrerian#0509)
    # What should the name of your resource world be?
    world: resource_world
    #
    # VERY IMPORTANT!
    # Skript file name (resourceworld.sk)
    # Every time a new resource world is created, we reload this file,
    # so newly created world can be recognized by Skript. If you rename
    # "resourceworld.sk" to something else, you must do that here as well!
    filename: resourceworld.sk
    #
    # Minimum X & Z coordinates.
    minimumxz: -1000
    #
    # Maximum X & Z coordinates.
    maximumxz: 1000
    #
    # Reset timer (in seconds)
    # How ofter should we reset the resource world?
    # 24 hours: 86400 seconds,
    # 3 days: 259200 seconds,
    # 1 week: 604800 seconds etc...
    resettimer: 86400
    #
    # Specify blocks to avoid from being dropped on. It is highly recommended to not
    # remove default values, unless you want players drowning in lava.
    # Valid blocks that can be blacklisted: https://github.com/SkriptLang/skript-aliases/blob/master/building.sk
    blockblacklist: lava or water or cactus or bamboo or stone or any leaves
    #
    # How many times should we attempt to randomly teleport a player before giving up?
    # This depends on blacklisted blocks. For example, if first location attempt
    # is lava (assuming lava is under "blockblacklist"), then we increase attempt amount by 1 and try
    # to find a new location for the player. Recommended and probably the most appropriate value is 20.
    maxattempts: 20
    #
    # How long should the delay (in ticks) between teleportation attempts be?
    # Lower value means faster teleportation attempts, but possible lag.
    # It is recommended to keep this set to 5 (meaning max 4 attempts per second)
    # 20 ticks = 1 second
    attemptdelay: 5
    #
    # Warmup message
    # Let players know that they are getting teleported to resource world.
    # -
    # Set to "none" to disable this feature.
    warmupmessage: "&aHang tight... Looking for a safe spot!"
    #
    # Drop-off message
    # Let players know that they were successfully teleported to resource world.
    # -
    # Set to "none" to disable this feature.
    dropoffmessage: "&aYou have been dropped off at %location at player%"
    #
    # Resource world reset message
    # Should we announce that resource world is about to reset?
    # -
    # Set to "none" to disable this feature.
    announceresetmessage: "&aIts time for a new resource world, resetting now!"
    #
    # Console Post-reset command
    # This is completely optional, but pretty useful in some cases.
    # Post command is executed 1 second after resource world is reset.
    # Set this to "none" if you don't wish to use post a command.
    # -
    # Useful examples?
    # postresetcommand: "/eco give * 100"
    # postresetcommand: "/heal *"
    # postresetcommand: "/effect give @a minecraft:glowing 10"
    # postresetcommand: "/tell * Hello World"
    # postresetcommand: "/broadcast Everyone sees this!"
    postresetcommand: "none"
    #
    # Console Post-TP command
    # Same as Post-reset command... but executed every time a player teleports to resource world.
    # Use %player% if you want to run a command specifically with that player's name. For example,
    # if a player by the name of "Bob" teleports to resource world while Post-TP command is set to
    # "/kick %player%", then Bob gets kicked.
    posttpcommand: "none"
    #
    # Dedicated command
    # Just in case you don't want players constantly typing /rw tp.
    # This can be set to any non-existent command.
    dedicatedcommand: /rworld
    #
    # Command cooldown (in seconds)
    # Set this to 0 for no cooldown.
    rwcooldown: 120
    #
    # Decreased command cooldown (in seconds)
    # Possible donator perk? Players with permission "resourceworld.decreasedcooldown" will be
    # cooled down for amount of seconds specified here, instead of regular "rwcooldown".
    # Set this to 0 for no cooldown.
    rwdecreasedcooldown: 20
    #
    # Cooldown message
    # Players will be presented with this message when they try to randomly teleport while on cooldown.
    # Only works if cooldowns are enabled.
    # %{rwcooldown.%player%}% is the placeholder to show remaining seconds.
    cooldownmessage: "&cYou are on cooldown, %{rwcooldown.%player%}%&c seconds remain!"
    #
    # Particle mode
    # Particles are summoned at player's location once successfully teleported to resource world.
    # Valid switches: none, ball, splash
    # -
    # none: Disable particles
    # ball: Particles summoned in a 'ball'-a-like shape
    # splash: Particles summoned beneath the player
    particlesmode: "ball"
    #
    # Particle effect radius
    # Only applies if you have particles set to "ball" or "splash".
    particleradius: 2
    #
    # Particle type
    # List of valid particles: https://www.digminecraft.com/lists/particle_list_pc.php
    # -
    # Make sure to exclude underscores! For example, if you are setting your particle to
    # enchanted_hit, remove _, having the final value set as: enchanted hit
    particlestype: happy villager
    #
    # Sound effect
    # List of valid sounds: https://www.digminecraft.com/lists/sound_list_pc.php
    # Set this to "none" if you don't wish to use sound effects.
    # -
    # Make sure to reaplce all dots with underscores! For example, if you are setting your sound effect
    # to "BLOCK.BEEHIVE.SHEAR", replace all . with _, having the final value set as: "BLOCK_BEEHIVE_SHEAR"
    soundeffect: "ENTITY_ENDER_DRAGON_SHOOT"
    #
    # Smart location search
    # When teleporting to resource world, the location which you are dropped off at is truly random...
    # ...however servers tend to become laggy when chunks attempt to load out of the blue, especially
    # on higher player counts.
    # -
    # Enabling smartsearch fixes this issue by storing exactly 32 safe locations and picking one
    # where we then drop off the player. This will 100% fix chunk lag in case you are experiencing
    # it when teleporting to the resource world.
    # -
    # Chunk lag is greatly decreased when players walk/fly into an unloaded chunk rather than getting
    # teleported directly into it.
    smartsearch: false
    #
    # Permission to use /resourceworld (and alias) administrative commands.
    # Keep in mind that "resourceworld.use" is still needed no matter if
    # player already has superuser "resourceworld.superuser" permission.
    # Administrative commands: /rw reset, /rw setspawn
    superuserpermission: resourceworld.superuser
    #
    # Permission to use /resourceworld (and alias) commands.
    cmdpermission: resourceworld.use
    #
    # Should we enable debug mode?
    # This will play unnecessary, but useful chat messages to the player.
    # Valid switches: true/false
    debug: false
    #
    #-------------------------------
    # Resource world options bellow
    #-------------------------------
    # World difficulty
    # Valid switches: peaceful, easy, normal, hard
    rwdifficulty: hard
    #
    # Daylight cycle
    # Valid switches: true/false
    rwdaylightcyctle: true
    #
    # Weather cycle
    # Valid switches: true/false
    rwweathercyctle: true
    #
    # Mob spawning
    # Valid switches: true/false
    rwmobs: true
    #
    # PVP state
    # Valid switches: true/false
    rwpvp: true
    #
    # Keep inventory
    # Valid switches: true/false
    rwkeepinventory: false
    resourceworld.use Access to /rw, /rw tp & it's alias
    resourceworld.superuser Access to /rw reset & /rw setspawn
    Ssskript Discord server: https://discord.gg/XjMJC8xauf
    My Discord: Sombrerian#0509
    Email: [email protected]
     
  2. YourFavoritePerson

    Joined:
    Feb 8, 2022
    Messages:
    20
    Likes Received:
    0
    could you make it so when you run a command like /saveworld it set’s the variable {_save} to the world, then when you run the command /returnworld if the variable {_save} is set, it sets the world to that variable? don’t know if that made sense so here’s an example of what i’m looking for:
    Code (Text):
    1. command /saveworld:
    2.     permission: op
    3.     trigger:
    4.         set {_save} to world
    5. command /returnworld:
    6.     permission: op
    7.     trigger:
    8.         if {_save} is set:
    9.             # set’s the world to {_save}
    10.             send “&aThe server is now returning to its original state!” to player
    11.             send “&aThe server has successfully returned to its original state!” to player
    12.  
     

Share This Page

Loading...