PlayMoreSounds

 

PMSLogo1.png

 

PlayMoreSounds is a very complete plugin where you can assign sounds for various occasions. The main goal of the plugin is to play a sound whenever a player triggers an event (an action), the most useful features besides playing sounds in a player event are: Play sounds when a player sends a specific command; play loop sounds when a player is inside a sound region that you can create with the wand tool; play a sound when a player says a specific word in chat; play multiple sounds instead of just one; play noteblock notes instead of just sounds; wait an interval instead of playing the sound immediately, etc. Check out the coolest PlayMoreSounds features in the list below.

Warning: When "CheckForUpdates" boolean in config.yml is enabled, the plugin will try to establish connection with https://api.curseforge.com/ at the server startup to check for updates. If you don't want PlayMoreSounds to connect to external sites, toggle the "CheckForUpdates" boolean located in config.yml from 'true' to 'false'.

 


Features
Advantages you have while using PlayMoreSounds:

  • AddonsPlayMoreSounds supports custom content (Add-ons), so you can download the addons and make PlayMoreSounds compatible with every plugin in your server. Currently the only addons available are inside the jar, but in the future I intend to make a forum to the community share their own addons;
  • Assign sounds to specific commands;
  • Assign sounds to specific words in chat; (Not in the plugin yet)
  • Compatibility: Compatible with versions greater than MC1.7.9;
  • Create sound regions without requiring any other plugins to select and store those regions;
  • Define which players will hear to the sounds:
    • All online on the server;
    • Players within a specified range of blocks from the location where the event was triggered (Radius feature);
    • The player who made the event.
  • Doesn't affect the server performance: If you're not using an event, PlayMoreSounds will automatically unregister the event that was consuming server memory in the background;
  • Play enter, exit, loop sounds when you are inside specific biomes or regions; (Not in the plugin yet)
  • Play more than one sound for each event;
  • Play noteblock notes instead of just bukkit sounds;
  • Set an interval to wait instead of playing the sound immediately when the event is triggered;
  • Specify the pitch and volume of each sound;
  • Specify which worlds the sounds won't be listenable;
  • Test(Play) or list the sounds available in minecraft using commands;
  • Toggle the sounds to ON or OFF using commands;

Check the sounds available in your minecraft version on the links below (or just use the command /pms list):

 


Supported events
Which events will trigger the sounds?

1- Blue - Compatibility dependent sounds. 
2- Green - Enabled in configuration. 
3- Red - Disabled in configuration. 
4- Yellow - Supports other plugins. 
  • Achievement
  • Advancement Done
  • Arrow Hit
  • BedEnter
  • BedLeave
  • Change Afk Status - Depends on Essentials away
  • Change EXP level
  • Change Hotbar
  • Chat - Supports Legendchat and UltimateChat
  • Command
  • Death
  • Fly
  • First Join
  • Furnace Extract
  • Gamemode Change
  • Hand Hit
  • Inventory Click
  • Item Drop
  • JobsJoin - Depends on JobsReborn
  • JobsLeave - Depends on JobsReborn
  • Join
  • Leave
  • Region Enter - Supports RedProtect and WorldGuard
  • Region Leave- Supports RedProtect and WorldGuard
  • Stop Flying
  • Sword Hit
  • Teleport - Supports VanishNoPacket and EssentialsVanish
If you do not want the sound of the event to play, change it to NONE


Commands

Click here to see the full and detailed command list.

/playmoresounds - Shows the plugin description.
/playmoresounds confirm - Confirms something.
/playmoresounds edit - Edits something in configuration.
/playmoresounds help - Shows the command help.
/playmoresounds list - Lists all available bukkit sounds or noteblock intruments.
/playmoresounds play - Plays a bukkit sound or a sound from an event of sounds.yml.
/playmoresounds region - Regions main command.
/playmoresounds reload - Reloads all configurations.
/playmoresounds restore - Restores all configurations.
/playmoresounds sounds - Checks if sounds are toggled on or off.
/playmoresounds toggle - Toggle the sounds to on or off.
/playmoresounds update - Checks for updates.


Configuration
You can change the sounds, pitch and volume that the player makes to each event.
Config.yml:
# Checks for updates.
CheckForUpdates: true

# Auto-Update the plugin when you check for updates on command "/playmoresounds update".
CommandAutoUpdate: true

# If you have an outdated configuration, the plugin will ask you to restore it.
# (If is disabled, the plugin automatically restore your outdated configs.)
ConfirmOutdatedFileRestoration: true

# Shows debug messages to console.
# (If you set as "developer", this will log and spam your console with all debugging tests.)
DebugOutput: false

# Change the sounds depending on the date that the plugin runs.
EnableEasterEggs: true

# If a player has disabled his sounds and relogged, the sounds will be enabled.
EnableSoundsAfterRelog: false

# Extracts the language files into the plugin folder.
ExtractLanguageFiles: true

# Shows the help page based on player's permissions. 
HelpBasedOnPermissions: true

# This will hide radius sounds for players who have the following conditions:
HideRadiusSoundsTo:
  InvisibilityEffect:
    Enabled: true
    #Permission: playmoresounds.sounds.radius.hide.invisible
    OnlyWithPermission: true
  Gamemode:
    Adventure: false
    Creative: false
    Spectator: true
    Survival: false
  # Hide the sound to players that can not see the sound maker. (Most used code for vanish plugins.)
  IfCanNotSee: true

# Settings of the '/pms list' command.
ListCommand:
  # The amount of sounds/instruments that should appear per page.
  Amount: 12
  # The color of each sound/instrument that is shown in the list.
  Color: '&6'
  # The secondary color of each sound/instrument that is shown in the list.
  Color2: '&e'
  # The separator that will be between each sound/instrument that is in the list.
  Separator: '&7, '

# The language of the plugin [en, br, es].
Localization: en

# Particles that will spawn when a player makes an event.
Particles:
  Teleport:
    Enabled: true
    HideOn:
      Gamemode:
        Adventure: false
        Creative: false
        Spectator: true
        Survival: false
      InvisibilityEffect:
        Enabled: true
        #Permission: playmoresounds.particles.hide.invisible
        OnlyWithPermission: true
      # Hide the particles to players that can not see the particle maker. (Most used code for vanish plugins.)
      IfCanNotSee: true

# Enable the configuration "commands.yml" to play a different sound to each command.
PerCommandSounds:
  Enabled: true

# Enable the configuration "gamemodes.yml" to play a different sound to each gamemode.
PerGamemodeSounds:
  Enabled: true

# The volume and pitch that will be set if the player don't specify when
# the command "/pms play" is sent.
PlayCommandDefaultPitch: 1
PlayCommandDefaultVolume: 10

# The sound that will play when the config is reloaded.
ReloadCommand:
  Sound:
  - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1'

# The regions that you can create to play a sound when you enter/exit it.
SoundRegions:
  WandTool:
    Glowing: true
    Material: STICK
    Name: '&6&l&nSound Region Selector'

# The sounds that will play when a player change his toggle-sounds status.
ToggleCommand:
  # Time in seconds of how long you should wait to toggle sounds again.
  Cooldown: 35s #h = hour, m = minute, s = seconds.
  ToggleSounds:
    ToggleEnabled:
      Sound:
      - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=2'
    ToggleDisabled:
      Sound:
      - 'Sound=BLOCK_NOTE_BASS;Interval=0;Volume=10;Pitch=1'

# Check for updates every X minutes.
# If you disable "LogToConsole" the plugin will just inform you when an update is available.
UpdateScheduler:
  Enabled: true
  # Time in minutes of how long the plugin will check for updates again.
  Interval: 1h #h = hour, m = minute, s = seconds.
  LogToConsole: false

