DSHack

Archive Generated December 23rd, 2018
NiAlBlack
User ID: 126

Thread: Need some people for my hack
Author Posted on 2015/10/31
NiAlBlack Well, I'm just trying to figure out custom tracks for Mario Kart 7 myself, so I can't really help you out as I'm unexperienced myself, but I can definitely give you some advice.

So first of all, KMP editing:

As mentioned in your other thread, you can use KMP expander to edit KMP files. To use it, you must download it from github and compile it. (Check out the other thread for the link.) I compiled it using Visual Studios Express 2013. Then you can export your KMP using Every File Explorer and load it into KMP expander. Here you can select different sections and export them as CSV. However, you will encounter issues with the German number format (looking at the source code, this could easily be fixed though), so be sure to set the decimal separator to a point "." instead of a comma "," and the list separator to a comma "," instead of a semicolon ";" using the Control Panel beforehand.

Now you can edit your exported file using Microsoft Excel or similar software.

When done, go back to KMP expander, select the corresponding section, click "Inject CSV" and select your edited file.

BTW, the start point is in the Object (GOBJ) section.

2. Scale:
From my experience, a good scale when importing Mario Kart Wii tracks into Mario Kart 7 is 0.1 or even a little less. I took a look at your track and it appears that it is not scaled from the origin. If you scale from the origin, you can simply multiply all values in the MKWii KMP with your scale factor and transfer them to MK7.

3. Model Detail:
Models in MKWii have more detail. Hence, I encountered a slow motion bug when I tested your track. To avoid this, I'd recommend you to use the files ending in "_d" when exporting from Mario Kart Wii. They were designed for multiplayer so they have less detail. If you still encounter a slow motion bug you could try to use a New 3DS and overclock it, that might help it. I don't own one so I can't test it. However, it would be a shame if certain tracks were only playable on the New 3DS.

4. KCL:
When testing your track I could only drive a few meters before I was out of bounds, so something is definitely horribly wrong with your KCL. I also noticed that pretty much everything is drivable, which indicates that your KCL was created from the model itself instead of a separate collision model. I'd recommend you to use Wiimms SZS Tools to export Mario Kart Wii's KCL as OBJ and use that instead. This way, you'll definitely get all the flags right and you'll also save memory as KCL's have less detail. This might also help you to get rid of the slow motion bug.

5. Track Slot/Objects:
You might wanna start with something more similar when it comes to objects. I'd recommend Rock Rock Mountain as it already has bats. The cars from Wuhu Island should work as railroad cars. However, I coudn't figure out how to port objects from one track to another yet, but it has been done for N64 Rainbow Road, so it must be possible. I know that the first ported objects for MKWii required hex editing, so that might be the only way right now, but I don't really know.

I hope that was somewhat helpfull.
Thread: Need some people for my hack
Author Posted on 2015/10/31
NiAlBlack

It's not possible, even if you put a legit Cartridge of MK7 into a New 3DS, it'll still execute it as an old 3DS Game, and therefore, it'll still use the RAM and CPU Limits of an old 3DS.
In order to make it work differently on a New 3DS, MK7 should have been re-Compiled, using the New 3DS DESC, and with at least SDK 10.0 (which matches Firmware 9.x).

But I don't have the MK7 Source Code, nobody other than Nintendo's MK7 Team (or Retro Studios) has, so unless one of the people from the MK7 Team would sacrifice his or her job, there's no way to re-Compile MK7 for New 3DS.


I was talking about smealum's latest release. You can use hans to overclock with any regular 3DS game. He stated that it reduces lag in some games. Are you sure that doesn't work?
Thread: Need some people for my hack
Author Posted on 2015/10/31
NiAlBlack Well, you said it's limited to an old 3DS's CPU, but using overclocking it's not. I get that the same GPU will not allow better graphics, but a slow motion bug could also occurr due to a complex KCL.
Thread: Need some people for my hack
Author Posted on 2015/11/01
NiAlBlack
Besides, not everyone (can) use(s) HANS, so if you want to provide such CT's, you'll need to Test them without Overclocking, before you put those up in the Hack Store.

Pretty much what I said:

If you still encounter a slow motion bug you could try to use a New 3DS and overclock it, that might help it. I don't own one so I can't test it. However, it would be a shame if certain tracks were only playable on the New 3DS.



And CT's being slow is not a Bug in MK7, it's a Bug in the Model and/or KCL you have made.
SketchUp is known to fuck up Models, by adding more Triangles than necessary.
Other than that, EFE's BCMDL Converter is still Buggy.


Yeah, I know that too. However, If your model is simply too complex (which could easily happen with MKWii models) a model without unnecessary triangles won't help you. I never attributed it to MK7 itself. And technically, it's not a bug but just more information than the system can handle.


And finally, Collision also counts for the amount of Triangles shown in-game, so let's say: 2000 Triangles in the Model + 2000 Triangles in the KCL = 4000 Triangles total.
So if you make a KCL File, make sure you use a separate OBJ File, in which you remove everything the Player will never touch.


