Quick Reply
Search this Thread
Field Researcher
Original Poster
#1 Old 3rd Mar 2026 at 5:11 AM Last edited by makiura : 4th Mar 2026 at 9:19 PM.
Default [SOLVED] MTK can't read geom file/geom not valid
I'm converting an item from another game and I ran into this issue when trying to renumber the geom in MTK. My workflow is :import obj into milkshape, convert to .wso, auto-assign bones in MTK, import into TSRW, save and re-open, export GEOM, edit weights in blender, export GEOM. Everything is going fine to this point.

When I try opening the file in MTK and renumbering or converting back into .wso I get these errors:
Error: Could not read file
Original Error: Not a valid GEOM file

I also get errors when trying to import the edited geom file back into tsrw.
The only fix I've found was exporting/importing through s3pe, which lets me fix the weights but doesn't let me renumber.

Are there alternatives to renumbering the geom file?
Scholar
#2 Old 3rd Mar 2026 at 8:40 AM Last edited by CardinalSims : 3rd Mar 2026 at 11:43 AM.
Quote: Originally posted by makiura
My workflow is :import obj into milkshape, convert to .wso, auto-assign bones in MTK, import into TSRW, save and re-open, export GEOM, edit weights in blender, export GEOM.
...
renumbering the geom file?


I'm having a touch of deja vu of having asked this before, but... why these steps?
What purpose is the Milkshape step (MTK can convert OBJ to WSO)? Why does the item need to be renumbered in the first place? If you really need to renumber the GEOM you can do so with the Blender GEOM Tools, but I believe MTK handles this when converting as well.

Is this item for CAS or is it an object?
If the latter, GEOM is a CAS-only format.

Permanent resident at NRaas.
Scholar
#3 Old 3rd Mar 2026 at 8:17 PM
Quote: Originally posted by makiura
My workflow is :import obj into milkshape, convert to .wso, auto-assign bones in MTK, import into TSRW, save and re-open, export GEOM, edit weights in blender, export GEOM. Everything is going fine to this point.


For wavefront object to TS3, try 1) MTK .obj to geom, 2) MTK transfer bones from donor to your geom. 3) Import to Blender to edit bone weights. When painting bones, you need to merge vertices with sharps on to avoid adjacent vertices from having different weights along seams, and creating a very visible seam in game. Unless this is a hair!!! Merging will probably destroy a hair mesh!!!! If hair, check @CardinalSims tutorial. Paint as you need. Normalize All, and Limit Total. Average normals by your preference. Be sure to split seams and sharps for export. Geom Tools will ask you to renumber (recalculate) on export. 4) MTK seam fix (or Blender 2.80 fixes seams on export). 5) MTK convert to .wso. 6) MTK add morphs if needed.

Shiny, happy people make me puke!
Field Researcher
Original Poster
#4 Old 4th Mar 2026 at 10:59 AM
Quote: Originally posted by CardinalSims
I'm having a touch of deja vu of having asked this before, but... why these steps?
What purpose is the Milkshape step (MTK can convert OBJ to WSO)? Why does the item need to be renumbered in the first place? If you really need to renumber the GEOM you can do so with the Blender GEOM Tools, but I believe MTK handles this when converting as well.

Is this item for CAS or is it an object?
If the latter, GEOM is a CAS-only format.

It's an eyebrow piercing acc for CAS. I was trying to renumber it so I can import the .wso version of the piercings into tsrw. If I can get it back into tsrw then that usually means it will work in game, if that makes sense.

I've been using milkshape ever since I watched a hair tutorial on youtube, so I guess I made a habit of it.

Replacing the package's geom in S3PE doesn't seem to work now. I see its custom thumbnail in CAS, but nothing shows up when I select it. I also get the "Object reference not set to an instance of an object" error when trying to open the edited package in TSRW.
Screenshots
Scholar
#5 Old 4th Mar 2026 at 5:08 PM
Quote: Originally posted by makiura
It's an eyebrow piercing acc for CAS. I was trying to renumber it so I can import the .wso version of the piercings into tsrw. If I can get it back into tsrw then that usually means it will work in game, if that makes sense.

I've been using milkshape ever since I watched a hair tutorial on youtube, so I guess I made a habit of it.

Replacing the package's geom in S3PE doesn't seem to work now. I see its custom thumbnail in CAS, but nothing shows up when I select it. I also get the "Object reference not set to an instance of an object" error when trying to open the edited package in TSRW.


Well, I know you didn't ask, but now seeing what you're trying to do, it's pretty simple. Paint it 100% b__Hat_grip__ and be done with it. It's very difficult to get exact weight on something like that, and the piercings are most likely floating around inside the Sim's head in game. Also understand that teen thru elder have different heads. Hatgrip allows the piercing to be moved in game to where you want/ need it.

Shiny, happy people make me puke!
Field Researcher
Original Poster
#6 Old 4th Mar 2026 at 9:19 PM
Quote: Originally posted by LadySmoks
For wavefront object to TS3, try 1) MTK .obj to geom, 2) MTK transfer bones from donor to your geom. 3) Import to Blender to edit bone weights. When painting bones, you need to merge vertices with sharps on to avoid adjacent vertices from having different weights along seams, and creating a very visible seam in game. Unless this is a hair!!! Merging will probably destroy a hair mesh!!!! If hair, check @CardinalSims tutorial. Paint as you need. Normalize All, and Limit Total. Average normals by your preference. Be sure to split seams and sharps for export. Geom Tools will ask you to renumber (recalculate) on export. 4) MTK seam fix (or Blender 2.80 fixes seams on export). 5) MTK convert to .wso. 6) MTK add morphs if needed.

It worked, thank you! I'll be using mtk's obj to geom feature from now on for non-hair cc
Back to top