Register - Login
Views: 99866007
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
05-04-22 06:01:03 PM
Jul - Posts by dirbaio
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 55 56 57 58 59 60 61 62 63 64
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 221/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-12-09 04:32:47 PM, in how do i apply my levels? Link
NO.

1- Get a rom.
2- Edit it with NSMB editor
3- Play THE ROM.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 223/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-13-09 08:25:50 AM, in NSMB deluxe! Remake for smb1 & lost levels Link
Cool. The new hills and decorations look very good!
There's one thing you need to fix with that level. Notice that Mario (and all 3d things) are being lighted from the bottom like in towers, castles and ghost houses. This looks a bit weird on an onverground level. Change it by selecting the view and set the "3d lighting" to 0
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 224/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-13-09 02:42:39 PM, in NSMB Editor 5 Downloads Link
Originally posted by Camewel
Basically, don't edit it at all yet. Dirbaio broke that bit ;P


Yeah, I know. I'm trying to fix it but its shit hard. Basically, the behaviors of tileset 0 are in an overlay file, which is compressed, and we don't know how to recompress it. Treeki told me that setting some bit disabled the compression, but he forgot how exactly and i'm trying to find it out looking at the asm code... Not sure if i will be lucky
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 225/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-13-09 06:10:39 PM, in NSMB Editor 5 Downloads Link
Originally posted by Camewel
If I knew what file you were looking at I could help you :/

its overlay file id 0.
In nsmb source, in ROM.cs there's code to decompress it and (a try to) reinsert without compression.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 226/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-13-09 07:48:24 PM, in NSMB Editor 5 Downloads Link
Originally posted by Camewel
Wow, that code's a lot more complicated than I thought.
There must be some way to override the decompression, or simply remove it completely.

yeah, thats what treeki and i are looking for.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 227/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-15-09 04:29:14 PM, in NSMB Sound & Music Hacking Guide (Long) Link
Cool guide!
I will try it out when i have time!

There's one thing you should change. The latest version of the editor does let you change music without hex editing. Select a view and change its settings on the left pane.

Possibly in the future NSMB Editor will have built-in sdat editing support.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 228/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-16-09 02:44:38 PM, in NSMB Editor 5 Downloads Link
Originally posted by jceggbert5
Question: What does the "Multiplayer NARC Patch" button do? And why is it grayed out?

It was meant to replace the multiplayer level files into the narcs automatically (look at the mvsl hacking thread). It is grayed out now because when i rewrote the filesystem code i didnt add support for narcs.
Expect it to work in the next version...

And for the invisible minimushroom block i found out how to do it:

Edit the Tileset 1 of your level. NOT TILESET 0!!!

Go to the map16 editor, select an empty map16 tile, and set its behavior to 05 00 05 00.
Then go to the object editor, select the object right after the last object so it will create a new object. In the middle it will appear a number 0, select it, and then control+click in the map16 tile that you modified before.

Save tileset and enjoy!

