Skip to content

CatsaCode/AnyText

Repository files navigation

AnyText

Change any text in the game through a list of find and replace instructions.

Known Bugs

  • Replacing "practice" will decapitalize many buttons
  • Replacing a menu banner will decapitalize all menu banners
  • Creating many rows will make the buttons lag

v1.1.0 To-Do

  • Create FindReplaceEntry class
  • Create Config class
  • Load config files
  • Create TextManager component to handle text state
  • Create TextIdentifier to add and remove TextManager component
  • Load config files in specific order
  • Set up AnyTextFlowCoordinator
  • Set up ConfigListViewController
  • Display each config as a row
  • Set up EntryListViewController
  • Display each entry as a row
    • Add input field for find string
    • Add input field for replace string
    • Add button to open find settings
    • Add button to open replace settings
    • Add buttons to reorder entry
    • Add button to remove entry
  • Add modal for find settings
  • Add dropdown for find algorithm
  • Add toggle for accumulation
  • Add modal for replace settings
  • Add toggles to configs
  • Add button to create new config
  • Add button to create new entry
  • Add RegEx (then use it for everything)
  • Add find with match case
  • Add replace all or partial
  • Add replace text style settings
  • Add position offset
  • Add proper icons to buttons
  • Fix large text being hidden behind ellipsis (Tried a bunch of text options, TMPro doesn't seem to account for text overflow when right aligned) (Technically not an issue with the system keyboard)
  • Stop text identification on AnyText-related pieces of text
  • Trigger text updates upon exiting AnyText menu
  • Add hover hints
  • Upgrade v1.0.1 configs
  • Investigate private System.Collections.IEnumerator global::UIKeyboardManager.SummonSystemKeyboardAndWaitForResponse(HMUI.InputFieldView input)
    • Note that the game needs to be repatched with oculus.software.overlay_keyboard but IT DOES WORK HECK YEAAAHHH
    • If user doesn't have the permission, open a webpage on how to add it
  • Load fonts
  • Add font dropdown
  • Add info board

Known Bugs

  • Crash upon opening the menu after a soft restart
  • If the play button font is replaced, BSML will adopt the font in its template. Perhaps ask BSML to generate the template before loading the fonts. Or if the TextManager is being cloned with the template, figure out why it's not being removed and restoring the text

Needs Testing

The current action builds will log every piece of text that is viewed. Disable CrashReporter logs and do not share the log if you believe it may contain sensitive data.

  • Upgrading config from v1.0.1 needs stress testing
  • Manually editing config shouldn't cause any crashes
  • Editing configs should restore any text that no longer needs replacing
  • General software testing (Throw in stupid configs and try to break it. Attempt what I haven't planned for)

Build Instructions

Use qpm s build to build Same goes for qpm s copy and qpm s qmod

Credits

About

Change any text in the game

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •