Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Game import MAXScripts & tools

Post questions about game models here, or help out others!
Post Reply
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Game import MAXScripts & tools

Post by Chipicao »

All scripts and tools have been thoroughly tested, but let me know if you run into any problems. Unless otherwise specified, meshes are imported/exported with all available properties: vertex normals, UV mapping (all channels), vertex color, transformations, hierarchy, materials and textures.
Sadly, no animations. This is something I've been meaning to research for a long time, but I never had the time.

FBX converters typically require .NET Framework 3.5 and use FBX 2011.1 format specs. More details and instructions are provided with each app.

My MAXScripts are meant to run on max 2010 and up. Sorry, but max 2009 has less/different maxscript features and some of the functions won't work.
How to install scripts in 3ds Max:
1. Drag&drop mcr or mzp files in one of the viewports - this will initialize&install the script
2. Click on Customize -> "Customize User Interface" and switch over to the Toolbars tab; optionally select "Game file import" in Category, which is what I assign to all my scripts
3. Drag&drop the script from the list onto your toolbar; this will create a button that you can use from there on to run the script

So I don't repeat myself, I'd like to thank vagos21 for teaching me most of what I know about game formats and maxscript, helping me with several formats and issues, and also aluigi, Rick, Ekey and everyone else who created extraction scripts/tools.

In no particular order:

kn5 converter
Supports all Assetto Corsa models (cars, tracks...) from Early builds to 1.1 final.

Usage: kn5conv.exe [-fbx|-obj|-objZMhack] [input_file/folder]
More info in the readme

- FBX supports almost all model features, except specific shader settings or textures (ex. dirt, damage).
In case of multi-layer diffuse textures, the second (txDetail) map is used as diffuse, and the first is used as specular since it's usually a grayscale map.
A complete list of material properties is included for reference as user-defined settings
- OBJ does not support hierarchy, transformations or UV tiling. Therefore, these are "baked" into the model so at least it looks good.
- OBJ ZMhack takes advantage of a bug (or feature?) in ZModeler2 that creates usable hierarchy from OBJ models
I won't go into detail, it just works even if it's not supposed to :) Small boxes are created instead of dummies which you can convert and use to set pivot positions.

Image Image Image

M3G2FBX converter.
- supports all models from RR3, NFS:MW and NFS:NL
- All LODs with normals, UV coordinates, vertex colors, hierarchy, transformations, materials, and texture names (for reference only)

Usage options:
- drag&drop an m3g file to convert it
- run the exe to convert any m3g file from the current folder
- use the command line to specify a file: M3G2FBX.exe input_file.m3g
- same thing with a folder or a path, only this time it will include all subfolders: M3G2FBX.exe input_folder
- run with -u argument (M3G2FBX -u file/folder) to make unique mesh names; useful if you plan to convert to OBJ afterwards

FBX files will always be saved in the same place as their m3g couterparts.
Image Image Image Image Image Image

SBA Brute - .sba texture converter for NFS:MW and NFS:NL
It is by no means a "true" converter. It basically guesses the image format and number of mipmaps based in width, height and image data size. Most textures are successfully converted, except cube maps and some special sba files.


Dunia 2 mesh importer - WIP

It works with all XBG models from FC3, FC4 and The Crew, with the following features:
- vertex positions scaled with shader constants
- texture coordinates scaled with shader constants
- vertex normals decoded
- vertex colors
- LODs & submeshes
- hierarchy where available

After my last release, the meshes are now split by material and also all submeshes are properly imported (some were missing in the earlier version).
Unfortunately I haven't had the time to investigate material files properly, so textures will need to be applied manualy.

Far Cry 3:
Image Image Image

Far Cry 4:
Image Image Image

The Crew:
Image Image Image


Unity Assets Importer v0.8.9
This is one of the biggest projects I've tackled, and it's till being updated as new Unity versions are launched.

Unity Importer 1.0 beta
It has more or less the same functionality but its entire interface is built in .NET, allowing me to integrate a TreeView of the actual asset hierarchy. This gives you extended filtering options so that you can import only the objects you need.

I will continue to update both scripts for a while, but at some point the old script will be retired.

The scripts are compatible with Web, PC, iOS, Android, PS3, Xbox 360, OSX and Linux games built with Unity 2, 3 and 4 (up to 4.3.2f1). It doesn't work with games created with Unity versions older than 2.5.0, which I believe were iOS-exclusive and lack some elements of identification.

There are a lot of Unity games out there. To name a few interesting examples:
Porsche model showcase - click the 3D button - screenshot gallery
Scion car showcase - click the 3D button - screenshot gallery
List of Unity games with instructions on how to extract files.
Image Image Image Image Image Image
More screenshots


