• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
June 01, 2024, 06:55:00 am

News:

Use of ePSXe before 2.0 is highly discouraged. Mednafen, RetroArch, and Duckstation are recommended for playing/testing, pSX is recommended for debugging.


Show posts

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.

Messages - Choto

61
well first things first, lets talk about breakpoints. An execute breakpoint will stop the game when that code is reached and about to be executed. Read/Write breakpoints occur when the unit loads or stores a value to that address.

Also be aware that if you reload a savestate, your hack will be overwritten. I don't suspect that's happening here, but just figure'd I'd state it.

if you can't figure it out, post a savestate and I'll check into it.
62
Aqueous, we will make this hack your first hack. It's very simple and even more so since pride provided the framework. However, I Probly won't be able to give you detailed instructions until this weekend. If you want you can probably figure it out though.

Prides hack checks if a unit has a certain support ability equipped (from 0x92 status set). All you need to do is check if the units equipped skillset = whatever you want it to attach to. Check unit data (801908cc in data locations) for which bytes are primary and secondary skillset (I think they're 0x12 and 0x13). So instead of loading 0x92,  we load 0x12. Then put the value of the skillset you want it to attach to in a register, then do a bne comparing the two.

you could even apply Prides hack and step through it to understand what's going on. Good luck

Also get used to breaking the game lol. Again step through your routine and see why your code fails, then fix it. Just a part of the business.
63
PSX FFT Hacking / Re: ASM Help
March 24, 2015, 08:43:17 am
One method you could use is looking at where the jumps in the hack are. Large routines are in free space but at some point you have to jump to get there. So you look at where the jumps occur in vanilla code, then check that routine on the wiki to find out what the routine is doing at the time. I'll take a look at RAD later and see if I can point out a good example
64
PSX FFT Hacking / Re: Choto's ASM Hacks and Effects
March 23, 2015, 10:57:09 pm
They correspond to this data:

0x0058: Current Statuses 1
      0x80 -
      0x40 - Crystal
      0x20 - Dead
      0x10 - Undead
      0x08 - Charging
      0x04 - Jump
      0x02 - Defending
      0x01 - Performing
   0x0059: Current Statuses 2
      0x80 - Petrify
      0x40 - Invite
      0x20 - Darkness
      0x10 - Confusion
      0x08 - Silence
      0x04 - Blood Suck
      0x02 - Cursed
      0x01 - Treasure
   0x005a: Current Statuses 3
      0x80 - Oil
      0x40 - Float
      0x20 - Reraise
      0x10 - Transparent
      0x08 - Berserk
      0x04 - Chicken
      0x02 - Frog
      0x01 - Critical
   0x005b: Current Statuses 4
      0x80 - Poison
      0x40 - Regen
      0x20 - Protect
      0x10 - Shell
      0x08 - Haste
      0x04 - Slow
      0x02 - Stop
      0x01 - Wall
   0x005c: Current Statuses 5
      0x80 - Faith
      0x40 - Innocent
      0x20 - Charm
      0x10 - Sleep
      0x08 - Don't Move
      0x04 - Don't Act
      0x02 - Reflect
      0x01 - Death Sentence


so setting status 5 = 0xC0 would make faith and innocent be canceled by HP damage. nah mean? Any combination of statii for each group can be added to make a hex number. 0xFF would be all status of the group.

As for physical vs. magical... I forget how the hack is laid out but I'm guessing it mimics how sleep is cancelled when hit. Same rules should apply.

65
PSX FFT Hacking / Re: ASM Help
March 23, 2015, 10:11:43 pm
OR and AND commands can be interpreted mathematically to shed some light on how they work. take a look at the following tables. The first is for OR and the second is for AND.





anything OR'd with 0 is itself. so that ori r3, r0, 0x000A is basically saying "r3 = 0x0A OR'd with Zero", and so it becomes r3 = 0x0A.

when it's used as ori r3, r3, 0xcccd, it's adding 0x0000cccd to whatever r3 already is. So:

lui r3, 0xcccc -        r3 = 0xcccc0000
ori r3, r3, 0xcccd -   r3 = 0xcccccccd

I think this type of usage has to do with floating point multiplication and division. Decimal values are stored in a wierd way in ASM.... but honestly I've always been able to circumvent that usage by doing exactly what Xif mentioned. So it's not something you even have to understand unless the need arises.

Don't worry, this is the hardest ASM will ever be. Only gets easier.

Also, I saw your other comment. Do you have the psX emulator with a debugger? You can set a "breakpoint" in it at any point in the code and the game will freeze when it hits it. Then you can step command by command and view exactly what's in the registers. Then you can reference the addresses that are used in the registers and codes in the "Data Locations.txt" file which holds pretty much all the data we've found out (which is quite a substantial amount at this point).

Check here: http://ffhacktics.com/smf/index.php?topic=9608.0
66
PSX FFT Hacking / Re: RAD 3: 35 jobs.
March 22, 2015, 12:21:02 pm
Don't worry, I was quite lost when I first started reading them too. It's the type of thing where the more times you read it or the more supplemental information you get, the more it all makes sense.

Anything you're confused about you can always post a question in the help forums too even if it's just ASM learning. I enjoy teaching and so I have no issues helping people out in that area.

Now in regards to overwriting code: Luckily, the FFT ISO has a big section of Kanji characters that are unused in the english version. We refer to this as the "Kanji Table" or "Free space" because it is just that - free space. So when we want to add in whatever code we want, we put our code in this section and just jump to it from the vanilla routine.

As I'm thinking about it... the hack you want to do may be a bit involved since you have to do quite a bit: enable the job on the job wheel, account for male/female, set the corresponding pre-battle formation sprite and portrait, set the job level requirements... Probably not the best one to embark on for your first hack. But the better you get, the bigger hacks you can make
67
PSX FFT Hacking / Re: RAD 3: 35 jobs.
March 21, 2015, 07:30:01 pm
interesting thought... However, pokeytax is seldom seen around here anymore unfortunately. I may try to clean these tools up once I graduate in the summer, but don't hold your breath :(

It may be a more attainable feat to make a new ASM hack to do what you want to do. Although daunting at first, it only takes some persistence to learn, and we have a large amount of info about the game code on the wiki and tools to help. You could also request it in the ASM requests thread, but there are very few active ASM'ers atm.
68
Unfortunately everybody has been more busy than usual... real life is just too OP.

Finishing touches are being put on the sprites, a couple of ASM's need to be written, and then we can commence bugtesting.

If it's not out by the summer, I would expect progress to pick up around then.
69
PSX FFT Hacking / Re: Choto's ASM Hacks and Effects
March 13, 2015, 08:45:37 pm
Quote from: Pride on March 13, 2015, 06:55:39 pm
Mime hardcoding OP


I'll take a look tomorrow
70
PSX FFT Hacking / Re: ASM Requests
March 11, 2015, 11:30:40 pm
Thanks for the congrats, and here's what I have:

1. Is there an easy way? probs not. However, I've recently uploaded all of the disassembly in Battle.Bin to the wiki: http://ffhacktics.com/wiki/BATTLE.BIN

00193e50 to around 0019f2f0 are the AI routines.. so chances are movement decisions are in there somewhere. Although, the exact location is, as yet , unknown.

2. This is a pretty interesting idea. One could hardcode certain ability ID's to initialize a "to be invited after battle" byte for each unit in battle.. then after battle check that instead of invite. However, there is also a bunch of other hardcoding for invite which one would have to remove.

3. For this one you may be in luck. I planned on making a berserker for my own patch and allowing him to use the second half of a skillet when berserk only. So the second half of the skillset would be "berserk only" abilities. The only thing is I don't know when I'll get around to doing this because I'm terrible at making progress with a patch >_> I'd like to do it sometime though.
71
PSX FFT Hacking / Re: ASM Requests
March 08, 2015, 03:01:57 pm
Nice work! glad we could square that away pretty quickly
72
PSX FFT Hacking / Re: ASM Requests
March 05, 2015, 04:47:27 pm
How much are you willing to bet Grond?

Turns out it's not quite a simple fix to do via ASM. I documented the relevant parts of the routine here: http://ffhacktics.com/wiki/Load_WEP_graphic_from_WEP1_Sheet

The routine does an offset calculation to find out where on the WEP sheet to load from, but it references some stuff in the WEP.SHP file which I didn't really care for figuring out. In the end, the routine adds 0x10 to the Y offset... which bumps each weapon graphic to the one right below it. However... I guess this only happens for draw out skills... or katanas...

Anyways... I tried a quick fix for this by editing the WEP1.SHP. It fixes the Rod issue for normal draw-out skills and hopefully doesn't break anything else. This is about all I want to devote to fixing this though. Elmdor is just... fucked lol. I have no clue why he specifically would wig out like that
73
Hacking/Patching Tools / Re: Choto's Tools
March 02, 2015, 07:29:17 am
Thanks for bringing that to my attention.. here's what's going on: That hack writes a block to f6160, then has a variable that can be set by the user at f6174. The variable is written over the f6160 code. So technically it is a "conflict" but it must have been written that way on purpose. Truthfully, it's kind of lazy by the writer, but no harm done.

pops, I'm back from my trip but I can't guarantee that I'll be able to work on this stuff anytime soon. I'll be pretty busy until the summer. Nonetheless I'd like to at least see your code, so pm me with the repository info or any info you need from me
74
No, the Unknown tabs are unknown... and the second table ID is... less unknown, but not quite what you're looking for.

However, fret not! To change the graphic and palette of in-battle weapon sprites, use on of Raven's workbooks which offers this functionality. Look in the important links thread to find his workbooks.
75
Hacking/Patching Tools / Re: Choto's Tools
February 27, 2015, 07:45:53 am
Welp, I still have my notes so I'll send them to you when I get home from my trip.im interested to take a look at the source code behind your renderer... when I was trying to do rotation, scaling, etc it was a nightmare. And luckily C# is my native programming language. Maybe we can get something rolling.
76
Hacking/Patching Tools / Re: Choto's Tools
February 26, 2015, 07:18:04 am
Thanks pops, I haven't really updated them much at all. In fact, I lost the source code to the effects editor. I still have all my notes about the effect file structure and all, but they're honestly a nightmare to figure out. That tool was actually my first C# program, so I planned on rewriting it anyway at some point... I have no idea when I'll get around to it though. However, any advice is always appreciated if you know stuff that I dont :P How did you plan to improve the visualization?
77
Help! / Re: Arrow Guard Blocks Gunshots
February 19, 2015, 12:20:09 pm
This should help http://ffhacktics.com/smf/index.php?topic=7719.0

Don't feel bad about your hex editing statement. We don't know the address in memory of paper bag data
78
The Lounge / Simpsons intro pixel art
February 02, 2015, 10:55:04 pm
holy freakin crap the finale of this is ridiculous.

79
PSX FFT Hacking / Re: ASM Requests
January 15, 2015, 07:07:14 pm
in regards to the dragon targeting becomes monster targeting thing, i'm pretty sure the hack has been done a couple of times actually. You'll have to search the forums though because at least for me it was one of the first hacks I did and didn't record it in a hacking thread or anything.

then for the reaction thing, stand by for now. I have a hack in the works that will give you many more options for counter abilities.
80
PSX FFT Hacking / Re: Choto's ASM Hacks and Effects
January 12, 2015, 07:01:42 pm
Update: Fixed the Chocobo hack somewhat. You shouldn't get multiple turns by accident now. BUT, sometimes when you first mount a chocobo it will be tired from its last move and not be able to move. Hopefully it happens consistently so I don't have to fix it again ^_^