Note: the behavior is the same as the ? block with mini mushroom, it will not behave exactly as an invisible block: it will show for a moment as a ? block while you're bumping it, but that's the closest thing to an invisible block that can be made in nsmb (i think)
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 229/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-16-09 03:49:23 PM, in NSMB Sound & Music Hacking Guide (Long) Link
Originally posted by Camewel
The only problem with that is that we (and by we I mean dirbaio and probably Treeki, although I'll try and help) wound need to make our own version of the tools used.


yeah. Some are open-source, but will have to be ported to c#.
Anyway, sound hacking was in my to-do list for the editor, but it just stayed there because it was a lot to do from scratch ...
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 230/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-16-09 03:56:28 PM, in Editor Development thread Link
Originally posted by C1H022
Could you make main menu editing?

Depends on what you mean for "menu editing"...
If you mean editing the nsmb logo, the text on the UI, the pipe graphics etc... : All that is doable now with Tile Molester and it will be doable inside NSMB editor with the built-in graphics editor, because all of them are graphics.

If you mean add new options, delete the minigames option, add more files, rearrange things... That would need ASM hacking, which is a pain to work with, because the ASM code of NSMB is really huge, and hard to understand. (Try to understand a program where all variable and function names are just numbers...). You're pretty much on your own with that.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 231/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-16-09 04:11:05 PM, in C# tutorials Link
C# is pretty much easy to learn. The visual designer for UI stuff is really easy to use, and c# syntax is pretty much the same as c/c++'s.

There is some new stuff / differences compared to c++ of how c# works:
- C# has a garbage collector, which means that all memory is automatically managed (no more malloc, etc). Read more Here

- Classes. This is a VERY useful feature of c#, and all c# libraries work with them, so you have to know what they are and how to work with them.

As for the designer, i dont think you need a tutorial. I learnt it by playing around with it. You can create buttons, text boxes, etc visually and change their properties and assign events to them, for example: when you click a button, a function gets called so you can make the button make an action.

You can google around, but keep in mind that there are two ways of creating an UI in c#: With the designer (so you only code manually what your form does), and programatically, by creating by hand the form, the buttons, setting their properties, tex, position, etc manually and adding them to the form manually.
I recommend going with the designer. It is much easier. Manually coding forms is only useful if you want to dynamically generate forms depending on some input or such.

Hope it helps!
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 232/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-17-09 10:17:02 AM, in Sprite Data Reference (Long) Link
Originally posted by Logon
sprite 234 lava

I FOUND 1 THING ITS AWESOME

00 00 AA BB CC 00

AA spead lava rises

BB and CC uknown


it works like water.
look at my previous post!
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 233/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-17-09 05:49:26 PM, in Sprite Data Reference (Long) Link
yeah, but i meant that the sprite data for lava works like water's mostly.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 234/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-18-09 03:08:50 PM, in NSMB Editor 5 Downloads Link
Originally posted by Orengefox
When replacing the original sound_data.sdat file with one that was hacked (byte size of the hacked file must be larger than original; a good example is something I released recently), it doesn't replace the original sdat file; instead it adds the hacked sdat file right next to the orignal sdat file (thus the NSMB rom now has 3 separate sdat files instead of 2 technically). This even applies to patch files containing this hacked sdat file. I'm not quite sure if that's the programs intention or not where as if this was done on version 4.7; it actually replaces the original sdat file with the hacked one instead of adding it in (regardless of the hacked file's byte size).

I didn't take much notice to this during my sdat research because I thought it was something I was doing on my end until now. Mind you, it doesn't seem to harm the actual game when playing it. You guys might of encountered this already but thought I'd bring it up just in case.

Note: This was found using a (U) rom.



yeah, that's the new behavior of the new filesystem code. It is like that on purpose. I'll explain why:

With NSMBe4 when you replaced a file bigger than the original, it moved ALL files after it. That's why saving levels was slow.
But now, when you insert a new file, if its smaller or equal in size, it will put it there. If it is bigger, it will put it somewhere else, so it doesnt have to move any file. Then it updates the file table so it points to the NEW location of the file, so NSMB will read the new sdat file.
The data of the old one is still there, but no files in the file table point to it, so it is unused, NSMB will NEVER read it. There's more. When you replace another file that has to be placed elsewhere, it will look for unused space, and put it there. So the space the files leave back when moved is profited.

It's a more intelligent approach to handling files. It is faster to replace files, and it is also PPF-friendly (and similars), because moved data made ppf think it is modified data, so it includes it all, and resulting patches were huge.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 235/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-18-09 03:47:28 PM, in NSMB Editor 5 Downloads Link
Originally posted by jceggbert5

You thought wrong... I made one that is exactly like an invisible one, and I can't stand on it like I could yours...
Behavior: 05 00 04 20

Edit: typo


OH, man! you're right. I just copied the VISIBLE ? block behavior, thinking of contents, not of solidity, and i tested it only from below (lol) so i didnt notice
Thanks!
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 236/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-19-09 01:40:35 PM, in NSMB Editor 5 Downloads Link
Originally posted by jceggbert5
Hey Dirbaio:

Is there a way that I can add a line of 8x8 blocks to the Nohara set? I would like to add more custom blocks to it, but don't know how to add lines for more graphics... (Brick containing Mini-Mushroom ) I know how to code the new block (thanks to you )


It is not possible at all. Sorry.
NSMB has areas of memory reserved to each type of GFX: the 3 tilesets, the bgs and the sprites. They fit exactly, so it is impossible to expand any of these three categories. Sorry.
But if you need to make new tiles, you can rearrange the existing tiles so they take less space and use the freed space for your tiles. For example, in grassland tileset there are a lot of repeated tiles. Just keep only ONE copy of them, and change the map16 tiles that used them to the only remaining copy. Another thing you can do to gain space is to delete tiles that are filpped copies of others, and update the map16. Hint: In Map16 editor, shift-click a tile to flip it vertically and alt-click it for horizontally.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 237/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-19-09 02:39:11 PM, in Mario Vs. Luigi stage hacking Link
Originally posted by Dark_fusionX
you can find my levels on my hack's thread.

