Pages: 12 »
Posted on 07-06-13, 01:18 am (rev. 5 by ImageBot on 11-21-16, 02:35 am)
☭ coffee and cream


Karma: 10542
Posts: 1025/2780
Since: 06-26-11
Slap me a billion times if my title is wrong. I don't think anything like that has been done before, though.

This custom sprite is very basic. It is built off the useless sprite #100. All it does is display a 1x2 quad with a texture on it.



For those who are interested into making their own sprites, here's the code: source.zip
You extract that in the source folder of the ASM hacking template package. You also need to replace your symbols.x with this one: http://nsmbhd.net/get.php?id=1431

Basically, this hooks sprite 100's constructor to use our custom vtable instead of the default one. The rendering is handled in sprite100.c. It works by writing to the GX registers directly, which is what the game does for simple stuff like flat quads.

The whole part about loading a texture is explained there: Reversing the 3D tile system

Known issue: this doesn't clean up the texture when the sprite is destroyed. The collider created by this sprite is also always in the colliders list.

Questions? Ask me.


Have fun
_________________________
Kuribo64 - RH-fucking-cafe - Kafuka

zrghij
Posted on 07-06-13, 01:25 am
Doesn't actually do anything.

Karma: 3022
Posts: 184/653
Since: 10-22-12
So, a question. You say this uses "sprite 100's constructor". Does this mean that you can only make one custom sprite right now, in sprite 100's slot?
♪♫♩♬
Posted on 07-06-13, 01:27 am (rev. 1 by  Arisotura on 07-06-13, 01:28 am)
☭ coffee and cream


Karma: 10542
Posts: 1026/2780
Since: 06-26-11
If you use what I provided as a base, yes. But you can use any sprite as a base. And there are a few other useless sprites available.
_________________________
Kuribo64 - RH-fucking-cafe - Kafuka

zrghij
Posted on 07-06-13, 04:20 pm (rev. 1 by ImageBot on 11-21-16, 02:35 am)
Mariomaster

Karma: 8573
Posts: 308/1681
Since: 06-09-12
Don't know if I made a mistake, but when I tryed to compile it gives me a bunch of errors.



Please help  Arisotura!

Otherwise this seems to be realy epic!
_________________________
GitHub - Kuribo64 - YouTube
Posted on 07-06-13, 04:25 pm
☭ coffee and cream


Karma: 10542
Posts: 1028/2780
Since: 06-26-11
Seems your symbols.x is outdated. Try getting the latest ASM hacking template.
_________________________
Kuribo64 - RH-fucking-cafe - Kafuka

zrghij
Posted on 07-06-13, 04:27 pm
Mariomaster

Karma: 8573
Posts: 309/1681
Since: 06-09-12
Well I downloaded it 5 minutes ago
_________________________
GitHub - Kuribo64 - YouTube
Posted on 07-06-13, 04:28 pm
☭ coffee and cream


Karma: 10542
Posts: 1029/2780
Since: 06-26-11
Try using this one: http://nsmbhd.net/get.php?id=1431

If it fails I don't see what else I can do.
_________________________
Kuribo64 - RH-fucking-cafe - Kafuka

zrghij
Posted on 07-06-13, 04:30 pm
Mariomaster

Karma: 8573
Posts: 310/1681
Since: 06-09-12
Yup it worked. Thanks
_________________________
GitHub - Kuribo64 - YouTube
Posted on 07-07-13, 07:29 pm
☭ coffee and cream


Karma: 10542
Posts: 1031/2780
Since: 06-26-11
You're welcome

Update: I changed the sprite to make it bounce. I'm also experimenting with collision to make it interactable. When I'm done I'll post the updated code.
_________________________
Kuribo64 - RH-fucking-cafe - Kafuka

zrghij
Posted on 07-22-13, 10:08 am
Red Cheep-cheep
Reregistered

Karma: 13
Posts: 88/214
Since: 03-04-13
What does that Sprite make?
Posted on 07-22-13, 10:57 am
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10081
Posts: 3536/4458
Since: 06-08-11
Read the first post, it's all explained there.

Seriously.
Posted on 08-07-13, 12:49 am (rev. 2 by  ray on 08-07-13, 12:52 am)
Roy Koopa


Karma: 4011
Posts: 2539/2722
Since: 06-26-11
Seriously I don't understand that Texture Loading thingie, so I'm using the hated "is it possible"
Is it possible to load the unused .nsbmds & their corresponding .nsbca with a custom sprite? (The unused SM64DS ones)

EDIT: I want to know if it's possible before I start trying it
EDIT 2: Well I know everything is possible, but I mean with just that Texture loading thingie, because then I would need to learn only a small part of all the ASM stuff
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 08-07-13, 12:51 am
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10081
Posts: 3620/4458
Since: 06-08-11
Yes, it is possible.
Basically when you do ASM hacking you're modifying the game's program code. So ANYTHING is possible. (Unless its a hardware limitation.)


:trollface:

nah just kidding. Of course it's possible, it'd be a matter of loading it and displaying it, and figuring out how to do that... Whether it's easy or not, that's an entirely different story.
Posted on 08-07-13, 12:53 am
Roy Koopa


Karma: 4011
Posts: 2540/2722
Since: 06-26-11
Oh well, I just edited my post and explained that I wanted to know if it's possible to load it with the texture thingie only. But seems like it won't be possible?
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 08-07-13, 12:54 am
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10081
Posts: 3621/4458
Since: 06-08-11
Ah...
I think... no?

This sprite displays a flat quad polygon and puts a texture on it... Not a whole 3D model
Posted on 08-07-13, 12:55 am
Roy Koopa


Karma: 4011
Posts: 2541/2722
Since: 06-26-11
NSMB really hates me I can't get my dream to work. F*** you Nintendo.
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 08-07-13, 12:57 am
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10081
Posts: 3622/4458
Since: 06-08-11
Well, start learning ASM hacking

You actually have half of it done, you already know C/C++, right?
Posted on 08-07-13, 12:59 am
Roy Koopa


Karma: 4011
Posts: 2542/2722
Since: 06-26-11
Posted by Dirbaio
Well, start learning ASM hacking


That sounds so ... "easy" ... But when I'm looking into ASM hacks I just have no fucking damn idea how you can reach that kind of stuff with only a few lines o0 For example to not load the NARCs. IIRC it is just 2 lines
My mind is blown then, so I don't think it's somewhat easy.

And yeah I know C/C++
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Posted on 08-07-13, 01:06 am
Super Mario
( ͡° ͜ʖ ͡°)

Karma: 10081
Posts: 3623/4458
Since: 06-08-11
Yeah, you're right, most of the work in these "short" ASM hacks is figuring out *what* stuff you have to change, not actually writing the code. I spend hours in IDA Pro looking for stuff here and there
Posted on 08-07-13, 01:09 am (rev. 1 by  ray on 08-07-13, 01:12 am)
Roy Koopa


Karma: 4011
Posts: 2543/2722
Since: 06-26-11
Basicially I could start learning ASM, but I don't have IDA Pro and my current internet connection is so fucking bad (0.04 mbit donstream) that I can't pirate buy it



EDIT: Also I probably won't have the time since I'm trying to make an own MOBA
_________________________
See a lots of creative DS Hacking here
If you want to support me, you might check out my Patreon Page : )
Pages: 12 »