A Community discussion forum for Halo Custom Edition, Halo 2 Vista, Portal and Halo Machinima

Home  Search Register  Login Member ListRecent Posts
  
 
»Forums Index »Halo Custom Edition (Bungie/Gearbox) »Halo CE General Discussion »[RELEASE] Mo's Editing Kit (MEK)

Author Topic: [RELEASE] Mo's Editing Kit (MEK) (25 messages, Page 1 of 1)
Moderators: Dennis

MosesofEgypt
Joined: Apr 3, 2013


Posted: Feb 23, 2017 07:08 PM    Msg. 1 of 25       
This is my collection of tools I've made for editing Halo. You guys wont find all of them useful, but many of them are. This will be updated whenever I commit changes, which means you guys can check in whenever to see if something is new. Here's a quick rundown of what each thing is as of the time of me writing this:

Convertor-Coll_to_Mod2:
Converts a directory of model_collision_geometry tags into gbxmodel tags so they can be imported into 3dsmax. The converter requires that you also provide the gbxmodel that the collision goes to, otherwise it wont be able to rig anything or position the nodes. It will try to locate a gbxmodel with the same name as the collision, but if it cant it'll ask you to select it. The converted model will have the same name as the gbxmodel, but with "_COLLISION" on the end.

For importing the model into max, it's best to use the gbxmodel importer that comes with the MEK(in the scripts folder) as it has some fixes and upgrades. Also, import the models with "attach parts within region" as unchecked. This way you wont get all the pieces lumped into one mesh. You'll need to weld together parts that use different materials in the same mesh, but that's fine.

Convertor-Mode_to_Mod2:
Converts a directory of xbox models to gbxmodels.

Convertor-Scex_to_Schi:
Converts a folder of shader_transparent_chicago_extended tags into shader_transparent_chicago tags. Doesnt have the ability to choose the directory like all the other applications, but that's mainly because this was actually my first app I ever wrote for editing Halo tags.

Halo_Animation_Fps_Changer:
Can convert a directory of animation tags from 30 fps to 60 fps, or from 60 to 30. In order to preserve the original animation, the new frame count is actually 1 less than double, so a 30 frame animation will be turned into a 59 frame one. Converting an animation tag from 30 to 60 then back to 30 should give you the exact same animation(save for some floating point rounding errors).
Certain animations shouldn't have their animations changed though, such as aiming, suspension, talking, etc. There is a new "special overlay" flag in each animation to specify it as one of these special animations. Check that flag for each animation you dont want converted.

