Been doing updates quite a bit but here's a damn good one that I finished up yesterday. I'm still cleaning up the item menu but I'm making great progress.
All item names are now prerendered graphics. This results in all item pointers essentially being null at this point. Item descriptions are broken slightly but that's because I need to reimport them with the new text table I have setup, otherwise they're just fine.
I've also made a pretty hefty change log essentially stating what I have done so far and gives an idea of what's been done. Things are progressing on this pretty steadily overall. I'm hoping I can get all the in-game menus done and get manual mode setup for each character properly before I slap out a demo. I want to get at least the basics of everything functioning so bug testing can happen but that's probably going to be awhile still.
- Dialogue has been decompressed entirely and moved into a new location. New dictionary text has
been added along with a DTE to compress text further, but not as much as the original. However,
doing it this way allows for easy extraction and insertion.
- Menu font, menu sprites and battle general VRAM have been decompressed and are modifiable allowing
easier access to rehandling specific graphics.
- The function that draws each menu has been completely scrapped along with their associated hardset
tile map. A new routine has been implemented that allows any window size to be drawn on any
layer including BG4.
- BG4's "Tales of Phantasia" logo has been removed from the menu due to the above change. This
allows more text to be stored into VRAM.
- An 8x8 VWF routine has been implemented for drawing specific string instances.
(IE: Character names, character titles, etc..)
- All PC RAM extending from $7E:6A91 to $7E:7091 has been shrunk down and remapped a bit.
Each PC was originally #$0100 bytes. This has been radically reduced to #$00C0 as most
of those bytes were unused on the overworld.
* This now allows up to eight PCs to be in a party at once instead of five!
* Only five were recruitable at a time, but this is being increased in this version
to eight characters!
- With the above change in place, the 4 ACTIVE party members in battle will get their data stored to
$7E:7C91 to $7E:8091 which will allow full usage of the #$0100 original bytes. At the end of
battle, these bytes get copied back into the overworld at their now standard #$00C0.
* This allows up to eight PCs properly and does not interfere with anything else!
- PC names can now be eight letters instead of the original hardcapped six letters.
- PC's 'Skill' learning code has been dramatically altered.
* The original game did one byte per skill per character. This has been heavily changed to be
eight skills per byte! This allows an extreme expansion on what each characters skill list
can be and now also fully supports eight characters!
- SRAM has been heavily modified to allow more data to be saved properly.
* Data has been shifted back by #$00A0 which allows an ENORMOUS expansion of saved data.
* Eight characters are now supported statistically in SRAM.
* Eight letter names are now supported in SRAM.
* An interesting note: There were 27 unused bytes stored to SRAM on the original game. Not sure
why this was the case but hey they can be used for whatever purpose now.
- All PC battle data has been entirely moved into a new location allowing for massive expansion.
- All PC graphics, sprite assembly and animation data has been shifted around and redone to allow
for much needed expansion. The same goes for their respective weapons.
- The projectile and particle effect pointer table has been moved to allow for brand new data.
- Various portions of spells have been moved for expansion.
* Spell table has been moved.
* Spell TP cost table has been moved.
* Spell cast timer table has been moved.
* Spell menu icons table has been moved.
* Spell type table has been moved. (Whether it will pause the game or not)
* Spell element(?) table has been moved. (This is an odd one as the element is set in the spells
themselves.. but there is a preset table possibly for other reasons.
- The entire SFX and voice table has been moved to allow for more voices to be imported.
- Voice length has been figured out so the ARAM tables will have to be revamped entirely.
- All voices will be using 11025khz consistently instead of varying qualities.
- Cless, Mint, Arche, Chester, and Klarth will all use PS1 or later game voices for higher quality.
- Brambard has been updated from NPC to PC. He was originally meant to be playable but was entirely
scrapped. The only thing that remained were his 'Raise Dead' sprites and his tactics icon in
battle. There are a few screenshots of him in battle scattered on the internet but that's it.
* Brambard's voice actor will be Kenji Hamada! (Ronixis in Star Ocean: First Departure)
* Brambard is still a heavy WIP, as such, his skill set is subject to change at any time.
- Rhea Scarlet has been updated from NPC to guest PC. She may have been meant to be playable due
to her also having 'Raise Dead' sprites and a tactics icon.
* She will play like Mint essentially being an on-ground spell caster. She can learn a few
spells much like Arche could. However, once her segment of the story is completed Arche
will overwrite her slot but WILL retain whatever stats and equipment you had on Rhea
at the time.
* Rhea will have no weapons equippable for her.
* Rhea will use Arche's voice actress still but with completely different voices.
- Two more characters will be available but are going to be kept hidden for now as I'm not sure
if I can feasibly get their events coded properly.
- PC stats upon joining the team has been completely rewritten from the ground up and allows for
extreme customization for any stat, level, artes, etc.. to be setup.
- All PCs will be playable in this version instead of just Cless. As of right now, everyone
functions quite well in auto, semi-auto and a full on manual mode too. Manual mode will be
available from the get go.
* Cless functions mostly on auto but he uses no techniques right now as PC AI has not
been figured out entirely. What is known is that if any PC has a spell list set
in battle, it will FORCEFULLY make them use spells even if they're not supposed to.
- All PCs will have a spell cast, run and spell release function.
* Some characters will not use spell cast but it's there to be consistent across the board
and will not crash the game if a character is forced to cast a spell.
- Chester will have his PS1 artes included in this version.
* Ice Fang (Touga) and Hell Pyre (Guren) are implemented with variant voices.
* Chester will also have a few new artes to add more variety.
- Many new sprites are introduced for all characters in battle for their new actions.
- All item names, arte names, PC names, titles, etc.. will now use an 8x8 VWF font to allow
for much more text to be displayed on a screen. This will give the added benefit of full
length names that aren't cut off due to space limitations.
- The Status menu has been updated with a few new displayed stats.
* A new stat has been added into the game called "Intellect". Functionally, this will be the same
as most standard JRPGs. It will be the base for all "Magic Attack" damage in-game but ALSO be
the base for each PC's elemental resistance, aka "Magic Defense" in the Status Menu.
* All resistances have had their coded updated in battle so it's a 1:1 percent based
system instead of being a bit mask setting like the original.
* Resistance elemental icons have been updated thanks to LJSTAR!
* A new feature from Star Ocean where if you have more than one character in your party, it will
display arrows on the sides of the character indicating you can go to another screen.
- Status portraits have been moved to a new location and recoded to allow for new portraits on
any new character introduced into the game.
- The Options menu has been updated with new features and also condensed options.
* New feature where you can now set the in-game music and SFX/Voice volume.
* Event and Battle Voices have been condensed into one option called "Voices".
* Combo Count has been removed and enabled by default for now.
* Difficulty has been added with options for four difficulties.
* The difficulties are: Easy, Normal, Hard and Mania
* Only "Normal" and "Hard" function as they are the default difficulties.
- PCs will be swappable in the menu. Although, overworld sprites may not show this change yet.
* The game is very hardcoded to show specific sprites and not the characters in their
respective character slots. This makes things incredibly complicated to work with.
- Jet boots are no longer required for running on maps.
- LJSTAR for the elemental resist icons! His pixel art is gorgeous and his coding projects are fantastic!
Follow him at: https://twitter.com/LJSTAR_
- Mopoz for his basis for decompressed text!