Skip to content

v0.8.1.0-beta

Compare
Choose a tag to compare
@valarnin valarnin released this 03 Apr 00:42
· 27 commits to master since this release

Release v0.8.1.0-beta

New Features:

  • Lots of configuration values
  • Search for an unknown value
  • Search for relative values
  • Search for Text fully tested and working. Note: Do NOT try to set a text value to something that's not the same length as what you started with, you'll probably crash the game and the 3DS will have to be rebooted.
  • Support for resolving pointers (see below)
  • Tons of bugs fixed, and I'm sure tons of bugs added
  • Can now refresh values by right clicking on them in the values grid (bottom-right)
  • Searching for values now also checks the data as it's received instead of checking it at the end, speeding up searches

More Details:

  • In preparation for support for 'Hold '-style codes, we're now pulling the button states from process 'hid' (Hardware Interface Device). Feedback requested for this before the next release.
  • The following config values are now supported:
    • MaxValuesToDisplay - Controls the amount of values which are displayed in the search results
    • ButtonStateUpdateInterval - Controls the initial delay in milliseconds between button state checks
    • DefaultIP - The default IP to enter into the IP text box on start
    • ConnectTimeout - The time in millseconds to wait for the 3DS to respond before timing out
    • ConnectTries - How many times to retry the connection before giving up and re-enabling controls.
    • LockValuesDelay - How long to delay between sending write memory packets for locking values. Note that setting this below 100ms does nothing, as that is the polling interval in the GUI.
  • Configuration file is written to %appdata%\NTRDebuggerTool\NTRDebuggerTool\NTRDebuggerTool.config.xml

Pointers:

Support for pointers works as described in #6. For example, the following two addresses will resolve to HP and CP respectively in FF Explorers (U):
(*080D2404)[88]
(*080D2404)[8C]
Additionally, note that the final value of the address being modified is set as a tooltip on the address cell in the table, so hovering will allow you to see what memory address was actually modified the last time the value was refreshed or written to.

Feedback Requested:

Please provide feedback either via a github issue or via reddit PM (u/valarnin) or on the release thread for how well the button states work for you. I've only tested this on o3DS 10.7, though I got @imthe666st to dump the appropriate memregion for comparison and it looked good initially, they had issues with the pre-release build I sent to verify and I haven't heard from them since.

The button state is shown in the bottom-left corner after connecting and consists of the following pipe-delimited values:

  1. A, B, Select, Start, D-Pad directions
  2. The shoulder buttons (L, R)
  3. The general left stick state
  4. The left stick's horizontal position, from 2-13
  5. The left stick's vertical position, from 2-13
  6. The current delay for polling button states. This scales up automatically if reading memory is slow, and the actual value used is double what's shown in milliseconds