• Topic Archived
You're browsing the GameFAQs Message Boards as a guest. Sign Up for free (or Log In if you already have an account) to be able to post messages, change how messages are displayed, and view media in posts.
This topic contains spoilers - you can click, tap, or highlight to reveal them
  1. Boards
  2. Breath of Fire III
  3. BoF 3 Modding tool

User Info: GoSu1

GoSu1
3 years ago#1
Hey,

I've been holding back from posting this for quite a while, because I wasn't sure if there would be any public interest in a modding tool for BoF 3, but now I decided to do so anyway :P

So a couple months ago I got back into programming and decided to make a modding tool for BoF 3 as my first "practice project".
I never finished it, but maybe you guys wanna try out the first version.

Here are a couple screenshots:
http://imgur.com/a/9Fpdg

Important notes about the tool:
- backup your files before using this program
- use it at your own risk
- it's written in c#, so you need to have .NET framework 4.5 or higher installed, which shouldn't be an issue, unless you're still running WinXP in 2016
- it supports the PS1 us 1.1 ginseng version (md5: 9dd9a7c934b8b59d0ce76b0f25d18176) and the PS1 us 1.0 vodka shot version (md5: 226771993e29ca5c8e6e2c094c40e8d2)
- it supports modifications of enemies, items, fairies, masters, vendors and formations.
- it does not support enemy skills & ai conditions, because I never got to checking all the different op codes etc.
- it does not support dragon genes & stats, because i simply don't know where those values are stored.
- it does not support characters and spells, because I got bored by this project before I could finish those.. :P
- most functions should be self-explanatory and I implemented some input checks, but you still have to know what you're doing, otherwise you might get weird behaviour and/or unexpected results
- the binary file and the data folder have to be in the same folder for the tool to work

Legal note:
The tool does not contain any game data. It only modifies already existing image files of the game, so it should be perfectly legal to use.

Here is a link to the virustotal.com analysis of the binary file (wtf is Qihoo-360?! ._.'):
https://virustotal.com/en/us/file/1e7c95b7626af5f6408ba3c39c6d4de08600618efd36826191c84b3fc792b8c8/analysis/1466182340/

Finally, the link for the tool:
https://drive.google.com/open?id=0B-vFMhk_NOw_YnpxM0w1QzBxNlE

Enjoy.

User Info: Cultevel81

Cultevel81
3 years ago#2
Time to get to work, Starry. ;)
3DS Friend Code: 3265-5107-4067
Friend Safari: Electric (Pikachu, Dedenne, Zebstrika)

User Info: second_advent

second_advent
3 years ago#3
A quick list of problems I've run into in the past when trying to mod the game (trying not to go too in-depth on each here; mostly just for things to watch out for):

*Physical damage - Very few things here you can change without rewriting code, and a stupid amount of multipliers through abilities/buffs (very easy to reach max effective attack late-game even with a level 1 character if you know what you're doing and/or abuse things). Atk-Def for base damage results in enemies you can barely damage if you buff their defense some (especially noticeable early on), but switch to taking a ton of damage quickly as you start getting more attack than their defense (100 Atk - 70 Def means 30 base damage, but then a mere 30% boost here to 130 Atk doubles your damage to 60).

*Magical damage - Magic is actually fairly decent on its own with its most powerful point being at the start of the game where enemy Int is generally low and there's few resistances/more frequent weaknesses (plus you have an effective free 100 Int towards magic calculations for the magic's "base" damage/healing). Problem here is that you need quite a bit of Int to actually increase the damage a respectable amount (100 Int to double base damage, due to free 100 effective Int), and that Int also doubles as magic defense (for up to 50% reduction regardless of element), making any enemy you want to have decent magical damage also become a magical tank. If the enemy has a decent chunk of Int and even slight resistances (or barrier) then your magic output drops drastically, even with a high base power.