Away3D script collection
  • awd maxscript + quickbms decompressor
    This is a beta release and has been tested only on models from Honda 3D Design Archives and Nissan UK Personalization pages (2014 Note, Micra, Juke, 2013 Juke).
    No texture support at this time. Use URL Snooper or similar to get .awd or .swf resources. Extraction tools are also provided in the link above.
  • atf texture convertor (from old version into a new format readable by ATF Viewer)
  • maxscript for loading GarageFuse scenes + abg to obj converter
    I'm not yet sure if this is an Away3D format or if it's something custom for garagefuse.com.
    Again, use URL Snooper to get .abg .xml and texture files from garagefuse.com

Image Image Image Image Image Image Image


GT Racing 2 BDAE Importer
Supports cars and tracks, probably other models too.
Textures are in PVR format, but their extension is from the source file (usually TGA). The script will rename them but make sure you have the PVR plugin installed.
Also don't forget to supply the texture path before importing.
Tools for extraction:
- Gameloft ZIP Unscrambler to convert gla archives; big thanks to GMMan for making this possible!
- my obb unpacker for the Android game (not needed for iOS)

Bdae files are actually zip with no compression, and they contain the actual bdae models plus other files. The script can read data directly from packed bdae, so there's no need to extract them.
Image Image Image Image


Gameloft Pig Importer - Deprecated; use PIG2FBX instead
Supports cars, tracks, characters and pretty much any game model.
Most textures are in PVR format, but their extension is from the source image (TGA, PSD). The script will rename them but make sure you have the PVR plugin installed.

Works only with Asphalt 1.5 or older and Minion Rush.
Newer versions of Asphalt8 use lz4 compressed buffers and textures. Decompression is impossible with MAXScript, so I've created a standalone command-line tool that will convert models to FBX.
Download PIG2FBX here

Image Image Image Image
Image Image Image Image Image


Assetto Corsa Importer
I made this way back in March when the Tech Preview came out with only one car. Since then the Early Access game was released with several new cars.

Supports cars, tracks, characters and pretty much any game model.
Textures are packed inside model files and the script will extract (but not overwrite) them in a texture folder.
Image Image Image


Eutechnix Model Importer
Model importer for Nascar 2013 and '14 PC games. Partial support for Auto Club Revolution.

Textures have to be extracted first using this script: viewtopic.php?f=18&t=11326
In some cases you will have to set tiling factors manually (eg. carbon fiber, track grass or asphalt).

You'll need aluigi's nascar2011.bms script to extract *.AR archives and then you can import *.ARC files.
Image Image Image Image Image
Image Image Image Image Image


DriverSF Importer v1.01
Vehicle importer for Driver San Francisco.

The script is able to load dngvehicles.sp and extract vehicle files or import them directly.
There are 3 files per car: cockpit, LOD1 and LOD2-5. Once extracted, vehicle files can also be loaded separately. If you do so, remember to extract the Shared Resources file!
Textures are extracted automatically as you import a specific car, but they are spread out within the car files, so you will first have to import all 3 to get all textures.
Image Image


Milestone Importer v1.2
Works with vehicles and characters from SBK2011, SBK Generatins, MUD, WRC3 and Superstars V8 Next Challenge.

Game files can be extracted with aluigi's msmixext tool
Image Image Image


I3D Importer v1.2
Model importer for Farming simulator (tested with 2012 and 2013). Supports vehicles and characters (drivers, peds, cows, chickens :D)

This is one of the first scripts I made by myself, so it could use some optimizations. But it works...
Image Image Image


SMS Importer v3.0
Capable of importing vehicle, track and character models from games created by Sligtly Mad Studios with their Madness engine: Shift1&2, TRFRL and pCars.
This script was originally created by vagos21 ~2 years ago. Since then, we've been working together to optimize and update the script.

Game files can be extracted with aluigi's BFF script. The script is also capable of renaming MEB and BMT files with their internal names.
Image Image Image
Last edited by Chipicao on Mon Nov 02, 2015 11:24 pm, edited 44 times in total.
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
Nobby
veteran
Posts: 109
Joined: Thu May 13, 2010 12:35 am
Has thanked: 5 times
Been thanked: 16 times

Re: My MAXScripts

Post by Nobby »

Just wanted to say "Thank You Thank You Thank You" for these. ive been looking for weeks for a AC extractor and i was just about to give up, i came here and gave it one last shot and this thread was the only result and Lo and behold you have a script. So thank you, this makes for a very good new years present..

And on that note. there is only 20 mins until new year here (im in the UK ) so id like to wish you a Happy new year.
Yes! i know that's what i said... But its not what i meant. ;)
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Re: My MAXScripts

Post by Chipicao »

You're welcome :) And Happy new year!

I've also added an incomplete script for Far Cry 3, maybe someone finds use for it or manages to finish it.
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
User avatar
Tosyk
double-veteran
double-veteran
Posts: 1027
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 269 times
Been thanked: 154 times
Contact:

