This guide is slighty outdated, as there are way better methods nowadays. However it does still work for tons of games. Keep in mind that NifSkope and the 3ds Max Plugin haven't been updated for a long time. So most of newer models created in 2018+ will not work, as gamebryo is constantly updating structures.
Please do not contact me regarding this guide! If you need help, use this thread.
It should work for any .nif/.kf models created in 2017 and before.
I have also tested ripping models/anmations successfully from Aura Kingdom, Eden Eternal and Kitsu Saga with this method.
I'm gonna use Dragomon Hunter(Aeria Games) for this tutorial.
[Only registered and activated users can see links. Click Here To Register...]
(You may skip NifSkope. It is only for fixing textures, but this can be done in 3ds max too, by dragging the texture onto the model. However, NifSkope is ideal for watching models and stuff. You should get it anyway)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
(You have to use 2017 if you don't wanna run into compability trouble)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
(For 2008 - 2016)
[Only registered and activated users can see links. Click Here To Register...]
(For 2017)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
(For 2017)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Part 1: Unpack Client files
First of all, download the Client and install it.
Open the launcher and wait until its done patching.
Open the pkg folder and paste [Only registered and activated users can see links. Click Here To Register...].
Now start Quick BMS.
Once opened, it will ask where the script file is located, go into the pkg folder and choose the extract.bms script.
After this, Quick BMS will ask for the Archive. Navigate to the pkg folder again and choose "pkg.idx".
Now it will ask for the output folder. Simply create a folder anywhere and choose it. There will be all extracted files soon.
Wait until all files are extracted. This may take some time.
Open the launcher and wait until its done patching.
Open the pkg folder and paste [Only registered and activated users can see links. Click Here To Register...].
[Only registered and activated users can see links. Click Here To Register...]
Once opened, it will ask where the script file is located, go into the pkg folder and choose the extract.bms script.
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Wait until all files are extracted. This may take some time.
Part 2: Choose Model and Fix Texture
Once you have done Part 1, you are now ready to choose a Model and its Animations.
Simply open your folder where all the files has been extracted on Part 1 and search for a .nif Model.(i choosed biology\model\m129.nif)
Now open NifSkope and load your model. You should now see the model without textures.
Take a look at the bottom part of the Window. There should be the "Block Details" where you can see a .dds Texture.
Mine is M12901.dds.
Now go to the biology\texture folder and search for the .dds Texture.
Once you have found it, just drag and drop the texture to the models body on NifSkope.
"File" -> "Save as" and save the .nif again.(Overwrite the existing one)
Simply open your folder where all the files has been extracted on Part 1 and search for a .nif Model.(i choosed biology\model\m129.nif)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Mine is M12901.dds.
[Only registered and activated users can see links. Click Here To Register...]
Once you have found it, just drag and drop the texture to the models body on NifSkope.
[Only registered and activated users can see links. Click Here To Register...]
Part 3: Importing and exporting via 3DS Max
Make a new folder anywhere and name it like you want. I will name it "TutorialNIF".
Now we need to make sure that the Model, Texture and the Animations are in the same folder.
So for me, i just go to the biology\model folder and copy m129.nif to the "TutorialNIF" folder.
Do the same with the texture on Part 2(biology\texture) and the animations (biology\animation). Animations are always named like m129_bip01_battle02.
Once we have everything in the same folder, we can now open 3DS Max.
(Please note that i am using 3DS Max 2017. Some things may be different if you use a other verison)
(Please also make sure that you have already added the NIF Plugin which is mentioned at the beginning, BEFORE starting 3DS Max)
Import the .nif file via the 3DS Max Icon in the top left corner.
Choose the following settings:
[Only registered and activated users can see links. Click Here To Register...]
After this, import an animation .kf file.
(Again via the 3DS Max Icon)
I will choose m129_bip01_stand01.kf.
The Animation should be now added to the model.
Now we are gonna fixing the Model, so we can use it in Flyff soon.
Click on the Model itself at the list, for me its called "M129".
Navigate to the Modify section and copy the skin.
Collapse the Model.
Go to the Modify Section again. Paste the Skin.
Click on the rotate Icon on the top.
Now go to the Hierarchy section and click on "Affect Pivot Only".(The Button should have a blue background then which means it is active now.)
Enter "90" in X and press the Enter button on your keyboard.
After this, click a random bone on the list and press CTRL+A(STRG+A for Germans).
Rightclick -> Rename.
A Window should have opened, type the name of the model(for me tutorialNIF) at "Base Name:" and make sure "[ ] Numbered" is marked([X]). Click on "Rename" then.
Now we can actually export, again via the 3DS Max Icon. Save it as mvr_modelname_animationname.dae.
So for me it is mvr_tutorialNIF_stand.dae.
Ignore all warnings.
Now we need to make sure that the Model, Texture and the Animations are in the same folder.
So for me, i just go to the biology\model folder and copy m129.nif to the "TutorialNIF" folder.
Do the same with the texture on Part 2(biology\texture) and the animations (biology\animation). Animations are always named like m129_bip01_battle02.
[Only registered and activated users can see links. Click Here To Register...]
(Please note that i am using 3DS Max 2017. Some things may be different if you use a other verison)
(Please also make sure that you have already added the NIF Plugin which is mentioned at the beginning, BEFORE starting 3DS Max)
Import the .nif file via the 3DS Max Icon in the top left corner.
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
After this, import an animation .kf file.
(Again via the 3DS Max Icon)
I will choose m129_bip01_stand01.kf.
The Animation should be now added to the model.
Now we are gonna fixing the Model, so we can use it in Flyff soon.
Click on the Model itself at the list, for me its called "M129".
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
A Window should have opened, type the name of the model(for me tutorialNIF) at "Base Name:" and make sure "[ ] Numbered" is marked([X]). Click on "Rename" then.
[Only registered and activated users can see links. Click Here To Register...]
So for me it is mvr_tutorialNIF_stand.dae.
[Only registered and activated users can see links. Click Here To Register...]
Part 4: Almost finished
Open Atools Modeleditor. Simply drag and drop your .dae into it. Click "Edit" -> "Edit Effects" and click "2 visible sights" for all texture parts.
Press "OK" then.
Click on "File" -> "Save" and save it as mvr_modelname_animationname.ani first. So for me, it is "mvr_tutorialNIF_stand.ani".
Same with the o3d. Click "File" -> "Save" again and make sure that you choose the o3d/dae/obj format on the bottom of the save-window.
Save it as "mvr_modelname.o3d", for me "mvr_tutorialNIF.o3d".
Done. We have a model with an Animation fully able to get working in Flyff.
Press "OK" then.
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Done. We have a model with an Animation fully able to get working in Flyff.
Part 5: Adding more Animations
Reset your current Usage in 3DS Max.(3DS Max Icon -> "Reset")
Import your model .nif file. (For me m129.nif)
Import your animation. (I choosed m129_bip01_move01.kf)
Rename the bones again.(MUST be the same as before.)
So click a random bone on the list, CTRG+A -> "Rename" and choose the same name as before. For me it is "tutorialNIF". Also don't forget to mark the "Numbered".
Just export it now as mvr_modelname_animationname.dae(for me mvr_tutorialNIF_walk.dae) and drag and drop it into Atools Modeleditor again. It will look ugly, but we dont care. Just export it as .ani (for me mvr_tutorialNIF_walk.ani) and we are done.
Now when we open our O3D, we will see that our new animation works well, because we already fixed the Model itself before.
[Only registered and activated users can see links. Click Here To Register...]
Import your animation. (I choosed m129_bip01_move01.kf)
Rename the bones again.(MUST be the same as before.)
So click a random bone on the list, CTRG+A -> "Rename" and choose the same name as before. For me it is "tutorialNIF". Also don't forget to mark the "Numbered".
Just export it now as mvr_modelname_animationname.dae(for me mvr_tutorialNIF_walk.dae) and drag and drop it into Atools Modeleditor again. It will look ugly, but we dont care. Just export it as .ani (for me mvr_tutorialNIF_walk.ani) and we are done.
Now when we open our O3D, we will see that our new animation works well, because we already fixed the Model itself before.
[Only registered and activated users can see links. Click Here To Register...]
Extra Part: Fixing buggy Animations
Sometimes an Animation could be showed correctly in 3DS Max, but its buggy when using on Atools.
This happens, when the maximum keyframes are higher than they actually are.
To fix this, simply follow this steps:
Click on the list where all bones and objects are listed. Use CTRG+A(STRG+A) again, so you marked them all.
Now take a look at the keyframes:
The max keyframes are 61, but they are only placed until frame 60 on the screenshot above. I'm sure you get what i mean if you take a look at it.
So now, click the "Clock" Icon at the bottom right corner:
[Only registered and activated users can see links. Click Here To Register...]
Now change the End Time to the actual End Time. For me it is 60.
After this, press "OK" and mark the first frame by clicking on it.
Now hold SHIFT on your keyboard, and drag/drop the first frame above the last frame(frame 0 to frame 60 for me)
From now you can save the animation as usual.
This happens, when the maximum keyframes are higher than they actually are.
To fix this, simply follow this steps:
Click on the list where all bones and objects are listed. Use CTRG+A(STRG+A) again, so you marked them all.
Now take a look at the keyframes:
[Only registered and activated users can see links. Click Here To Register...]
So now, click the "Clock" Icon at the bottom right corner:
[Only registered and activated users can see links. Click Here To Register...]
Now change the End Time to the actual End Time. For me it is 60.
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
From now you can save the animation as usual.
Extra Part: World Objects with collisions
Go into the folder of you extracted files.
Then, go into map\model\object.
Choose your Object, load it in NifSkope and fix the texture like in Part 2. Save and override the nif file then.
Load it into 3DS Max and take a look at the list.
Should look like this:
Now drag and drop everything out of the bones[Only registered and activated users can see links. Click Here To Register...].
Delete all the bones[Only registered and activated users can see links. Click Here To Register...] now, so that you just have the object[Only registered and activated users can see links. Click Here To Register...] parts.
Mark "Flo" and "Blo" and collapse them together!
They should be now the same Object. Rename it to "#coll".
Rename the other objects all to "mesh".
Export and name it like obj_objectname.ASE.
Load the ASE Data [Only registered and activated users can see links. Click Here To Register...] by clicking "File" -> "Read ASE".
Save it by clicking "File" -> "Auto Save".
Open the O3D now in Atools Modeleditor and fix the texture.
Done.
[Only registered and activated users can see links. Click Here To Register...]
Then, go into map\model\object.
Choose your Object, load it in NifSkope and fix the texture like in Part 2. Save and override the nif file then.
Load it into 3DS Max and take a look at the list.
Should look like this:
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Rename the other objects all to "mesh".
Export and name it like obj_objectname.ASE.
Load the ASE Data [Only registered and activated users can see links. Click Here To Register...] by clicking "File" -> "Read ASE".
Save it by clicking "File" -> "Auto Save".
Open the O3D now in Atools Modeleditor and fix the texture.
Done.
[Only registered and activated users can see links. Click Here To Register...]