Closed VaylenObscuras closed 1 year ago
I'll try and hit everything, so please bear with me if I miss something here:
water
/forest
elemental damage, though there might be values for them, I am unsure, this can be tested.MDT
is the file extension for the maps(i.e. Carbo Village
), the drop down should display the name for each map area(some map names are garbage data).Target Effect
defines what the move actually does(damage, healing, some effect, etc.). The visuals would be the Animation
value.Multiplier
is a bit tricky, but my understanding of it is that it is a per-level multiplier for the Strength
value.Multiplier
is not actually used for anything, so it can safely be ignored.Elemental Strength
defines the percentage (times 10) that the move has for that specific elemental type. So for example, a value for 4
here would give a 40%
elemental strength for that element.Base Stats
are in PC_INIT
, all the per level-up values are in a different file: TB_LVUP.BIN
, but it defines all characters and each level, which seemed a bit tedious to work with. I can however add that in the future.Ryduo
is a spelling mistake, thanks for catching that!In regards to save editing, I don't believe there exists an easy program to modify saves, no. The best resource currently is the old guide on steam: https://steamcommunity.com/sharedfiles/filedetails/?id=565784557
Thanks for the reply ^.^
So, no actual water/forest element, I see. I mean, could be something down the line to add, together with adding some weaknesses/resists to those elements on enemies..
I saw the drop down menu in MDT, but don't quite know what to actually use that for.
So an 8 in elemental strength would be 80% elemental damage, 20% non-elemental(or physical) damage?
Base stats are in PC_INIT.. hm.. I think they are labled as "unknown", right? Presumably Unknown #15 to #22, if I had to guess. Shouldnt be too hard to find out which number corresponds to whichever stat.
I think being able to edit level-up stats would be very helpful. Can you create different level-up stats for each character? So that, for example, Mareg would have exceptional HP growth compared to Elena.
Multiplier.. so 25 would, presumably, be a 25% increase to the base power of a skill, not the stat multiplier, correct? Or just a +25 onto it? I wonder how exactly I could test it..
And on the multiplier thing in SK_PARAM~ I get the impression that it governs the stat increases of leveling the skill. Well, most skills are either "Special" or a simple 10 per level(and they all have a multiplier of 100), but Life Up is(supposedly) 50-800, "Base HP" on 50 and "Multiplier" on 200..... Ahh, I think i get it. I remembered that Life Up had non-linear growth(50/100/200/400/800). So a multiplier of 200 actually modifies the base value, which causes the exponential increase when it is above 100.
On the topic of skills, specifically Chants, how does the game know which spells to boost? With the Quakeblast charm, for example, I see nothing that categorizes "Boom" as an explosion-elemental spell past maybe the icon. And also, does the Leafwater Chant actually do.. anything? Would take quite a long time until i get to the skillbook to test it.
And lastly, is there a way to edit - or at least see - what all the effects categorized as "Special" - like Gravity or a lot of the skillbook effects - do? Would be helpful if I could actually edit them of course, but at least seeing them and knowing their exact values is probably enough.
STR
, VIT
, etc. stats, those would be a part of the TB_LVUP.BIN
file, sorry.Icon
value of the spells, since for example, Meteor Strike
has no Elemental Strength
, but the chant does affect the move.So that's in lvlup, too, I see.. How much work would it be to integrate that one into the program? And any idea what all those unknowns in PC_INIT might be? There are quite a lot.
Hm, I think it shouldnt be too hard to test it once I get into some save editing. Any idea where I might be able to find stuff like damage formulas, IP formulas and whatnot?
Okay, I can test wether that's the case once I get skillbook.
The icon, hm~ Yeah, kind of the only thing that could be it. I wonder if the chants also affect stuff like status % for some of the water/forest moves. There isn't really a clean way to test that for me, I fear.
I looked at the special effects file. It's a bit incomplete, sadly, though most things can be inferred by cross referencing. Is there any way to actually change the values of those "special" effects? Cause stuff like Full Body Blow should have some kind of value attached to them.
I wonder.. is it possible to "stack" spell or move effects on top of eachother? Like editing a spell to damage enemies in its area and buff allies at the same time? I remember using such kinds of scripts quite often when modding various games and they can be quite useful. Reminds me of the time I modded Warcraft 3 where I often stacked like 5-6 skills on top of eachother to achieve an ultimately simple effect lol.
Full-Body Blow
is in the Special
value. Again, there's different types of "special" between contexts.Hm, I see. Well, I'll hope for the best.
Can you point me to some of said speculations? Roughly is better than nothing.
What I meant is that not all of the special effects are documented. When I cross reference with your program though, I can find out what most of them do. I think I know what you mean that they are different depending on context - for example, how both Abandonement skill(evade up) and Howlnado are number 11 for some reason.. Question is if I could, for example, change the actual value of a special effect. Abandonment is likely some %increase to evasion and I'd really like to be able to edit such values.
I can certainly try to dig them up again, sure.
Thanks, that would be very helpful. Any idea regarding changing the actual effect of stuff that is categorized as "Special"?
Do you know wether "Strength" has any effect on heals? I noticed all heals only having(a particulary) "Power".
Oh, and something that occured to me.. When I edit the enemies, do I edit the hardmode version or the normal mode versions? Edit: Tested it with an old save I had, it seems my changes don't affect enemies on hardmode. Any idea how I could edit hardmode enemies? Would also be massively helpful to be able to view the stats of hardmode enemies as a point of reference.
I also noticed that there is an additional "damage" value in enemy moves, with a questionmark behind it. Care to explain what might be up with that? Also, enemies seem to be missing some stats. They have no Magic or Strength. Im guessing they are not needed for enemies, cause its all handled via their skills alone, correct?
I also ran into a problem~ Trying to half the power of chants(from 10-50 down to 5-25).. But I would need to input 0.5 for that to work. Is that a limitation of the game or of the program? I really hope I'm not getting on your nerves with all my questions :x
Normal
version of the game, adding a way to toggle between versions should be possible as well, but it is a lot of data to load and parse.Unknown
or has a (?)
is something I have no idea what it means, or hasn't really been verified in any capacity.0.5
.Thanks for the answers.
Hm.. It'd really be much easier to base a mod on the hard version instead of the normal version. Do you think you could get a toggle for that done sometime soon? My idea was to mod as I play through the game, makes it much easier to judge enemies and having the hardmode versions is just a far better reference point for me. If I at least had a good view of all the stuff that changes with hardmode, I could edit that in before I start my playthrough.
May the "Damage(?)" line in the enemy moves be like their strength or Mag for damage calcs, or have you ruled that out already?
Okay, if a 0.5 is not possible, I think it's impossible to nerf the chants to below +10% per level, considering the multiplier line in there apparently does nothing. Makes me wonder~ is it possible for a Skill in a skillbook to only have 3 levels instead of 5?
It might not be immediately done, but I will find the time to implement these changes to allow further modding.
You could in theory set the required coins to be too much to reach a level 4 or 5, not sure what the max is.
That would be great if you could find the time for that. In the meantime, I've got to decide wether to play on hard for a better difficulty curve but no ability to mod enemies, or on normal for a worse difficulty curve, but the ability to edit enemies on the fly..
Yeah, limiting them via big coin costs to lvl 3 is what I am currently doing. Playing for myself, I can just choose not to use some of the more broken skills on level 5(like the IP recovery ones or the chants).
Could you explain to me how to adjust enemy groups? I am trying to figure out how I can fiddle with enemy AI and such.
Edit: It occured to me that I actually haven't seen where I can adjust the properties of the base attack and criticals of party members. I was thinking of buffing generally weak criticals(like elenas) to have higher IP damage or better recovery. Are those also handled via the lvlup.bin that needs to be added?
But to ask again, I'm not sure if you missed those points: The "Damage(?)" value in enemy moves: May that be kind of the mag/str the damage is calculated with, as enemies have no natural mag/str but this additional damage stat? I'll try to test for that myself, but just wanted to ask if you have already gone through that. Seems like you at least know that value affects damage.
And on the "special" property again: Is it somehow feasable to modify what exactly they do? Like which skills Magica Esoterica affects, or how strong the taunt on Decoy is? It seems like it might be somehow hard-coded, but I hope not.
I went ahead and added support for the Levelup data, hopefully the structure is alright. The download can be found here: https://github.com/krogenth/G2DataGUI/releases/tag/0.0.11b
As for the remaining questions:
Enemy Index
in the MDT
's Enemy Groups
section: https://github.com/krogenth/G2DataGUI/blob/master/docs/nme%20list.txtMDT
's Enemy Positions
section, giving x & z coordinates for their bounding box(where they can travel).PC_INIT
section that modifies critical hit statistics, but I am not aware of them.Damage (?)
value and finding that it did change the damage dealt, but would recommend testing it.Oh, that was quick. Thanks a lot. Structure seems perfectly fine. But man, it's a bit of a drag that you need to edit every single level. But at least I have something to work with. Now, once I get the hardmode toggle I'll start to modify enemies. Ive been starting a playthrough on hard already and jotted down some notes for enemy changes already.
Hm, I don't quite get the values for "Enemy Index". I've looked through groups in Garmia tower floor 1&3 and the enemy Index value is always 0 or 1, which doesn't make sense to me.
Regarding enemies, I noticed that there are different... AI presets, with different skill-use chances and all that. How can I find out and edit which enemies use which AI preset? For example, the Gargoyles in Garmia Tower likely have a different AI than the ones in Lilligue cave.
Regarding Criticals and PC_Init.. There is a line for IP Stun/IP Cancel Stun, but I am not sure what it is used for. The value is very low(15/30). Any idea what those are for?
Would be great to find a file that expresses all the special stuff. Maybe you'll find some ways to alter them.. Cause as it is, there are a few too many special effects that just kind of.. break the game if you abuse them.
Sorry, that's my bad, Enemy Index
was wrong, it's Enemy Offset
that you need to reference that file for.
AI presets are all there in the ENEMY AI
section, there's different AIs, and you would want the AI Type
value to mess with. These are hard-coded as well, and I haven't dug into them at all, but it handles when that specific AI set is used. For example, one of the ghouls are an AI specific to increase the chance to use the drain ability to regenerate health when it's at 50% or lower HP.
The IP Stun
/IP Cancel Stun
are for resistances in PC_INIT
for when that character is hit. You can hover your mouse over some of the labels to things to see a bit more information about it as well, like the T_
labels in PC_INIT
.
Okay. So enemy offset defines which enemy it is. How are groups of multiple different enemies defined? You oftentimes see groups of multiple enemies walking around together.
Hm.. I really need some more information about AI Type then. It's kinda important to know when a different AI is used, even if I cannot precisely edit that. I think there is a lot of potential for more interesting enemy design if I had that at my disposal.
Ahh, whoops. I noticed the hover functionality, but kinda forgot it was there for that line.
Edit: How can I import my mod data onto a new game? I noticed there is an export function, but didn't see one to import.
Edit2: A few suggestions regarding the lvlup.bin. Due to each level having it's own entry, it would be very nice if one could skip through the levels with a button press in addition to the list. Would make it much easier to use, if that would be possible to implement. And could you produce a document that lists all the level-up stats for the characters? I'd like to get an overview of the stats to do stat growth properly, but it's extremely tedious to go through all the levels one by one. Would also help if the program could read the stats and spit them out as a list, so that I've got a better overview of my changes done.
Sorry it took a while, but there's a good amount of stuff that I should update you about...The release can be found here: https://github.com/krogenth/G2DataGUI/releases/tag/0.0.12b
Normal Mode
and Hard Mode
for enemies/bosses
File
dropdown as either Read Hard Mode
or Read Normal Mode
depending on which one is currently read inNow for the questions you had asked:
Export All to CSV
is just to generate a bunch of CSV files of the data currently loaded into the program, they can be found in the .csv/
directoryOh, very nice. That was quick of you, thanks. One suggestion, though: I think that the seperate windows(like for enemy moves and ai) in the program actually made editing a bit easier, cause you could just place any currently relevant windows where you need them at the moment. With the drop down, some windows get really large and I need to scroll down, which actually makes it a bit more cumbersome, imo.
Hm, okay. I won't mess too much with AI then if I cannot tell what it will do. Would be really helpful if you could dig a bit into it in the future. I plan to, at least try to, make random encounters a bit more.. strategic. Basically turn them into something of a "puzzle" to deal with. I think I can do a lot in that regard with base stats and move properties, as well with smaller AI edits. But having the ability to really change up the AI patterns under certain circumstances would be pretty great.
Ah no, I did not mean new game in that sense, but on a fresh install. Basically: How to save the mod and install it onto a fresh file. I'd probably copy the whole data-folder, but I think there might be a more elegant solution.
Buttons or hotkeys would really help with making the editing of level-ups a little bit faster. It would also help if you could edit "Roan" and "Prince Roan" at the same time - at least having the option would cut a lot of work when doing levelups. Thanks for that list, I'll definitely put that to good use. I've already gone a good bit through the levelup lists and one thing that struck me as quite odd is how low the stat growth on Magic and Mentality is, even for the more mage~y characters. Any idea why that might be? Assuming that "Power" in moves/magic is likely the scaling, it doesn't seem like Magic has a particulary higher scaling than physical moves - it's a little bit higher across the board, but not by much. Heals do have very high mentality scaling in the base game, though.
./content/
or ./afs/
directory depending on version you are using(HD vs Anniversary), multiple files aren't fully fleshed out, particularly the map filesI'll certainly try to deduce what some values for the AI mean. But there is a certain AI "condition" I am particulary interested in: Changing behaviour based on Status. At its simplest, this would just be something like de-prioritizing move/magic and prioritizing the other when affected by move or magic block.
Okay, thanks.
Hmm.. I'll take a look at the stats of each character and just go with my gut. If I document everything properly, it should be easy enough to make some changes if anything is out of line. I believe I remember magic being generally a weaker than moves later into the game, except a few very high tier magics.
I think I noticed a mistake regarding levelups while making some spreadsheets. The stats for Magic/Mentality and Agi/Speed are flipped, both in the list you gave me and in the program itself. MOV is actually Mag, ACT is actually MEN and vice versa, I think(double check that if you get to it, please)
Noticed it cause it seemed weird to me that Elena had atrocious Magic and Mentality, but very high Act, despite she always seeming so slow to me. That's also why the numbers on Mag and Men seemed so low to me - they were Act and Mov, which are a different kind of stat and thus follow a different scaling.
They are indeed flipped, just double checking that everything is in the right place and will put out a fix for it.
The fix can be found here: https://github.com/krogenth/G2DataGUI/releases/tag/0.0.13b
Thanks. Good thing I didn't actually start modding levelups extensively yet, would have been quite a hassle.
Okay, after literal hours of work, I've finally edited the base stats and stat growth of all characters x.x That was quite a lot of work.
Editing some starting enemies now. It would really help if I would at least know how to, for example, roughly double the damage of an attack. Any idea what would approximately double, for example, the Mottled Spiders' "Attack" or "Web Trap"?
Please keep me updated on any new updates to the program or if you have any new information for me. I'd still like to know a bit more about AI and "Special" thingies ^.^
Just noticed something while editing enemies and their status resists: Clicking on any of the status resist boxes ticks or unticks ALL of them. I cannot, for example, make an enemy resist everything but paralysis. Additionally, on enemy moves, clicking a status effect does nothing. Some have none and I cannot add any(like mottled spider Attack), and the ones that have status effects associated(Like Crag Snake Attack) have ALL status effects ticked on. Haven't yet tested if those erroneous values actually apply in-game.
Applies to enemies both on hardmode and normal mode.
Yes, that would be a bug, something I messed up when doing a refactor to clean up some things, my apologies, I'll get a fix for that out ASAP.
I'll give updates as I figure things out, but I need to get time to test things as well.
Figured as much ^.^
No worries, things take time. I'm just glad for any new options.
A fix for the ailments can be found here: https://github.com/krogenth/G2DataGUI/releases/tag/0.0.14b
Thanks ^.^
Just to doublecheck, did the erroneous statuses actually change anything? I fear that the bug might have fucked up something.
It was essentially pointing to some incorrect data, so if you attempted to modify it, yes, it will now be wrong.
I did attempt to modify some things. Just checked and there doesn't seem to be anything out of the ordinary. I hope that means everything's alright..?
Everything should be fine then, it was only pointing to the wrong ailments settings(in one way or another), so long as they look fine, it will be all good.
Okay, that's reassuring.
So, after a week of work, I can finally actually play the game xD
I just noticed~ It seems like Act and Move in the levelup editor are switched. The other stats seem correct.
Quick question: What is that value in enemy moves called "Ailments Bitflag"? I assume it's some value that associate ailments, as it changes when I tick stuff on or off.. But it also seems to be a bit buggy. For example: On an attack with no ailments, ticking poison on causes the value to go from "0" to "1", clicking it again(so ticking it off), it stays at 1... and ticking it once again(so ON again) it goes down to 0. Seems a bit buggy, but I didnt get to test it so far.
Edit: It seems like the boxes you can tick show wrong stuff on ailments. I just edited the Frost Frog attack to have Move Block on it), which is ailment bitflag 64. Ive then gone to Crag snake and it showed "Move Block" as ticked "On" on their Attack, but the Ailment Bitflag is "1"(which is poison, as far as I can tell).
Oh, and don't forget about the bug in the levelup editor. Act and Move are switched.
Sorry I haven't responded in a while, I was juggling a few different things at the same time. I have worked on some things, primarily allowing users to more easily adjust some labels(egg names, animation names, etc.), along with fixing several issues with the ailment bitflags(initial load failing, switching moves or boss/enemy causing the checkboxes to mess up, etc.).
The fixes themselves can be viewed here: #22 Once I verify a few more things, I'll be merging and releasing this.
The new release can be found here: https://github.com/krogenth/G2DataGUI/releases/tag/0.0.15b
There is now a new file, definitions.json
, which you can edit yourself if you so choose, just keep it in the same directory as the program.
No worries ^.^ Thanks for the fixes. I didn't see it listed, so I'll ask~ did you fix act and mov being swapped in the levelup editor?
I ran into a problem. I wanted to add some spells to an enemy(Giant Mantis, in Baked Plains). The enemy doesn't have any moves or spells usually. Edited the AI for that in and when they attempt to use the spell, they just do.. nothing, standing there. As if locked into an animation that doesn't exist. The battle also cannot continue, as it seems to wait for the spell to be finished.. which it never will be, so it seems. I assume that, cause they have no spellcasting animation or anything, this happens. Any idea how to get around that? The spells I used were Alhealer and Tremor(which they have in their move list actually, but no AI for it). Same issue with both. I also gave them enough MP to cast the spells.
And another thing. As you can guess, Im currently at the baked plains. Dodos are still enemies there which are.. basically just a waste of time. They are too weak but I cant exactly buff them without fucking over the early game. So I'm thinking of replacing them for a new enemy. Maybe just a stronger version of the Dodo. What exactly would go into creating a new enemy and inserting them instead of the Dodos in Baked Plains?
Edit: Do you know anything about the IP stun/cancel resistance value? Seems to be the same for everything. I worry that changing it might have some adverse effects. I know that if the IP Stun resistance too high, IP damage causes the IP bar to freeze(accidentally set it to values over 1000 for a certain enemy), but thats it. It's hard to gauge what I can do with that value.
ACT
and MOV
values should be correct now.Unknown #2
) for enemy/boss moves, this basically indicates if the move is a normal attack, or a move/spell. most likely this is the cause, but there might be other things too. If desired, we can work through you giving me the necessary file to check for you.Regarding the second point, what would the necessary file be? I did manage to get the Giant Mantis encounter "right", I feel. But the ability to add additional spells and moves would surely be helpful.
Hmm.. Well, I'll guess there'll be a few low level dodos flying around baked plains then. If I recall correctly, that sort of thing isnt a re-occuring problem.
That entirely depends on the enemy.
You can view this listing to see what file corresponds to what enemy(the dxx
is the file prefix): https://github.com/krogenth/G2DataGUI/blob/master/docs/nme%20list.txt
You want the file ending with _0.dat
to share.
Okay, I found the right file for Giant Mantis. How can I share the file? Tried just dragging it here, but it says that the file type isnt supported.
You can just right click and zip the file and upload it that way.
Okay, I'll do that soon.
Im currently wanting to edit Valmars tongue(first encounter) but some numbers seem a little.. off. When reading normal mode, both first and second encounter of the tongue and its parts have the same health. Switching to hard mode, the health values of the parts of the tongue seem appropriate for first encounter, but the second encounter doesnt have more health compared to what it has in normal mode. It also seems like rather little changes between normal and hardmode version of the tongue in general, looking at some of the moves and all that. As its kinda difficult to find information about what the proper hardmode encounter should have in terms of stats, its a bit difficult to double-check this.
Edit: Seems like the Hard Mode versions(for the first encounter) might be correct, but the normal mode ones are fucked up. And for the second encounter, I assume the hard mode versions are wrong.
And another question regarding the tongue.. the basic "Attack" the tongue, right and left hands dish out are listed as Target Type: Area Enemies, but with a range of 0 and Accuracy of 150. I mean, I assume they are basically single target attack..? But I am not entirely sure why it is done like this. Additionally, the head can cast burn and burnflame, but their target type is listed as "all enemies" for both. Burn with a range of 0, burnflame with a range of 600. Snooze is listed as "enemy line". Heal seems correct - One Ally, no range on it. It seems like the target-types are somehow read wrong. Looking around a bit more, it also seems like the Animation value might be wrong. For almost all skills(all except the spells, I think), the animation is listed as "Physical Attack", which is obviously wrong.
Another Edit: The Boss AI for some reason reads 0 on all indexes, on all parts(both normal and hardmode).
Yet another Edit: Looking at the Starving Tongue skill - both for Millenia and Valmars Tongue - I am surprised that its "Special" value is listed as "0". It is a HP drain skill, which should require some kind of "Special" effect. The Ghoul's "Power Drain", which is also a HP stealing skill as far as I remember, has its Special value at 40. How does the game know what Starving Tongue actually does like this?
For now, I dare not to change anything about the Tongue of Valmar. Might fuck some things up >.>
Opening up another to clear a few things up. I wonder if I can edit some things - like editing effects of magic, skills or the cost to get a skill - while on a playthrough safely without losing myself. Could basically build a mod as I go and test out stuff. Edit: Just saw that you replied to the closed question. By editing as I go, I really meant stuff like corrupting the save/requiring to start a new game. Aside from starting stats, what else would I need to pay attention to? And also.. do you know of a decent save editor? Would likely be pretty helpful to have. I remember doing some small edits to the saves myself via the hexedit, though..
Is it impossible to code water or forest elemental damage? What exactly does something like leafwater chant affect aside from the heals? And what is "MDT"?
And a few questions about some of the editable lines.. In MS_Param, what does "Target Effect" do? Is it just for visuals, or does it affect gameplay? What exactly does "multiplier" in there do? I assume it's the per level bonus to damage, but I need to know what it exactly affects. On the topic of Multipliers, I am a bit confused with skills. I don't exactly know what the multiplier actually does, some numbers seem very off, like for Life Up and the Chants I assume Element Strength is like.. splitting elemental and non-elemental damage? Any info on that one?
And lastly, how can I edit stuff like base stats, stat gain on levelup, xp needed for levelup and other character specific stuff? Figured they'd be in PC_INIT, but can't seem to find those.
Oh, and who is that new character, Ryduo x)?