Re: My MAXScripts

Post by Tosyk »

Chipicao, would be great if you add support for CSR Classics game on ios. unity engine.

thanks for your work and happy new year! :wink:
Thank you for all you do here
my blog | my forum
Guerra8888
ultra-n00b
Posts: 4
Joined: Sun Jun 06, 2010 3:47 am
Has thanked: 4 times

Re: My MAXScripts

Post by Guerra8888 »

Many THX Chipicao...
Freakydevil
n00b
Posts: 10
Joined: Sun May 02, 2010 5:38 pm
Has thanked: 1 time

Re: My MAXScripts

Post by Freakydevil »

Many thanks for this great scripts!

Would it be possible for the pCars script to also rename the dds textures?
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Re: My MAXScripts

Post by Chipicao »

Absolutely impossible. MEB and BMT files contain internal names that in 99% of the cases match the intended filename.
But DDS texture don't have any names inside, only image data.

However, the script outputs a list of missing textures in the Listener (press F11 or open it from the MAXScript menu). You can use that to manually rename textures and then load the car again.
Last edited by Chipicao on Wed Feb 05, 2014 4:33 pm, edited 1 time in total.
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
User avatar
Tosyk
double-veteran
double-veteran
Posts: 1027
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 269 times
Been thanked: 154 times
Contact:

Re: My MAXScripts

Post by Tosyk »

Chipicao wrote:the script
hey Chipicao, what about CSR Classics? i can upload some samples via pm
Thank you for all you do here
my blog | my forum
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Re: My MAXScripts

Post by Chipicao »

Hey Tosyk. I didn't ignore your post. :)
I'm working on adding support for Unity 4.3 as we speak.

And thanks, but I can get the game from iTunes.
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Re: My MAXScripts

Post by Chipicao »

Ah, I thought it was a new game, but it's not.
Cars are stored in separate bundles in this folder: \Payload\csrclassics.app\AppDataRoot\AssetBundles
They have extensions like numbers (.7, .8, .18...) but they are all UnityWeb archives like .unity3d, so you can use aluigi's script on them.

The only real problem was that this game uses strange array indices for assets, something I encountered before with Blizzard's Hearthstone.
I already had a workaround in mind for some time, and I guess now was the time to implement it. :)
Image Image

Hearthstone:
Image Image

Updated first post with new download link.
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
User avatar
Tosyk
double-veteran
double-veteran
Posts: 1027
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 269 times
Been thanked: 154 times
Contact:

Re: My MAXScripts

Post by Tosyk »

Chipicao, great work! but how to use it with unpacked .7,.6,.8,.22... file?

importer doesn't want to see unpacked files. i tried to rename them to .unityweb/.unity3d/.assets but nothing seems to work.

edit:
aah, extension has to be .high
Thank you for all you do here
my blog | my forum
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Re: My MAXScripts

Post by Chipicao »

When I unpack .7 .6 .8 files with aluigi's script, the extension of CustomAssetBundle files is already .high
Isn't it the same for you?
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
User avatar
Tosyk
double-veteran
double-veteran
Posts: 1027
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 269 times
Been thanked: 154 times
Contact:

Re: My MAXScripts

Post by Tosyk »

Chipicao wrote:When I unpack .7 .6 .8 files with aluigi's script, the extension of CustomAssetBundle files is already .high
Isn't it the same for you?
that is true, it is .high, but as a perfectionist i'm trying to make everything perfect, including extensions, so i've just renamed .high to .unity3d and .tex.
Can't find a tool for converting .pvr, though.

p.s.: would be great if your scripts were adapted for 3ds max 2009
Thank you for all you do here
my blog | my forum
User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 305 times
Contact:

Re: My MAXScripts

Post by Chipicao »

Well they're not supposed to be .unity3d or .tex.
My script uses a filter to exclude non-unity files, that's why it didn't work (even though .unity3d is a unity file, it's an archive)

If you want to be a perfectionist, CAB files usually have no extension at all, so you can remove .high and it will still work. ;)

PVRTexTool: http://www.imgtec.com/powervr/insider/p ... extool.asp

Sorry, max 2009 support will probably never happen. I would have to go through the whole script (3000+ lines of code) and check the documentation to see which command is supported in 09, which has different parameters, and so on.
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.
User avatar
Tosyk
double-veteran
double-veteran
Posts: 1027
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 269 times
Been thanked: 154 times
Contact:

Re: My MAXScripts

Post by Tosyk »

Chipicao, roger that. Still, great work, thank you :mrgreen: I really like rusty textures in CSR Classics.

edit:
Chipicao, would you be able to support weights too? I found a game called Avengers Initiative, and your script work perfect with it, game has cool characters, and would be great if your script support weights with adding skin modifier on the skinned models. Thank you :)
Thank you for all you do here
my blog | my forum
Post Reply