*Item/equipment effects - Let's say you wanted to make green apples heal 50 HP they are filled with delicious baby goos after all. This in itself is a fairly simple change (even if it has to be done in the code itself), but it has a side effect - bread, cheese, piranhas and flying fish will also heal 50 HP. Each specific healing amount or cast ability is its own hardcoded formula rather than one that reads a power or ID from item data to allow each thing to have its own usage, so you'd either have to work with the few limited formulas (and affect all using that same formula) or rewrite them to work in a more sane way. Weapons that boost damage vs devil/dragon are hardcoded in the physical damage formula (based on weapon ID used), and specific equipment stat changes that aren't "normal" (like attack boosting on armor) are all hardcoded in the stat change routine, so unless you change the code then you are stuck with those changes.

*Enemy AI - While the AI is pretty easy to tweak you are very limited in what you can change (four conditions) and must always change the skills available, which breaks things when activated "out of order" from what's intended. On top of this, attempting to flee (whether by accident or intentional) completely breaks a lot of the conditions that trigger at the start of the turn since the game doesn't run the checks at all, so unless you only use triggers that happen right after an action (which limits what you can do even further) then the AI can be broken fairly easily, even if unintentionally done.


There's luckily still a lot of things that are easy to change/work with, but you'll always run into problems with these unless you actually go in and rewrite things (something I need to do sometime <_<) or cut out a lot of stuff that's too overpowered to work with. This also doesn't factor in other types of bugs (like the escape calculations), oddities (like poison being a buff), or other hardcoded junk (like enemy sprites being tied to the areas themselves), just the most annoying problems that are hard to work with/around.

I probably complain too much about BoF3 stuff, but it's because I've had years of experience with its problems :v
FFXII NLBLLG: 43 Marks, 11 Espers, Wyrmhero Blade obtained!
FFX NSGNSNCNONENNENBB: Mt Gagazet + capturing

User Info: KevinSephiroth

KevinSephiroth
3 years ago#4
Very nice!
-Hyunckel | Intel i5 6600K @4.2 GHz | Gigabyte GTX 980 Ti @1450 Mhz | 2x4GB DDR4 @2400MHz
The maximum number of users you can ignore is 200.

User Info: StarryKnights

StarryKnights
3 years ago#5
Cultevel81 posted...
Time to get to work, Starry. ;)


All the modifications I've ever wanted to do, I have done...

Besides, the tool has not quite reached the level I'd need - the lack of being able to alter character stats/level gains/spell gains/etc would force me right back into hex editing.

"oddities (like poison being a buff)"

Wait, what? How...why?! Second, it's been over ten years since this madness took you. How can you still be digging up MORE?
"A life is like a garden. Perfect moments can be had, but not preserved, except in memory." ~ Leonard Nimoy

User Info: Cultevel81

Cultevel81
3 years ago#6
StarryKnights posted...
Cultevel81 posted...
Time to get to work, Starry. ;)


All the modifications I've ever wanted to do, I have done...

Besides, the tool has not quite reached the level I'd need - the lack of being able to alter character stats/level gains/spell gains/etc would force me right back into hex editing.

"oddities (like poison being a buff)"

Wait, what? How...why?! Second, it's been over ten years since this madness took you. How can you still be digging up MORE?


....I really should have expected this from you by now. xD

But with time and effort, do you think it's possible for a modding tool reach that sort of level, despite the difficulty?
3DS Friend Code: 3265-5107-4067
Friend Safari: Electric (Pikachu, Dedenne, Zebstrika)

User Info: StarryKnights

StarryKnights
3 years ago#7
Yes. All I've changed is easily alterable by anyone with knowledge of hex, and access to a reference sheet.

I am not Second_Advent. I do not find out the game considers poison a buff. What the ****.
"A life is like a garden. Perfect moments can be had, but not preserved, except in memory." ~ Leonard Nimoy

User Info: GoSu1

GoSu1
3 years ago#8
Thanks for that little insight, second_advent.
I noticed that a lot of stuff seems to be hardcoded. Unfortunately, I barely know anything about assembly/MIPS,
so I never really planned to implement support for those details.
I wonder if it would be even possible, especially in a way that would make sense :?

StarryKnights posted...
Besides, the tool has not quite reached the level I'd need - the lack of being able to alter character stats/level gains/spell gains/etc would force me right back into hex editing.

