Skip to content
 
 

Repository files navigation

Install

  • Hydra itself:
    • (might need) .NET 10
    • download hydra from releases
    • run project (play button top right)
  • Add UT support (circle tracker):
    • make sure you have the ap launcher installed
    • grab universal tracker and place it in your custom worlds folder
    • make sure that in hydra Settings -> Main Settings that your archipelago directory is set
    • Hydra should auto download/update the HydraUTBridge.apworld when needed

Support SW_CreeperKing and hydra's development on Patreon

Features

  • Connections
    • Save Multiworld address, ports, passwords and change b/t them at will
      • Contains slot name overrides
      • Contains slot password overrides
      • Caches current/max check counts
      • Caches hints
      • Caches item received history
      • Supports multiple DeathLink groups
      • Switching multiworlds will log out of all connected slots
    • Can delete/edit/set/clear the cache of a multiworld
    • Save Slot names to be used across worlds
      • Saves slot name
      • Can set a slot name override for a multiworld
      • Can set a slot password for a multiworld
      • Can set a game portrait image
      • Can set a list of programs that can ran on connect (very untested)
        • WARNING: if connection gets dropped it will close the games attached to it
        • WARNING: some applications might not close if hydra crashes
        • {{slot}} => slot name
        • {{add}} => address
        • {{port}} => port
        • {{pass}} => password
        • {{ap}} => path to ap
        • if {{mw}} is at the front then the process will only close when you disconnect all slots from the multiworld
        • if {{hydra}} is at the front then the process will only close when hydra closes
        • this runs using C#'s Process
        • ex: {{ap}}/ArchipelagoLauncherDebug.exe "Universal Tracker" -- --name {{slot}} --connect {{add}}:{{port}}
          • (UT is special as it accepts a slot name, by default AP doesn't)
        • ex: {{ap}}/ArchipelagoLauncherDebug.exe "other client" -- --connect {{add}}:{{port}} --password {{pass}}
        • ex: {{ap}}/ArchipelagoLauncher "Universal Tracker" archipelago://{{slot}}:{{pass}}@{{add}}:{{port}}
        • for more info, in the terminal launch ArchipelagoLauncherDebug.exe with -h or --h
    • Change the scale of the slot name text and portrait
    • Can have up to 7 slots connected at a time
      • The first Client that connects is designated as the 'Leader' client
      • Can change the leader client
    • On connection, slots are separated based on if the slot name appears in the multiworld or not
  • Clients
    • Text Client
      • Messages are separated into different categories (all, chat, item, hint, server)
      • Any specific category can be popped out into a popup window (top right)
      • Settings for showing specific kinds of items in the item log (removes anything not matching)
      • Send messages (messages are sent from the current 'Leader' client)
      • Emote menu to view and write emotes by clicking on them
      • Can Click on any message to copy it, hint messages take the hint copy message format
      • Can change how some messages get displayed in the settings -> text client
  • Hint Table
    • Can sort hints based on multiple columns
    • Sort order is saved
    • Can view cached hints from other slots (can change: all/logged in slots/'leader' only slot)
    • Can Change visibility settings for specific kinds of hints (found/priority/unspecified/no priority/avoid)
    • Can Hide/Show specific hints
    • Can copy a hint into your clipboard with a click of a button
    • Can change how a hint gets copied in the settings -> hints
  • Utilities
    • Item Filter
      • Clicking on an item (almost anywhere) or the Add Filter button in the settings -> Item Filter opens up a popup to add an item filter
      • If an item was clicked, it will autofill the information
      • Can show/hide items filtered from the Item Log in the text client
      • Can show/hide items filtered from the Hint Table
      • Can mark an item as special
        • Special Items are treated higher than progression items and can have their own colors
    • Circle Tracker
      • Uses Universal Tracker to display locations in order based on the order of items received for any connected slot
      • Has Next Progression support (calculates after all the circles are done)
      • Disclaimer: this is NOT a sphere tracker
      • Displays any hinted items next to the location
      • Moves priority hinted locations to the top of a circle
      • Displays what the new item received for each circle
      • Ability to show/hide circles that have no locations
      • Ability to show/hode circles beyond the first one that has locations
      • Can have multiple circle trackers opened with multiple slots
      • Any slot's tracker can be popped out into a popup window (top right)
    • Map Tracker
      • Ability to render checks on a map
      • Ability to map entrances
      • Has auto tabbing support
      • For more, advanced info visit the Map Tracker/Maker Section
    • Displays inventory (view an item to see who sent you those items)
    • Has sorting and some filtering capabilities
    • Can view the history of all items received (based on the order you received them)
    • View all items in your game, clicking on one gives you a hint prompt
    • View all missing locations in your game, click on one gives you a hint location prompt
  • Players
    • Can view every player in the multiworld as well as their status (connected/not connected/goaled)
    • Can display check counts when !status is used (there is a button that does !status for you)
    • Displays a fading + when a slot checks a location
    • Hovering hover a name will show their game
    • Add a hydra specific Alias
    • Add a copy specific Alias that only appears when copying a message
    • Can change how the above aliases behave when copying
  • Misc Settings/Features
    • Ability to change the default font
      • Accepted formats: *.ttf, *.ttc, *.otf, *.otc, *.woff, *.woff2, *.pfb, *.pfm
    • Change Color Themes
    • Import/Export Color themes from/to clipboard
    • Set Background image and alpha (transparency/opacity)
      • Accepted formats: *.png, *.jpg, *.bmp, *.exr, *.jpeg, *.tga, *.svg, *.svgz
    • Change some Font Sizes
    • Discord Rich Presence
  • Autoupdater
    • Requires internet (duh)
    • Might be buggy/unstable
    • If there are new updates, it will print to the console

Extra Info

  • Portable Functionality
    • Rename HydraTextClient to HydraTextClient_Portable to enable
    • forces all save data to be same folder as the executable
    • disables custom assets loading
  • Custom Assets image overrides
    • this feature allows you to override/add item images for a game's items
    • the format follows the same as Custom Assets does so hydra can be used to test them before merging
    • Hydra's format is less restrictive than Custom Assets, so be mindful
    • Format (hydra is non-case-sensitive, Custom Assets IS case-sensitive):
      • Game Name (folder)
        • in the folder you have images that have the item name
        • Custom Assets item formatting Game Name_Item Name
        • aliases.json, allows you to assign multiple items to 1 image (not required)
        • game name.png will act as a default image for all the game's items
    • There is a button to reload images in the settings
  • Text Client: How Item Log and Hint Log filter deletes items
    • If an item/hint is blocked by your settings/filters they will not be added at all
    • If a setting/filter is updated, any messages in the text client will be hidden/reshown
    • If the message history is full the oldest hidden messages will be deleted first
      • If there are no hidden messages, the oldest message will then be deleted
  • Game Portraits
    • Images saved to the game portrait directory (in settings -> theme)
    • Uses the name of the image as the portrait/game name
    • Need to click the reload button or reopen hydra for them to reload
  • Emotes/Emojis
    • Images saved to the emote directory (in settings -> theme)
    • Uses the name of the image as the emote name
    • IMPORTANT: it is recommended to simplify your emote names (so everyone's can match to a degree)
      • foxsmile -> smile
      • foxpog -> pog
    • An emote is written as {{e;[emote name]}}
    • Emotes you do not have an image for are shown as [emote name]
  • Message effects
    • {{e;[emote name]}} displays an emote (hovering over it will show the image in its full resolution)
    • {{player;[player slot]}} displays a reference to the player (hover effects included)
    • {{item;``[game name]``;``[item name]``}} displays a reference to an item, has support for Custom Assets
    • {{item;``[game name]``;``[item name]``;[item flag]}} like the above but adds on the item type
      • 0: Normal
      • 1: Progression
      • 2: Useful
      • 4: Trap
    • {{loc;[location id];[player slot]}} displays a location, location id is specific to the apworld
    • {{entrance;[entrance text]}} displays the text as an entrance
    • {{found}}/{{notfound}} displays hint found/not found text

Map Tracker/Maker

  • For devs implementing auto tabbing
  • For those who don't want to use the UI
    • The folder of the pack should be named the game's name as it appears in ap

About

Fork of the Archipelago Multislot Text Client for the Arch Linux AUR

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages