• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
March 28, 2024, 05:32:09 pm

News:

Don't be hasty to start your own mod; all our FFT modding projects are greatly understaffed! Find out how you can help in the Recruitment section or our Discord!


Potential Gameshark Codes Left to be Hacked

Started by Ram, July 12, 2014, 09:24:25 pm

Ram

July 12, 2014, 09:24:25 pm Last Edit: July 21, 2014, 04:41:10 pm by Ram
I was torn between putting this topic in the Help sub-forum or the FFT Hacking one so sorry if this is the wrong one. I compile lists of gameshark codes that I want to see eventually hacked for my favorite games and for FFT. These "ideas" are what I have collected over the years:

*Status Effects modifier on enemies and friends, *Immune modifiers on enemies, *Panel modifier for any attacks/spells/etc., Act and/or Move never grayed (separate from CT always 100 and speed), Skip opening movies and screens, Weather modifier, *Everything heals/absorbs for team, Map modifier on STORY battles, Trap modifier, Jump is added to any action modifier, Speed up game (may not be possible), Skip animations (attacks/spells/etc), When Ramza becomes crystallized, its NOT game over; When your team dies, gameplay continues with enemies only; Skip battle dialogue, *Shop Anywhere, Shop has everything, Camera modifier, Skip cut scenes, Attack under menu has 4+ main options, Move "anywhere" in battle, When truly Game Over, continue to the main map screen anyways with nothing changed; *True 100% Invite Code (can invite Zodiac monsters), Story battle modifier, No bottom info at all during battles, Parties start in different areas of map, Mimes do nothing, Mimes attack opponents even though they are out of range, Random CT for anyone, Boss or otherwise has total random attacks with magic (like Grand Cross and uses it), any action is possible from the game; Invite prompt comes up at the end of battle for all enemy units every time, Can embark on any monster whether with your team or enemy, Add command modifier on party member (for attack), Damage does not appear visually, Panel modifier for Geo class, Start anywhere on the battlefield modifier, Experience and leveling up routine not loaded at all, Kanta or sword never breaks when using Samurai skill set, Kanta or sword ALWAYS breaks when using Samurai skill set for enemies, Main job class of storyline enemies during battle are always randomized to something else (any job class), Different enemy units appear from pre-made game list in storyline battles, Attacks force unit off 1 or more panels every time, Attacks force unit off randomly anywhere on the map, Automatic camera angle shift disabled, *Innate Counter Magic or Attack on some Job Class, Units randomly become crystals out of nowhere (not dead or anything!), Mimes will mimic other mimes on the same party (like attack), CT break knight skill, Charge! Attack added skill (Where when in critical, everyone in that state attacks like a mime would), A counter that affects all enemy units (magic?), Music Modifier, Storyline Point Modifier, (45)

*Already Hacked

I'm aware some of these have already been hacked via ISO image editing but not memory address editing. I'm more into the memory hacking side of things and have a great interest in all facets but this is something that I'm not deeply into, but want to get my feet wet more. I could probably hack new codes without major learning of new concepts. I believe these ideas are possible to hack with the exception of one or two but many look like they would be exceedingly complex with great understanding of the game's programming required.

Out of all of these the one I'd like to see most and hack if not known yet, is the red bolded Invite 100% on any enemy unit. The so called 100% invite code that currently exists only applies to units that have any % to begin with, but for story-driven enemies like Zodiac monsters and foes, they have Immune Invite. I'd like a code that disables Immune for everything and this applies to more than this game too (FF9). Of course I can hack a Zodiac monster into my party but what I really want to see is how the game responds to this action like inviting Velius to your party...would the game freeze up or would the battle end or get control of the unit? That's the real entertainment. Based on what I've read, I'm positive the memory addresses are known for enemy Immunities so it would be easy to derive a code from it so if someone knows it or can point me to it so I can figure it out myself, that would be great!

Just a quick few other questions that I thought about are has enemy units ever used equip change in battle whether vanilla FFT or modded and for those who know a ton about FFT's programming and memory, how much room is there before the PS1 Hardware is maxed out by it? That implies how much is going on "under the hood" so to speak before a slowdown arises for the PS1 Hardware because the AI to me is very impressive but graphically not resource heavy based on guessing.

Comments, questions, answers, thoughts are welcome. I'll introduce myself in a few days in the proper subforum but hello from another FFT lover!
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Angel

If you have a Gameshark Pro, you can make most of these yourself easily. If you have a regular Gameshark, there's a limit (15, iirc) to number of lines per code, so you'd have a ton of codes for one individual function. If you have a Gameshark CDX, you're screwed; faaaaaaaaaaaaar too many lines to be able to be loaded in memory, and the majority of them wouldn't be written. If you use an emulator, most emulators also have a very harsh limit set on maximum lines to load at once (usually 100 or so), and thus also be impossible.

If you choose to stick with emulators, you'll probably want to use a separate program (like artmoney) with emulator functions that support correct address mapping for using actual Gameshark constant writes. In this scenario, you are not limited by maximum lines or any such thing, and searching for the values themselves becomes much easier. For anything that you don't want constant write for, you have no choice but to use something that supports GS 5x, Dx, Ex etc code types (which don't leave you many options, I'm afraid).

In the end, expect to fulfill your requests yourself. I've done quite a lot of memory editing for FFT, but all my notes are long gone, and so are my PlayStation and GS Pro. Everyone else prefers to modify the game directly, because it's so much more versatile and easier to accomplish what you desire.

Apologies if I come across like a bitch. Just been one of those days.
  • Modding version: PSX
* Angel should quit being a lazy bitch
<@Elric> I agree to that as well

nyanyame nyanyajuu nyanyado no nyarabide nyakunyaku inyanyaku nyanyahan nyanyadai nyannyaku nyarabete nyaganyagame
At the end of the day, are we not all trapped inside lemons?

Ram

Quote from: Toshiko on July 13, 2014, 12:05:14 am
If you have a Gameshark Pro, you can make most of these yourself easily. If you have a regular Gameshark, there's a limit (15, iirc) to number of lines per code, so you'd have a ton of codes for one individual function. If you have a Gameshark CDX, you're screwed; faaaaaaaaaaaaar too many lines to be able to be loaded in memory, and the majority of them wouldn't be written. If you use an emulator, most emulators also have a very harsh limit set on maximum lines to load at once (usually 100 or so), and thus also be impossible.

I just got a Gameshark Pro last fall, which was awesome because I never thought I'd have one since before a major influx on them became available in the last year or so on Ebay, they were incredibly rare and worth a lot. The problem is now I need a PS1 that has the parallel port for it since I only have the PSone version console hardware but I do have 2 CDX versions of Gameshark. I've had version 5.0 since 2005. About making the codes easily, I'd have to disagree with that unless I was one of you guys that have modded the game for years and understood a lot of the memory mapping and routines. These aren't integer codes were talking about, these are functions that have to be modified and in a sense memory hacking these are more difficult than what this site mainly does to hard data. I'm not sure what you mean by being screwed with the CDX version of GS, version 4 for some reason allows tons of lines and codes in general and had no problem putting hard mode into it broken up into 8 parts or so. No issues running them all either. I didn't know about the emulator limits but can't say I'm shocked with that. There are ways around all that. So your not thinking all these codes will be activated at once do you? I thought that would be funny, but I'd remove the "No info at the bottom of the screen" one because I like that lol.

QuoteIf you choose to stick with emulators, you'll probably want to use a separate program (like artmoney) with emulator functions that support correct address mapping for using actual Gameshark constant writes. In this scenario, you are not limited by maximum lines or any such thing, and searching for the values themselves becomes much easier. For anything that you don't want constant write for, you have no choice but to use something that supports GS 5x, Dx, Ex etc code types (which don't leave you many options, I'm afraid).

Artmoney is my favorite, found it in 2004 and if and when I go back to this activity, it will be my program of choice.

QuoteIn the end, expect to fulfill your requests yourself. I've done quite a lot of memory editing for FFT, but all my notes are long gone, and so are my PlayStation and GS Pro. Everyone else prefers to modify the game directly, because it's so much more versatile and easier to accomplish what you desire.

You can't be serious with this, no one would spend all that time doing something unique and fun that takes no effort and space to post online and/or save yourself just to toss it away (unless it was already found which I suspect is the case, happened to me too), and yet still be invested in FFT hacking and modding too. I see why modding the game directly is the best way for a lot of stuff, but for what I'm talking about there is no sense in modding just for 1 little thing or something that should be for fun and temporary (permanent "When truly Game Over, continue to the main map screen anyways with nothing changed" is silly). Just off the top of your head, was a memory address or range found for enemy immunities to modify? I already searched this site and lots of chatting about modifying it hard data wise was to be seen, no reference points however.