Despite second_advent's quite demotivating words, I'm actually thinking about picking this project back up and finishing the remaining categories,
because I'll prolly have a lil more free time in my hands starting next week.
It would actually be nice to have a tool that lets you modify at least everything that's not hardcoded.
The saddening lack of BoF 3 mods and modding tools was one of the main reasons why I even considered making this tool.

User Info: StarryKnights

StarryKnights
3 years ago#9
Second_Advent is, by his very nature, motivation's kryptonite. Do not be the Superman of programmers. No gods or kings: Only man.

Your tool, even in its nymph form, is quite a boon to potential modders who are, as of yet, intimidated by a hex editor and extracting/inserting files into an ISO.
"A life is like a garden. Perfect moments can be had, but not preserved, except in memory." ~ Leonard Nimoy

User Info: second_advent

second_advent
3 years ago#10
StarryKnights posted...
"oddities (like poison being a buff)"

Wait, what? How...why?! Second, it's been over ten years since this madness took you. How can you still be digging up MORE?


This is actually old info probably buried in my old threads. It's "technically" a buff as a poisoned unit will take only 75% of the normal physical damage they'd take otherwise, which I assume was meant to be that they deal that much instead.

This allows you to do things like make the normal lv1 Ryu vs AT Garr fight very difficult to lose rather than than heavy RNG due to Garr's level giving defense-ignoring damage that quite often goes over Ryu's max HP. Poison + Speed Boots from Claw, as well as removing Ryu's armor (it's useless here) as well as equipping a light weapon will reduce Garr's physical attack to be low enough to survive while giving you the speed to move before him and heal each turn, to survive multiple physical attacks in a row (no EX turns though).

You'd basically just heal as needed before you get attacked and then attack once you get healed by fire, or just play super-safe and just defend the entire time (unless healing is desperately needed) letting reprisal do the work, which reduces Garr's damage from 75% by another 50-70% (with an average of 56.25%) for 37.5-52.5% total reduction (average of 42.19%). If the first method of just healing before each turn and attacking after being healed doesn't work, this one would, but would be only slightly less boring than letting archmage drain all of its AP >_>


And speaking of Archmage, you can also do stuff like take a level 11 Ryu (I recall that's the min post-game level for Ryu), give him decent end-game equips to where his total atk+def is 333+ (plus a soul gem and thunder ring), then just survive long enough to do a Last Resort to give yourself a third of the Attack cap, Berserk yourself to max attack and die from the counter, reviving through the soul gem (and giving you full control but with maxed attack still, due to a glitch), then do a double focus before a powerful finishing attack, potentially one-shotting it with your 1998 effective Attack. That's a good ~8 turns or so if everything goes well, rather than a stupidly long time through autofight for the guaranteed boring route, or you can take a bit longer and work with protect/might buffing, but that's a higher failure chance as it takes more turns of not having Ryu get smacked.

Of course you'd also need to draw attention from Ryu, which would be done with Garr at the head of the Attack formation (Peco wouldn't be leveled in an LLG) to draw most of the physical attacks (packing poison + defend), everybody would need a Thunder Ring for Mjollnir, and then the other character would just play support (Momo using Protect on Garr would help him survive). Could super-cheese things by having everybody equip a Soul Gem and not just Ryu (for the Berserk glitch), since it's not like abusing glitches isn't already cheap enough :P


Also, I'm only "mostly" negative with BoF3 modding stuff due to the amount of time I've spent messing around with/going through things and realizing how much of a pain it'd be to change a lot of the simple things, since they appear to have built it by just throwing more and more in without making much of it easily expanded. They were likely rushed and didn't have a lot of time to make things nice because they were too busy getting it in ASAP and worrying about cleaning/rebalancing later if they had the time. BoF4 is a bit cleaner (but still bad) as it had 3 to work off of, which is why they had more time to focus on extra things, compared to 3 that has most of the work focused on the early parts of the game with the endgame being mostly filler.

I just like to make it clear that if you want to deal with BoF3 modding, that there's a lot of things you can't do without ASM work, that's all :V
FFXII NLBLLG: 43 Marks, 11 Espers, Wyrmhero Blade obtained!
FFX NSGNSNCNONENNENBB: Mt Gagazet + capturing
  1. Boards
  2. Breath of Fire III
  3. BoF 3 Modding tool
  • Topic Archived