TUNIC
0 of 0

File information

Last updated

Original upload

Created by

RisingStar111

Uploaded by

RisingStar111

Virus scan

Safe to use

Tags for this mod

About this mod

Adds a whole heap of useful debug related tools, a near functional tas programming and a bunch of other random things

Permissions and credits
Changelogs
Things in this mod are not final, and especially the tas/savestates are liable to break/update. If you have any ideas of something to add or changes to existing features, you can find me on the tunic speedrunning discord (username RisingStar111, general/dms are fine)

Installation (yes copied from SilentDestroyer's rando. For a more detailed guide refer to the speedrun.com guide for the debug mod or ask on the speedrun discord)
  • Must use the latest PC version of Tunic. The mod has been tested on the Steam and PC Game Pass version, but should work on any PC version.
  • Go to https://builds.bepinex.dev/projects/bepinex_be and find Artifact #572 and download the "BepInEx Unity (IL2CPP) for Windows (x64) games" build. (The mod is currently NOT compatible with newer BepInEx builds so #572 is recommended. Here is a direct link for the correct download: https://builds.bepinex.dev/projects/bepinex_be/572/BepInEx_UnityIL2CPP_x64_9c2b17f_6.0.0-be.572.zip)
  • Extract the zip folder into your game's install directory (For example: C:\Program Files (x86)\Steam\steamapps\common\TUNIC)
    • For the PC Game Pass version, extract the zip into the "Content" folder, i.e. C:\XboxGames\Tunic\Content
  • Launch the game and close it. This will finalize the BepInEx installation.
  • Download the TunicRandomizer.dll file and copy it into BepInEx/plugins under your game's install directory
  • Launch the game again and start a new game!

Included currently [Hotkey], some are on by default, some aren't:
 Debug/QOL tools:
  General information (Player position/velocity, if you can do actions, hp/mp/stamina, dpad inputs, scene name)
  Save states (Save [Y], Load [U], permanent ones accessed via tas. Currently only saves via normal savefiles and moves the player, so no boss reloading, inventory preloading (tried but not working), transform loading or animation loading)
  Camera controls (both orbiting [C] and completely free [V], movement with [Arrow Keys, Q, E] and rotation [SHIFT + movement], reset with [B])
  Hitbox and trigger visualisations, including most enemy aggro stuff
  Mostly functional TASing (see below)
  Pausing [G]/Frame advance[F]/Rng consistency (all part of 'override update loop', rng may or may not be consistent)
  Possible dash locations
  'Quick access' 'customizable' warps (format 'Display name|Scene name|Id')
  Ranges for dpad spell inputs
  Teleporting [Left click]
  Enable/disable laurels [B]
  Hiding objects [Left click]
  Enable/disable the ingame hud
  Markers (one follows mouse, use [Right click] to place/move the other)
  Option to use actual file name on the load select (instead of File #1, etc)
  Infinite mana
 Silly stuff:
  Full control over player colours
  Click to change the colour of most things
  Clone gun (very buggy): choose target [Right click], clone chosen [Shift + Right click]

The tas:
  (Re)start [R], stop [Z], hotload [T] (for updating the tas without restarting, expect strange behaviour)
  Reads from TAS.txt located in the TASes folder (hopefully made for you in the root of the game's SAVES folder, if not you can add it manually - same goes for TAS_savestates)
  Reads line by line, format of [command] [frames/arguments] with spaces between [ ] (no more hotkeys from this point)
  Rebinding of keys is not necessary
  Commands are not case sensitive (lowercase i and uppercase L used here to differentiate)
  Currently supported: (x is an integer, buttons can be combined with ',' eg u,r,i 20 would press and hold [up arrow], [right arrow] and [interact/dodge] for 20 frames)
  Buttons:
   Movement- [U,D,L,R] [x]
   Interact/Roll- [i] [x]
   Item - [i1,i2,i3] [x]
   Flask- [H] [x]
   Shield - [S] [x]
   Focus - [F] [x]
   Toggle focus - [TF] [x]
   Inventory - [Q] [x]
   Manual - [M] [x]
   Dpad - [DU,DD,DL,DR] [x]
   Navigation (inventory/menus) - [NU,ND,NL,NR] [x]
   Manual navigation (pages, not needed?) - [PP,NP] [x]
   Confirm - [CONFIRM] [x]
   Cancel - [CANCEL] [x]
   Back - [BACK] [x]
   PAUSE - [PAUSE] [x]
  Special:
   Loops - Start loops with [LOOP] [x] (sets up to loop x times) and end them with [ENDLOOP] ([LOOPEND] also works)
   RNG - Set seed immediately with [SETSEED] [x] or queue it to be set on the next load with [SETSEEDFORLOAD] [x]
   Load gates - Not needed currently? Pause all action until the game has loaded with [WAITFORLOAD]
   Load trigger - Not needed currently? Using [SETSKIPTOTRIGGERONLOAD] will cause the tas to immediately skip to the next [LOADTRIGGER] line when a load happens
   Savestate - Save a state with [SAVESTATE],['name of state'] and load them with [LOADSTATE],['name of state'] - Note that these are seperated by a comma not a space (praise unholy jank)
   Teleport - [SETPOS] [X Pos] [Y Pos] [Z Pso] (x, y and z pos are floats)
   Push the player - [ADDPUSH] [X Amount] [Y Amount] [Z Amount] (floats once again)
   Close popups - Popups (like finding an item) last a different amount of time depending on factors i haven't worked out yet, maybe - [WAITANDPOPMODE] will automatically close the popup on the first frame that the player would be able to close it - might/might not be necessary but it is convenient
   Inventory preloading - set the currently selected (non offering) inventory slot with [SETINVSELECTITEM],[inventory slot] - note comma seperated, and idk what most of the inventory slots are called :)
   Freezing the game - [BREAK] will pause the game if overriding is enabled, untested
   Line manipulation - [JUMPTOLINE] [x] will immediately move the tas to line x
   Freeze RNG - [LOCKSEED] [x] will cause rng to be set to x every frame, mostly locking it to that value