QuoteApologies if I come across like a bitch. Just been one of those days.

That's fine, but I don't think you got the gist of what I'm getting at because I know most of what you posted already about gameshark hacking, been reading about it on and off for a decade. I'm not asking for anyone to hack these codes, but just getting comments about what you folks think about these ideas of things I haven't seen yet. Some of you will have a good idea of how hard some would be or if some are impossible since years of experience have seeped in about this game. The main thing I really want to get input on is the 100% invite on any enemy above all else since I know various members here have changed that aspect. Point me to it so I can figure it out myself but giving me the address if it exists already would be even better (and I'd be super duper grateful).
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Celdia

Okay. I just spent 3 minutes using the tools we have on-site here to collect this data for you, if I'm understanding your request which is you would like GS codes. The following will make it possible to use Invite on every single character in the game, including Immortal-flagged units [stars over their heads when dead instead of the 3 count]. Ah, for all the codes involved, that is the ONLY thing they will do and you will need to use all of them to do it.



30061198 0000
300611C8 0004
300611F8 0004
30061228 0000
30061258 0000
30061288 0094
300612B8 0000
300612E8 0000
30061318 0080
30061348 0000
30061378 0000
300613A8 0000
300613D8 0084
30061408 0084
30061438 00BD
30061468 0000
300614C8 0010
300614F8 0000
30061528 0000
30061558 0000
30061588 0000
300615B8 0000
300615E8 0094
30061618 00BD

30061648 0000
30061678 0000
300616A8 0000
300616D8 0094
30061708 0000
30061738 0000
30061768 0000
30061798 0094
300617C8 0094
300617F8 0094
30061828 0094
30061858 0094
30061888 0000
300618B8 0000
300618E8 0094
30061918 00BD
30061948 0080
30061978 0080
300619A8 0080
300619D8 0000
30061A08 0000
30061A38 0000
30061A68 0000
30061A98 0000

30061AC8 0000
30061AF8 0000
30061B28 0000
30061B58 0000
30061B88 0000
30061C18 0095
30061C48 0024
30061C78 009D
30061CA8 0024
30061CD8 009D
30061D08 009D
30061D38 0024
30061D68 009D
30061D98 0024
30061DC8 0095
30061DF8 0024
30061E28 0024
30061E58 0004
30061E88 00BD
30062BD8 0004
30062C08 00AC
30062CF8 0004
30062D28 009D
30062D88 0004

30062DB8 0004

30065E79 0009


No guarantees that using Invite on normally non-invitable units won't crash the game or that events that trigger making those units leave the battlefield [say Gafgarion teleporting away at Zirekile] will even allow the unit to still Join Up. Good luck!
  • Modding version: PSX
  • Discord username: Celdia#0

Ram

Quote from: Celdia on July 13, 2014, 02:04:54 am
Okay. I just spent 3 minutes using the tools we have on-site here to collect this data for you, if I'm understanding your request which is you would like GS codes. The following will make it possible to use Invite on every single character in the game, including Immortal-flagged units [stars over their heads when dead instead of the 3 count]. Ah, for all the codes involved, that is the ONLY thing they will do and you will need to use all of them to do it.



30061198 0000
300611C8 0004
300611F8 0004
30061228 0000
30061258 0000
30061288 0094
300612B8 0000
300612E8 0000
30061318 0080
30061348 0000
30061378 0000
300613A8 0000
300613D8 0084
30061408 0084
30061438 00BD
30061468 0000
300614C8 0010
300614F8 0000
30061528 0000
30061558 0000
30061588 0000
300615B8 0000
300615E8 0094
30061618 00BD

30061648 0000
30061678 0000
300616A8 0000
300616D8 0094
30061708 0000
30061738 0000
30061768 0000
30061798 0094
300617C8 0094
300617F8 0094
30061828 0094
30061858 0094
30061888 0000
300618B8 0000
300618E8 0094
30061918 00BD
30061948 0080
30061978 0080
300619A8 0080
300619D8 0000
30061A08 0000
30061A38 0000
30061A68 0000
30061A98 0000