Halo_Bitmap_Optimizer_&_Converter:
You all know what this is. BUT you should know that I wrote accelerator modules in c, but they are distributed as source files that need to be compiled into binaries when you install the mek. If you dont have a certain version of the visual c++ compiler installed(depends on the version of python you're running) then it will default to the slow python functions. Follow these instructions to install the correct compiler if you're interested in getting that massive speed up(more than 100x faster)https://blog.ionelmc.ro/2014/12/21/compiling-python-extensions-on-windows/. After the compiler is installed, just run the upgrade.py script.

Halo_TeXource:
Capable of ripping the uncompressed source textures from a directory of tags to tga files.

Mozzarilla:
The highlight of the library, Mozzarilla is essentially a replacement Guerilla with some huge improvements. Just ask Masterz!
Here is a current list of the most prominent features of mozz:

  • Is able to switch between creating regular tags, open sauce tags, and gametypes.

  • Is able to view/edit hidden data(edit the config to enable it)

  • Is able to load corrupt tags for debugging purposes.

  • Can export/import blocks(pieces of a tag)

  • Makes backups of tags before editing.

  • Highly customizable user interface colors, widget sizes, hotkeys, etc.

  • Contains a customizable undo/redo feature.

  • Contains a hierarchy view for easily browsing a tags directory and loading tags.

  • Allows choosing any number of tags directories and switching between them at will.


Mozzarilla also contains a few special tools for aiding in modding:

  • Broken dependency scanner: For locating broken dependencies in the specified types of tags in the specified folder.

  • Dependency viewer: For easily seeing which tags a tag refers to and opening any of them.

  • Tag zipper: For making a zip folder containing a tag and every tag it depends on.



If you encounter a bug, send me the mozzarilla.log(if it creates one) and/or the startup_crash.log(if it creates one) and fully describe what

happened and what you did to cause it. We've been having some issues with it running on Windows 10(it works for R93 Sniper, but not Masterz),

but it seems to run fine on Windows 7, somewhat fine on Linux, and crashes on OSX.

Mozzarilla(console):
Same as the above, except it runs with a console window so you get a printout of errors if it crashes when starting up.

Stubbs_Antr_Compiler:
Capable of compiling meta data extracted from a Stubbs the Zombie map into a working animation tag.

Stubbs_Mode_Compiler:
Capable of compiling meta data extracted from a Stubbs the Zombie map into a working model tag.

Stubbs_Soso_Compiler:
Capable of compiling meta data extracted from a Stubbs the Zombie map into a working open sauce shader_model tag.

These next ones you shouldnt even bother with for now. They're either unfinished or just little tests that I decided to keep around:

Halo_Meter_Extractor:
This is capable of extracting the bitmaps from all meter images in the tags folder to tga files. This was a test, so dont even bother with it.

Halo_Tag_Hash_Cacher:
This was to go with my tag ripper that I was working on. Dont even bother with it, it doesnt do anything right now.

Halo_Animation_Decompressor:
Decompresses compressed animations found in model_animation tags. This one isnt completely finished, as the decompression is screwy and I haven't figured out exactly what else needs to be done. Honestly, dont even bother with it.

The MEK also contains a scripts folder with any Maxscripts that I've made or modified. Currently there are Gbxmodel Importer and an Animation Importer scripts, which are both modified variants of TheGhost's scripts.

The model importer is now also capable of importing xbox models, and shader bugs found in previous versions as well as various crash related bugs have been fixed.

The animation importer can now import model_animiation_yelo tags, can use xbox models when prompted for a model, and has been fixed to work with tags containing more than 255 reflexives. This means you can finally open tags that have 256 or more animations.


DOWNLOAD
https://bitbucket.org/Moses_of_Egypt/mek/downloads/?tab=downloads

Click "Download repository" and extract the contents somewhere. Read the readme.txt for installation instructions.

Troubleshooting:

  • If programs wont load or save tags, locate your python installation, right click python.exe, and set it to run with administrator privileges. Do the same for pythonw.exe.

  • If you changed config settings and now it wont load or stuff is too screwed up to use, delete the config. You can find it at PYTHON\Lib\site-packages\mozzarilla\mozzarilla.cfg where PYTHON is the location of your python installation. If you don't know where this is, you can find it in your PATH variable. If not, then go looking lol.


Edited by MosesofEgypt on Mar 21, 2017 at 11:39 PM


EmmanuelCD
Joined: Jan 7, 2015

Using fox avatar since 1893


Posted: Feb 23, 2017 08:39 PM    Msg. 2 of 25       
No Python needed?


MosesofEgypt
Joined: Apr 3, 2013


Posted: Feb 23, 2017 08:45 PM    Msg. 3 of 25       
Yes, you need python. Seriously, why is this such a big deal for you? I mean, you install python once, and then you dont have to worry about it again. It's not like java where it constantly tells you to update it and is constantly running in the background. You only update when you want/need to. If you ask me again if something requires python or not, I'm just going to ignore you. I was so close to doing it this time.

EDIT: All right look, I'm not trying to be a jerk, but every time you post something on one of my release threads it's almost always "does it need python/can you make it not need python". I've been getting pretty annoyed at that, especially since I work hard to make these things and most people seem not not really care, which is the impression I'm getting from you. I've already told you that everything I make will require python.
Edited by MosesofEgypt on Feb 23, 2017 at 09:15 PM


il Duce Primo
Joined: Apr 22, 2007

CMT Team Leader


Posted: Feb 23, 2017 08:52 PM    Msg. 4 of 25       
Quote: --- Original message by: MosesofEgypt

Stubbs_Antr_Compiler:
Capable of compiling meta data extracted from a Stubbs the Zombie map into a working animation tag.

Stubbs_Mode_Compiler:
Capable of compiling meta data extracted from a Stubbs the Zombie map into a working model tag.

Stubbs_Soso_Compiler:
Capable of compiling meta data extracted from a Stubbs the Zombie map into a working open sauce shader_model tag.

Edited by MosesofEgypt on Feb 23, 2017 at 07:16 PM


Sounds like something masterz would ask for


DaLode
Joined: Oct 4, 2014

Ho ho hooooly doodle!


Posted: Feb 24, 2017 12:52 AM    Msg. 5 of 25       
This is the year 2017 right.
Are people still hating on Masterz?

Nice tools Mo, could have been useful if I was still "active" in Halo CE mapping.


MosesofEgypt
Joined: Apr 3, 2013


Posted: Feb 24, 2017 01:13 AM    Msg. 6 of 25       
He actually did ask for them........


cippozzo
Joined: May 7, 2013

"I... I am a monument to all your sins."


Posted: Feb 26, 2017 02:57 PM    Msg. 7 of 25       
Quote: --- Original message by: MosesofEgypt
He actually did ask for them........

maybe they want NODE.JS

Moses I remember there are tools that builds native executables depe free out of python's code. A binary executable would avoid py's version related issues.


MosesofEgypt
Joined: Apr 3, 2013


Posted: Feb 26, 2017 03:02 PM    Msg. 8 of 25       
Yeah, but they're a pain to use and I don't know if they have issues going between systems. This also allows me to roll out updates easier and you're able to edit the program itself if you need to(like masterz is doing). There are more benefits to me keeping it in python than I'd get from compiling it into an executable.


not m00kz
Joined: Feb 21, 2017

are you pecking kidding me


Posted: Mar 8, 2017 05:15 PM    Msg. 9 of 25       
e: wrong thread.
Edited by not m00kz on Mar 8, 2017 at 05:17 PM


Halonimator
Joined: Dec 15, 2014

Halo5gsucks.com


Posted: Mar 8, 2017 09:27 PM    Msg. 10 of 25       
Quote: --- Original message by: not m00kz

e: wrong thread.
Edited by not m00kz on Mar 8, 2017 at 05:17 PM


Kys


not m00kz
Joined: Feb 21, 2017

are you pecking kidding me


Posted: Mar 9, 2017 09:48 AM    Msg. 11 of 25       
Quote: --- Original message by: Halonimator
Kys




Super Flanker
Joined: Oct 5, 2012

Synthetic furnishings, rails and no safety.


Posted: Mar 9, 2017 03:15 PM    Msg. 12 of 25       
Quote: --- Original message by: not m00kz
Quote: --- Original message by: Halonimator
Kys


https://puu.sh/uyYbt/eee143c0c8.jpg


Why do the lamps have spines? And is that a pokemon toy on the window ledge???


not m00kz
Joined: Feb 21, 2017

are you pecking kidding me


Posted: Mar 9, 2017 10:21 PM    Msg. 13 of 25       
idk it's just some crazy British letsplayer


SOI_7
Joined: Mar 23, 2012

Tatsumaki best waifu


Posted: Mar 10, 2017 11:03 AM    Msg. 14 of 25       
Mr. Moses, you deserve money, cookies and girls


OrangeJuice
Joined: Jan 29, 2009

I laugh at people who put STUDIO in their names.


Posted: Mar 12, 2017 12:31 PM    Msg. 15 of 25       
Doesn't work on linux xD hahahahahaaa ! !


MosesofEgypt
Joined: Apr 3, 2013


Posted: Mar 12, 2017 02:06 PM    Msg. 16 of 25       
Makes sense. The functions i wrote for working with filepaths convert to lowercase since some functions return different drive letter cases and i can't easily check if a tag has been indexed by a path if that crap occurs. Binilla should work tho, since that filepath stuff is mostly required by mozz

Edit: oh, do you mean the installer? Yeah, it prolly wont cause the install is done through supplying os commands. I dont have a linux machine to test my installer on to make sure i call the correct functions. Maybe later...
Edited by MosesofEgypt on Mar 12, 2017 at 02:09 PM


gruntfromhalo
Joined: Nov 21, 2007

actual loli


Posted: Mar 17, 2017 06:56 PM    Msg. 17 of 25       
hi where is the methyl ethyl ketone ???
:DDdD


Jesse
Joined: Jan 18, 2009

Discord: Jesse#4500


Posted: Mar 19, 2017 01:38 AM    Msg. 18 of 25       
Is DDS the only file type supported by the "Bitmap from DDS"?

I ask because DDS is generally a tricky file type for me (PS doesn't open them by default) and I like using TIF files.


SBB_Michelle
Joined: Nov 4, 2015

Dumb, sometimes..


Posted: Mar 19, 2017 01:40 AM    Msg. 19 of 25       
Download nvidia's photoshop plugin for dds compat. https://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop


Super Flanker
Joined: Oct 5, 2012

Synthetic furnishings, rails and no safety.


Posted: Mar 19, 2017 05:46 AM    Msg. 20 of 25       
Quote: --- Original message by: SBB_Michelle
Download nvidia's photoshop plugin for dds compat. https://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop


Yay! People are learning!


Isxz
Joined: Apr 14, 2013

MrChromed


Posted: Mar 20, 2017 09:28 AM    Msg. 21 of 25       
Some textures could be in a "RAW DDS" format, and maybe the nvidia tool could not open them. In that case, you can use the "Intel Texture Works Plugin" software for Photoshop CS6

https://software.intel.com/en-us/articles/intel-texture-works-plugin

The other option could be "Noesis", a software that can open hundreds of model, image, and animation formats.

http://richwhitehouse.com/index.php?content=inc_projects.php&filemirror=noesisv425.zip


Super Flanker
Joined: Oct 5, 2012

Synthetic furnishings, rails and no safety.


Posted: Mar 20, 2017 11:36 AM    Msg. 22 of 25       
Mmhm noesis is actually awesome for porting game assets to other games.

There is a HUGE list of supported plugins for importing different file types and more are constantly being made by communites to support their own respective titles. (Python is the language methinks)

It does only export to .obj which isn't a particular problem for me but idk what you guys get upto when your kleenex runs out

Anyway tldr; if you want to extract something from say source download it from mrchromed's post and you are on your way.


R93_Sniper
Joined: Feb 13, 2011

When in Doubt, RUN!


Posted: Mar 20, 2017 05:27 PM    Msg. 23 of 25       
OG DXTBMP also did the trick back in the Halo Trial / Halo PC modding days


MosesofEgypt
Joined: Apr 3, 2013


Posted: Mar 21, 2017 03:48 PM    Msg. 24 of 25       
Added a tool for converting an entire directory of animation tags into 60 fps versions. The new tags will be named with a "60fps_" prefix, so dont worry about overwrites. You can also convert a 60 fps animation tag back to a 30 fps one. If you turn a 30 to a 60 and back to a 30, the animations will be exactly the same, save for some minuscule floating point rounding errors(file size will be the same too). All animation frame index values are also modified, so you dont need to worry about those either.

You'll need to do some prep work first though, by opening the animation tags in mozz. You'll need to check a new flag for which animations to NOT convert(special overlays such as suspension positions, talking, aiming, etc) as well as a flag for whether or not the velocity of the animations final frame is important(getting out of a vehicle, jumping, running, etc). In order to get a version of the animation tag definition with those flags you'll need to update the MEK by running the update.py script.

I'm not going to write other tools to automatically convert other tags to 60 fps, but this should take care of the biggest issue.

EDIT: This video is courtesy of Michelle
https://www.youtube.com/watch?v=j_ual-1wt2c
Edited by MosesofEgypt on Mar 21, 2017 at 03:53 PM


lolslayer
Joined: Mar 21, 2015

https://www.youtube.com/watch?v=uMHbAKvPJkU


Posted: Mar 21, 2017 06:47 PM    Msg. 25 of 25       
Quote: --- Original message by: MosesofEgypt

Added a tool for converting an entire directory of animation tags into 60 fps versions. The new tags will be named with a "60fps_" prefix, so dont worry about overwrites. You can also convert a 60 fps animation tag back to a 30 fps one. If you turn a 30 to a 60 and back to a 30, the animations will be exactly the same, save for some minuscule floating point rounding errors(file size will be the same too). All animation frame index values are also modified, so you dont need to worry about those either.

You'll need to do some prep work first though, by opening the animation tags in mozz. You'll need to check a new flag for which animations to NOT convert(special overlays such as suspension positions, talking, aiming, etc) as well as a flag for whether or not the velocity of the animations final frame is important(getting out of a vehicle, jumping, running, etc). In order to get a version of the animation tag definition with those flags you'll need to update the MEK by running the update.py script.

I'm not going to write other tools to automatically convert other tags to 60 fps, but this should take care of the biggest issue.

EDIT: This video is courtesy of Michelle
https://www.youtube.com/watch?v=j_ual-1wt2c
Edited by MosesofEgypt on Mar 21, 2017 at 03:53 PM


You're amazing!

 

 
Previous Older Thread    Next newer Thread





Time: Tue March 28, 2017 12:16 AM 234 ms.
A Halo Maps Website