You are viewing a potentially older version of this package. View all versions.
Marioalexsan-AtlyssDiscordRichPresence-1.4.1 icon

AtlyssDiscordRichPresence

Adds Discord Rich Presence to ATLYSS.

Date uploaded 2 months ago
Version 1.4.1
Download link Marioalexsan-AtlyssDiscordRichPresence-1.4.1.zip
Downloads 2681
Dependency string Marioalexsan-AtlyssDiscordRichPresence-1.4.1

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
Nessie-EasySettings-1.1.8 icon
Nessie-EasySettings

A mod API for easily adding options to the settings menu.

Preferred version: 1.1.8

README

Atlyss Discord Rich Presence

Enables Discord Rich Presence support for ATLYSS.

Shows various stats, such as:

  • Your current status (in menu, exploring a zone, etc.)
    • Main menu
    • Character creation
    • World areas
    • Fights in dungeons
    • Boss fights (including world bosses such as Slime Diva)
  • Your character and their current state
  • Whenever you're in singleplayer or multiplayer, and details of the server
  • Elapsed playtime

Also allows you to:

  • Customize the texts displayed by the integration, and select between available presets
  • Send invites for the ATLYSS server you're in to people who also have the mod (either by launching or joining while in-game)
  • Have people who also have the mod be able to join your ATLYSS server (either by launching or joining while in-game)

Configuration

You can configure the displayed strings via the configuration file in BepInEx/config/Marioalexsan.AtlyssDiscordRichPresence.cfg.

Within these strings, you can use various variables to display stats, such as {PLAYERNAME} exploring {WORLDAREA} => Chip exploring Sanctum. You can use this to display other stats, such as Health percentage instead of exact health numbers.

The available variables are as follows:

  • HP - Player health
  • MAXHP - Player maximum health
  • HPPCT - Player health pecentage (0-100)
  • MP - Player mana
  • MAXMP - Player maximum mana
  • MPPCT - Player mana pecentage (0-100)
  • SP - Player stamina
  • MAXSP - Player mximum stamina
  • SPPCT - Player stamina pecentage (0-100)
  • LVL - Player level
  • EXP - Player experience
  • EXPNEXT - Player max experience (i.e. the experience required to level up)
  • EXPPCT - Player experience percentage (0-100)
  • PLAYERNAME - Player display name
  • PLAYERRACE - Player race ("Poon", etc.)
  • PLAYERCLASS - Player class ("Novice", "Fighter", etc.)
  • PLAYERRACEANDCLASS - Displays both race and class together ("Poon Novice", etc.)
  • WORLDAREA - Current world area ("Sanctum", etc.)
  • BOSSNAME - Current boss name ("Lord Kaluuz", etc.)
  • SERVERNAME - The server you're playing on
  • PLAYERS - The number of players in the server you're on
  • MAXPLAYERS - The maximum number of players in the server you're on
  • CHARCREATENAME - The name of the current character in the Character Creation screen
  • CHARCREATERACE - The race of the current character in the Character Creation screen

You can also further configure how player races (PLAYERRACE) and player classes (PLAYERCLASS) are displayed by configuring variables such as RacePoon.

Linux Compatibility

To play with this mod on Linux, you'll need to download and use rpc-bridge to allow for Rich Presence support.

In ATLYSS's Steam settings, General tab, Launch options, you'll have to enter the following text, where /path/to/bridge.sh is the path to the downloaded script:

/path/to/bridge.sh %command%

You will also have to make bridge.sh executable by opening a terminal in the containing folder, and running the following command:

chmod +x bridge.sh

Support for launching Atlyss and joining servers via "Join Game" is experimental due to requiring workarounds for Proton. Some things to keep in mind:

  • The mod will create an entry under ~/.local/share/applications/discord-{AppId}.desktop to store a launch option. This is likely going to appear as "Atlyss" in your desktop environment's application menu.
  • The mod will backup your ~/.config/mimeapps.list configuration into ~/.config/mimeapps.list.atlyssbackup, then manually edit it to include the necessary MIME associations for Discord to be able to launch the game

Mod Compatibility

AtlyssDiscordRichPresence targets the following game versions and mods:

  • ATLYSS 72025.a8
  • Nessie's EasySettings 1.1.8 (optional dependency used for configuration)