# Uses hard memory-consuming methods to automatic reload the plugin configuration.
# (/playmoresounds reload not needed).
UseHardMethods: false
# The worlds that will not play any sounds.
# To use it, just remove the "#" hashtags.
#World-BlackList:
#- 'example1'
#- 'example2'

# The version of your configuration. (To restore the old configurations)
ConfigVersion: 2.4.0

 

Sounds.yml:

You can add a sound to every event, or if you want, a noteblock note.

These sounds are here by default, you can change them reading the following tutorials:

Multiple sounds tutorial:
#  ChangeHotbar: = The event.
#    Cancellable: true = If another plugin has cancelled the event, the sound will not play.
#    Radius: -1 = The radius. (More info below)
#    Sound:
#    - 'Sound=SOUND_HERE;Interval=INTERVAL_HERE;Volume=VOLUME_HERE;Pitch=PITCH_HERE'
#
#  Replace SOUND_HERE to the sound that you want, INTERVAL_HERE to the time (ticks) that the sound
#will wait before playing, VOLUME_HERE to the sound volume, PITCH_HERE to the sound pitch.
#  You cant put multiple lines to play multiple sounds in one event.
#
#  Example:
#    PlayerDeath:
#      Radius 10
#      Sound:
#      - 'Sound=ENTITY_EVOCATION_FANGS_ATTACK;Interval=0;Volume=2;Pitch=1'
#      - 'Sound=ENTITY_ENDERDRAGON_GROWL;Interval=10;Volume=2;Pitch=1'
#      - 'Sound=ENTITY_WITHER_SPAWN;Interval=13;Volume=2;Pitch=1'

Radius tutorial:
#  If you set the 'Radius' configuration, the plugin will play the sounds to the players that are in
#this distance. For example:
#  PlayerDeath:
#    Radius: -1 = Only the event maker will listen to the sound.
#  PlayerChat:
#    Radius: 0 = All players allowed to hear PlayerChat in the server will listen to the sound.
#  PlayerTeleport:
#    Radius: 10 = All players allowed to hear PlayerTeleport in this distance from event maker will
#listen to the sound.

Noteblock notes tutorial:
#  If you want noteblocks, replace SOUND_HERE to Note.INTRUMENT:NOTE
#INSTRUMENT is the noteblock instrument that you want, NOTE is the note of the noteblock.
#  For some reason, in versions greater than 1.8.9, noteblocks notes can only be listen if 'Music' from player 'Sound Settings' is on.
#
#  Example:
#    JoinServer:
#      Radius: 0
#      Sound:
#      - 'Sound=Note.PIANO:12;Interval=0;Volume=0;Pitch=0'
#      - 'Sound=Note.PIANO:24;Interval=10;Volume=0;Pitch=0'
#      - 'Sound=Note.PIANO:24;Interval=20;Volume=0;Pitch=0'
#
# - To see the compatible noteblock instruments use the command "/pms list -instruments".

#When a mob gets hitten by an arrow.
ArrowHit:
  Cancellable: true
  Radius: -1
  Sound:
  - 'Sound=ENTITY_EXPERIENCE_ORB_PICKUP;Interval=0;Volume=10;Pitch=1'
  - 'Sound=ENTITY_EXPERIENCE_ORB_PICKUP;Interval=1;Volume=10;Pitch=1'

#When a player lies in bed.
BedEnter:
  Cancellable: true
  Radius: 10
  Sound:
  - 'Sound=ENTITY_VILLAGER_AMBIENT;Interval=0;Volume=1;Pitch=0.6'

#When a player gets out of bed.
BedLeave:
  Radius: -1
  Sound: NONE

#When a player change his item in hand.
ChangeHotbar:
  Cancellable: false
  Radius: -1
  Sound:
  - 'Sound=BLOCK_NOTE_HAT;Interval=0;Volume=10;Pitch=2'

