SilentNightSound / GI-Model-Importer

Tools and instructions for importing custom models into a certain anime game
https://discord.gg/agmg
GNU General Public License v3.0
2.66k stars 365 forks source link

可以请教怎样制作动态mod吗,看到过一个动态的莫娜宝箱mod #163

Closed PiaoLiangDeGua closed 10 months ago

PiaoLiangDeGua commented 1 year ago

打开一看是由许多单独个体组成的,我感觉非常炫酷,想请教是否有对应脚本来制作这样的mod.

PiaoLiangDeGua commented 1 year ago

Can I ask how to make a dynamic mod, I've seen a dynamic Mona Chest mod

jere344 commented 1 year ago

I think you're referring to this script : https://github.com/SilentNightSound/GI-Model-Importer/blob/main/Tools/genshin_merge_mods.py tutorial here : https://gamebanana.com/tools/11165

PiaoLiangDeGua commented 1 year ago

I think you're referring to this script : https://github.com/SilentNightSound/GI-Model-Importer/blob/main/Tools/genshin_merge_mods.py tutorial here : https://gamebanana.com/tools/11165

Thank you, but in fact, it should be about animated mod.

PiaoLiangDeGua commented 1 year ago

I think you're referring to this script : https://github.com/SilentNightSound/GI-Model-Importer/blob/main/Tools/genshin_merge_mods.py tutorial here : https://gamebanana.com/tools/11165

Thank you, but in fact, it should be about animated mod.

Just like this https://gamebanana.com/mods/436521

jere344 commented 1 year ago

I misunderstood sorry I don't know how it work

PiaoLiangDeGua commented 1 year ago

I misunderstood sorry I don't know how it woFi

I misunderstood sorry I don't know how it work

Fine,thank you.

jere344 commented 1 year ago

Script : I made a script for that : https://github.com/jere344/GI-Model-Importer/blob/patch-2/Tools/genshin_animated_mod.py works the same way as the merge mod script, with each mod a frame


Manually : Use the merge script https://gamebanana.com/tools/11165 Then edit the merged.ini :

Add to [Constants] and edit the values depending on your animation

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames ; here there are 6 frames
global $timer = 0

Add to [Present]

if $timer >= $interval
    $timer = 0
    $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

So in the end it looks like :

; Merged Mod: .\1_standart\Furinna.ini, .\2_without_dress\Furinna.ini, .\3_with_hat\Furinna.ini, .\4_with_hat_without_dress\Furinna.ini, .\5_ousia_hat\Furinna.ini, .\AquaFurinaMod\Furina.ini

; Constants ---------------------------

[Constants]
global persist $swapvar = 0
global $active
global $creditinfo = 0

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames
global $timer = 0

[Present]
post $active = 0

if $timer >= $interval
    $timer = 0
    $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

; Shader ------------------------------

[...]

It will swap between skins automatically making it an animation

PiaoLiangDeGua commented 1 year ago

Script : I made a script for that : https://github.com/jere344/GI-Model-Importer/blob/patch-2/Tools/genshin_animated_mod.py works the same way as the merge mod script, with each mod a frame

Manually : Use the merge script https://gamebanana.com/tools/11165 Then edit the merged.ini :

Add to [Constants] and edit the values depending on your animation

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames ; here there are 6 frames
global $timer = 0

Add to [Present]

if $timer >= $interval
  $timer = 0
  $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

So in the end it looks like :

; Merged Mod: .\1_standart\Furinna.ini, .\2_without_dress\Furinna.ini, .\3_with_hat\Furinna.ini, .\4_with_hat_without_dress\Furinna.ini, .\5_ousia_hat\Furinna.ini, .\AquaFurinaMod\Furina.ini

; Constants ---------------------------

[Constants]
global persist $swapvar = 0
global $active
global $creditinfo = 0

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames
global $timer = 0

[Present]
post $active = 0

if $timer >= $interval
  $timer = 0
  $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

; Shader ------------------------------

[...]

It will swap between skins automatically making it an animation

Thank you, but I just learned to create animated mods using the previous script yesterday, and I will try your script.

PiaoLiangDeGua commented 12 months ago

Script : I made a script for that : https://github.com/jere344/GI-Model-Importer/blob/patch-2/Tools/genshin_animated_mod.py works the same way as the merge mod script, with each mod a frame

Manually : Use the merge script https://gamebanana.com/tools/11165 Then edit the merged.ini :

Add to [Constants] and edit the values depending on your animation

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames ; here there are 6 frames
global $timer = 0

Add to [Present]

if $timer >= $interval
  $timer = 0
  $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

So in the end it looks like :

; Merged Mod: .\1_standart\Furinna.ini, .\2_without_dress\Furinna.ini, .\3_with_hat\Furinna.ini, .\4_with_hat_without_dress\Furinna.ini, .\5_ousia_hat\Furinna.ini, .\AquaFurinaMod\Furina.ini

; Constants ---------------------------

[Constants]
global persist $swapvar = 0
global $active
global $creditinfo = 0

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames
global $timer = 0

[Present]
post $active = 0

if $timer >= $interval
  $timer = 0
  $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

; Shader ------------------------------

[...]

It will swap between skins automatically making it an animation

Do you know how to make mods like this?https://gamebanana.com/mods/446991

jere344 commented 12 months ago

I don't know sorry

leotorrez commented 11 months ago

Script : I made a script for that : https://github.com/jere344/GI-Model-Importer/blob/patch-2/Tools/genshin_animated_mod.py works the same way as the merge mod script, with each mod a frame

Manually : Use the merge script https://gamebanana.com/tools/11165 Then edit the merged.ini :

Add to [Constants] and edit the values depending on your animation

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames ; here there are 6 frames
global $timer = 0

Add to [Present]

if $timer >= $interval
  $timer = 0
  $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

So in the end it looks like :

; Merged Mod: .\1_standart\Furinna.ini, .\2_without_dress\Furinna.ini, .\3_with_hat\Furinna.ini, .\4_with_hat_without_dress\Furinna.ini, .\5_ousia_hat\Furinna.ini, .\AquaFurinaMod\Furina.ini

; Constants ---------------------------

[Constants]
global persist $swapvar = 0
global $active
global $creditinfo = 0

global $interval = 10 ; The speed; lower is faster
global $frames = 6 ; The number of frames
global $timer = 0

[Present]
post $active = 0

if $timer >= $interval
  $timer = 0
  $swapvar = ($swapvar + 1) % $frames
endif
post $timer=$timer+1

; Shader ------------------------------

[...]

It will swap between skins automatically making it an animation

I recommend checking the speedcontrol.py at my tools repo. It was the original tool made to turn normal merge mods into animations. github.com/leotorrez/leotools

To make mods like the last one mentioned you use the same idea but is a lot more manual

jere344 commented 11 months ago

I wasn't aware of your script, thank you I'll check it out