30061AC8 0000
30061AF8 0000
30061B28 0000
30061B58 0000
30061B88 0000
30061C18 0095
30061C48 0024
30061C78 009D
30061CA8 0024
30061CD8 009D
30061D08 009D
30061D38 0024
30061D68 009D
30061D98 0024
30061DC8 0095
30061DF8 0024
30061E28 0024
30061E58 0004
30061E88 00BD
30062BD8 0004
30062C08 00AC
30062CF8 0004
30062D28 009D
30062D88 0004

30062DB8 0004

30065E79 0009


No guarantees that using Invite on normally non-invitable units won't crash the game or that events that trigger making those units leave the battlefield [say Gafgarion teleporting away at Zirekile] will even allow the unit to still Join Up. Good luck!

Oh man, thank you so much!!! Holy crap, that is long! I am curious to see this in action now, just like I have been for years. Looks like its going to be fun seeing what happens because as far as I know, no one has really tried or said what the game does. I wouldn't have been able to pull that together myself so it appears I found the right place to ask.

I saw a tab on a FFTPatcher screenshot called Gameshark and I wondered if that creates codes based on what the program itself does, was that part of this pull-together? I can find out later but I need to learn how this was "found". Is there any meaning to those spaces (the last one specifically)?

To the "no guarantees" part, that is part of the fun not knowing what the hell is going to happen, one of the reasons I love gameshark and memory editing.
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Choto

Yes, FFTPatcher creates gameshark codes based on the edits that you made in the program. My guess is that Celdia unflagged "Immune to invite" for all special characters in FFTP. So most any edit you make in FFTP should be convertable to gameshark code.

Keep in mind too that ASM hacking and Gameshark codes are really the same thing. Lets break down a code: 30061198 0000

"3"  - This is a conditional modifier which tells the game when to apply the code (different files on the CD are loaded into memory at different times, so if you intend to write to one file but it's not open, it could cause a crash)

"0061198" - This is the address in memory of where the following hex code is going to be written

"0000" - This is the hex code to be written. ASM commands are 4 bytes of hex (the "0000" is 2 bytes), so it would take 2 gameshark codes to edit one line of ASM code. Hex could be a variety of different information though. If it's say, a data table, then the GS code is straight modifying the value (as in the case of the invite codes).

For example, an ASM command would look like this:
34100002 ori r16,r0,0x0002

Where "34100002" is the hex encoding of the command, and "ori r16, r0, 0x0002" is a logical description of the ASM command. So if I had a gameshark code that edited this location, and changed the 02 to 05, I would change the command to: "ori r16, r0, 0x0005".

So when Toshiko says "expect to do things for yourself", She means that hacks that can't be done in a simple way or require custom code, you'd have to go through the process of writing the hack yourself, then converting it to GS code. There are very few sightings of ASM hackers around here these days, and I'm bogged down in JoT5 work.

For some of the hacks ideas you mentioned it could just take a small hex edit, others would require custom routines of code. Some are just impossible.

Angel

July 13, 2014, 10:15:50 am #6 Last Edit: July 13, 2014, 10:23:04 am by Toshiko
Quote from: Ram on July 13, 2014, 01:09:13 amYou can't be serious with this, no one would spend all that time doing something unique and fun that takes no effort and space to post online and/or save yourself just to toss it away (unless it was already found which I suspect is the case, happened to me too), and yet still be invested in FFT hacking and modding too.


My notes were on paper, because that's what I used at the time. I had one lined notebook filled, which spilled into a second notebook. I had no computer; my 486 went down for the count (which, while it housed the original run of my notes, was never connected to the internet), and I was limited to using a Dreamcast for internet access. If you think I wanted to recreate all those notes using a Dreamcast to post on GameFAQs or whatever, you're sorely mistaken. While there wasn't much overlap with what I personally found (I didn't tread in already forged paths unless what had been shared was obviously incorrect), there was still an awful lot that I never saw anywhere else (with the exception of some various stats in the hacking guide on GameFAQs - some of which I also had to correct because the guide caused unintended bugs when altering brave/faith/level/speed/etc.). It's not that I had no desire to share so much as that it would have been incredibly tedious to type out my findings on a Dreamcast web browser interface.

My notes were destroyed in storage, along with all my dolls, plushies, and most of my books. My PlayStation itself was stolen (as were nearly all of my consoles and games). I simply have no record anymore.
  • Modding version: PSX