Yeah, that's why I suggested to use the KCL from MKWii.
Thread: Importing tracks from other games? (Specifically, Mario Kart GCN)
Author Posted on 2015/11/06
NiAlBlack If you want to learn how to get models out of other Mario Kart games, you can check out the Porting Tutorial on wiki.tockdom.com. However, it would be nice if you ported a different track as I'm currently attempting to port GCN Yoshi Circuit. I already have the model as BCMDL. Having duplicate ports would just be a waste of time and energy.
Thread: Importing tracks from other games? (Specifically, Mario Kart GCN)
Author Posted on 2015/11/06
NiAlBlack
Damn son, someone else is working on that too :(

Hmm, I guess it's quite a good track for porting as it wouldn't lack any objects except for the helicopter. But that's not really important for gameplay.
Thread: Are there restrictions to KMP values?
Author Posted on 2015/11/08
NiAlBlack So I've been working on a track and both, the model and the collision work fine. (At least they load without crashing, I couldn't really test them any further yet.) However, as soon as I changed the start point the track wouldn't even load. (I tried this twice with slightly different values just to be certain.)

My track is based on Piranha Plant Slide and I changed start position from (2865|1015|1741.22) to (346|1280|3409) and the Y angle from 180 to -90. I've changed the start position of a track before and it worked just fine, so I'm quite certain that it's not because of KMP Expander or because I woudn't know how to use it.

So my though was that there could be a limit of allowed values. Maybe that is set in the AREA section (which can't be exported as CSV) or there could even be a hard-coded limit (besides the highest possible floating point value; it would probably not be as low as my coordinates, though).

Any thoughts on why that happens and how to fix it?
Thread: BOL Editor (upcoming)
Author Posted on 2015/11/13
NiAlBlack Background: As you might have heard, I was planning to port GCN Yoshi Circuit and maybe some more Mario Kart: Double Dash!! tracks. So I made the KCL and the model and I was facing the most annoying part of CT creation: KMP editing! So I thought: Why not port the KMP from Mario Kart: Double Dash!! (Because I'm extremely lazy :P) After some research I found a file documentation of BOL files (the MKDD equivalent of KMP) but no (public) tools, so I thought why not create my own editor. So I did!


This is Waluigi Stadium's BOL.

As you might have noticed, the layout is heavily inspired by KMP Cloud. So far it is only capable of reading the BOL file and displaying its contents in tables, but I'll definitely add more functionality.

Eventually, this could lead to Mario Kart: Double Dash!! Custom Tracks. Model importing is already possible, the only thing missing is a BCO (collision file) creator.
Thread: BOL Editor (upcoming)
Author Posted on 2015/11/14
NiAlBlack
MKDSCM Last has a POC bol->nkm converter aswell.

Oh well, I didn't know that. I'm gonna keep on working on it anyway because I wanna experiment with MKDD a little as it is one of my favorite Mario Karts. It's also a good practice as I'm a beginner with programming.

One of the things I still couldn't figure out of the bol format is the rotation values. They are in some strange format. I think it's some kind of vector, but I am not sure.

Yeah, I encountered the same issue. But I just figured it out. I read them as Int32 and interestingly they seem to fulfil a² + b² = c². With "a" being the first, "b" being the second and "c" being the third value of the vector. Some are a little off though. Using trigonometry, you can calculate the angle (in degree) using this formula: sign(value1 + 0.5) * arccos(value 2 / sqrt( sqr(value 1) + sqr(value 2))) * (180 / pi). (The "+ 0.5" is just there so it also returns "+1" as sign if the value is zero.) I don't really know if the third value really matters, it appears to be the same for almost all entries. I still gotta test those where it is different.

Edit: It looks like a² + b² = c² always applies, no matter what value c is. This was probably done so the calculation can be performed more easily as the formula can be simplified to sign(value1 + 0.5) * arccos(value 2 / value 3) * (180 / pi). However, this is not as accurate, as many values for c are off.
Thread: BOL Editor (upcoming)
Author Posted on 2016/01/01
NiAlBlack So here it is: Download

Features:

- Read and write BOL Files
- Graphical editor with top, front and side view
- Table View
- Copy and paste functionality for sub-groups (can be used to move a sub-group from one BOL file to another)
- Add, insert, delete and move groups and entries (checkpoint group links are automatically adjusted)
- Export and import CSV Sheets
- Transform points - scale, translation and rotation are supported

Planned features for future releases:

- Use OBJ as background
- Convert OBJ to BOL
- Export (and maybe import) other Mario Kart Formats like MKWii KMP or MK7 KMP or MKDS NKM
- Show angle in graphical editor
- 3D view
- Show scale of points with 3D Scale vector and rotation and not just of EIPT.

How to use:

Open the tool and click on File -> Open and browse for your BOL file.
You can switch between a map and a table.
Click on a section/group to highlight it on the map ot to load its table.
Right-click a section/group to get a list of options (e.g. copy, paste, etc.)

Map:

Use the checkboxes to control which sections/groups are shown on the map.
Use the mouse wheel to zoom in and out on the map or click and drag to pan.
Click a point and drag it to move it.

You can either use "Save" to overwrite the BOL you opened or "Save As..." to save it to a new file.

For bug reports, post in this thread, PM me or e-mail to nialblack@black-hack.net.

Oh, do you think it would make sense to upload this to the hack store? It's actually a MKDD tool, so it's not directly related to Nintendo handheld hacking.