0 of 0

File information

Last updated

Original upload

Created by

Knedel

Uploaded by

Knedel

Virus scan

Safe to use

Tags for this mod

24 comments

  1. MilkAdobo
    MilkAdobo
    • member
    • 0 kudos
    Hello! So this is basically just black-haired Frey? Does this mod also recolour the sprites?
  2. Kirbyarm
    Kirbyarm
    • member
    • 0 kudos
    Thank you for this wonderful mod and guide on editing model textures! This has really opened up the world of re-coloring in RF4 for me, I can't express enough how grateful I am for you and this!
  3. RenBou10
    RenBou10
    • member
    • 0 kudos
    Hello, I currently on project RF4S Indonesian translate, I just following Your instructions to editing font_order.model, but after I copied BRTD from .bntx to .model, the game crashing, am I doing anything wrong?

    *I'm editing .dds with photoshop
  4. Nami9800
    Nami9800
    • member
    • 2 kudos
    Hello! I was hoping you might have some input... I'm trying to mod the 3d models (just Frey's default model, right now) and I'm following your guide completely step by step... but I find that once I save the now edited bntx file from Toolbox, and then open it back up in HxD. the decoded text on the side is completely different and when trying to paste from BRTD on, it does not at all line up with FSHA (it actually gets overwritten because the new code is so much longer). 

    I'm so lost, haha. I've tried using Gimp to edit the image, I've tried paint.net, but I think toolbox is causing it to change / become longer once I save it. Maybe, anyway. It could be something to do with how I'm saving the newly edited image before replacing it in Toolbox, but I'm unsure how to troubleshoot this issue specifically. I've triple checked that I'm copying and pasting the right code. 
  5. magusan
    magusan
    • member
    • 0 kudos
    I figured out the face icon thing! Noel's face_NPC22 and luna's face_NPC23! solved completely!

    The next problem are these:

    1.When I rename NPC_PLAYER_01.model with NPC_CHILD_W2.model. It does change Frey into Luna, however the Luna is not a kid(supposed to be short)! the Luna model is as tall as Forte/Volkanon and I think as tall as Frey! Why did this happen and is there a way to edit model height to shorten it?this is because the Luna portrait is shorter than most villager yet the model is the same height with them(probably the same height with Frey) and is weird if just left be.

    2.It's about the portrait, you said: "Also expressions are just cut outs of face from full portrait and contain a bit of hair, if you want to recolor portrait you need to edit expressions too." The problem is that there is a full Luna portrait with fixed expression and cut outs of face from full portrait and contain a bit of hair like you said but the location of the cut outs is a little above the Luna portrait make her has two faces(one face with variable expression is a little above the full fixed expression luna)How do you fix this?

    I hope you can help me again Knedel! thanks!
    1. Knedel
      Knedel
      • member
      • 1 kudos
      1. I didn't edit models beyond texture recolors, so I can't really say for sure, but it sounds like Luna/Frey is scaled by something outside model data. It would mean there is some other file with scale? There is this mod that scales down bosses. So I guess there is a way.
      2. One solution is find where emotion/face coordinates per portrait are stored and override Frey's with Luna's, but currently I have no idea what file it could be. Second is to edit Luna's base portrait to move her up to match Frey's portratit height (open Frey's portrait file and paste Luna's over it, adjust position, delete Frey underneath). Dialogue box should hide she is missing legs.

      Here is article with link to guide how to edit .bin files, which I suspect contain data that needs to be edited.

      Sorry I can't be of much help this time. Got busy right now and will only be able to look into it myself in about 2 weeks.
    2. magusan
      magusan
      • member
      • 0 kudos
      1. I see..so your mod can't do further beyond recolors. Actually, I think it could also the kid's model that's scaled down to kid when they are kid npc. I cannot test this since my save file doesnt have children yet. Otherwise, I could try rename NPC_PLAYER_01.model into NPC_CHILD_W2 and see if we got a smaller Frey as child lol when I reach that point. and Yes, there is that mod that scales down bosses, I wonder how he did it. 

      2.Thanks for your insight, I will try your portrait methods! also thanks for the article to edit .bin files!

      Don't say that you aren't much help this time! you ARE very helpful! Hopefully in about 2 weeks, you can help me look into these issue again. Thanks again Knedel for your help!
    3. Knedel
      Knedel
      • member
      • 1 kudos
      I managed to find a moment to check the model scale thing. 
      Using the guide and this reserach doc I managed to change scale of NPC models (tested Lest, Vishal and Clorica), but I cant find Frey... She is not listed in the doc too. But she has be somewhere.
      Lest is first record and his scale value is at 1xD adress. Row 00000010, column 0D in HxD (rf3NpcParam.bin). It's value is 10, I changed it to FF and Lest became a giant, but Frey was unaffected (I thought that if Frey has no record in the doc it means that Lest/Frey share stat data but it seems it is not the case?
      I repeated the process with two more records (Vishal's scale is at 15x1, and Clorica at 28x5), they giantized too. I used hex calc to get next adresses, increment is 134 as metioned in guide. 
    4. magusan
      magusan
      • member
      • 0 kudos
      Hi again Knedel! Thanks for finding Lest's scale value! It's actually OK if you can't find the Frey's address since I can still use the "Gender Swap" mod to swap Lest into Frey. I still have some questions if you don't mind:

      1)Regarding the scale value address thing, I tried it and it seems to be too extreme! by changing it into 5, Lest become as small as mice lol! So it not a proper character "height" parameter. But I'm sure that mod that scales down bosses must be using these scaling value to make them smaller.

      2)And I was only able to successfully tried it because you describe it with the words "Row 00000010, column 0D in HxD". Actually, I am still a newbie in hex editing..Actually, I do not understand the meaning of "1xD" adress. How did you know that 1xD means Row 00000010, column 0D? Sorry for the very newbie question Knedel!

      3)But it seems that in the RF4 Datamining Compendium" Excel file that you linked has the Lest "height" value that I'm seeking! It's on the "NPC and Monster Value" and on the offset of "#1C" with "Model Size?" description, Lest's value is 170. However, since I am still newbie at hex editing, I do not know what row and column that "#1C" refers to..it's back to the "How did you know that 1xD means Row 00000010, column 0D?" question.

      Thanks for your help again Knedel!
    5. Knedel
      Knedel
      • member
      • 1 kudos
      Small introduction to binary editing. Computers use binary numbering system as base. Smallest unit of data is called bit and is presented as 0 or 1. Byte is 8 bits, and usually is presented as two-digit hexadecimal number.  
      HxD displays data using hexadecimal numbering system. So instead numbers 0-9 as in everyday decimal there are 0-F, the F is equivalent of 15 in decimal)
      Byte value ranges from 00-FF (0-255 decimal). Number converter

      1.The 10 here is hexadecimal which is 16 decimal, changing it to 5 made Lest scale from 16->5. Something 0A-0C sounds about right for making him resonably smaller. 
      2.HxD shows array of bytes. Addresses are just numbering every byte staring with 0. Byte 0, byte 1, byte 2...etc. It's default is to show 16 bytes per row. So 1xD is 1Dth byte (29th in decimal). The x I used is for ease of reading adress, since most binary editors show last address digit as column number.  It's like decimal row 1 col 13. 
      3. In the doc Lest has height 170, it is written as decimal value so hex is AA. Character records begin at 1xC according to guide, and model size is offset by 1C (28 dec) from the beginning of record. For Lest which is first record you add 1C + 1C. The resulting adress is 38, address 3x8 does contain AA indeed. Just that nothing happend when I edited it.
      To find any value based on doc it is:
      records start offset + character record number * record size + value offset
      Lest model size example:
      [hex] 1C + (0  * 134) + 1C
      (ids in doc are written as decimal, convert to hex before multiplying)

      Model size can be stored in multiple bytes, according to doc it could be 3 consecutive bytes. 
    6. magusan
      magusan
      • member
      • 0 kudos
      Ok I think I understand how to read something like 15x1 and 28x5. I am still confused about "character record begin with 1xC" thing. For example: For Lest, do I just add 1C+"compendium row" to get what I want? like for Lest character level, do I just add 1C+120=13C(using the calculator you linked to me). 13C meaning row 00000130 and column 0C, right? I tried changing the value of that address and it does nothing..It means that I somehow understood it wrong.. For Lest, is it 1C+something? please correct me! thanks Knedel!

      And about the size model, at address 38, you're right I changed the AA and it does nothing..too bad. If only that size scaling isn't that extreme or if there can be a value in between(like 9.875 or something It'd be perfect!) but no, even if I change it to just 9, Lest become a hobbit -.-

      You said "Model size can be stored in multiple bytes, according to doc it could be 3 consecutive bytes". Does this mean there are some other addresses that determine Lest's model size other than that 38 address? I wonder if those other addresses are those 100%, 100% things(the 0, 8, C, 10, 14, 18 offsets in compendium). I really wonder what does 100% percentage means.. 

      Thanks as always, Knedel!
  6. kroal
    kroal
    • member
    • 53 kudos
    Can you do some recolors for Lest?
  7. magusan
    magusan
    • member
    • 0 kudos
    Hello again Knedel! Can you help me again with these problem? It's about the face icon..I've swapped all texture but Frey's small face icon still appear on mini map, beside the HP/RP bar(top left icon) and backpack menu(left side above the LV/HP/RP. Do you know which file is Luna's icon and which file is Frey's icon? I'd like to replace the icons with Luna's.

    Thanks again Knedel!
  8. magusan
    magusan
    • member
    • 0 kudos
    Is it possible to edit other npc? or is BTNX address just for frey?I'd like to edit Luna with pink hair and replace frey's model with Luna's model and portrait! could you tell me how? thank you!
    1. Knedel
      Knedel
      • member
      • 1 kudos
      Yes, it is possible. From what I have seen in .model files - all of them use BNTX (npc, monsters, and even maps). 
      To replace Frey's model you just need to name another NPCs file with Frey's model name (NPC_PLAYER_01.model). Any swap between NPCs will work. 
      Swapping portrait works the same, but you would need to edit expressions too.

      In case you are just starting modding RF:
      For portrait editing there is tool that unpacks and then repacks, so it is easier than models. Portarit files have .texture extension.
      There are two tools you need to start modding - mbundle extrator (to get files to mod) and texture extractor (for portraits). Both can be found on darkxex github [Rune Factory 4 Special Mbundle Extractor] and [Rune Factory 4 Special Texture Extractor].

      There is also modding Discord for Story of Seasons/Rune Factory games if you need some more explanation.
      Steam thread <- Invite from this thread should work
    2. magusan
      magusan
      • member
      • 0 kudos
      thanks so much for your extractor links! I'm currently working on it! there's some questions I'd like to ask you:

      1.The bundle to be extracted is the bundleMain, right?
      2.Within the bundle I found something like NANCY_body.texture and CHILD_W_body.texture(is this Luna's file?). Do I just rename these two files to NPC_PLAYER_01.model in order play as Nancy or Luna?but these files have .texture extension and not .model extension? what should I do?
      3.there are also files named NANCY_face_000_NORMAL(and ANGER, CRY, SURPRISE, SMILE), are these the portrait expression files? how to I replace Frey's portrait expression with all of NANCY's? Which one are Frey's expression files?

      Thank you again Knedel!
    3. Knedel
      Knedel
      • member
      • 1 kudos
      1. Yup, it is bundleMain

      2. Files with <character_name>_body.texture contain character portarits. And yes, CHILD_W is Luna.  For player main portrait is named [00_PLAYER_W_body_00.texture]. Models are separate files. So renaming would be:
        - Portrait swap:  19_NANCY_body_00.texture / 23_CHILD_W_body_00.texture ->  00_PLAYER_W_body_00.texture
        - Model swap:  NPC_M_NANCY.model / NPC_CHILD_W2.model -> NPC_PLAYER_01.model 
      Note: NPC_CHILD_W.model is the baby model.

      3. Yes, those are expression files. Frey's are named something like 00_PLAYER_W_face_000_NORMAL - 00_PLAYER_W_face_079_084.texture (there is 81). Nancy has 62 so you need to duplicate some, replacing is the same - just rename Nancy files to Frey's.
    4. magusan
      magusan
      • member
      • 0 kudos
      Thank you again Knedel for your explanation! Thanks for the info regarding NPC_CHILD_W.model! I think I understood model swapping now. I still have some questions regarding portrait swapping.

      1.Frey and Nancy have 18 files differences in number in their portrait files. Frey has up to 00_PLAYER_W_face_079_084, while Nancy only has up to 19_NANCY_face_061_102. You said I should duplicate some of Nancy's files to Frey? Do I do it like this? Rename 9_NANCY_face_061_102 to 00_PLAYER_W_face_062_112 and keep renaming that file up to 00_PLAYER_W_face_079_084? Will there be a problem with Nancy's portrait(as player)later with renaming same Nancy files to match Frey's number in files? Will it be okay?

      2.And it does make me wonder.. What does those file actually do? I understood that something like 19_NANCY_face_003_SMILE would be Nancy's smiling portrait.. but what does something like 19_NANCY_face_009_033 do?

      Thank you again for your help Knedel!
    5. Knedel
      Knedel
      • member
      • 1 kudos
      1. Yeah, just duplicate 18 Nancy expression files (could be one copy-pasted 18 times, could be 18 different ones) and rename them to rest of Frey's. If you won't place files with Nancy filenames in Bundle folder, game will still use Nancy original files (from mbundle) for Nancy NPC in game. 
      2. Those are still expressions. Seems devs just dropped giving additional names (SMILE, ANGER, etc) as expressions became more complex?
      Mind that Nancy expression of same number as Frey's might show different emotion.  Also expressions are just cut outs of face from full portrait and contain a bit of hair, if you want to recolor portrait you need to edit expressions too.
    6. magusan
      magusan
      • member
      • 0 kudos
      I see..the developer did put anger/smile etc to some of those texture files and just decided to drop them like that, no wonder it's so confusing. Perhaps there's too just many expression to describe for them lol.

      OK then! it seem that I have grasped the basic of portrait and model swapping! now.. What do I do with the loose files extracted from the bundleMain(NPC_PLAYER_01.model,etc), after editing(copy/rename etc) them? Can you just copy all those extracted loose files to "Bundle" folder or do you need pack them into .bundle again? How do you pack them into .bundle again?

      Thanks again Knedel!
    7. Knedel
      Knedel
      • member
      • 1 kudos
      You only need to keep original bundles and paste edited/name-swapped loose files in Bundle folder. No repacking needed. 
      Copying all extracted files shouldn't break anything, but is not needed.
    8. magusan
      magusan
      • member
      • 0 kudos
      I see..this mean that the extracted and edited/renamed files take priority before the bundleMain.bundle? Thanks for your help Knedel! I might need your help again in coming days! Thanks again! I'll try the coloring the portrait later!
  9. cherrikku
    cherrikku
    • supporter
    • 1 kudos
    The guide you posted is amazing - I was able to recolor my Lin fa model to match my portraits. Thank you so much! :D 
    1. Knedel
      Knedel
      • member
      • 1 kudos
      Thanks, I'm glad you found the guide useful