#When a player reaches a new level of experience.
ChangeLevel:
  Radius: -1
  Sound:
  - 'Sound=ENTITY_PLAYER_LEVELUP;Interval=0;Volume=0.6;Pitch=2'

#when a player extracts something from the workbench.
CraftingExtract:
  Radius: -1
  Sound:
  - 'Sound=ENTITY_PLAYER_LEVELUP;Interval=0;Volume=10;Pitch=1'

#When a player joins to the server for the first time.
FirstJoin:
  Radius: 0
  Sound:
  - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1'
  - 'Sound=BLOCK_NOTE_PLING;Interval=1;Volume=10;Pitch=1'
  - 'Sound=BLOCK_NOTE_PLING;Interval=6;Volume=10;Pitch=2'

#When a player extracts something from the furnace.
FurnaceExtract:
  Radius: 15
  Sound:
  - 'Sound=ENTITY_GENERIC_EXTINGUISH_FIRE;Interval=0;Volume=1;Pitch=1'
  - 'Sound=ENTITY_GENERIC_EXTINGUISH_FIRE;Interval=1;Volume=1;Pitch=2'

#When a player changes his game mode.
GamemodeChange:
  Cancellable: false
  Radius: -1
  Sound:
  - 'Sound=BLOCK_ANVIL_PLACE;Interval=0;Volume=10;Pitch=1'

#When a player hits a mob with his hand.
HandHit:
  Cancellable: true
  Radius: 12
  Sound:
  - 'Sound=ENTITY_PLAYER_HURT;Interval=0;Volume=1;Pitch=2'

#When a player clicks on his inventory.
InventoryClick:
  Cancellable: false
  Radius: -1
  Sound:
  - 'Sound=UI_BUTTON_CLICK;Interval=0;Volume=0.4;Pitch=1'

#When a player joins the server
JoinServer:
  Radius: 0
  Sound:
  - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1'

#When a player quits the server.
LeaveServer:
  Radius: 0
  Sound:
  - 'Sound=BLOCK_NOTE_BASS;Interval=0;Volume=10;Pitch=1'
  - 'Sound=BLOCK_NOTE_BASS;Interval=0;Volume=10;Pitch=1'
  - 'Sound=BLOCK_NOTE_BASS;Interval=0;Volume=10;Pitch=1'

#When a player gets a new achievement.
PlayerAchievement:
  Cancellable: true
  Radius: -1
  Sound:
  - 'Sound=ENTITY_PLAYER_LEVELUP;Interval=0;Volume=10;Pitch=1'

#When a player completes an advancement.
PlayerAdvancementDone:
  Radius: -1
  Sound:
  - 'Sound=ENTITY_PLAYER_LEVELUP;Interval=0;Volume=10;Pitch=1'

#When a player says something on the chat.
PlayerChat:
  Cancellable: true
  Radius: 0
  Sound:
  - 'Sound=ENTITY_ITEM_PICKUP;Interval=0;Volume=0.5;Pitch=1'

#When a player sends a command.
PlayerCommand:
  Cancellable: true
  Radius: -1
  Sound:
  - 'Sound=ENTITY_ITEM_PICKUP;Interval=0;Volume=10;Pitch=1'

#When a player dies.
PlayerDeath:
  Radius: -1
  Sound:
  - 'Sound=ENTITY_WITHER_SPAWN;Interval=0;Volume=10;Pitch=1'

#When a player drops an item.
PlayerDrop:
  Cancellable: true
  Radius: 12
  Sound:
  - 'Sound=ENTITY_EGG_THROW;Interval=0;Volume=0.5;Pitch=1'

#When a player starts flying.
PlayerFlight:
  Cancellable: true
  Radius: 8
  Sound:
  - 'Sound=BLOCK_PISTON_EXTEND;Interval=0;Volume=0.6;Pitch=1'

