Inactive [FUN] AmbientSpout WIP v1.0.2 - Custom ambient music & Looping sound effects[SPOUT] [1.2.5-R4.0]

Discussion in 'Inactive/Unsupported Plugins' started by Rahazan, Dec 23, 2011.

  1. Offline

    Rahazan

    Fully rewritten
    AmbientSpout

    Download: <Edit by Moderator: Redacted bit url>



    Show Spoiler
    How to setup

    ------------
    Step 1 - Configuration:
    - Start your server with the plugin installed. The plugin will generate the necessary files for you.
    - Shut down your server and change config.yml to your likings.

    ------------
    Step 2 - Adding music:
    There are two ways of adding music (or sounds). Either, you make use of the built-in webserver, or you provide links to where the music can be found.
    You can use both methods simoultaneously.


    << Built-in Webserver >>

    With this method, you place your sounds in a specific folder (probably AmbientSpout/Resources/Ambient or AmbientSpout/Resources/EffectLoop).

    For .wav files: Simply drag and drop them in.
    For .ogg files: Make the last 3 characters of the filename the length of the song in seconds. Say the song (or sound) is 1 min 32 long, 1*60sec + 32 = 92.
    You name your file music092.ogg (or whichever other name you like).

    Note that using the webserver will use bandwidth of your server.



    << Providing Links >>

    In AmbientSpout/Resources you can find Ambient.txt. In this file, you can add links to sound files. Add them in this format, one per line:
    <SONGLENGTH> <LINK>

    Example:
    123 http://google.com/song.ogg

    NOTE: The link has to be a non-secure HTTP link, so not https://. I am saying this because DropBox gives https:// links nowadays, just remove the s at the end :).

    Providing links is suggested (instead of webserver) if you fear the upload speed of your server is not the best, or you pay per bandwidth use.

    ------------
    Step 3 - OPTIONAL: Configuring WebServer:
    In case you want to make use of the built-in webserver, you will have to configure it.
    In config.yml you have to add configure these fields:
    HostAdress: Your host address (most likely the sameas the IP of the minecraft server.
    HostPort: The port you want the webserver to run on (the default should be just fine in most cases).
    EnableWebServer: Boolean value, do you want to use the webserver (you probably do, as you are reading this).

    Example:
    HostAdress: myawesomeserver.minecrafthost.com
    HostPort: 5651
    EnableWebServer: true

    >?> How do I know if the webserver is working?
    Everything in the Resources folder is hosted. Because Ambient.txt is always present, try to go to this address:
    http://HostAdress:HostPort/Ambient.txt

    Example:
    http://myawesomeserver.minecrafthost.com:5651/Ambient.txt

    If you see the contents of your Ambient.txt file, then congratulations, it's working! (Note that Ambient.txt may be empty if you didn't add anything to it.)



    "="-key is used to open the overlay by default.

    A collection of posts about the functionality + configuration:

    [quote uid=1858 name="Rahazan" post=46027]Started working on it yesterday, +8 hours in I have the following features fully working:
    - Webserver to host songs built-in (drag n drop your music files in a folder).
    - Song looping.
    - Song fadeout (all-ready for area transition).
    - Song playback & end.
    - Customizable player image.

    If anyone is interested in the current version, I can put it up here with a few instructions..
    Screenshots:

    [​IMG]
    Resources
    [​IMG]
    Configuration
    [​IMG]

    It will automatically find out the length of .wav files, unfortunately this is not possible (without adding an external library that is +100MB big) to do this automatically for .ogg files.
    The easiest solution I found, is to put the duration of the ogg file in the name itself. The last 3 digits indicate the length in seconds.[/quote]

    [quote uid=1858 name="Rahazan" post=46040]For those that would like to try & test what has been implemented so far:
    http://bit.ly/MK1siY

    "="-key is used to open the screen.
    Put .ogg files in AmbientSpout/Resources/Ambient.
    Last 3 characters of ogg filename must be the song length in seconds.

    NOTE: Currently does not save player-data between server resets. So if a player disables music, and the server restarts, and the player starts again, it will be enabled (if DefaultOn is set to true, that is).

    A little bit about the config:
    Delaybetweensongs: that should be pretty clear. Delay between songs advised +30sec
    DelayRandomness: Say you have 10 as delay, and 2 as randomness, the actual delay will be between 8 and 12 seconds.
    FadeOutLength: Pretty straight-forward
    DefaultOn: Do players start with music on when they (first) join?
    MusicAreaEnabled: Not implemented yet, no effect.
    DevMessage: Please keep this set on true, in case I join ;3
    UseBackgroundImage: Whether you want to use a background image. Note: No need to worry about it overlapping the buttons, it will ALWAYS be in the back. Can be jpg or png, and can be transparent. For fullscreen: 427 by 240 pixels.
    BackgroundImage: Link to the image you want to use.
    EnableWebServer: Leave this on true, as it is the only way to have music :p, a list will probably be implemented later (so you can host files elsewhere, like the old AmbientSpout)
    HostAddress: Put your server IP or hostname here.
    HostPort: Pick a port you like ;)

    Yey
    [/quote]
    [quote uid=1858 name="Rahazan" post=46028]Update, sometime in the future. Full rewrite[/quote]
    [quote uid=1858 name="Rahazan" post=46592]http://bit.ly/MK1siY
    New version up!

    EffectLoops are effects that can be added quite easily to a specific place. For example, Seagull sounds in a harbor, waterfall sounds near a waterfall ;). As the name implies, they loop.

    A few more things about new features..
    -One can now add non-webserver sounds by adding lines to a text file, the first number indicating the length of said sound file.
    [​IMG]

    - It now remembers whether or not the user has music enabled.
    - Effectloops are saved in human-readable form, so one can easily edit it/add to it from outside.
    [​IMG]
    In order:
    * ID (string name to be able to recognize said effectloop)
    * Length in seconds
    * URL
    * X coord
    * Y coord
    Z coord
    * Worldname
    * VolumePercent
    * Distance it can be heard from
    * Active (enabled or not)

    - Added metrics
    - Quite a lot of performance improvements..


    << Note, you are going to have to add the effectloops manually for now, haven't finished the GUI for that yet ;). The future permission node: ambientspout.admin > This will already show a button to go to the effectloops management screen.[/quote]


    [quote uid=1858 name="Rahazan" post=46592]http://bit.ly/MK1siY
    New version up!

    EffectLoops are effects that can be added quite easily to a specific place. For example, Seagull sounds in a harbor, waterfall sounds near a waterfall ;). As the name implies, they loop.

    A few more things about new features..
    -One can now add non-webserver sounds by adding lines to a text file, the first number indicating the length of said sound file.
    [​IMG]

    - It now remembers whether or not the user has music enabled.
    - Effectloops are saved in human-readable form, so one can easily edit it/add to it from outside.
    [​IMG]
    In order:
    * ID (string name to be able to recognize said effectloop)
    * Length in seconds
    * URL
    * X coord
    * Y coord
    Z coord
    * Worldname
    * VolumePercent
    * Distance it can be heard from
    * Active (enabled or not)

    - Added metrics
    - Quite a lot of performance improvements..


    << Note, you are going to have to add the effectloops manually for now, haven't finished the GUI for that yet ;). The future permission node: ambientspout.admin > This will already show a button to go to the effectloops management screen.[/quote]


    Show Spoiler
    [quote uid=919 name="Mysteana" post=46600]That sounds *badum tish* really great. Looping ambient sounds have been wanting for a very long time... that'll also cut the file sizes considerably since you don't need a 15+ minute audio streams like with the old discontinued ambient sounds plugin on Bukkit (back when Spout was still BukkitContrib)

    I was wondering if you could possibly extend the parameters to include a 'begin looping' time point so that you can have an 'intro' segment before the sound goes into its loop section. I'm fairly sure at the very least admins with RPG servers with dungeons and towns will love you for that ;)[/quote]

    MusicArea's (to be implemented) will have such a feature if you feel like it's a useful feature :). The current sound effects are really meant for ambient sound EFFECTS, but there is no reason it shouldn't work for some gregorian music in a cathedral ;), or a greensleeves song in a tavern :p.

    Currently, the sound effects work in a certain fashion: The custom sound effect is played for everybody in the server at the same time, to reduce the resources the plugin needs dramatically. A downside to this is that if you join the server, you may not hear the ambient sound effect yet, as you must wait for the next custom sound effect to play for you.

    The way I currently implemented it: If you join a server, and you are not in a sound area, it will play the sound effect anyhow (for you personally). So there is a possibility, that if you just join a server, walk into a different effectloop area, your personal & the global sound effect will overlap.. I have thought of making them per-user, but I think that just won't be worth the resources for that unlikely problem ;).

    Because they are global, I can not make an intro, after which it goes into loop-mode. For MusicArea's this will be possible though. I will try to make them as configurable as is desired by server hosts :).







    Show Spoiler
    AmbientSpout
    <Edit by Moderator: Redacted bit url>

    This plugin adds custom ambient music to your server. Players can turn this on and off. There is also a widget that is toggle-able and the possibility for users to use their own music link. After a song has stopped playing, the next song will start.

    Demonstration of this plugin.


    How to use:
    In config.yml you find a list, which is initially empty, where you enter the following information; the duration of the song and the link to it. The format can only be .ogg or .wav ! You can add as many songs as you like.

    Example config.yml
    Code:
    DebugMode: false
    Ambient:
    - 146 http://dl.google.com/u/JustAnExample.ogg
    - 169 http://dl.google.com/u/JustAnotherExample.ogg
    - 123 http://dl.google.com/u/JustAnotherExampleAgain.ogg
    Dependencies:
    * Spout serverside.
    * SpoutCraft clientside(if the player wants to use this plugin).

    Features:
    * Easy to configure.
    * Lightweight.
    * Permissions-based.
    * Hotkey configurable in SpoutCraft

    Downloads:
    <Edit by Moderator: Redacted bit url>


    Show Spoiler
    How does it help my plugin?
    Plugin-wise, in absolutely no way.

    Then why on Earth would I donate?
    Time and effort was put into this plugin. Maybe this plugin makes your life easier, gets your server more players or simply makes you and the players have a good time.
    How do I donate?
    You can donate through PayPal. If you do not have the means to do so, you can also "donate" by showing your appreciation in the form of a nice comment. These donations and comments keep me motivated. Oh, and it keeps me alive in this overpriced studentroom I live in. It means the world to me.

    Thank you for reading this.




    Changelog
    Version 0.1
    * Initial release.

    Any feedback is more than welcome!
     
    Last edited by a moderator: Feb 20, 2017
  2. Offline

    paully104

    @Rahazan

    Great plugin everything is working as intended, i definitively intend to use this.
    I have some small feature requests regarding theGUI

    If you have the option to move the song bar, so users like myself can move it to set under MCMMO xp bar default position. Also can it display the Song Name? It just displays will update next song for me.

    Might possible just be me however holding down the backspace in gui is glitchy for deleting the enter the custom music spot. Throw in a clear button and i will <3 you forever. Overall great job!!
     
  3. Offline

    BioRage

    You should post this on www.GetSpout.org
     
  4. Offline

    moose517

    you have example songs you would recommend as well? i kinda liked the sounds of hte one in your vid. Might consider putting this on my server as i 've always wanted more music in game.
     
  5. Offline

    titog176

    how do you bring the menu up?

    i dont hear the music...

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 22, 2016
  6. Offline

    Rahazan

    Hey there, glad you like it. The movable music widget is certainly a feature I will look into at a later point in time, I currently do not have access to the source code as that is stored on my desktop computer. I could make it display the song name, yeah, but only the filename which would then have to be the songname.

    As for the backspace problem, that's a feature for the spout devs to fix :).

    Yeah, I should.. I'll have to create an account there first.
    Hey there, I have a few "artists'', mostly orchestra's, I can recommend;
    - Two steps from hell
    - Future world music
    - Epic score
    - Immediate music
    Game music from RPG games, like Guild Wars, Fable, Skyrim..

    The reason I didn't add a default list is because the songs used in the video have royalties, they are not in the public domain. If my dropbox account were to have a few thousand downloads on .ogg files it would make me seem like the spreader of music that is not in my possession.. :/

    If you would just read the starting post, you would most likely have found the answer to these two questions. The list of music is initially empty, you must make sure you do not have music muted in spoutcraft, you must ensure both the server is running spout and you are running spoutcraft, ensure the extensions of the music files are either .wav or .ogg
    etc etc
     
  7. Offline

    odielag

    ... what's the permissions nodes?
     
  8. Offline

    Rahazan

    There currently are none.

    @NuclearW Tagging you to see if this plugin meets the standards for approval. It'll certainly give Spout some more love.

    Oh, and if you feel like judging some more threads :x BreakTime DamageCooldown DeathRay MineKart
    Thank you!
     
    odielag likes this.
  9. Offline

    NuclearW

    Looks good to me, just please replace that bitly link as soon as you can.

    Moved to releases

    Okay, I can do those too.
     
  10. Offline

    shauwk

    cool im gona try this !

    its awesome


    you should make an option to have the music automatic upon join instead of having to click hotkey each time

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 22, 2016
  11. Offline

    GoldenX

    Is it possible to add a region option ? The music starts automatically when entering into a defined region. It would be epic !
     
  12. Offline

    Rahazan

    This was once implemented, but it required sql access for the regions, that's why I stripped it down. I -may- look into it later.
     
  13. Offline

    Arbiter3

    I'm not understanding how to add .ogg files to the config.yml.
    I add the songs in, go to the menu to start, and when I click play song/next, it says playing ambient 1-(Amount of songs added) but I do not hear music.
     
  14. Offline

    Rahazan

    Ensure music/sound isn't muted ingame, it sometimes randomly does..
     
  15. Offline

    Schlumpf

    Hello, this looks really nice :)
    I agree with GoldenX, the feature to play region music for example when you run into a region called 1 that you can set if a player is in this region that a little "disco" starts with songs were you can set in a config and then they are played randomly would be epic :p This feature would be very nice! So we could make with the disco wool color changer a ingame disco :)
    Another cool feature would be to include a webradio if this is possible at the moment with spout :)
    Maybe you can look here for some code you need:
    RyveMusic (inactive)
     
  16. Offline

    KlaasT

    Very nice plugin and I would like to test it. Does the plugin cache the music on the players computer so the songs won't have to be downloaded everytime it is played?
     
  17. Offline

    FatMiners

    Rahazan
    sorry man but its still not working for me ill show you my config:
    DebugMode: true
    Ambient:
    - 162 file:///C:/Users/Gogog/Desktop/369-The-Adventure-Music-Track.wav
    P.S. im using a home made html page
     
  18. Offline

    Aphantas

    I think the slashes are the wrong way round. I used that format as a template and it worked when I swapped all the / with \ .
     
  19. Offline

    Aphantas

    I am really enjoying this plugin. It has increased my enjoyment of Minecraft immensely. However would it possible to to make the mod restrict some songs to certain events?
    For example have it so that some songs will only be played at night, or have some songs only available when below a certain y-coordinate.
     
  20. Offline

    Silial

    I can't seem to find the Spout server side jar file, if it even is a jar at all...
    Currently, in my plugins folder, I have this plugin and Spoutcraft.jar (serverside download) from their site. Is this incorrect? If so, would you mind directing me to the right place?
     
  21. Offline

    Wulfspider

    Spoutcraft is the client and the Spoutcraft.jar is used to launch the client, it does not go on the server. You only need SpoutPlugin in your CraftBukkit plugins folder. http://spout.in/plugin. You run the Spoutcraft.jar and use it to play on the server.
     
  22. Offline

    AgentKid

    Works great except in my tests I've found that jumping cuts off the music entirely. Is this a bug in your plugin, spoutcraft, or am I messing up somewhere?
     
  23. Offline

    Devonia44

    I've converted an mp3 file to an .ogg file. When I open it in a music player it sounds good, but can you explain a little bit more?
    - With the duration of the song, you mean how many seconds?
    - Where can I upload the song that I can get a link to an .ogg file instead of a 'free download' url? Because I've tried several website for uploading this .ogg file but I always get an download button or embed/html code....

    please provide us with detailed explanations on how to get songs on the internet, dont only show us how it looks/sounds in game....
     
  24. Offline

    ahotes09

    Hey does everyone need spoutcraft to hear and see the music thing on this???
     
  25. Offline

    ricflair71

    Is this going to be updated to support 1.2.3 / R6? I see Spout itself has a dev out that supports 1.2.3
    Is it currently in progress? I see the last update was a while back.. Is this still an updated plugin?
    Thank you.
    Ron
     
  26. Offline

    OnkelDom

    great! but it really would be awesome epic if you could link this to regions, like lets say towny regions, or the like, to make "them" play the songs.or...does another plugin support or grant a feature like that already?
     
  27. Update ? *w*
    Maybe you could release the source so I can do it myself ? *w*
     
  28. Offline

    Ghare

    Please update!
     
  29. Offline

    Rahazan

    Astaen
    Ghare
    ricflair71

    Hey everybody,

    I would like to inform all of you that I am no longer active as a developer for anything Minecraft related, so don't expect an update coming from my behalf. Currently university takes too much of my time to be actively developing anything in my spare time..
    At university I was taught how to properly program in a neat, documented way. Whenever I look at the source of this plugin it scares me a little, as I was a Java-newbie at the time. That's the reason the source is not available at this moment, also, it is not on the laptop I am currently working on. It's on my desktop computer at University, if you really, really want this source, send me a PM and I will send it to you when I am able to do so.

    Yours truly,
    Rahazan
     
  30. Offline

    kagecookeh

    Please Update D:<

    *edit* i just loaded the message above D:*
     

Share This Page