Views: 19,857,035 |
Home
| Forums
| Uploader
| Wiki
| Object databases
| IRC
Rules/FAQ | Memberlist | Calendar | Stats | Online users | Last posts | Search |
03-29-24 03:04 PM |
Guest: |
Main - Posts by blank |
blank |
| ||
Normal user Level: 26 Posts: 1/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
I figured I'd post my tools on this board so we have all the hacking tools in one place.
collision_export Can convert a number of nintendo collision file formats to wavefront OBJ files. At the moment the supported file formats are: Wii KCL (used in Super Mario Galaxy 1/2, Mario Kart Wii, Skyward Sword), COL (used in Super Mario Sunshine) and BCO (used in Mario Kart: Double Dash). Usage: > collision_export infile [outfile] where infile is the collision file to be converted and the optional argument outfile is the name of the resulting OBJ file. Download: collison-v0.6 collision_creator Convert a Wavefront OBJ file to a KCL and PA file that can be used for collision in SMG1/2. Requires Python 3 with PyQt4 installed to run. Check the README for more information. Download: collision_creator-v0.7 |
blank |
| ||
Normal user Level: 26 Posts: 2/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Yep, the source is included in the download. |
blank |
| ||
Normal user Level: 26 Posts: 3/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
As far I know it generates perfect collision maps, but as I said it hasn't been tested that much. The only problems I have experienced so far hasn't been caused by the importer itself, but by badly formed OBJ files. Long, thin triangles for example will cause problems, but that is because the game can't properly collision test with such triangles, it's not a problem with the importer.
Silver_mkll: I know and I'm working on one, but such things takes time. |
blank |
| ||
Normal user Level: 26 Posts: 4/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
I have the same problem using riivolution, so the patching method is definitely not the problem.
Does Whitehole change anything other than the ObjInfo files? EDIT: Just noticed that the edited ObjInfo files aren't aligned to 32 byte boundaries. That might very well be what's causing the problem. |
blank |
| ||
Normal user Level: 26 Posts: 5/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
The Indirect models of SMG2 (AquariumPlanetAIndirect, AquariumPlanetBIndirect, BattleWaterTeresaPlanetIndirect and RailMoveWaterObjIndirect) all uses indirect texturing, so there is probably some connection there. |
blank |
| ||
Normal user Level: 26 Posts: 6/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Indirect texturing is a feature that lets the Wii use the values of one texture lookup to offset the texture coordinates of an other texture lookup. It isn't implemented in bmdview2, so I'm guessing it isn't implemented in Whitehole. Not that it's that important as most models looks fine without, but if you're interested in implementing it let me know. I got most of the indirect texturing stuff in BDL files figured out. |
blank |
| ||
Normal user Level: 26 Posts: 7/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Before you start re-inventing the wheel you might want to see if not Wiimms ISO Tools satisfies your needs. I haven't really used it my self, but as far as I can tell, it can do all the things you mentioned. |
blank |
| ||
Normal user Level: 26 Posts: 8/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
I was more thinking about indirect texturing in relation to BDL files, where and how the data is stored and such. But for indirect texturing in general look here http://libogc.devkitpro.org/gx_8h.html, specifically at the functions GX_SetTevIndirect, GX_SetIndTexOrder, GX_SetIndTexCoordScale and GX_SetIndTexMatrix. |
blank |
| ||
Normal user Level: 26 Posts: 9/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
I know you can extract an entire ISO, change and add files, and the rebuild the ISO, so adding and changing files are certainly possible. Whether there exists some easy commands to replace or add files to an already exsisting ISO, I don't know.
As for it being a command line tool, I'd say that's a good thing, but I guess that's a matter of opinion . |
blank |
| ||
Normal user Level: 26 Posts: 10/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
On a related note: The file ProductMapObjDataTable.bcsv in /ObjData/ProductMapObjDataTable.arc contains all the standard map objects. The file has two fields:
* ModelName: the name of the objects model * ClassName: specifies the type of object It might be interesting to look more into the different map object classes, as objects in the same class most likely has the same properties (same obj_args's and stuff). E.g. all map objects with ClassName RailMoveObj seems to be moving platforms, and can therefore probably be assigned a path. |
blank |
| ||
Normal user Level: 26 Posts: 11/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Lunaboy's RARC Tools can both extract and pack RARC files. |
blank |
| ||
Normal user Level: 26 Posts: 12/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
obj2bdl is a command line program that converts Wavefront OBJ files to BDL files that can be used in SMG1/2.
Check the README for info on how to use the program. The program also supports an extended version of Wavefront OBJ format that includes vertex colors. To export models to this format you need blender with the Extended Wavefront OBJ exporter add-on (which is included in the download) installed. To install this add-on place the io_scene_extened_obj folder in your blender add-on folder and enable it under the Add-On tab of the User Preferences window. For more information on how to do this look here. I have only released the program as a python script, which you need Python 3 with PyQt4 installed to run. Download: https://kuribo64.net/get.php?id=WTIHxhDguVLTi5J2 |
blank |
| ||
Normal user Level: 26 Posts: 13/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
msbconv allows for parsing and creation of MSBT files, the files used to store the messages of SMG2.
Check out the README for info on how to use the program. I have only released the program as a python script, which you need Python 3 to run. I know that somebody made an EXE, but I currently can't find it. If anybody has a link, please post it. Download: http://www.mediafire.com/?y0cp30mu3rof0p0 Known bugs: - some Japanese files will crash the program |
blank |
| ||
Normal user Level: 26 Posts: 14/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
You mean the EXE? Yeah, all the links I could find were dead, which is why I didn't include a link in the post. It should definitely br uploaded somewhere more stable. |
blank |
| ||
Normal user Level: 26 Posts: 15/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
In a terminal use
> chmod +x install.sh > ./install.sh |
blank |
| ||
Normal user Level: 26 Posts: 16/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Sure, the source can be uploaded as well. The link I gave should be stable, but having the EXE and source at same place might be a good idea. |
blank |
| ||
Normal user Level: 26 Posts: 17/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Gericom were able to use a modified version of my KCL creation code for MKDS, the same could probably be done for SM54DS. With a minor modification to my collision exporter I was able to export the collision for Tick Tock Clock:
|
blank |
| ||
Normal user Level: 26 Posts: 18/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
You can find the tools with source here, but the source is python. Also, the way the octree is written probably wont work with SM64DS, at least it didn't with MKDS. |
blank |
| ||
Normal user Level: 26 Posts: 19/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Also, if I unpack and then repack a Nintendo map file, Whitehole crashes when loading it. |
blank |
| ||
Normal user Level: 26 Posts: 20/129 EXP: 95876 Next: 6399 Since: 07-08-12 Last post: 3315 days ago Last view: 2287 days ago |
Lunaboy's RARC packer supports arbitrary directory depth. |
Main - Posts by blank |
Page rendered in 0.029 seconds. (2048KB of memory used) MySQL - queries: 21, rows: 137/137, time: 0.012 seconds. Acmlmboard 2.064 (2018-07-20) © 2005-2008 Acmlm, Xkeeper, blackhole89 et al. |