This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
"'Atlas' is not recognized as a internal or external command..."
Where I can possibly get that 'Atlas.exe' thing?
V4.2 + V4.2a
01. Fixed the Frog Armor walking sprites glitching out. (Due to sprite assembly not being written in compilation)
02. Fixed some Save/Load Menu text issues. (Wasn't removing all of the text data properly)
03. Slightly reorganized some code in various files. Regioned some of it off so it's more readable, grouped a few things, etc.. not a lot done.
01. Fixed a palette bug with the Z-Saber wave striking enemies.
a. This is a natural game bug oddly but hopefully this fixes any issues arising with it.
02. Altered the Helmet Chip upgrade along with the Golden Armor variation.
a. The Helmet Chip will allow X to regenerate health as normal like the original game again.
b. The Golden Armor will allow X's regeneration to double each time it's successful capping at #$08.
03. The Helmet Sensor will NO LONGER run at the start of a level if every single upgrade has been obtained. Although, this does NOT check for Hard Mode currently which goes unused.
04. Fixed some minor Save/Load screen text problems.
05. Fixed cursor coordinates when selecting "Yes No" in the Save/Load screen.
06. Altered Bit & Byte spawning randomization code just a tiny bit but it effectively does the same thing.
07. Fixed a bug in which Godkarmachine O Inary's (Bit & Byte combined) hands would not deal damage.
08. Added in the ability for Zero to use the Z-Saber projectile.
a. This is only available if you have the Black Armor and are on NG+.
09. Asar will now expand the ROM for you without having to use Lunar Expand creating a much easier experience.
a. Run "Asar MMX3.bat" then drop "MMX3.sfc" into the "Atlas" folder. Run "Atlas.exe - X3 (Everything).bat" and you're good to go.
3F8000 - X with no armor (Sprite set #1. Does NOT include Z-Saber sprites, Ride Armor sprites, etc.. just the basic ones)
3F8048 - X with armor (Sprite set #1. Does NOT include Z-Saber sprites, Ride Armor sprites, etc.. just the basic ones)
3F809C - X ??? (Don't have this noted properly) (This includes Z-Saber sprites, vertical dash, charged Gravity Well/Ray Splasher, etc..)
3F80DE - Zero (Sprite set #1. Does not include Z-Saber)
3F80E1 - Zero (Sprite set #2. Z-Saber)
3F8000 --> 3FCB64 - Base start for X. Example: (3FCC04 = 59 03 = Idle. Reverse to get 359. Add 359 to 3FCB64 and you get 3FCEBD)
3FCEBD - Wait time until 1st frame
3FCEBE - ???
3FCEBF - Frame 1 graphic
3FCEC0 - Wait time until 2nd frame
3FCEC1 - ???
3FCEC2 - Frame 2 graphic
3FCEC3 - Wait time until 3rd frame
3FCEC4 - ???
3FCEC5 - Frame 3 graphic
3FCEC6 - Wait time until 4th frame
3FCEC7 - ???
3FCEC8 - Frame 4 graphic
3FCEC9 - Wait time until 5th frame
3FCECA - ???
3FCECB - Frame 5 graphic
3FCECC - Wait time until 6th frame
3FCECD - ???
3FCECE - Frame 6 graphic
3FCECF - Wait time until 7th frame
3FCED0 - ???
3FCED1 - Frame 7 graphic
3FCED2 - Wait time until 8th frame
3FCED3 - ???
3FCED4 - Frame 8 graphic
3FCED5 - Wait time until 9th frame
3FCED6 - ???
3FCED7 - Frame 9 graphic
3FCED8 - Wait time until 10th frame
3FCED9 - ???
3FCEDA - Frame 10 graphic
3FCEDB - Wait time until 11th frame
3FCEDC - ???
3FCEDD - Frame 11 graphic
3FCEDE - Wait time until 12th frame
3FCEDF - ???
3FCEE0 - Frame 12 graphic
3FCEE1 - ??? - Something to do with restarting animation
3FCEE2 - ??? - Something to do with restarting animation
$03/8FB1 BF 00 80 0D LDA $0D8000,x[$0D:8000] A:0000 X:0000 Y:0010 P:envmxdIZc ;Sprite assembly pointers
$03/8FB5 85 1C STA $1C [$00:001C] A:8231 X:0000 Y:0010 P:eNvmxdIzc
$03/8FB7 BF 02 80 0D LDA $0D8002,x[$0D:8002] A:8231 X:0000 Y:0010 P:eNvmxdIzc
$03/8FBB 85 1E STA $1E [$00:001E] A:5D0D X:0000 Y:0010 P:envmxdIzc
$03/8FCB B7 1C LDA [$1C],y[$0D:8231] A:0000 X:09D8 Y:0000 P:envmxdIZc ;X idle graphics - Sprite Frame 1 Setup
$03/8FCD 85 18 STA $18 [$00:0018] A:B92A X:09D8 Y:0000 P:eNvmxdIzc
$03/8FCF C8 INY A:B92A X:09D8 Y:0000 P:eNvmxdIzc
$03/8FD0 B7 1C LDA [$1C],y[$0D:8232] A:B92A X:09D8 Y:0001 P:envmxdIzc ;X idle graphics - Sprite Frame 1 Setup
$03/8FD2 85 19 STA $19 [$00:0019] A:0DB9 X:09D8 Y:0001 P:envmxdIzc
X - Stance Frame 1 [DB92A]
xDB92A - How many chunks there are. (4 bytes each)
Sprite #1 = Top of helmet
xDB92B - Chunks/Direction of chunks
--> 00 = 1 chunk, normal.
--> 20 = 4 chunks (Top two, bottom two) normal.
--> 40 = 1 chunk flipped left/right.
--> 60 = 4 chunks (Top two, bottom two) flipped left/right
--> 80 = 1 chunk flipped upside down
--> A0 = 4 chunks (Top two, bottom two) flipped upside down.
xDB92C - X coordinates of piece 1
xDB92D - Y coordinates of piece 1
xDB92E - Sprite #1 graphic
xDB92F - Direction/Chunks
xDB930 - X coordinate of piece 2
xDB931 - Y coordinate of piece 2
xDB932 - Sprite 2 graphic
xDB933 - Direction/Chunks
xDB934 - X coordinate of piece 3
xDB935 - Y coordinate of piece 3
xDB936 - Sprite #3 graphic
xDB937 - Direction/Chunks
xDB938 - X coordinate of piece 3
xDB939 - Y coordinate of piece 3
xDB93A - Sprite #4 graphic
There is no end byte to sprite assembly, it's all calculated by how many pieces to load at the very first byte.
$04/BCCF B1 31 LDA ($31),y[$05:CE45] A:00A2 X:01FE Y:0000 P:envmxdIzc ;Pointer to ROM graphic and how many bytes to send to VRAM. (Generally loops three times based on a specific byte at the end of each chunk?)
$04/BCD1 65 31 ADC $31 [$00:0A09] A:0411 X:01FE Y:00A2 P:envmxdIzc
05CF0E (Idle X)
$20 ;How many tiles to load? (Forgot how this calculation works)
$2D8000 ;Pointer to ROM graphics
$6000 ;VRAM location (Double to get proper value. #$8000+ is used to end the total transfers. Subtract #$8000 for anything above to get proper VRAM location.)
$20 ;How many tiles to load? (Forgot how this calculation works)
$2D8200 ;Pointer to ROM graphics
$6100 ;VRAM location (Double to get proper value. #$8000+ is used to end the total transfers. Subtract #$8000 for anything above to get proper VRAM location.)
$02 ;How many tiles to load? (Forgot how this calculation works)
$2D8400 ;Pointer to ROM graphics
$E200 ;VRAM location (Double to get proper value. #$8000+ is used to end the total transfers. Subtract #$8000 for anything above to get proper VRAM location.)
- 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!
Understood. Thanks for clearing it up!
EDIT: I'm sorry if this is a dumb question, as I've never used any of the tools required to build this patch before, but when I try to run the Atlas .bat files (namely the Everything file) to apply script and damage table files, Atlas throws errors regarding "Nothing.tbl". It seems that the damage table .txt files all reference "Nothing.tbl", which does not exist, and causes Atlas to error out. Is that normal? Am I doing something wrong? Apologies again!
<?xml version="1.0" encoding="UTF-8"?>
<map mode="linear" address="00-7f:8000-ffff"/>
<map mode="linear" address="80-ff:8000-ffff"/>
<map mode='linear' address='70-77:0000-7fff'/>
<map mode='linear' address='b0-bf:0000-7fff'/>
that stinks so if i want the achievements i'm stuck with playing on steam