øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&action=printpage;topic=2021.0e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index7730.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=2021.0e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index7730.html.zx¬%g^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ…¬“`OKtext/htmlISO-8859-1gzip8:Ö“`ÿÿÿÿÿÿÿÿTue, 10 Mar 2020 05:45:39 GMT0ó°° ®0®P®€§²ð®«%g^ÿÿÿÿÿÿÿÿUV“` Print Page - FFIV Job System (Culmination of all of our works and hacks)

Board of Slick

Library of the Ancients => Final Fantasy IV Research & Development => Topic started by: Grimoire LD on March 25, 2015, 05:49:38 PM

Title: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on March 25, 2015, 05:49:38 PM
In my most recent hacking stint I've formulated methods to go far beyond the limits of our original Table mandated routines by moving these to empty spaces and repointing accordingly. Hacking 101, now that I really think on it. But in so doing I've concocted a way to increase our Command space from a measly 27 slots (in hex) in which a lot of them are paired commands anyhow to a much more robust 38-3B amount of slots. Meaning that there would be enough room for 18-20 new routines without touching any others. The concern would invariably become "But what about Bank 03? It's nearly full as is!" Oh, that it is, but we aren't necessarily locked into Bank 03, the makers left leeway by tying the Bank choice at the very end of the "find table pointer" routines, meaning you would create a JSR to some unused space, create a check to see if the Subroutine is beyond a certain amount, if so jump to another place filled with empty space and that's where you can start to use unique subroutines.

That takes care of that, but then the second question, "Why would we ever need so much space?" And that is a fair point. With 13 characters there is only room for 39 (decimal) unique  commands and when Magic slots are taken into account that drops to 28.  And that's where my other new hack comes into play. This hack is an event instruction which moves Battle Commands into SRAM and when initialized the second part of that event instruction hack is to add any given Command to any Slot of a character's Commands. Another piece of this hack is that it loads Commands by Character basis rather than Actor basis, so it takes up a lot less space (a necessity as there is not much free space at all in SRAM.)

With the ability to mold a character's Command Set as one pleases, a lot of things would open up. With roughly  20-30 new Command slots to use people could allow their creativity flow as they will not have to worry about replacement and all of that and they can have these new commands accessible in any event setup they please.

But here is where this idea comes in to make a showcase...

Cecil will start the game with Dark Wave.

Say you go into the Training Hall and instead of a bunch of NPC's there are statues of the PC's. When you talk to say... Dark Knight Cecil's Statue the game will check to see if a flag is on that indicates Dark Knight Cecil is present through the use of my Flag Check Skip Instructions hack that I have recently made. If not it will say "Nothing happened." If you talk to it with the Dark Knight in your party you would then be prompted. "Would you like to change Dark Wave to Dark Omen?" and a Yes/No prompt would appear. If you have Dark Omen then it would ask "Would you like to change Dark Omen for Dark Wave?"  Through the very same use of flags. Or you could even have both Dark Omen and Dark Wave on at the same time, but my thought is to supply a unique command slot for each character that can hold them, so in essence Dark Knight Cecil could have 3 command slots thus three Cecil Statues that would offer new commands (likely for some price, or based on game progress). And so on and so forth with the other characters.

Does such an idea sound workable, does anyone have any suggestions to improve upon this thought or other ideas that could utilize expanded Commands/Flag check Hack/Command Placement in RAM and manipulation hacks?

Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: koala_knight on March 30, 2015, 03:11:01 PM
What about using the shop system somehow for unlocking the statues through purchase?
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: Grimoire LD on March 30, 2015, 03:20:23 PM
What about using the shop system somehow for unlocking the statues through purchase?

This could be done... if it was built in a specific manner. I have been thinking about this for a while now on designating certain shops to sell not items, but Spells (for an overarching spellbook like FFV does), I imagine it would be quite complicated, but the effect may be worth it. Your idea is workable and if I create a few custom strings related to the statues I might be able to plug them into Shop's menus. Problem would be price though... I think that would probably be the most difficult part about this idea, I can easily make other items act as placeholders with changed names, but I would likely have to write a table of prices for this idea. I'll try to start cracking stores though.
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: chillyfeez on March 30, 2015, 03:53:23 PM
This is a really cool Idea. I'm a little hazy (maybe you went into more detail somewhere else?) On the details of exactly which limits you've overcome to the original set of commands.
As I see it, the limits are:
1) bank 03 space (not too difficult to overcome)
2) command name space (pretty sure command names are wedged into a bank of other text data, like character default names &c. This could probably be moved pretty easily, as long as you find all of the pointers into command name data and adjust them appropriately)
3) command ID numbers - probably the toughest to overcome because of how the game regularly adds C0 to the ID for various functions, meaning there can only be a maximum of 3F commands, ever, and we want to make sure to not overwrite things like Change, Parry, Show (well, except in hacks that get rid of Hide), Off, Land (the second half off Jump), the ending portion of Spirit Wave, Running away (I don't think we've ever explored this, but it must be a command), whatever else I might be forgetting...
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: Grimoire LD on March 30, 2015, 05:07:55 PM
This is a really cool Idea. I'm a little hazy (maybe you went into more detail somewhere else?) On the details of exactly which limits you've overcome to the original set of commands.
As I see it, the limits are:
1) bank 03 space (not too difficult to overcome)
2) command name space (pretty sure command names are wedged into a bank of other text data, like character default names &c. This could probably be moved pretty easily, as long as you find all of the pointers into command name data and adjust them appropriately)
3) command ID numbers - probably the toughest to overcome because of how the game regularly adds C0 to the ID for various functions, meaning there can only be a maximum of 3F commands, ever, and we want to make sure to not overwrite things like Change, Parry, Show (well, except in hacks that get rid of Hide), Off, Land (the second half off Jump), the ending portion of Spirit Wave, Running away (I don't think we've ever explored this, but it must be a command), whatever else I might be forgetting...
Welcome back Chillyfeez!


1. Indeed, Bank 03 can be used but then from then on we can link the "which bank to look at" code into a JSR to custom code which looks to see what number the command of Spell Subroutine. As you noted, very easy to deal with.

2. This entire idea came from Command Name space. There is room for 65 (41) more Command names. I've tested this to its logical conclusion.

3. As you noted we are Stuck with 3F commands and nothing will let us go beyond this, because the game uses 00-BF for normal abilities. Anything beyond that is a Command.

I found an old document of Phoenix's which helped me build my original Command Disassembly and I also improved upon what was initially there with notes of my own starting from Jump's Return to a blank at the end. After that it goes back to normal routines. Also yes, that "Run Away" command is normally completely unused. In fact it is so unused no Command ever calls it. You can easily link to it and see its intended effect (I always thought it was meant to act like Morale did in FFI-III where an enemy low enough level or through the Fear spell would run. as you may recall my FFI Spells used this routine with a slight change.) What is odd though is that you still get Exp. as if you killed the foe, which shows they never got as far as they should have when programming it.


1E - A2E9 (03E9A2 - Jump's Return)
1F - 23E8 (03E823 - Focus's Return)
20 - E3E4 (03E4E3 - Spell Casting Portion of Twin)
21 - 4FB3 (03B34F - Wait Command)
22 - 38E4 (03E438 - Something to do with the very end of Regen Routine?)
23 - 0000 (Blank) - ??

23-3F does give us roughly 28 more command slots to work with, which is pretty large, I would say.

Since this may be of some interest to you here are my notes on pointers and all of that business.

Location of Command Pointers

08B850

(Change 03B160 to BF 50 BA 08) - New Location of Command Pointers

(Change 02B201 to BF 00 BB 08) - New Location of Command Stances

(Change 038BB3 to BF 80 BB 08) - New Location of Command Targets


FA850 - Location of Command Names


(Change 03A2AC to BF CC BB 80) - New Location of Status Disabling by Command

As you can guess this is all part of a package, something I'd like to call "Hacker's Paradise" which moves all of the pointers and gives the prospective hackers much more room to fool around with.

Here is what I have done at the moment...

(Change 039FA2 to BF D0 BB 08 ) - New Location of Command Timers

Original Location of Spell Subroutine Pointers (03D2AF) - Change To...

BF 20 BC 08 - New Location of Spell Subroutine Pointers

FFIV-Hacker's Paradise

This patch is designed to Free up a lot of space for potential hackers to use as they will including...

1. 2 new event instructions

A. One new event instruction can cause parts of events to skip if the right flag is on/off, or skip events entirely if a battle was lost.

B. This Event Instruction replaces a chosen Character's Battle Command with another Command.


2. Increase the Command Table from 27 to 3F Allowing for 24 new Command Slots.

3. Increase the Spell Subroutines Table from 34 to 7D that is More than Double the amount of spell Subroutines.

4. Chillyfeez's Shadow Party Hack obviates the purpose of worthless 5x Shadow Slots by instead breaking characters down to their essentials and rebuilding the characters when they rejoin the party since that is done automatically anyhow.

Space to Place Routines (unheadered and 1.1)


0001DE55 - 1195 Bytes!
00023C38-23C80
0023C94- 23FFF (A fair amount of Bytes.)
5FD58 - 680 Bytes!
6E3A0-6F25F EBF (3775 Bytes!)
977F0-97FFF - 80F (2063 Bytes!)


This sort of got me sidetracked from my Side Project as I aimed to make the Side Project have more command space to give enhanced commands to the returning Party Members ala FFIV Advance.


Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: chillyfeez on March 30, 2015, 08:09:03 PM
Wow, so this is a grand scale type thingy you've got going on!

The expanded spell routine space is what excites me the most personally, for sure, but something like this would really open up the platform for experienced hackers with good ideas to really play around...

Couple things come to mind immediately:

1) I was actually talking about whatever it is that makes the party run away, as in when you hold L and R... But is it possible that that is the actual use of what we've thus far referred to as the "Enemy Runs Away" routine? I'm not gonna get into actually doing stuff this evening, but tomorrow I might try setting a breakpoint to that routine and hold L and R to test that theory out...

2) be careful of those big empty spaces. Compare their locations with the ROM map in ffiv.txt. I had a brush with disaster recently by carelessly using some space in the 90000 block (I think). I was using some supposedly empty space after dialogue bank 3, and I was unaware of it. A long time later, I edited bank 3 in FF4kster and it almost destroyed my game. Took a long time to figure out what went wrong. Had do DL this utility called IPS Peek that analyzes a patch to tell you exactly which parts of ROM it affects, then compared each of those places between a ROM that was and was not patched with the recent changes. Took several hours to figure it all out, and that was only after I figured out that I'd be able to do this at all. Anyway, point is that I'm wary of big empty spaces now... Heh, I developed ROM agoraphobia. But as long as you know what is surrounding the free space you're using, you should be fine.
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: Grimoire LD on March 30, 2015, 08:35:18 PM
Wow, so this is a grand scale type thingy you've got going on!

The expanded spell routine space is what excites me the most personally, for sure, but something like this would really open up the platform for experienced hackers with good ideas to really play around...

Couple things come to mind immediately:

1) I was actually talking about whatever it is that makes the party run away, as in when you hold L and R... But is it possible that that is the actual use of what we've thus far referred to as the "Enemy Runs Away" routine? I'm not gonna get into actually doing stuff this evening, but tomorrow I might try setting a breakpoint to that routine and hold L and R to test that theory out...

2) be careful of those big empty spaces. Compare their locations with the ROM map in ffiv.txt. I had a brush with disaster recently by carelessly using some space in the 90000 block (I think). I was using some supposedly empty space after dialogue bank 3, and I was unaware of it. A long time later, I edited bank 3 in FF4kster and it almost destroyed my game. Took a long time to figure out what went wrong. Had do DL this utility called IPS Peek that analyzes a patch to tell you exactly which parts of ROM it affects, then compared each of those places between a ROM that was and was not patched with the recent changes. Took several hours to figure it all out, and that was only after I figured out that I'd be able to do this at all. Anyway, point is that I'm wary of big empty spaces now... Heh, I developed ROM agoraphobia. But as long as you know what is surrounding the free space you're using, you should be fine.

That is the goal indeed Chillyfeez, FFIV is a great game, it still holds up today but its clear how many shortcuts and bizarre programming methods they took with it, that Summon shortcut still leaves a really bad taste in my mouth that This was their method of having Asura be randomized (instead of being sensible and creating a unique spell routine for Asura.)

They used their table space very sparingly, seemingly knowing at an instant what they needed and thus many of the tables are by default inadequate for expansion, hence why they needed to be moved.

2. Now I've looked at all of these spaces and there is no text that I am aware of anywhere close to them, believe me that was one of my chief concerns as well.

1. "Enemy Runs Away" is its own routine. I have it documented already.

http://slickproductions.org/forum/index.php?topic=1883.msg19420#msg19420

As you can see it is very similar to Retreat except without the Exp. null and "running away sound" so it sounds as if the enemy is dying. As I said it was likely planned early on to be similar to Fear. It is entirely unused.

Though out of curiosity, what is FFIV.txt? This is the first I've heard of that document.
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: chillyfeez on March 30, 2015, 09:51:56 PM
Wait - hang on. All this time when you were talking about "retreat," I assumed it was the thing that the soldier captain does after the three soldiers are defeated. Are you telling me that that's the same routine as when the party runs away?

No, you know the document. Yousei's document. Maybe it's called ff2.txt? Sorry if I made that more confusing. I haven't even had my computer on for the last week or so.
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: Grimoire LD on March 30, 2015, 10:29:19 PM
Wait - hang on. All this time when you were talking about "retreat," I assumed it was the thing that the soldier captain does after the three soldiers are defeated. Are you telling me that that's the same routine as when the party runs away?

No, you know the document. Yousei's document. Maybe it's called ff2.txt? Sorry if I made that more confusing. I haven't even had my computer on for the last week or so.

The party running away is something I haven't discovered yet (because if I had I'd try to make it so its not an instant process!) and is likely not involved in the commands, I could be wrong and would be glad to be wrong in this instance. But yes, that is what Retreat is, there's a small exception tucked away that looks for specific ID's of spells and one of those ID's is Retreat. If it's retreat Exp gain is nulled and the sound used is the "running away" sound.

"Enemy Ran Away" Command Routine however is what I've been discussing these last few posts. It is in the Command section but doesn't have a pointer assigned to it unlike all other commands.

Yousei's document, I only really know of the Tower of Babil docs, did he have another separate document from that?
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: chillyfeez on March 30, 2015, 11:21:31 PM
Yeah, what I'm theorizing here is that the "enemy ran away" routine might actually be the party running away routine.
The way I see it (and maybe I'm wrong, wouldn't be the first time) the party running away routine must be mixed in among the commands somewhere.

Surely you've seen yousei's document. I think we've discussed it before. If you download his FF4ed utility (http://www.romhacking.net/utilities/191/), it's packaged in with that. It'll be in its own subfolder called "documents" when you unzip the utility. I'm pretty sure the ROM map assumes v 1.0 (everything else yousei did specified 1.0) but the addresses are all close enough to give a broad overview of where most things are in ROM.
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: Grimoire LD on March 30, 2015, 11:41:41 PM
Yeah, what I'm theorizing here is that the "enemy ran away" routine might actually be the party running away routine.
The way I see it (and maybe I'm wrong, wouldn't be the first time) the party running away routine must be mixed in among the commands somewhere.

Surely you've seen yousei's document. I think we've discussed it before. If you download his FF4ed utility (http://www.romhacking.net/utilities/191/), it's packaged in with that. It'll be in its own subfolder called "documents" when you unzip the utility. I'm pretty sure the ROM map assumes v 1.0 (everything else yousei did specified 1.0) but the addresses are all close enough to give a broad overview of where most things are in ROM.

Oh, I forgot all about that program, I do still have it somewhere though...

Ah right! I forgot about this document. Thanks for the reminder.

But back to "Enemy Ran Away". This routine is literally just "enemy kills itself", show message "Ran Away". I have tested it on PC's to see if it would do anything special, they just drop dead with the message "Ran Away" displayed. This can't be used by the normal game because the game never actually uses the message "Ran Away" and anything dealing with leaving battle would have "Battle End" script to it, such as in the Exit Routine.

Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: chillyfeez on March 31, 2015, 12:27:42 AM
OK, I remembered you talking about the "enemy ran away" routine, but didn't really remember what it actually did. So party running away is still out there somewhere, then. Guess I'll put it on the list of stuff to find at some point.

So all of those blank spaces seem safe according to ff4.txt with the possible exception of  977F0, which includes the data yousei has listed as "triggered event data," which I assume is the details of trigger event IDs, something that is definitely editable and expandable using FF4kster, which makes it dangerous to use...
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: Grimoire LD on March 31, 2015, 11:20:30 AM
OK, I remembered you talking about the "enemy ran away" routine, but didn't really remember what it actually did. So party running away is still out there somewhere, then. Guess I'll put it on the list of stuff to find at some point.

So all of those blank spaces seem safe according to ff4.txt with the possible exception of  977F0, which includes the data yousei has listed as "triggered event data," which I assume is the details of trigger event IDs, something that is definitely editable and expandable using FF4kster, which makes it dangerous to use...

Yikes, a good find, I had completely missed that was the section in question. Now is that implying Event Triggers as "Tanks shoot at Tower"? Or does it imply Event Triggers as "Warp/Treasure/Event"?

About party running away, at 7E38D3 that is Incremented by 1 which forces the party to flee. However this appears to be unique to Exit as normal running away does not appear to write to this..  I would think it unique to Exit but you can still lose money in this manner which doesn't happen with Exit, so I'm not really sure.
Title: Re: Training Hall to Command Hall? (Ideas for a much expanded Command system)
Post by: chillyfeez on March 31, 2015, 05:03:27 PM
We'd have to run some tests to be sure, but I think "triggered event data" refers to the data that tells the game (hypothetically, as I am at work and nowhere near the real data right now): "event call 05 = run event B2 if flag 61 is set and flag 65 is clear"
Title: FFIV - Quasi-Job System
Post by: Grimoire LD on April 07, 2015, 01:56:24 PM
So I have racked my brain on this and I came up with a rather novel way to make sure each character is unique and (most) gain 24 Spells in all to fill out their spell books all without using too much event space... here was my original plan, which was highly obtrusive and cost a lot of event space...

Go into command hall, talk to corresponding PC Statue. Check a flag to see if Dark Knight Cecil is in the party. "Would you like to change Dark Wave for Dark Omen at the cost of 10,000 Gil?" Yes/No. Yes, run the new event instructions which put the Command into the character's Commands. Then set another Event Flag with Another Message of "Would you like to change Dark Omen for Dark Wave?" so on and so forth.

Doing this with 13 characters is just a terrible idea all around an enormous waste of Event Space, Flags, and Text Space...

So I went back to the drawing board and came with up with a Job Card idea (you may recall that was an older idea of mine, but I didn't really have the talent at the time to carry it out) There would be 3 Job Cards and each would run an event depending on which character was at the front of the party, change commands accordingly and that was it. It wouldn't change sprites or anything, but it would change up the given Command sets. It was a fairly simple plan and tons more efficient than the first... then I realized I wanted to go deeper...

Giving characters the roles is all well and good, but for example I turn Cecil into a Mystic Knight with JobCardC, sure he may have some Commands pertaining to the Mystic Knight but will he really Feel like a Mystic Knight?

That's when I decided to go for the ultimate step...

Changing these Quasi-Jobs would not only change Commands, but be the means of which to learn new spells.

You would no longer learn spells through Level Ups, but learn spells through Battles Fought...

This plan requires 26 free bytes in SRAM Thankfully there appears to be just 26 Bytes to use underneath my battle commands.

This would mean at 255 Battles max, the Class has been mastered. (It might not be that high and there may be certain conditions on whether a battle counts.) Every 20-30 battles then you would learn a skill associated with that class.

The incentive to switch classes then would be based on wanting to acquire these new spells for your characters or to deal with certain situations...

For instance Bard Edward will not acquire any spell through battle, but events throughout the world will give him his set of skills. Dragoon Kain will use his Combat Boost setup where he will learn magic from wounded Dragons. Scholar Edward is something entirely special and I think shows a good amount of sense with a Scholar. Relying on my Random Enemy AI he will be given a skill called Read that will allow him to use the applicable Enemy's Spells as his own for the battle. So say he uses Read on an Imp... that would give him Venom and Haste, granted I am trying to think of a way to balance it, but it seems like an interesting application of the idea of a "Scholar" class.

Now I should note that aside from very few exceptions (which still need worked out) changing Jobs will not allow a character to equip different weapons and armor, mainly because that system is so archaically done through FFIV's engine it would be too much of a headache to make function correctly.

What was my choice for how to go about all of this planning? Well it was actually quite simple and I'm somewhat ashamed I didn't think of it earlier...

Equipment, or to be more specific Accessories.

All accessories have been changed to "Job Slots" 20 Slots is what I needed and 20 Slots is what the game has by default, very good luck on my part.

Without an accessory equipped all characters are in their base job, with a Job equipped their job name will change (planned, not implemented) on the menu and the unused "Steal Byte" for players will act as the check.

So to summarize...

1. New Jobs can be obtained through Accessories
2. Each character has Three Jobs. 1 Base, 2 through Job Accessories
3. The character's command sets will completely change
4. A byte will be set in the character's data and will be the way the game knows to increment a byte at the end of battle.
5. After a certain number of battles the character will learn a spell (using the Spell Learning system and making it look at the character's specific byte, instead of levels) for a maximum of 255 battles until all spells in that class are learned.

With this also would come a scheme to get characters back into the party ASAP. So meeting Edward in Troia will trigger him rejoining. A quest can be undertaken to get the Twins back when you resurface from the Underworld. Cid adding the Heat Shield to the Falcon will have him rejoin and awakening Yang in Sylph's Cave will let him back in.

This is to make sure that the player can potentially have the team together for a good amount of the game instead of rolling their eyes at the prospects of training up Jobs for characters that haven't seen play since the first part of the game.

Does this idea sound good? Sound bad? Anything else you may like to add or some important and crucial matter that I may have missed in explaining this?

Please, let me know.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: chillyfeez on April 07, 2015, 10:09:56 PM
I like it, but I do have a few questions, mostly just clarification points...

So the spells the characters learn as a result of using their specific jobs, do they always have them regardless of job thereafter?
That is, does Scholar Edward have access to Bard Edward's spells?
How is the battle counter affected by job changes? If I'm at 254 with DK Cecil and I morph into P Cecil, will P Cecil be one battle away from his next spell? If not, then will he be 255 battles aeway? Or is this what those 26 bytes of SRAM are for?
Since we're on it, are Paladin and Dark Knight two of Cecil's jobs?
Also - and maybe you've covered this in some previous post somewhere - are there enough Job IDs to handle three Jobs for every character?
What about Tellah? Does he have three Jobs? If so, are you planning on "pulling an Aeris" on the player, or will he be revivable? Or maybe FuSoYa will be Tellah part two (or four, or whatever)?
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on April 08, 2015, 12:32:49 AM
I like it, but I do have a few questions, mostly just clarification points...

Haha, very astute questions, thankfully I have considered all of them in the making of this process.

Quote
So the spells the characters learn as a result of using their specific jobs, do they always have them regardless of job thereafter?
That is, does Scholar Edward have access to Bard Edward's spells?

Correct. Each character job (except for Kain/Edward/and Rydia's) will equal out to 24 spells learned to fill up their spellbook. As you can imagine this would mean that each character has their own separate Magic Menu and hence there is no delineation in Spellbooks any longer. One big problem one would normally considered are lack of available skills... well I extended Black Magic and White Magic to 42 Spells in each of their schools and a mishmash of physical skills for the more physically oriented characters (but due to the way this is set-up all characters will get some semblance of magic)

Rydia is... a bit troublesome. She needs to account for the 15 Summons which means she would only get 9 spells otherwise. I will have to consider how to approach that when the time comes.

Kain's Dragoon job will have Dragon Speak with 16 Dragons to get skills from, but he won't learn any spells naturally in the Dragoon Class.

Edward needs 4 Spell Slots empty for Read to work appropriately.

It is precisely the incentive to switch classes from a game progression perspective is to get the additional spells to complete the spell books.

Quote
How is the battle counter affected by job changes? If I'm at 254 with DK Cecil and I morph into P Cecil, will P Cecil be one battle away from his next spell? If not, then will he be 255 battles aeway? Or is this what those 26 bytes of SRAM are for?

Since we're on it, are Paladin and Dark Knight two of Cecil's jobs?

I have considered this... this is another iffy circumstance. First off, yes the 26 Bytes of SRAM stores Job Progression where necessary. (Dragoon Kain, Berserker Kain, Scholar Edward, Tellah, FuSoYa do not use this. Hence the Exact amount of 26 being necessary out of 31)

Dark Knight Cecil will advance and learn his spells, but when he turns into a Paladin the job counter for Dark Knight Cecil will be reset as well. This is actually to avoid missing out on Dark Knight spells since Dark Knight Cecil and Paladin Cecil will not be sharing a spellset because I don't want a "newly crowned" Paladin to have access to the Dark Knight spells since it would sort of spoil the feel of retrieving that power later on.

And as you can guess by now, Paladin and Dark Knight are two of Cecil's Jobs. The third is the Mystic Knight (SpellBlade abilities) since he seemed the most appropriate for that role.

Quote
Also - and maybe you've covered this in some previous post somewhere - are there enough Job IDs to handle three Jobs for every character?

Nowhere Near enough! The game supports 32 Classes all in all yes, but anything beyond 16 is an incomprehensible mess and not worth bothering about

But this plan never was going to utilize that though, I cannot change Equipment Indexes except in very specific circumstances and I only have two  blank spots for that which are going to be used for Onion Knight Porom and Samurai Yang that look at the equipment a character has, and if the character has the proper Job equipped, their Class changes for that screen only to change equipment. And forget about adding an additional 19 sprites in-battle and out of battle, haha!

What will happen when you equip a Job, custom code will look to see what item is equipped in the "Job Slot" and change the Class Name based on Index. Much less messy than dealing with Actual class parameters *shiver*. Incidentally the end of battle will also look at the Job Slot as well to properly increment the Battle Counter. I may also throw in some stat readjusting when changing jobs but that could be trickier than I imagine.

Quote
What about Tellah? Does he have three Jobs? If so, are you planning on "pulling an Aeris" on the player, or will he be revivable? Or maybe FuSoYa will be Tellah part two (or four, or whatever)?

Tellah and FuSoYa are their own jobs Sage and Arbiter respectively, but they start or obtain all of their spells through other means outside of the Job System and since they are fully temporary characters I didn't want to have them gain abilities that you would later lose. Granted this does not mean I have ignored Tellah and FuSoYa.  Tellah will have the lion's share of FFI spells as a sampler of many of the spell sets.

The clear worry present would be spell overlap, but I tried my best to make sure that each character still seems unique (granted there might be just a little too much curing going around, but I'll try to adjust the difficulty appropriately to utilize that).  Each character has their own unique spell (unique among the Job Classes, no guarantee that Tellah and FuSoYa won't have them) to be obtained for Mastery (planned this has been a little trickier to parcel out than hoped)

Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on April 15, 2015, 10:45:26 PM
I am nearly there! I have my job system working *almost* perfectly!

Since it is no longer hypothetical, much of this code is now input into the game I will lay it all out here.

There are 31 classes. Each permanent character (everyone but Tellah and FuSoYa) has 3 classes, 2 of these can be switched to with the appropriate "Job Item' of which there are 20.

(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Job%20List_zpst9kfouio.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Job%20List_zpst9kfouio.png.html)


Before...
(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Default%20Menu_zpsv2mivvse.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Default%20Menu_zpsv2mivvse.png.html)


Equipping Knight Job...
(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Kain%20equipped%20with%20Knight%20Job_zpsgg2unv69.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Kain%20equipped%20with%20Knight%20Job_zpsgg2unv69.png.html)

After...
(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Kain%20is%20now%20a%20Knight_zpsw4got3gx.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Kain%20is%20now%20a%20Knight_zpsw4got3gx.png.html)


(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Kains%20Knight%20Job%20Commands_zpslewsq1c3.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Kains%20Knight%20Job%20Commands_zpslewsq1c3.png.html)

Each Job will come with its own Job Tracker and unique Commands, after every victory the Job Tracker will go up by one. Due to the way this is set up every Level Up while in a class counts as another addition to the Job Tracker.

After a certain number of battles, depending on Job, you will gain spells for that character.

Ironically, despite how proud I was of the Commands in RAM, it served no purpose in the final product as the commands are looked at from another place all together so that freed up the SRAM and that's a good thing. When Rydia changes her classes she'll exchange all of her Non-Summons for the spells of that class.

So say you are a Caller and have leveled up to 85 Battles, this means you already have 4 spells from Caller. Cure, Pure, Ice-1, Venom.

Say you just obtained the Geomancer Job and you switch. Her four non-Summon (and Fire1) spells will be saved to SRAM. When you go to switch Geomancer for either Caller or Necromancer they will be put in their proper place in SRAM and drawn out again when switched to.

I am still on the fence how to handle Edward's Read Spells (Take an enemy's Spell set from their Randomized AI). If they should be limited use, last until the job is switched, or what.




Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: JCE3000GT on April 16, 2015, 12:02:16 AM
This is pretty damn cool.  Final Fantasy IV so needs this sort of development and attention.  I'm getting bored of seeing Final Fantasy VI and CT stuff.  :)
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: chillyfeez on April 16, 2015, 01:09:43 AM
In a way, I think because ffiv had such a limited battle system to begin with, it lends itself to much more dynamic and diverse hacks than what one could do with vi.
I mean, you could pretty much already do anything you want in vi, so interesting ideas about how to switch things up are rare.
But vi has a larger fan base, so the research into its innards was far more complete until only recently.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: JCE3000GT on April 16, 2015, 01:37:59 PM
True! 

Final Fantasy IV is still a better game.  :D

^ Bias because it's my favorite game ever. 
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: LordGarmonde on April 16, 2015, 02:12:18 PM
This is pretty damn cool.  Final Fantasy IV so needs this sort of development and attention.  I'm getting bored of seeing Final Fantasy VI and CT stuff.  :)

Agreed; this is truly some amazing work!

True! 

Final Fantasy IV is still a better game.  :D

^ Bias because it's my favorite game ever. 

My favorite too, so I guess I'm biased as well; but I'm ok with it. One thing I can say is that it sure has had a lot of re-releases over the years, second I'd think only to the original; so at least it lives on in that way; and of course through everyone here.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on April 16, 2015, 07:00:08 PM
This is pretty damn cool.  Final Fantasy IV so needs this sort of development and attention.  I'm getting bored of seeing Final Fantasy VI and CT stuff.  :)

What is strange about those, as Chillyfeez mentions is that really not much revolutionary has been done with them as far as the gameplay is concerned, but that may be because there is so much more possibility and variety that can be utilized in FFVI and CT by default. (Granted FFVI still has no working Event Editor).

In a way, I think because ffiv had such a limited battle system to begin with, it lends itself to much more dynamic and diverse hacks than what one could do with vi.
I mean, you could pretty much already do anything you want in vi, so interesting ideas about how to switch things up are rare.
But vi has a larger fan base, so the research into its innards was far more complete until only recently.

Chillyfeez hits the nail on the head, FFIV is very plain, basic, and barebones. FFVI by comparison is glutted with secret functionalities and every possibility accounted for and its larger fan base has all but mapped the Entire game's ROM. We have much more freedom though, we deal with not very complicated event flags whereas FFVI looks at so much more for every nook and cranny, we have a wonderful map editor while FFVI may be just a little too complicated for that. FFVI's battle system is already top notch where FFIV's is lacking in many respects leaving a lot open for possibility. We still have a ways to go with FFIV but some of these routines are just so Boring to follow, oy...


This is pretty damn cool.  Final Fantasy IV so needs this sort of development and attention.  I'm getting bored of seeing Final Fantasy VI and CT stuff.  :)

Agreed; this is truly some amazing work!

True! 

Final Fantasy IV is still a better game.  :D

^ Bias because it's my favorite game ever. 

My favorite too, so I guess I'm biased as well; but I'm ok with it. One thing I can say is that it sure has had a lot of re-releases over the years, second I'd think only to the original; so at least it lives on in that way; and of course through everyone here.

FFIV is one of my favorite games of all time, but I can look at it and see the faults (some Drastic, like screwing up Evasions all together, an unbalanced backrow, many worthless commands) but still it is a solid piece of work which makes it an ideal building block for any future endeavors.

As for updates...

I tried so hard, with all of my might to get the CODE:2 to activate outside of the "Level up" sequence, but to no avail. So that means when someone Job Levels Up all the game says is "Learned (X Spell)." Name generating appears to be something special that isn't as simple as grabbing the proper values and plugging them in (as it is with displaying Spell Names).  It's not ideal, but I'll compromise with it for the moment.

But that was the final hurdle, some sort of display to indicate something has happened. I think there may be something still slightly off with my magic-grabbing routine, but I'll know in time.

Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: chillyfeez on April 16, 2015, 07:21:22 PM
I didn't have any problems getting that message to work for Kella's (blue magic) Learn command in TfW... until I changed the spell name lengths around (though I think I could work in a fix for that knowing what I know now). I ended up changing the message to, simply, "Learned a new spell!" in order to not have to worry about it.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on April 16, 2015, 07:50:17 PM
I didn't have any problems getting that message to work for Kella's (blue magic) Learn command in TfW... until I changed the spell name lengths around (though I think I could work in a fix for that knowing what I know now). I ended up changing the message to, simply, "Learned a new spell!" in order to not have to worry about it.

Oh? Well what is odd is that "X leveled up!" still works perfectly fine. It's only when it is attempted to be drawn outside of its natural routine that it displays blank space. Is this what happened with Kella's command as well? But... I have to ask why you didn't  use "Character's Name" rather than "Code:02" for that? Does that not work in Battle Messages?

 :edit:

Ah yes, Chillyfeez. Do you happen to know if Asura uses 3 sprites for her summons? Since I separated Summons it would not be a big loss in my opinion to lose the randomness of Asura for two other custom summons if possible.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: chillyfeez on April 16, 2015, 10:37:52 PM
The problem I faced with Kella's command was that once I changed the lengths of the spell names, I didn't know yet how to change the pointer to make the game readjust to show the correct spell name. Hence it's probably something I could fix now...
Obviously, I had to have the Learn command routine force the proper value into the correct bit of RAM (which I don't know anymore, but I'm sure I could find again) in order for the message to display.
I do remember that there are something like three bytes in a row in RAM that refer to different things that get displayed in battle messages (spell names, probably character names and GP/EXP amounts...). Are you sure you're populating the right byte?

Regarding Asura... Are you asking if she has three different sprite arrangement tables?
Well, yes, but not different ones that appear depending on which spell is cast.
The three different arrangements are necessary for the face changing animation, though.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on April 23, 2015, 08:07:08 PM
Ah... switching Asura may be more trouble than its worth then. I'll pass on it.

I never did figure out how to get a name labeled, but I did get "Job Level Up!" and "Learned X" so... if people want to know what job leveled up, they would look to see who learned the spell. Far from ideal, but its all I can manage at the moment.

Though I do have some exciting news! I managed to make an exception in the Equip Tables for two jobs (gauntlets)! (Three if you nix FuSoYa's equips)

It took me a Long time to find, but that's because I wasn't approaching it in the best manner. Now I have and it works optimally!



01C275 - JSR to 01DFE5

Load Character Slot into A

Check Gauntlet/Job.

Is it Samurai? (Item A4)

If so, Load 0E (???'s Equips) into 148 (Location that is used for Equipment roll downs)

Return

--------------

Is it Onion Knight? (Item A9)

If so, Load 0F (Anna's Equips) into 148

--------------------------

Return

Code: [Select]
$01/C275 20 E5 DF JSR $DFE5  [$01:DFE5] A:8002 X:002C Y:0001 P:envMxdIzc - Jump to Subroutine
---------------------------------------
$01/DFE5 DA PHX A:8002 X:002C Y:0001 P:envMxdIzc - Push X (to keep things unchanged)
$01/DFE6 AE A6 00 LDX $00A6  [$7E:00A6] A:8002 X:002C Y:0001 P:envMxdIzc - Load Character Slot into X.
$01/DFE9 BD 32 10 LDA $1032,x[$7E:1032] A:8002 X:0000 Y:0001 P:envMxdIZc - Load Character's Job/Gauntlet into A.
$01/DFEC C9 A4 CMP #$A4 A:80A9 X:0000 Y:0001 P:eNvMxdIzc - Is it Samurai?
$01/DFEE D0 06 BNE $06    [$DFF6] A:80A9 X:0000 Y:0001 P:envMxdIzC - If not, branch
-------------------------------------------------------------------------------------------------
$01/DFF0 A9 0E LDA #$0E A:80A9 X:0000 Y:0001 P:envMxdIzC - Load 0E (???'s Equips) into A.
$01/DFF2 85 48 STA $48    [$00:0148] A:80A9 X:0000 Y:0001 P:envMxdIzC - Store A in Equipment Checker.
$01/DFF4 FA PLX A:80A9 X:0000 Y:0001 P:envMxdIzC - Pull X
$01/DFF5 60 RTS A:80A9 X:0000 Y:0001 P:envMxdIzC - Return
----------------------------------------------------------------------------------------------
$01/DFF6 C9 A9 CMP #$A9 A:80A9 X:0000 Y:0001 P:envMxdIzC - Is it Onion Knight?
$01/DFF8 D0 06 BNE $06    [$E000] A:80A9 X:0000 Y:0001 P:envMxdIzC - If not, branch.
----------------------------------------------------------------------------------------------
$01/DFFA A9 0F LDA #$0F A:80A9 X:0000 Y:0001 P:envMxdIzC - Load 0F (Anna's Equips) into A.
$01/DFFC 85 48 STA $48    [$00:0148] A:80A9 X:0000 Y:0001 P:envMxdIzC - Store A in Equipment Checker.
$01/DFFE FA PLX A:80A9 X:0000 Y:0001 P:envMxdIzC - Pull X.
$01/DFFF 60 RTS A:80A9 X:0000 Y:0001 P:envMxdIzC - Return
-------------------------------------------------------------------------------------------------------
$01/E000 B1 E5 LDA ($E5),y[$7E:1001] A:80A9 X:0000 Y:0001 P:envMxdIzC - Load Class into A.
$01/E002 29 0F AND #$0F A:80A9 X:0000 Y:0001 P:envMxdIzC - Get rid of bits.
$01/E004 FA PLX A:80A9 X:0000 Y:0001 P:envMxdIzC - Pull X.
$01/E005 60 RTS A:80A9 X:0000 Y:0001 P:envMxdIzC - Return

And there you have it! That is all it took to make Equipment choices based on Gauntlet/Job Worn!

Here it is in pictures...

Porom with nothing special... can only equip a Staff.
(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Job%20Based%20Equip%201_zpsqy5nhxuj.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Job%20Based%20Equip%201_zpsqy5nhxuj.png.html)

Porom with the Onion Knight Job able to equip a vast array of weaponry!

(http://i112.photobucket.com/albums/n198/LastingDawn/FFIV%20-%20Job%20Based%20Equip%202_zps9ld30tvx.png) (http://s112.photobucket.com/user/LastingDawn/media/FFIV%20-%20Job%20Based%20Equip%202_zps9ld30tvx.png.html)

This will only work out of battle though. Which is fine with me, it means you can't switch to the best thing for any given circumstance.

Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: chillyfeez on April 27, 2015, 11:00:43 AM
I've been thinking about the quandary you've got about making the right characters appear during events, and I think I've got a solution.

Just a warning: It will require the use of 19 NPCs from each list (Overworld and Underworld/Moon).

So, first, an explanation of how I did what I did in TfW...

In vanilla FFIIUS, when you enter any location (that is, place that might contain NPCs - anywhere but a world map), the game runs the following 12 times (once for each possible NPC):
Code: [Select]
$00/BEE3 BF 00 83 13 LDA $138300,x[$13:8300];Load NPC ID into A
$00/BEE7 20 B7 C0    JSR $C0B7  [$00:C0B7]  ;Jump to routine that loads all of the pertinent details of that NPC

Now, in TfW, I only have one variable NPC ("Your Hired Help"), which may be any one of seven NPCs. To illustrate, this is a snippet of my FF4kster config file:
Code: [Select]
245 No Hired Party!!!
246 Hired Ninja!!!
247 Hired W Mage!!!
248 Hired B Mage!!!
249 Hired Dragoon!!!
250 Hired Bard!!!
251 Mog!!!
252 Heart Bubble !!!
253 Mysidia White Mage praying
254 Mysidia Black Mage praying
255 Your Hired Help!!!
("!!!" signals an NPC I've used, and lets me know during the editing process that I should leave that one alone)

Here, we're concerned with NPCs 245-251, and 255.
So, instead of the above code from vanilla, when a player in TfW enters a location, the game runs the following:
Code: [Select]
$00/BEE3 22 B0 8D 14 JSL $148DB0[$14:8DB0]  ;jump to custom
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$14/8DB0 BF 00 83 13 LDA $138300,x[$13:8AFD];load NPC ID
$14/8DB4 C9 FF       CMP #$FF               
$14/8DB6 D0 35       BNE $35    [$8DED]     ;if not FF, branch to end
$14/8DB8 AD 99 12    LDA $1299  [$00:1299]  ;otherwise, load "hired help" logging flags
$14/8DBB C9 20       CMP #$20               
$14/8DBD D0 04       BNE $04    [$8DC3]     
$14/8DBF A9 FB       LDA #$FB               ;if flag 205 is set, load Mog
$14/8DC1 80 2A       BRA $2A    [$8DED]     
$14/8DC3 C9 10       CMP #$10               
$14/8DC5 D0 04       BNE $04    [$8DCB]     
$14/8DC7 A9 FA       LDA #$FA               ;if flag 204 is set, load Avon
$14/8DC9 80 22       BRA $22    [$8DED]     
$14/8DCB C9 08       CMP #$08               
$14/8DCD D0 04       BNE $04    [$8DD3]     
$14/8DCF A9 F9       LDA #$F9               ;if flag 203 is set, load Lando
$14/8DD1 80 1A       BRA $1A    [$8DED]     
$14/8DD3 C9 04       CMP #$04               
$14/8DD5 D0 04       BNE $04    [$8DDB]     
$14/8DD7 A9 F8       LDA #$F8               ;if flag 202 is set, load Cinna
$14/8DD9 80 12       BRA $12    [$8DED]     
$14/8DDB C9 02       CMP #$02               
$14/8DDD D0 04       BNE $04    [$8DE3]     
$14/8DDF A9 F7       LDA #$F7               ;if flag 201 is set, load Ruby
$14/8DE1 80 0A       BRA $0A    [$8DED]     
$14/8DE3 C9 01       CMP #$01               
$14/8DE5 D0 04       BNE $04    [$8DEB]     
$14/8DE7 A9 F6       LDA #$F6               ;if flag 200 is set, load Blank
$14/8DE9 80 02       BRA $02    [$8DED]     
$14/8DEB A9 F5       LDA #$F5               ;otherwise, load "nobody"
$14/8DED 6B          RTL                   
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$00/BEE7 20 B7 C0    JSR $C0B7  [$00:C0B7]  ;Jump to routine that loads all of the pertinent details of that NPC

There's also this:
Code: [Select]
$00/BE6F BF 00 83 13 LDA $138300,x[$13:8300]
Which deals specifically with loading NPC images when exiting the menu screen back to gameplay. This also needs to be changed to JSL $148DB0, or else when you exit the menu, "hired" NPCs will have the right palette, but will use the main character's sprite instead of their own.


So that's how I did it in my project.
For this one, it'll take more NPCs, but the amount of custom code will be about the same (possibly a bit less).

As I said, you'll need to use 19 NPCs per set to make this work.
They will be known as:
Character in Slot 2
Character in Slot 3
Character in Slot 4
Character in Slot 5
"nobody"
DK Cecil
Kain
C Rydia
Tellah
Edward
Rosa
Yang
Palom
Porom
P Cecil
Cid
Edge
FuSoYa
A Rydia

Assuming that you're using the Shadow party hack for this project, I would suggest using NPCs FC-FF (252-255) as "Character in Slot (2-5)," NPCs EA-F7 (235-247) for "nobody" through FuSoYa, and 251 for A Rydia. Rydia being separated from the rest will make the coding a little more efficient. You'll see why...

So, you'll need a JSL to custom in the same two places - $BEE3 and $BE6F.
Your custom assembly will look like this:
Code: [Select]
BF 00 83 13 LDA $138300,x ;Load NPC ID
C9 FF CMP #$FC ;is it "character in Slot (something)?"
90 18 BCC $18 ;if not, skip to end
38 SEC
E9 FC SBC #$FC ;subtract FC from A
C2 20 REP #$20
0A ASL A
0A ASL A
0A ASL A
0A ASL A
0A ASL A
0A ASL A ;multiply result by 0x40
DA PHX ;stack X
AA TAX ;Transfer A to X
7B TDC
EB XBA
E2 20 SEP #$20 ;clear A and set it back to 8-bits
BD 40 10 LDA $1040,x ;Load Character ID into A
18 CLC
69 EA ADC #$EA ;Add 0xEA to A, making it the value of the appropriate NPC
FA PLX ;pull X back off the stack
6B RTL

Doing all that should make it so that NPC FC will always be the character in slot 2 (and nobody if there is no character there), FD will always be the character in slot 3, and so on.

You'll probably also want to rewrite the "change charcter graphic to XX" event code so that it always changes character graphic to that of the character in slot 1 (why not, since the possible party variations make it essentially worthless anyway). You'd have to rework any scene that calls for the character graphic to be that of a particular character, but you'll probably have to do that anyway in this hack.

I think that should do it!
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on April 27, 2015, 01:54:53 PM
Oh man! I just figured out how the name loading in battle worked and you hit me with this! This is fantastic Chillyfeez! I will make sure to follow this later on to see if it works to my exactions. Thank you very much for all of your assistance!
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: TheBigT2000 on May 09, 2015, 02:28:17 PM
So, is there like a patch for this anywhere I could use? o3o
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on May 09, 2015, 07:27:14 PM
So, is there like a patch for this anywhere I could use? o3o

As of now it is less than usable. And with 31 Job Classes the 48 spells the original game provides really isn't enough to flesh out... well much of anything so I've been in the process of creating the means for that. But it will be released in a culmination project.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: koala_knight on May 13, 2015, 02:21:03 AM
Oh, man! I'm really excited for this. Ever since I played the DS version I've wanted to have something comparable, but more traditional in the original.

I have a question, though. You are using accessories to create the job items, right? Will normal accessories still be usable or are they being completely replaced?
Also, since they are technically accessories, can't you have each job item give relevant stat boosts?

Will Cecil be able to revert to his Dark Knight sprite when using that job?

Will it be possible to at least give the other characters a palette swap when using their alternate jobs?

(And on an unrelated side note: I was wondering if you might know if there are any technical limitations that might prevent me from porting over the GBA graphics to the SNES version of the game.)

Fantastic job so far! Good luck with the rest of the project. :cheers:
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on May 13, 2015, 11:07:27 AM
Oh, man! I'm really excited for this. Ever since I played the DS version I've wanted to have something comparable, but more traditional in the original.

I have a question, though. You are using accessories to create the job items, right? Will normal accessories still be usable or are they being completely replaced?
Also, since they are technically accessories, can't you have each job item give relevant stat boosts?

Will Cecil be able to revert to his Dark Knight sprite when using that job?

Will it be possible to at least give the other characters a palette swap when using their alternate jobs?

(And on an unrelated side note: I was wondering if you might know if there are any technical limitations that might prevent me from porting over the GBA graphics to the SNES version of the game.)

Fantastic job so far! Good luck with the rest of the project. :cheers:

Thanks for your support! A Job Sytem is not the only things in the works here...

Yes, Accessories are completely replaced with "Job" shown in that slot. While it is not ideal At All to have Jobs in the same inventory as normal equipment, I couldn't conceive of a scheme that would let me change this.

It was planned that each job would have their corresponding stat boosts, I was considering going a little deeper and instead of numerical value increasing certain stats by 1/8th and decreasing by 1/8 when the job is removed... but we'll see on that. Right not it's just normal +3/5/10 stuff.

Sprites... are tricky matters, if you look at this topic (http://slickproductions.org/forum/index.php?topic=2033.0) you can see I did succeed in switching sprites mid-battle. (And well... entire equipment pools and character stats as well for that particular hack. I'd say that hack is done at this point and I will be posting on it in my main topic soon).

Palettes are also a messy subject for me, to my knowledge there's only 3 or 4 for the main cast, bizarrely enough on the overworld and some of them look Terrible on other characters.

I have learned where Palette is located in battle though and it is a possibility that I could switch up palettes, but that's something that would come at the tail-end of the project as that would be a large chunk of custom code to have unique palettes for 20 Jobs  (the other 11 are their base jobs so they wouldn't need any palette switching).

The person to ask regarding graphics would be Gedankanschild, who has done a Fantastic job of what you are just describing. He has his own topic. http://slickproductions.org/forum/index.php?topic=1945.0

Just let these terrible GBA portraits die a cold and lonely death though, hehe.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: TheBigT2000 on May 13, 2015, 02:59:31 PM
I never really cared for the Accessories in Final Fantasy 4 that much, I think this is the best way to do this.
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: koala_knight on May 15, 2015, 02:03:28 PM
Just let these terrible GBA portraits die a cold and lonely death though, hehe.

lol! Will do!
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: koala_knight on May 20, 2015, 06:23:06 PM
Another question. Are the old accessories completely overwritten or could one, say, convert them to work in another slot? Perhaps allowing bracers to be used in the hand slots or some such like that?
Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: Grimoire LD on May 20, 2015, 06:34:42 PM
Another question. Are the old accessories completely overwritten or could one, say, convert them to work in another slot? Perhaps allowing bracers to be used in the hand slots or some such like that?

I'm afraid they're all gone 20 Accessory slots for the 20 Job Classes that characters can switch into. But what you are describing is Exactly what FFIV:Unprecedented Crisis does and I may borrow that concept as well to add more "shields" at the expense of a couple of hats and have those be the old Accessories (well "old" as in Combat Boost-wise). Good idea there!

Title: Re: FFIV Job System (Culmination of all of our works and hacks)
Post by: koala_knight on June 02, 2015, 03:07:28 PM
Cool. Can't wait to try this all out.