* Angel should quit being a lazy bitch
<@Elric> I agree to that as well

nyanyame nyanyajuu nyanyado no nyarabide nyakunyaku inyanyaku nyanyahan nyanyadai nyannyaku nyarabete nyaganyagame
At the end of the day, are we not all trapped inside lemons?

Celdia

Quote from: Ram on July 13, 2014, 04:01:55 am
I saw a tab on a FFTPatcher screenshot called Gameshark and I wondered if that creates codes based on what the program itself does, was that part of this pull-together? I can find out later but I need to learn how this was "found". Is there any meaning to those spaces (the last one specifically)?
Yes, that is exactly how it was done and the spaces were just notations FFTP puts in that I took out since they aren't relevant to GS use. However...
Quote from: Choto on July 13, 2014, 08:32:30 am
My guess is that Celdia unflagged "Immune to invite" for all special characters in FFTP.

It was for literally every Job except Ramza's three which is why it is so ludicrously long. Except that very last line which is the flag for Invite under Cancelled By Immortal from the Status Effects tab instead. There is very likely a much, MUCH more efficient way of doing this with ASM hacking instead of GS codes, especially considering it only affects one status effect through the entire game. Probably involving whatever routine checks the unit's Job for that immunity and just jumping around it when it goes to look for Invite.


Quote from: Ram on July 13, 2014, 01:09:13 amYou can't be serious with this, no one would spend all that time doing something unique and fun that takes no effort and space to post online and/or save yourself just to toss it away (unless it was already found which I suspect is the case, happened to me too), and yet still be invested in FFT hacking and modding too.

Quote from: Toshiko on July 13, 2014, 10:15:50 am
My notes were destroyed in storage, along with all my dolls, plushies, and most of my books. My PlayStation itself was stolen (as were nearly all of my consoles and games). I simply have no record anymore.

Wow, it's almost like real life happened or something. Who would have ever predicted such a strange and unexpected explanation...truly a foreign concept.  :roll:
  • Modding version: PSX
  • Discord username: Celdia#0

Ram

