This blender script snaps all the floating parts to their corresponding helper bones.
Additionally it adds a arrmature constraint to these parts so that they move with the armature.
import bpy
# get the first armature in scene (blender valve importer names armatures after first imported filename)
for obj in bpy.context.scene.objects:
if obj.type == 'ARMATURE':
arma = obj
break
# iterate through all bones from that armature
for b in arma.pose.bones:
# get helper bones
if b.name.endswith("_helper"):
# remove unneccessary filename parts
b.name = b.name.replace("_Lx","")
# new variable to better compare bones with meshes
bonename = b.name.replace("_helper","")
# iterate through all the scenes objects
for obj in bpy.context.scene.objects:
# continue if object is a mesh
if obj.type == 'MESH':
# compare if mesh name matches bone name (bone: head_helper; mesh: head)
if obj.name.casefold().startswith(bonename.casefold()):
# apply the ccordinates of the bone tail to the mesh
obj.location = b.head
# clear existing constraints
obj.constraints.clear()
# add a new armature constraint with bone target (used for animation)
con = obj.constraints.new('ARMATURE')
btg = con.targets.new()
btg.target = arma
btg.subtarget = b.name
# reset location of armature to 0 (needed for some characters)
arma.location = (0,0,0)
AtomicJunkie wrote: ↑Wed Sep 16, 2020 2:04 pm
This blender script snaps all the floating parts to their corresponding helper bones.
Additionally it adds a arrmature constraint to these parts so that they move with the armature.
I dont know why this script is needed, my tool already puts all parts to their corresponding helper bones and connects helper bones to main armature.
Only if you dont use the tool as intended and only extract individual parts.
daemon1 wrote: ↑Wed Sep 16, 2020 4:04 pm
I dont know why this script is needed, my tool already puts all parts to their corresponding helper bones and connects helper bones to main armature.
Only if you dont use the tool as intended and only extract individual parts.
I use your tool without the bat file generation you mentioned in one of your first posts.
Because that didn't work for me. Is this still implemented? Maybe I'm using it wrong.
Anyway after copying the skeleton in the smd file via script, I can import them into blender and even use the animations.
AtomicJunkie wrote: ↑Wed Sep 16, 2020 5:19 pm
I use your tool without the bat file generation you mentioned in one of your first posts.
Because that didn't work for me. Is this still implemented? Maybe I'm using it wrong.
Yes, that bat file is supposed to do that. And yes, it must still work, because game formats were never changed since the beginning.
Usage is same as PS4. Someone said it doesnt work with oodle5, so i made it with oodle7, even though i think you can use other verisons renaming the .DLL as usual.
I checked a few models, textures and animations, they all look exactly same as on PS4. No quality difference.
So I dont know why files are 10GB bigger.
If anything will not work, let me know.
You do not have the required permissions to view the files attached to this post.
AtomicJunkie wrote: ↑Wed Sep 30, 2020 8:23 am
Some small issue: The Batch file genrator still creates the batch file with horizon instead of your new file name horizon_pc.
ok. will fix it later.
AtomicJunkie wrote: ↑Wed Sep 30, 2020 8:23 am
I also thought there are some high res textures in the PC version.
Possible. Maybe main characters are already highest res on both platforms, but smaller, less important objects can be better on PC. Everyone is free to check it out.
Also I noticed vertex normals are not 10-bit packed, but full 16-bit or even 32-bit on PC. Not a big difference either.
i read all the things and i tried pasting the horizon_pc.exe file in the games folder right where oo2core_3_win64.dll is . I executed the file and nothing happened . i tried doing the same while the game is open too . would you please help me ? i am a noob in these stuff .
misterhister wrote: ↑Thu Nov 05, 2020 11:34 pm
i read all the things and i tried pasting the horizon_pc.exe file in the games folder right where oo2core_3_win64.dll is . I executed the file and nothing happened . i tried doing the same while the game is open too . would you please help me ? i am a noob in these stuff .
That means you did step 2 from description on first page about extraction, now continue doing rest of steps and you'll get there, just read carefully and follow through.