![]() | ||
Views: 24,259,689 |
Home
| Forums
| Uploader
| Wiki
| Object databases
| IRC
Rules/FAQ | Memberlist | Calendar | Stats | Online users | Last posts | Search |
03-19-25 11:04 PM |
Guest: |
0 users reading SM64DS Editor Help Thread - Post your questions here | 6 bots |
Main - General SM64DS hacking - SM64DS Editor Help Thread - Post your questions here | Hide post layouts | New reply |
Fiachra |
| ||
Local moderator Level: 65 Posts: 928/1065 EXP: 2325537 Next: 10091 Since: 12-15-12 From: Ireland Last post: 2488 days ago Last view: 438 days ago |
You need to remove any spaces from any of the file names within the "source" folder. |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 32/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
This question is mainly directed at fiachra or staplebutter, but if you know any arm asm feel free to answer. How am I able to play an action based on when a button is pressed. Fiachra explained how to change he animations, but I want to change the action being performed (ex. If b is pressed, mario will start a spin jump)
EDIT: also, im unable to find what value to check if the Y button is being pressed, all i could find from looking through the ASM Template was that the value to check if the B button is being pressed is 0x00F and if LandR are being pressed which is 0xF00 What are the values for all the other buttons to check if they are pressed? |
pacmainia&luigi |
| ||
![]() Red Paratroopa Hacker Level: 29 ![]() Posts: 40/178 EXP: 139066 Next: 8819 Since: 10-29-15 From: The Grandfather Paradox Time Loop Last post: 2145 days ago Last view: 1785 days ago |
I'm trying to import a mkds level to sm64ds by using the "replace(raw)" command, but mkds uses nsbmd and sm64ds uses bmd. Does anyone know a converter? ____________________ Waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka......... |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 34/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
So im writing ASM and my code wont compile onto my ROM because of something in the script but the script seems perfectly fine to me. IDK what the error is, can anyone help? the code is supposed to make Mario grow big if you press the R button while hes not on the ground
#include "SM64DS.h"
bool doNothing = false; void hook_020e50ac() { if (CHARACTER == CHAR_Mario) { unsigned short keys = KEYS; unsigned short pressedLAndR = keys & 0xF00; unsigned short checkPressedR = (pressedLAndR); if (checkPressedR); { if (isOnGround) {doNothing = true; doNothing = false}; else {Player_PerformAction (MarioActor *, char 0x9A, unsigned int loop_related, unsigned short playspeed_20_12);)} } } } |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 35/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
my codes not working, it says nds_printf was not declared in this scope when its clearly defined in symbols.x
#include "SM64DS.h"
unsigned short X = 80; unsigned short Y = 80; void hook_020e50ac() { nds_printf(X,Y,"Hello World"); } EDIT: Whats the syntax for nds_printf? The symbols.x file isnt helpful since it doesnt give the arguments, nor do any of the documents provided, and it obviously doesnt work without the correct arguments. Arguments should be added in sm64dse R95. |
Fiachra |
| ||
Local moderator Level: 65 Posts: 933/1065 EXP: 2325537 Next: 10091 Since: 12-15-12 From: Ireland Last post: 2488 days ago Last view: 438 days ago |
isceptul:
1. The compiler errors explain the problems. bool doNothing = false;
That won't actually make Mario big though, it'll just play the animation. What I would suggest doing is instead of playing the animation, spawn a Super Mushroom object in Mario's current position, he'll then pick it up straight away.
void hook_020e50ac() { if (CHARACTER == CHAR_Mario) { unsigned short keys = KEYS; unsigned short pressedLAndR = keys & 0xF00; unsigned short checkPressedR = (pressedLAndR); if (checkPressedR); { if (PLAYER->isOnGround) { doNothing = true; doNothing = false; } else { Player_PerformAction (PLAYER, 0x9A, ACT_RUN_ONCE, 0x1000); } } } } 2. See the examples in the original NSMB ASM Hacking Template here. pacmainia&luigi: No and it's unlikely that there ever will be, you'll have to use MKDS Course Modifier to export the MKDS level to OBJ and then import that model in SM64DSe. |
pacmainia&luigi |
| ||
![]() Red Paratroopa Hacker Level: 29 ![]() Posts: 42/178 EXP: 139066 Next: 8819 Since: 10-29-15 From: The Grandfather Paradox Time Loop Last post: 2145 days ago Last view: 1785 days ago |
Posted by Fiachra I've already tried that. The textures never came out when I used the course modifier. ____________________ Waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka......... |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 36/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
1.What hook can i use to do something once? Like for the second code i'm just printing text onscreen, which if its raw text (and not a variable) it only needs to be run once to be put on the screen. The one i used runs every frame.
2.And also, the reason i did grow big on command is because i couldnt find the value for the spin jump, is there anyway to make mario do a spin jump, or do i just have to spawn a spin drift under him? (which i really dont wanna do because im pretty sure youll see the spin drift for one frame) 3. I looked through the NSMBPatchTemplate and the print function is still not compiling. I dont understand what the errors in console mean. #include "SM64DS.h"
#define GREEN 0xE000 u16** topScrenPtr = (u16**) 0x020859EC; u16 something[2]; something[0] = GREEN; something[1] = GREEN; void hook_020e50ac() { (something,*topScreenPtr + 33,"Hello World",ptr); } 4.The code you gave me still doesnt compile, it says ACT_RUN_ONCE was not declared on the scope EDIT: NVM i defined ACT_RUN_ONCE and deleted the hover example and it worked, except now my game crashes everytime i load a file. How do i fix the crash? 5. @fiachra do you have skype? I always have a lot of errors and the help thread is very slow and inefficient (especially for someone trying to learn ASM, and as nooby as me) |
pacmainia&luigi |
| ||
![]() Red Paratroopa Hacker Level: 29 ![]() Posts: 44/178 EXP: 139066 Next: 8819 Since: 10-29-15 From: The Grandfather Paradox Time Loop Last post: 2145 days ago Last view: 1785 days ago |
my rom keeps on displaying a white screen when i open it in desmume. can anyone help me? ____________________ Waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka......... |
CodingKoopa |
| ||
![]() Lakitu she/her Level: 48 ![]() Posts: 292/560 EXP: 817983 Next: 5560 Since: 10-13-14 Last post: 1335 days ago Last view: 564 days ago |
pacmainia&luigi |
| ||
![]() Red Paratroopa Hacker Level: 29 ![]() Posts: 46/178 EXP: 139066 Next: 8819 Since: 10-29-15 From: The Grandfather Paradox Time Loop Last post: 2145 days ago Last view: 1785 days ago |
Posted by TheKoopaKingdom Well, that didn't work!(and neither dod no$GBA, either.) ____________________ Waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka......... |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 38/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
anyone know where the graphic for the invisible secret is in the file system? I want to modify it to give it a graphic. |
Fiachra |
| ||
Local moderator Level: 65 Posts: 935/1065 EXP: 2325537 Next: 10091 Since: 12-15-12 From: Ireland Last post: 2488 days ago Last view: 438 days ago |
The invisible secret doesn't have an associated model. The only graphics it uses are the number graphics 0 - 8 located in "/ARCHIVE/arc0.narc/data/normal_obj/number/number.bmd".
Posted by pacmainia&luigi In what way have you modified the ROM? Have you read the first post in this thread? |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 39/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
How can i give the secret a graphic that will disappear when the secret is collected? |
pacmainia&luigi |
| ||
![]() Red Paratroopa Hacker Level: 29 ![]() Posts: 48/178 EXP: 139066 Next: 8819 Since: 10-29-15 From: The Grandfather Paradox Time Loop Last post: 2145 days ago Last view: 1785 days ago |
Posted by Fiachra It doesn't turn white when I load my custom level, but when I click"adventure" in the title screen. I changed some textures, imported a multicolor pianta, and made a customs level. Yes, the editor said the textures might be to big. Yes, I read the first post. ____________________ Waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka......... |
Fiachra |
| ||
Local moderator Level: 65 Posts: 936/1065 EXP: 2325537 Next: 10091 Since: 12-15-12 From: Ireland Last post: 2488 days ago Last view: 438 days ago |
Did you change the textures for any of the buttons on the menu? What if you delete the save file? |
pacmainia&luigi |
| ||
![]() Red Paratroopa Hacker Level: 29 ![]() Posts: 49/178 EXP: 139066 Next: 8819 Since: 10-29-15 From: The Grandfather Paradox Time Loop Last post: 2145 days ago Last view: 1785 days ago |
Posted by Fiachra No, I didn't change the textures. ____________________ Waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka waka......... |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 41/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
Fiachra, I PMed you a question about custom objects because im not sure how long the convo will go on for.
Also, im very confused on updating a spawned objects position even after looking at the text file. This is my code #include "SM64DS.h"
const int silverstars = 0209F310; const short int OBZ_ZZZ_ACTOR_ID = 0x00B3; short int param01 = 0x0000; short int TmpRot[3] = { xRot, yRot, zRot }; int TmpPos[3] = { xPos + 5, yPos + 5, zPos + 5 }; void hook_020e50ac() { if silverstars > 0{ unsigned int spawnedObject = SpawnActor(OBJ_ZZZ_ACTOR_ID, param01, TmpPos, TmpRot); } } I dont know how to address my spawned objects position to update it. |
Fiachra |
| ||
Local moderator Level: 65 Posts: 937/1065 EXP: 2325537 Next: 10091 Since: 12-15-12 From: Ireland Last post: 2488 days ago Last view: 438 days ago |
Does that code even compile? In particular the line:
int TmpPos[3] = { xPos + 5, yPos + 5, zPos + 5 };
You should change that to: int TmpPos[3] = { 0, 0, 0 };
Then: TmpPos[0] = 0x1234; // Replace this with whatever value you like, similarly for [1], [2]
unsigned int spawnedObject = SpawnActor(OBJ_ZZZ_ACTOR_ID, param01, TmpPos, TmpRot); If you wanted to change its position later on you'd use: short int const X_LOC_OFFSET = 0x5C;
short int const Y_LOC_OFFSET = 0x60; short int const Z_LOC_OFFSET = 0x64; ... *((volatile int*)(spawnedObject + X_LOC_OFFSET)) += 0x1234; |
isceptul |
| ||
![]() Red Paragoomba Sparsite dupe Level: 17 Posts: 42/54 EXP: 23222 Next: 1521 Since: 11-03-15 Last post: 3223 days ago Last view: 3075 days ago |
ok i will experiment with position updating. On the other hand, is the "if silverstars > 0 {" line correct? Or is there some other way i have to check the value of an address? |
Main - General SM64DS hacking - SM64DS Editor Help Thread - Post your questions here | Hide post layouts | New reply |
Page rendered in 0.040 seconds. (2048KB of memory used) MySQL - queries: 26, rows: 231/231, time: 0.012 seconds. ![]() © 2005-2008 Acmlm, Xkeeper, blackhole89 et al. |