Compatibility with other game versions and mods is not guaranteed, especially for updates with major changes.

Notes

  • When changing your BepInEx install path (for example by switching r2modman profiles), or changing your game install path, you have to relaunch the modded game outside of Discord so that its launch information is updated correctly

Gallery

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.4.1] - 2025-Aug-04

Fixed

  • Fixed a memory usage issue where tracked aggro creeps would never get cleared from their list, or would add multiple copies of the same creep
  • The mod now explicitly packages System.Runtime.CompilerServices.Unsafe version 6.x (up from 4.x) to prevent issues with other mods

Changed

  • Heavily reduced the amount of spam coming from DiscordRPC logging (especially related to "Failed connections" where it would spam 4 messages each second)

[1.4.0] - 2025-Aug-04

Added

  • The mod now supports launching modded Atlyss from the "Join Game" button in Discord. You will be sent to the character selection / server join screen as soon as the main menu is loaded.
    • Previously it only supported joining games while the game was already open
    • You will need to launch Atlyss using this mod at least once for Discord to be able to launch it by itself afterward
    • If you change your BepInEx installation path (using r2modman profiles), you will need to launch the game at least once for Discord to receive the updated profile information
    • On Windows, this is implemented using a Registry key
    • On Linux, this is implemented using xdg-mime + .desktop entries. Additionally, your old ~/.config/mimeapps.list is backed up under ~/.config/mimeapps.list.atlyssbackup

Fixed

  • Fixed an issue introduced by v1.3.0 where the custom preset wouldn't work properly

[1.3.0] - 2025-Jul-29

Added

  • Added support for boss names with the BOSSNAME variable
    • Also added boss names to the boss fight state text
    • Custom presets need to be updated to use the new boss names
  • Added basic support for world map boss fights, such as Slime Diva
    • Future / modded bosses will be considered as a boss fight if _playMapInstanceActionMusic is set to true, and Network_aggroedEntity is set to a valid entity
  • Added support for character creation display state
    • It will show the name and race of the character you're creating using CHARCREATENAME and CHARCREATERACE variables
  • Added support for a post-dungeon boss state display
  • Added support for class tiers (Paladin, Bishop, Rogue, etc.)
    • They act as separate classes and will be shown with PLAYERCLASS
  • Added three presets
    • Detailed - same as Default, but shows more player stats by default
    • DetailedPercentages - same as Detailed, but uses percentage values instead
    • Pon - same as Default, but player race names are funnier

Fixed

  • Fixed an issue with boss fight state persisting after leaving the dungeon
  • World zone type is now determined based on zone type instead of being hardcoded for each vanilla zone
    • This should allow modded maps to display their type correctly

[1.2.0] - 2025-May-02

Added

  • Added support for EasySettings, which can be used to toggle some features while in-game
  • You can now select between three presets for Rich Presence text: Custom, Default and Emojis
    • Custom uses the custom texts defined in the config file
    • Default is a the default text preset used for the initial values in Custom
    • Emojis is a preset that replaces most of the words with emojis
  • Added configuration options for race and class name variables ({PLAYERRACE} and {PLAYERCLASS}), allowing you to customize how races are displayed
    • For example, you could change "Poon" to display "funny rabbit thing" instead
  • Added a configuration option for logs coming from the Discord RPC integration
  • You can now send game server invites to each other
    • To be able to join a server, both users must be in-game, and both of them must have the mod for it to function correctly
    • You can configure whenever the join button is available by using the ServerJoinSetting config option. The default allows joining Public and Friends games
    • Currently it's not possible to join games without both players having the mod, or while the game is not open for the person accepting an invite

Changed

  • Changed presence update interval to 3 seconds (up from 1)
    • Hopefully should smooth out updates and reduce rate limiting issues

Fixed

  • Fixed idle state text not appearing when the player is idle for some time

[1.1.0] - 2024-Dec-03

Added

  • You can now customize the strings displayed via the mod's configuration file (BepInEx/config/Marioalexsan.AtlyssDiscordRichPresence.cfg)
  • Added small icons for dungeons, arenas, field zones and safe zones
  • Added custom big icons for singleplayer and multiplayer
  • Added display for server name and player count when playing in multiplayer

Changed

  • Modified the default display of strings so that it's more compact

[1.0.0] - 2024-Nov-28

Changed

Initial mod release