I'll reply to what was posted yesterday later, but I tested that code out and it doesn't fully work. For reference I also had the move anywhere and 100% invite code on but that shouldn't affect anything. I load a save before Riovanes Castle battle with Weigraf and it was indeed 100% so here I'm excited and the first time just kill him. Then onto Velius, I target and to my dismay it was the usual 00%! Even the Ultima Demons had 00%. How anti-climatic  :( . I guess all jobs aren't covered or as someone mentioned, the block involves whatever routine checks the unit's Job for that immunity but only certain ones. My original path to hacking this would have been jumping around it which might cover this. But I found something later that contradicts this.

Nothing crashed which was awesome, Weigraf invited but had to be killed like I thought, then loaded another save before Elmdor in his Castle and invited him which is hilarious. Here's where it got strange, when Elmdor got a turn he used Chirijiraden out of nowhere and then when I checked his class, he doesn't have that learned!! No idea. Blue Ultima demons couldn't be invited either. Elmdor didn't join up at the battle, but then I was shocked at the next part with Zalera. I attempted invite on the undead knights and 00% for that, but 100% for Zalera!! Crazy. I got him and I couldn't check out his stats but he just cast Flare 2 on the knights. Bone snatches 00%. After I killed Zalera which you must do despite being a guest lol, he joined up! Level 45. On Dycedarg's battle, I could invite him but not Zalbag which should bypass guest status but maybe not. I couldn't invite Adramelk at all and when this battle was over, Dyce didn't join up. Its hit or miss.

I had a blast though so far, really great stuff! Still want Velius in his battle invited.
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Ram

Quote from: Choto on July 13, 2014, 08:32:30 am
Yes, FFTPatcher creates gameshark codes based on the edits that you made in the program. My guess is that Celdia unflagged "Immune to invite" for all special characters in FFTP. So most any edit you make in FFTP should be convertable to gameshark code.

That's great, will help immensely.

QuoteKeep in mind too that ASM hacking and Gameshark codes are really the same thing. Lets break down a code: 30061198 0000

"3"  - This is a conditional modifier which tells the game when to apply the code (different files on the CD are loaded into memory at different times, so if you intend to write to one file but it's not open, it could cause a crash)

Wasn't the "30" header meaning 1-byte constant re-write? I don't know all of them off the top, but I thought "D0" had something to do with a conditional modifier. On the side, do these files and data get swapped around and addresses used for more than one thing depending on what mode your game is in (overworld, battle for Final Fantasy)?

Quote"0061198" - This is the address in memory of where the following hex code is going to be written

"0000" - This is the hex code to be written. ASM commands are 4 bytes of hex (the "0000" is 2 bytes), so it would take 2 gameshark codes to edit one line of ASM code. Hex could be a variety of different information though. If it's say, a data table, then the GS code is straight modifying the value (as in the case of the invite codes).

For example, an ASM command would look like this:
34100002 ori r16,r0,0x0002

Where "34100002" is the hex encoding of the command, and "ori r16, r0, 0x0002" is a logical description of the ASM command. So if I had a gameshark code that edited this location, and changed the 02 to 05, I would change the command to: "ori r16, r0, 0x0005".

I know the first part but the ASM command thing was a "teachable moment".

QuoteSo when Toshiko says "expect to do things for yourself", She means that hacks that can't be done in a simple way or require custom code, you'd have to go through the process of writing the hack yourself, then converting it to GS code. There are very few sightings of ASM hackers around here these days, and I'm bogged down in JoT5 work.

Yep. Not surprised about the few ASM hackers, its like that for all game editing communities.

QuoteFor some of the hacks ideas you mentioned it could just take a small hex edit, others would require custom routines of code. Some are just impossible.

Which ones do you think are impossible with the exceptions of Speed up the game and Jump added to any attack?

Quote from: Toshiko on July 13, 2014, 10:15:50 am
My notes were on paper, because that's what I used at the time. I had one lined notebook filled, which spilled into a second notebook. I had no computer; my 486 went down for the count (which, while it housed the original run of my notes, was never connected to the internet), and I was limited to using a Dreamcast for internet access. If you think I wanted to recreate all those notes using a Dreamcast to post on GameFAQs or whatever, you're sorely mistaken. While there wasn't much overlap with what I personally found (I didn't tread in already forged paths unless what had been shared was obviously incorrect), there was still an awful lot that I never saw anywhere else (with the exception of some various stats in the hacking guide on GameFAQs - some of which I also had to correct because the guide caused unintended bugs when altering brave/faith/level/speed/etc.). It's not that I had no desire to share so much as that it would have been incredibly tedious to type out my findings on a Dreamcast web browser interface.

My notes were destroyed in storage, along with all my dolls, plushies, and most of my books. My PlayStation itself was stolen (as were nearly all of my consoles and games). I simply have no record anymore.

Ah, the late 1990s or early 00s which was the golden era of gameshark hacking. That is a very interesting method (Dreamcast for internet access) and unique "process" if one can call it that. So what type of stuff in FFT did you find if you can remember? Anything that stood out or was different? One day maybe I can try and find some of what you discovered since I'm only focused on a very narrow set of games for this activity (5 or so). Final Fantasy Tactics in a game that deserves to have its whole RAM and ROM mapped out similar to SMW.

Also that really sucks about stuff destroyed and stolen. If it was a storage unit (unlikely), maybe one day an episode of Storage Wars will come on and a notebook filled with FFT notes will be found...now that would be valuable!  :lol: Its a joke, don't get mad!  :P

Quote from: Celdia on July 13, 2014, 11:58:00 am
Yes, that is exactly how it was done and the spaces were just notations FFTP puts in that I took out since they aren't relevant to GS use. However...It was for literally every Job except Ramza's three which is why it is so ludicrously long. Except that very last line which is the flag for Invite under Cancelled By Immortal from the Status Effects tab instead. There is very likely a much, MUCH more efficient way of doing this with ASM hacking instead of GS codes, especially considering it only affects one status effect through the entire game. Probably involving whatever routine checks the unit's Job for that immunity and just jumping around it when it goes to look for Invite.

The flag for Invite Canceled By Immortal seems to not affect the Velius, both types of demons, and Adramelk units for some reason.

QuoteWow, it's almost like real life happened or something. Who would have ever predicted such a strange and unexpected explanation...truly a foreign concept.

There was no way of knowing this occurred in the late 90s and the unusual circumstances that followed, its not normal to lose a bunch of your stuff suddenly and have most of your games stolen. Your right, who would have ever predicted such a strange and unexpected explanation.
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Celdia

Quote from: Ram on July 16, 2014, 10:26:32 pm
The flag for Invite Canceled By Immortal seems to not affect the Velius, both types of demons, and Adramelk units for some reason.

There may be some underlying code elsewhere that also affects them which is something that erroneously gets referred to as 'hardcoded' which really just means we haven't found what controls it yet. In this case that's not too surprising since I don't think anyone has ever really looked into the details of Invite immunity beyond what FFTPatcher can modify.
Quote from: Ram on July 16, 2014, 10:26:32 pm
There was no way of knowing this occurred in the late 90s and the unusual circumstances that followed, its not normal to lose a bunch of your stuff suddenly and have most of your games stolen. Your right, who would have ever predicted such a strange and unexpected explanation.

Oy, he can give it as good as he takes. I like this guy. You can stay. :D
  • Modding version: PSX
  • Discord username: Celdia#0

Ram

Quote from: Celdia on July 17, 2014, 01:29:41 am
There may be some underlying code elsewhere that also affects them which is something that erroneously gets referred to as 'hardcoded' which really just means we haven't found what controls it yet. In this case that's not too surprising since I don't think anyone has ever really looked into the details of Invite immunity beyond what FFTPatcher can modify.

That's what I thought until I tried it again. I was thinking of isolating the 65E79 address and just using that to see if anything was different but I didn't do it yet, I played around with a bunch of GS codes I made in FFTPatcher. I also unchecked the flag for dead when Inviting so I could try inviting them too. Because I unchecked every immunity from Velius, I had to replace the code for Warlock with a new separate one as it became [30061C17 0040 - 80061C18 0000]. I loaded the 111 lines of code total using V4.0 and this time the experience was very entertaining. I just happened to have invited a male mediator on one of the files I use for this and he just learned Invitation. I wanted 2 because Ramza alone wasn't enough. I got to Zombie Zalbag and could 100% invite him as expected but amazingly, as Ramza switched to another class or the generic male mediator I attempted to target a demon just to confirm I couldn't do it and it showed 100%!!  :D Ramza can when not Squire, this generic can "in general". I tested this by accident and found a solution. After I did so many fun things in a random battle with Zalera (with Grand Cross), Zalbag, Archaic Demon (innate poison), and Ramza. I can't invite dead units despite the code, must have a 'hardcoded' block.

I thought it must be be Ramza's Squire job or something doing it. Then I loaded the Velius battle and I wish I recorded it or something, he was teleporting 2 everywhere yelling. I could once again target any demon and Velius (finally) for 100% invite! He did Wiznaibus along with Grand Cross :lol: . I confused him where he takes his defeated pose for that, and went into water. After berserking 2 units I caused two other status affects before inviting him where he yelled on himself and Ramza often until I defeated my new guest. I got to keep him after too! For Elmdor I tried inviting one of the assassins and for Ramza it was 00%  :mad: . Now I think it is a male to female thing. Elmdor was 100%. Not sure at all what is behind this.
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Angel

QuoteSo what type of stuff in FFT did you find if you can remember?

Off the top of my head, I made an admittedly buggy control all units code, I fixed the in-battle stats modifiers, fixed the full inventory codes, mapped out all jobs and abilities (which was later more accurately noted in the GameFAQs guide), changed the effect patterns and ranges for abilities (which is totally done in FFTP now), and poked around at a lot of things that either made the game crash or bug the hell out. I spent most of my time trying to work out the mechanics and RNGs (which I never did; I stumbled onto FFH 6 years ago while specifically Googling to see if there was any knowledge available on FFT's RNGs yet). So, mostly things that have since been done by other people, and a few things other people did first that I corrected the errors in.

Also, I started typing this post 14 hours ago and toooooooootally forgot about it.
  • Modding version: PSX
* Angel should quit being a lazy bitch
<@Elric> I agree to that as well

nyanyame nyanyajuu nyanyado no nyarabide nyakunyaku inyanyaku nyanyahan nyanyadai nyannyaku nyarabete nyaganyagame
At the end of the day, are we not all trapped inside lemons?

Ram

Quote from: Toshiko on July 17, 2014, 01:52:00 pm
Off the top of my head, I made an admittedly buggy control all units code, I fixed the in-battle stats modifiers, fixed the full inventory codes, mapped out all jobs and abilities (which was later more accurately noted in the GameFAQs guide), changed the effect patterns and ranges for abilities (which is totally done in FFTP now), and poked around at a lot of things that either made the game crash or bug the hell out. I spent most of my time trying to work out the mechanics and RNGs (which I never did; I stumbled onto FFH 6 years ago while specifically Googling to see if there was any knowledge available on FFT's RNGs yet). So, mostly things that have since been done by other people, and a few things other people did first that I corrected the errors in.

Also, I started typing this post 14 hours ago and toooooooootally forgot about it.

Control all units was one of the first GS codes I tried, it was amazing discovering what was behind the hood. I was stunned that there were so many classes and sprites that could be nearly fully used for a bunch of units that never had battle parts. Then cut-scene only maps fully usable including maps never used, and a few attacks almost never seen too. Impressive hack. Whenever you say "fixed", I'm not sure what you mean by that. Effect patterns and ranges for abilities modifier is a code that wasn't hacked until FFTP so that was one on my list that's been covered. As I said part of the fun is seeing the effect in the game like glitches and bugs that come from unexpected parts like I had a time mage guest in the 4th battle before you get to the final boss and he became immortal because with 0 hp, he would continue getting turns and be healed with potions...funny part was the sprite would be laying dead but when its his turn, he gets up, attacks, then goes back down  :lol: . No code was used for that, just random glitching. The most memorable effect from a long time ago when I was messing around with PEC, is I think I was playing around with battle groups modifier for story battles (don't know for sure) and during the Velius battle Velius is present per usual but instead of Archaic Demons, yellow Chocobos appeared in such a weird way like in defense mode or something! One side of their wing is in front of them titled upwards. I have a screenshot of it on my old system.

It does seem like almost everything you found was found again so it wasn't like the content was never discovered again. I still don't know how these memory hackers got the more advanced stuff done in regards to what they used to view ASM code in memory. Was it in the SLUS file they were looking, what program and how the connection between hard-coded data (ISO editing) and memory was paired for FFTP.

Something I forgot at the time and then just struck me was when Mediator Ramza tried to use Invite on one of the assassins and it gave the 00%, I didn't check her equipment to see if something was equipped that cancels invite  :mad: :oops: . It didn't even occur to me because I thought nothing should prevent 100% invite with these codes but equipment can I bet and assassins often wear the type that can block that. Maybe everything about that is solved afterall...
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded

Angel

Some of the fixes I made have not been posted elsewhere. The handbook on GameFAQs is very useful, but has some bugs and not completely correct info. I'd like to cite better examples, but it's been a long time x.x
  • Modding version: PSX
* Angel should quit being a lazy bitch
<@Elric> I agree to that as well

nyanyame nyanyajuu nyanyado no nyarabide nyakunyaku inyanyaku nyanyahan nyanyadai nyannyaku nyarabete nyaganyagame
At the end of the day, are we not all trapped inside lemons?

Ram

I updated the first post for codes that are left to be hacked, added 2 new ideas.

I can confirm that I forgot to check the assassin I targeted for invite for a item that cancels it, one does have Ribbon which negates so there are no problems now. An ASM hack for a "catch-all" invite code would be required but I'm not eager to figure it out right now! My original idea as to what was going on does apply to other status effects for Zodiac monsters and other special enemies because I can't petrify, zombie, death sentence Velius even though all those flags are unchecked in FFTP. Something in the ENTD must interfere.

Speaking of ENTD, FFTP says no codes are generated from changes to that which is disappointing but not surprising, I didn't think all that would be incorporated into it as the level of work would be immense. I assume it would all involve complex conditional modifiers. Is the range of addresses for that area of the game known and could one poke around it trying stuff out? Didn't find anything on it but based on the codes already known, the ranges are either around 0x190??? - 0x198???, 0x050??? - 0x060???, or 0x0D0??? - 0x0F0???.

I confirmed that "D0" is a conditional modifier. When ability codes are generated in FFTP, the first one for an edit is starting with "70" which isn't gameshark, its Xploder. The Secrets Of Professional Gameshark Hacking Manual doesn't have it listed for a GS code type.
<&Angel> if WotL is your preference, 99 times out of 100, you can't be trusted to know how to use a toilet properly
<~Xifanie> Weazel has a degree in bathroomonics
<&Angel> everyone who wants to mod WotL exclusively is pants on head retarded