LCARS V47.7.3 Update Plans

So, there’s been a lot of chatter on the PlDyn Discord wondering when LCARS was going to get an update. Shockingly enough, the only function that ever gets used over there was the music player. So…why tinker with something that isn’t necessarily broke?

The thought occured to me one night after logging off to hit the hay, but about 30 seconds after I’d disconnected, a new idea up and smacked me in the face. If people can play YouTube playlists on LCARS/Fishsticks, what if they could skip that step entirely? What if the system had an inter-subroutine module that could allow users to build their own personal playlists within the bot, play them back, add, rename, etc.? I presented the thought to some people and they did nothing but concur with me, so guess what; that’s the next update – coming to LCARS before Fishsticks (that’s new).

Right, so planned changes:

  • All changes are being conducted inside the !play command
    • New parameter: playlist – toggles command from “play mode” to “edit playlist mode” (these modes don’t actually exist, we’re just going to call them that for the sake of understanding.
      • new [name] <flags>: Creates a new playlist.json inside the bot. Stored in a directory specific to the command issuer such that each playlist is designed for each person. The name of the playlist is simply the word that the user specified as the name parameter. (This is manipulable: adding underscores (_) or hyphens or whatnot can signify spaces, but throwing a space into the command will identify it as a new parameter.
        • a <c, current, link>: flag, signifies “add”. the following parameter will be checked for the specified types. ‘c’ or ‘current’ would signify adding the current song to the newly created playlist. A link would take the following link and attempt to add it to the playlist. Adding a link however would potentially skip the bot check to see if it would actually play or not.
      • add [name] <flags>: Used to add a new song to the playlist. The song is added to the playlist from the name parameter.
        • c, current: adds the currently playing song to the playlist
        • <YouTube link>: Adds the specified link to the playlist.
        • <video name>: Will initiate a search for the specified video name, just like searching for a video to play. The returned result is added to the playlist instead of being played.
      • remove [name] <flags>: Used to remove an entry from the playlist or remove the playlist all together.
        • No flags remove the playlist from the bot.
        • c, current: removes the currently playing song if applicable
        • <link>: removes the entry matching the link specified.
        • <name>: removed the entry matching the video name specified.
      • play [name]: Plays the playlist with the specified name. Sifts through all the entries of the playlist and adds them to a queue.
      • download / dl [name]: takes the specified playlist and pushes it to the channel where the command was issued – if possible.
        • Potential failures include: namely a playlist file so full of entries that the bot literally cannot upload it due to Discord’s file size limit.

These are simply the first implementation of the playlist system for PlDyn 2nd Gen bots. Fishsticks will receive this system later once it is finalized and ironed out on LCARS.

That’s all for this update. We’ll see how this progresses into actual features.