#When a player stops flying.
PlayerFlightStop:
  Cancellable: true
  Radius: 8
  Sound:
  - 'Sound=BLOCK_PISTON_CONTRACT;Interval=0;Volume=0.6;Pitch=1'

#When a player teleports to another place.
PlayerTeleport:
  Cancellable: true
  Radius: 16
  Sound:
  - 'Sound=ENTITY_ENDERMEN_TELEPORT;Interval=0;Volume=1;Pitch=1'

#When a player enters on a region.
RegionEnter:
  Cancellable: true
  Radius: -1
  Sound:
  - 'Sound=ENTITY_EXPERIENCE_ORB_PICKUP;Interval=0;Volume=10;Pitch=1'

#When a player leaves a region.
RegionLeave:
  Cancellable: true
  Radius: -1
  Sound:
  - 'Sound=ENTITY_EXPERIENCE_ORB_PICKUP;Interval=0;Volume=10;Pitch=1'

#When a player hits a mob with a sword.
SwordHit:
  Cancellable: true
  Radius: 12
  Sound:
  - 'Sound=ENTITY_PLAYER_HURT;Interval=0;Volume=1;Pitch=1'

#Do not touch this if you do not want your configuration to be restored.
SoundsConfigVersion: 2.4.0

 

Commands.yml:

Assign sounds for specific commands.

#You can add commands to this file and set the sound that will play when a player sends this commands to server.
#If you want to play the default sound of PlayerCommand on sounds.yml, just don't add the command to this file.

#Examples:
/help:
  Radius: -1
  Sound: NONE #If a player change his gamemode to survival, it will not play any sound.

/warp:
  Radius: -1
  Sound:
  - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1' #If a player sends this command to the server, it will play Note_Pling sound instead of the default sound on sounds.yml.

 

Regions.yml:

Play different sounds when you enter/exit the regions specified in this file.

#You can add name of regions to this file and set a sound to play when you enter/exit the region.
#Sound Regions can be created with /pms region create <name> and this is also compatible with other plugin's regions (WorldGuard, RedProtect).

#Examples:

PlayMoreSounds: = The region plugin.
# When a player enter on this PlayMoreSounds "NotePlingRegion" region, the sound BLOCK_NOTE_PLING with volume 10 and pitch 1 will be played.
# When a player exit this PlayMoreSounds "NotePlingRegion" region, the sound BLOCK_NOTE_PLING with volume 0.5 and pitch 2 will be played.
  NotePlingRegion: = The name of the region.
    Enter: = The event.
      Radius: -1 = Radius of the sound.
      Sound:
      - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1' = The sound that will play when a player enter on this region.
    Leave: = The event.
      Radius: -1 = Radius of the sound.
      Sound:
      - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1' = The sound that will play when a player exit this region.
# When a player enter on this PlayMoreSounds "WitherSpawnSound" region, the sound ENTITY_WITHER_SPAWN with volume 10 and pitch 1 will be played.
# When a player exit this PlayMoreSounds "WitherSpawnSound" region, the sound ENTITY_WITHER_DEATH with volume 1 and pitch 0 will be played.
  WitherSpawnSound:
    Enter:
      Radius: -1
      Sound:
      - 'Sound=ENTITY_WITHER_SPAWN;Interval=0;Volume=10;Pitch=1'
    Leave:
      Radius: -1
      Sound:
      - 'Sound=ENTITY_WITHER_DEATH;Interval=0;Volume=10;Pitch=0'

# When a player enter on this WorldGuard "spawn" region, the sound ENTITY_EXPERIENCE_ORB_PICKUP with volume 10 and pitch 1 will be played.
# When a player exit this WorldGuard "spawn" region, the sound BLOCK_NOTE_BASS with volume 10 and pitch 2 will be played.
WorldGuard:
  spawn:
    Enter:
      Radius: -1
      Sound:
      - 'Sound=ENTITY_EXPERIENCE_ORB_PICKUP;Interval=0;Volume=10;Pitch=1'
      Volume: 10
      Pitch: 1
    Leave:
      Radius: -1
      Sound:
      - 'Sound=BLOCK_NOTE_BASS;Interval=0;Volume=10;Pitch=2'

 

