Fishsticks V16 Update Plans


So there’s been a lot of chatter concerning the CC meeting plans and what Fishsticks should be able to do concerning the advent of new channels and systems. With these new features in the CC Discord, new developments are bound to occur in Fishsticks’ internal systems. This update post will be covering, hopefully with detail, the various systems that will be implemented and those that I want to implement.

  • Update V16
    • Continuation of !bible command
      • This has been sitting a while, I’m anxious to get it working. As I continue investigating the implementation of this command, I’m noting more sophisticated code that will need to be present. Mainly because the navigation of the Bible can be a fairly complex thing to sift through concerning the various means people will use. Namely searching, specifying one verse or many verses, what book/chapter it came from, crossing multiple books/chapters, etc.
      • Explanation of these internal systems may take a bit of time and may not happen until after I’ve gotten something working.
    • Implementation of Game Roles
      • CC users voted to start the use of game roles that will be managed and automated by Fishsticks. These ramifications are as follows concerning role creation, ping statistics, report generation, and role lifetime.
      • Expected syntax: !role [join/vote/create/list] [roleName] [relatedGame] [divisionStruct] [roleDescription]
      • Role Listing:
        • list param: Sifts through stored role keys and lists the names, games, and whether or not the role is official or not. If not, lists the number of votes.
      • Role Creation:
        • Role creation is dependent on the application put in by a user via a command. Fishsticks will process the command and spit out a best designed result that other users can vote on to make official.
        • Expected command parameters: create, roleName, relatedGame, divisionStuct, roleDescription
          • roleName specifies the…role’s name…what shows up as the role on people’s profiles, etc.
          • relatedGame ties the role to a specific game title. Since the role’s name could be different from the game associated with it. (ie, Role: Protector – Game: Starbound or Role: Mercenary: – Game: TF2)
          • divisionStruct: Since divisions are now a social construct, upon creation, a role must specify an existing or new division. The divisions will be listed if the specified division doesnt exist, and the user will be flagged to respond whether or not a new construct should be created.
          • roleDescription: Describe the new role!
        • Assuming the application can be processed successfully, 4 other users will be required to vote for the role prior to it becoming official.
      • Role Voting
        • vote param with a roleName specifier. If the role specified is not official, permits you to vote for the specified role such that you will contribute to the officializing of the role.
      • Role Joining
        • Simple, role param is simply the role you wish to join.
    • Codex Implementation
      • I personally, have been waiting to get this rolling for a while and this is the perfect time to do it. The Codex is simply a dictionary of the commands Fishsticks has. Handled via a handler inside the command, the system searches for the id specified and prints an embed of the help including the ID, parameters, any exceptions, and a description of the command.
      • Expected syntax: !codex [commandID]
        • commandID: the ID of the command to get help for. ie: help, play, tempch
    • Ping/Message Statistics and Reports
      • With the introduction of game roles to the subroutines, Fishsticks will need to start logging last activity sort of things so that we can see how “active” a game role is. Along with this, I’m going to institute a command status system similar to the approach LCARS47 is taking:
  • Aesthetics Changes
    • Embeds
      • Fishsticks will utilize a new system called embedBuilder to construct the embeds necessary for the Word of the Day command. This system may be instituted in a more general fashion to construct embeds for more general purpose commands.
      • Some embeds will be re-written to start displaying as the command issuer instead of Fishsticks. This will present a more professional/utilitarian side of Fishsticks instead of nonstop sass.

This update plans post may change/update based on what gets included later, or changes might just be revealed at update release time. Stay tuned to the blog for updates. 😀