Final Fantasy III (SNES) SwdTech Renaming Menu Restoration Version 1.1 Released on November 28, 2016 Last updated on December 16, 2016 By Novalia Spirit Contact information: novaliaspirit (AIM and Hotmail) Table of contents: 1. Description 2. Notes 3. Version history 4. Acknowledgements 5. Legal disclaimer ------------------------------------------------------------------------------- 1. Description ------------------------------------------------------------------------------- In the Super Famicom version of Final Fantasy VI, the player can rename Cyan's sword techniques from the main menu. Given that the expanded names would not fit into the area of save data memory reserved for them, this feature was removed during localization. This patch brings the feature back into the game, by implementing a system that allows the names to be partitioned across multiple unused arrays. To create the space needed for insertion, the patch first optimizes the code for the actor naming menu, merging elements common to both menus. Source code is included to allow for customization. ------------------------------------------------------------------------------- 2. Notes ------------------------------------------------------------------------------- Patch differences ================= Patch 1 preserves the original, full-screen window layout. Patch 2 shrinks the character-set window to eliminate the empty space stemming from the Latin font. Both patches will corrupt the SwdTech names with existing save files. Instead of restoring the names manually, consider using the patch with "reset" in its filename. After applying this patch, load a save file directly from the Load menu, then immediately overwrite it to fix the recorded names. Repeat with every file. Afterward, apply either of the main patches, then reload the game. If you decide to restore the names manually, be sure to enter all the spaces yourself, or else the names may not be displayed properly in battle. The patch with "sound" in its filename is optional and must be applied last. It generates a sound effect when a SwdTech is selected for renaming purposes. This is missing from the original code, which is likely an oversight. Header ====== The patch requires a ROM with a header. Various tools are available on the Internet for adding or removing a header. Potential conflicts =================== Note that any patch that uses the unused variables listed below will naturally not be compatible with this patch. This includes, but may not be limited to, HatZen08's "Guest Adder" patch. Furthermore, be aware that Madsiur's fork of FF6LE has an option to increase the number of treasure bits, which must be disregarded if you use this patch. Character differences ===================== The SFC version uses two pages of kanji characters, each of which typically represents a word. Text characters are 2x2 tiles in size in the SFC version, but occupy only a single tile in the SNES versions. Name differences ================ In the SFC version, SwdTech names are composed of 6 characters instead of 12. By default, all names start with the Japanese equivalent of "SwdTech," translating literally as "Deathblow Sword," and are followed by a single character representing the skill's actual name. Blank name ========== No mechanism exists to prevent the player from entering a blank name. Mistranslation ============== The term "Charge" is admittedly a mistranslation. The SFC version employs the Japanese equivalent, specified above, of "SwdTech." Given the gauge's length, using "SwdTech" would look terrible. Besides, the word "Charge" is arguably more relevant and less redundant. Name cursor =========== The cursor in the SFC version is placed below the SwdTech name, which lies on the third background layer, causing the text to mask such sprites. Not only does this look weird, it makes navigation more difficult in the SNES versions, given the smaller characters. My patch moves the name to the first background layer and places the cursor to the left of the highlighted character. Font cursor =========== In the SFC version, every time a letter is selected in the character set, the cursor returns to the SwdTech name area. Given the shorter names and how each character represents a word, this makes sense in a way, but definitely not in the SNES versions, so the patch does not preserve this behavior. Cursor-wrapping bug =================== The actor naming menu in the SFC version has two pages of characters, so the cursor is not allowed to wrap around vertically. The second page was removed for the SNES release, but vertical wrapping remained disabled. The patch fixes that, and does the same for the SwdTech renaming menu. Centering bug ============= There are two different spaces in the game. The first uses tile $FE and is unremovable. The second uses tile $FF and is interpreted as a terminator in certain situations, such as when a character's name is displayed in dialogue. SwdTech names contain the first space type to separate words, and the second type to terminate strings. The space that can be used to rename a SwdTech is of the first type. This means that if "Quadra Slice" is renamed to just "Q," the function that centers the attack name in battle will not ignore the 11 spaces. My patch corrects this oversight by converting trailing spaces automatically. Font modification ================= This patch recycles the character set from the actor naming menu, but replaces the quote character with a space. I originally intended to blank the digit "0" instead, as it looks identical to the letter "O," but ultimately decided not to interfere with a potential font replacement by the user. Besides, this makes the space character easier to access, and having an opening quote without a closing quote is grammatically senseless. Description window ================== The description window was expanded to allow for a second line, even though the vanilla SwdTech descriptions are entirely limited to a single line. Event invocation ================ The menu can be accessed from the event script, akin to the actor naming menu. This feature is unused, but does have the side effect of forcing the player to return to the main menu instead of the previous menu, as with a Rename Card. Variables claimed ================= My patch claims the following unused RAM arrays: $1460-$147F, $14C0-$14FF, $1CF8-$1D27, $1E1D-$1E3F, $1E70-$1E7C. Default names ============= Here are the default SwdTech names for resetting purposes: Dispatch Retort Slash Quadra Slam Empowerer Stunner Quadra Slice Cleaver The Japanese equivalents: Fang Sky Tiger Dance Dragon Moon Fierce Sever The Game Boy Advance equivalents: Fang Sky Tiger Flurry Dragon Eclipse Tempest Oblivion ------------------------------------------------------------------------------- 3. Version history ------------------------------------------------------------------------------- Version 1.1: Fixed a mistake where I inadvertently removed, during the optimization process, a call to the subroutine that copies event timer data to the SRAM block when saving the game. This could result, depending on the emulator, in a countdown timer being displayed after loading the save file, along with various related symptoms. ------------------------------------------------------------------------------- 4. Acknowledgements ------------------------------------------------------------------------------- Thanks to Assassin for pointing out that my alpha release conflicted with one of his patches, and possibly a few other patches made by other hackers. Credit goes to Madsiur for exposing the two conflict cases listed in the notes. Leet Sketcher, for reporting the bug fixed in version 1.1. ------------------------------------------------------------------------------- 5. Legal disclaimer ------------------------------------------------------------------------------- The contents of this document cannot be reproduced without the written consent of the author, unless for personal purposes. Permission to distribute the files included in the archive is granted exclusively to www.romhacking.net. © 2016 Jame Coban. All rights reserved.