Gamemodes.yml:

Set which sounds should play when you switch to a specific gamemode.

#You can add gamemodes to this file and set the sound thatwill play when a player changes their game mode to it.
#If you want to play the default sound of GamemodeChangeEvent on sounds.yml, just don't add the new gamemode to this file.

#Examples:
SURVIVAL:
  Radius: -1
  Sound: NONE #If a player change his gamemode to survival, it will not play any sound.

CREATIVE:
  Radius: -1
  Sound:
  - 'Sound=BLOCK_NOTE_PLING;Interval=0;Volume=10;Pitch=1' #If a player change his gamemode to creative, it will play Note_Pling sound instead of the default sound on sounds.yml.

 


Permissions

Click here to see the full and detailed permissions list.

Quick permissions:

  • playmoresounds.* - Gives access to all PlayMoreSounds. commands, sounds and features. (Given by default to players with OP).
  • playmoresounds.admin – PlayMoreSounds recommended permissions for admins.
  • playmoresounds.commands – Gives access to all PlayMoreSounds commands.
  • playmoresounds.op - PlayMoreSounds recommended permissions for operators.
  • playmoresounds.particle.* - Gives access to all PlayMoreSounds particles.
  • playmoresounds.particles - Gives access to all PlayMoreSounds particles.
  • playmoresounds.player – Gives access to all PlayMoreSounds sounds and toggle command. (Given by default)
  • playmoresounds.sound.* - Gives access to all PlayMoreSounds sounds.
  • playmoresounds.sounds - Gives access to all PlayMoreSounds sounds.

 


Compatibility

These compatibilities are only available in versions below 2.4.0. In the future, I intend to implement them again.

AFKToggle:
If a player change his away status, the plugin will play AFKToggle sound.
PlayerTeleportParticles:
If a vanished player teleports to someone, this someone will not see the vanished player's teleport particles.

Vanish:

If a vanished player triggers an event with a sound with radius greater than 0, the sound will be cancelled and no sound will be played.
JobsJoin:
If a player join a job, the sound JobsJoin will play.
JobsLeave:
If a player quit a job, the sound JobsLeave will play.
PlayerChat Event:
If a player sends a message on a channel with a distance greater than 0, the sound of the "PlayerChat" event will only be played to players who are at this distance. If the channel distance that the player sends the message is 0, the sound is played to all players online.
RegionEnter:
If a player enter on a RedProtect region, the plugin will play RegionEnter sound.
RegionLeave:
If a player exit a RedProtect region, the plugin will play RegionLeave sound.
PlayerChat Event:
If a player sends a message on a channel with a distance greater than 0, the sound of the "PlayerChat" event will only be played to players who are at this distance. If the channel distance that the player sends the message is 0, the sound is played to all players online.
PlayerTeleportParticles:
If a vanished player teleports to someone, this someone will not see the vanished player's teleport particles.

Vanish:

If a vanished player triggers an event with a sound with radius greater than 0, the sound will be cancelled and no sound will be played.
RegionEnter:
If a player enter on a WorldGuard region, the plugin will play RegionEnter sound.
RegionLeave:
If a player exit a WorldGuard region, the plugin will play RegionLeave sound.

 


Teleportation Particles
The plugin has a system that sends particles when the player teleports
 
This can be enabled on teleport particles boolean.
Teleportation particles are ignored when you are: Vanished, with invisibility effect (Permission required), in a specified gamemode. (Configurable)
 

About This Project

  • Project ID
    262494
  • Created
    Mar 10, 2017
  • Last Released File
    Oct 28, 2018
  • Total Downloads
    14,313
  • License

Categories

Members