who likes my big mvl level idea

It would be VERY cool if we get it to work perfectly. I mean, beta things tend to be glitchy, and this doesnt seem a beta thing, it seems a very strange bug...
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 238/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-19-09 07:59:36 PM, in NSMB deluxe! Remake for smb1 & lost levels Link
you should make the switch destroy the ground and also a wall that leads to the door, because now you can go to the door without hitting the switch

or better, make the door appear with the switch (like in w7-ghost house)
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 239/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-19-09 08:02:51 PM, in NSMB Editor 5 Downloads Link
Originally posted by jceggbert5
Does Nohara have any compression? If so, what happens if you use the same type of compression on Jyotyu?

Just an idea...


no... that wont work.
All graphics of all tilesets are lz77 compressed. That's not the problem, since we know how to recompress them.
The problem is with the behaviors. All behaviors of tilesets 1 and 2 are plain files, not compressed. BUT tileset 0's behaviors are inserted in the binaries (executable code), which are compressed with the weird compression that we can't break yet.
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 240/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-19-09 08:04:22 PM, in 218: Auto Scroll Start Link
sprite 218 is tied to a path.
Each node of that path contains info about the speed, shape, acceleration, etc of that part of the camera path. I once looked at it, but its a pain to figure out.
Try to figure it out and share your findings!
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 241/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.9 years
Last activity: 9.9 years

Posted on 12-19-09 08:58:12 PM, in NSMB Editor 5 Downloads Link
try to reverse engineer THIS:





public static byte[] DecompressOverlay(byte[] sourcedata)
{
uint DataVar1, DataVar2;
//uint last 8-5 bytes
DataVar1 = (uint)(sourcedata[sourcedata.Length - 8] | (sourcedata[sourcedata.Length - 7] << 8) | (sourcedata[sourcedata.Length - 6] << 16) | (sourcedata[sourcedata.Length - 5] << 24))
//uint last 4 bytes
DataVar2 = (uint)(sourcedata[sourcedata.Length - 4] | (sourcedata[sourcedata.Length - 3] << 8) | (sourcedata[sourcedata.Length - 2] << 16) | (sourcedata[sourcedata.Length - 1] << 24))

byte[] memory = new byte[sourcedata.Length + DataVar2];
sourcedata.CopyTo(memory, 0)

uint r0, r1, r2, r3, r5, r6, r7, r12;
bool N, V;
r0 = (uint)sourcedata.Length;

if (r0 == 0) {
return null;
}
r1 = DataVar1;
r2 = DataVar2;
r2 = r0 + r2; //length + datavar2 -> decompressed length
r3 = r0 - (r1 >> 0x18) //delete the latest 3 bits??
r1 &= 0xFFFFFF; //save the latest 3 bits
r1 = r0 - r1;
a958:
if (r3 <= r1) { //if r1 is 0 they will be equal
goto a9B8; //return the memory buffer
}
r3 -= 1;
r5 = memory[r3];
r6 = 8;
a968:
SubS(out r6, r6, 1, out N, out V)
if (N != V) {
goto a958;
}
if ((r5 & 0x80) != 0) {
goto a984;
}
r3 -= 1;
r0 = memory[r3];
r2 -= 1;
memory[r2] = (byte)r0;
goto a9AC;
a984:
r3 -= 1;
r12 = memory[r3];
r3 -= 1;
r7 = memory[r3];
r7 |= (r12 << 8)
r7 &= 0xFFF;
r7 += 2;
r12 += 0x20;
a99C:
r0 = memory[r2 + r7];
r2 -= 1;
memory[r2] = (byte)r0;
SubS(out r12, r12, 0x10, out N, out V)
if (N == V) {
goto a99C;
}
a9AC:
r5 <<= 1;
if (r3 > r1) {
goto a968;
}
a9B8:
return memory;
}

private static void SubS(out uint dest, uint v1, uint v2, out bool N, out bool V) {
dest = v1 - v2;
N = (dest & 2147483648) != 0;
V = ((((v1 & 2147483648) != 0) && ((v2 & 2147483648) == 0) && ((dest & 2147483648) == 0)) || ((v1 & 2147483648) == 0) && ((v2 & 2147483648) != 0) && ((dest & 2147483648) != 0))
}





It has been translated from the ASM code of the game directly, we have NO IDEA of what it does
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 55 56 57 58 59 60 61 62 63 64
Jul - Posts by dirbaio


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

27 database queries, 29 query cache hits.
Query execution time: 0.095290 seconds
Script execution time: 0.023899 seconds
Total render time: 0.119189 seconds