ASM: Request, help and general discussion
Re: ASM: Request, help and general discussion
That didn't seem to work for me. Although, that is probably because what ever I'm supposed to do with the .dsc and the .dbk files I'm not doing right (because I don't know exactly what to do with them).
- yoshicookiezeus
- Help! pawprint
- Posts: 148
- Joined: 15 years ago
- Pronouns: he/him/his
- Location: Sweden
Re: ASM: Request, help and general discussion
Oh derp. It's the .db file that is the important one... Here, have an updated download.
- Attachments
-
- BTSD stuff.zip
- Now without lack of vital files! (hopefully)
- (70.22 KiB) Downloaded 113 times
- Cheeseofdoom
- Posts: 0
- Joined: 14 years ago
Re: ASM: Request, help and general discussion
The other two are used for Lunar Magic.yoshicookiezeus wrote:Oh derp. It's the .db file that is the important one... Here, have an updated download.
Re: ASM: Request, help and general discussion
Oh okay, it worked now. Thanks for the help.
-
- Posts: 0
- Joined: 13 years ago
- Location: Michigan
Re: ASM: Request, help and general discussion
that would be fantastic, since 7f is too slow for me and 3f is too fast. or something like that.yoshicookiezeus wrote:No, since $60 is not a power of 2. You'll need to use one of the values I posted. (although I could easily set the thing up to run on a timer instead, so that you could use any delay between blocks)
Incase anyone couldnt tell, I wanna be co- A2MT gfx guy.
- yoshicookiezeus
- Help! pawprint
- Posts: 148
- Joined: 15 years ago
- Pronouns: he/him/his
- Location: Sweden
Re: ASM: Request, help and general discussion
Okay then. Replace this:
with this:
You may or may not have to replace $7C with another freeRAM address; I don't know what is and isn't used by the various ASM hacks installed to the base ROM.
Code: Select all
LDA $14 ;\ if not yet time to spawn new block,
AND #$0F ; |
BNE Return ;/ return
Code: Select all
DEC $7C ;\ if not yet time to spawn new block,
BPL Return ;/ return
LDA #$5F ;\ reset timer
STA $7C ;/
Re: ASM: Request, help and general discussion
Code: Select all
!TileLimit = $0DA1 ;
!AntiCheatRAM = $60 ;Freeram for anti cheat
!FreeRAMLevelASM = $010B ;Levelnum.ips
!Freeranmnm = $15E8 ;Set this to the level number you sort of want Mario to disable contact with sprites. (If non zero, disable death)
!YourDeadFlag = $7C ;This is set to #$01 if you die
!NewNumber = $010D ;Extra overworld level ram (Message box trigger)
!16BitSaveFileLevelnum = $010F ;This will be the same as $010B, except that it'll have the current save file added to it. It'll be stored to $010F-$0110
!YouHiTheBoxFlag = $62 ;Will be non zero when you hit a message box
!SLOTSUSED = $06FE ;dsx.asm stuff
!Flaggot = $0AF5 ;TAR BLOCKS
!FreeLRdis = $87 ;If non-zero, disable LR scrolling
Trouble with a capital COW.
<math>\tan{A}\sin{N}</math>
- Lv27MarkerMMan
- Posts: 7
- Joined: 14 years ago
Re: ASM: Request, help and general discussion
I have a level that consists of a lot of the yellow flip blocks(aka turn blocks). I would like to add a displayable counter to the screen that displays the number of blocks that the player has broken and use the value to change where the player goes when they go through the door. I have found a lead on how to get access to where I would place the counter, but what I really need to know first is how to get the counter to count.
Below is advice that was offered to me, but I'm not quite sure how to apply it.
@Cheeseofdoom or anyone who can help
Below is advice that was offered to me, but I'm not quite sure how to apply it.
@Cheeseofdoom or anyone who can help
Is this programming done in the asm of the level itself or the asm of a custom block?Cheeseofdoom wrote:This is easy enough on the asm end for someone that has a bit more time than me right now.
1. If player is spin jumping, check their powerup status; if not small branch to shatter routine.
2. Increase empty ram. The "target block" on SMWC uses $0B44.
3. Run the shatter routine (JSL $028663,) and presumably erase the block (I wouldn't think the shatter routine would cover this.) I'm not sure if you have to do anything else here.
Now the hard(er) part:
4. Draw the tiles based on the ram you increased.
This is the part I'm not sure of, there's a patch that displays the on/off status in the status bar on SMWC if whoever is attempting this needs a reference.
Of course, none of this is needed for most the people that are experienced with asm here, but I figured I might as well help out anyone else that may want to try, and perhaps learn something from whoever does it.
Don't be afraid to check out my Youtube channel.
I am making let's plays now!
I am making let's plays now!
Re: ASM: Request, help and general discussion
There's two ways to do it.
You could overwrite tiles in the status bar/HUD. This is easier, but it limits you to the two rows used by Layer 3 up at the top, and has to be run every frame. Learn More
The other way is to upload tiles directly to Layer 3. This is a bit more complicated, but it lets you put the counter anywhere on the screen, and only has to be run when you want to change it. This explains it technically, but I can give you more info from something I did (which is mostly borrowed code from one of YCZ's ASMT sprites.
[edit] Wait, maybe I misinterpreted your post. Are you a non-ASMer who's just looking for someone to make a block? If you want I think I can do that for you, I'm not sure what type of knowledge you have of ASM.
You could overwrite tiles in the status bar/HUD. This is easier, but it limits you to the two rows used by Layer 3 up at the top, and has to be run every frame. Learn More
The other way is to upload tiles directly to Layer 3. This is a bit more complicated, but it lets you put the counter anywhere on the screen, and only has to be run when you want to change it. This explains it technically, but I can give you more info from something I did (which is mostly borrowed code from one of YCZ's ASMT sprites.
[edit] Wait, maybe I misinterpreted your post. Are you a non-ASMer who's just looking for someone to make a block? If you want I think I can do that for you, I'm not sure what type of knowledge you have of ASM.
Accepting any and all ASM requests for A2MT. Just send me a PM.
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Re: ASM: Request, help and general discussion
You mean Lv27?
Yeah that's a request. He doesn't have the asm knowledge required to do stuff like that.
Yeah that's a request. He doesn't have the asm knowledge required to do stuff like that.
- Lv27MarkerMMan
- Posts: 7
- Joined: 14 years ago
Re: ASM: Request, help and general discussion
@VideoGuy Caps are for emphasis I am a non-ASMer with some C++ knowledge
What I meant was that what I need first is for the counter itself to be made. All your advice refers to the DISPLAY of the counter. I will need a way to display the value to test if it works right, but I don't have a way to record the value I want to record in the counter yet. If I don't have a value I will have nothing to display. The value should increase by 1 every time a yellow turn block is broken in a specific room.
This may clarify what I am requesting.
The VALUE(records the number of blocks broken) should INCREMENT(increase the number by one) when the TRIGGER(when the right kind of block breaks) occurs and the DISPLAY(The part the player sees) should show the current value. What I really need first are to make the value, increment, and trigger parts work. Then I need the display to use the value to display the number.
Can a custom block act JUST like the regular yellow turn blocks, except that they would increase empty ram that I can use when they break? If so, I would like to request it.
However, if there is a better method than using a custom block to record and increment the value then I'd be open to that too.
What I meant was that what I need first is for the counter itself to be made. All your advice refers to the DISPLAY of the counter. I will need a way to display the value to test if it works right, but I don't have a way to record the value I want to record in the counter yet. If I don't have a value I will have nothing to display. The value should increase by 1 every time a yellow turn block is broken in a specific room.
This may clarify what I am requesting.
The VALUE(records the number of blocks broken) should INCREMENT(increase the number by one) when the TRIGGER(when the right kind of block breaks) occurs and the DISPLAY(The part the player sees) should show the current value. What I really need first are to make the value, increment, and trigger parts work. Then I need the display to use the value to display the number.
Can a custom block act JUST like the regular yellow turn blocks, except that they would increase empty ram that I can use when they break? If so, I would like to request it.
However, if there is a better method than using a custom block to record and increment the value then I'd be open to that too.
Don't be afraid to check out my Youtube channel.
I am making let's plays now!
I am making let's plays now!
Re: ASM: Request, help and general discussion
Wouldn't your custom block code be something like the following (verbatim copy, just by searching through all.log for 'turn block'. It might need some polishing...):
Code: Select all
CODE_00EE67: A6 19 LDA RAM_MarioPowerUp ; check not being small
CODE_00EE69: F0 18 BEQ CODE_FAIL
CODE_00EE6B: AE 0D 14 LDA.W RAM_IsSpinJump ; check spin jump
CODE_00EE6E: F0 13 BEQ CODE_FAIL
CODE_CUSTOM: increment counter here
CODE_CUSTOM2: 22 63 86 02 JSL.L ShatterBlock ;
CODE_FAIL: 60 RTS
- yoshicookiezeus
- Help! pawprint
- Posts: 148
- Joined: 15 years ago
- Pronouns: he/him/his
- Location: Sweden
Re: ASM: Request, help and general discussion
The problem would be handling what happens when the player hits the turn block from below. The spinning turn block turning back to the normal one is handled by a block bounce sprite, so you'd need a custom one to make sure the block reverts to your custom block correctly.
Re: ASM: Request, help and general discussion
How much do they have to act like normal turn blocks? The lazy solution would be to make a custom block that doesn't do the spinning part and runs the code only when hit from the top.
I suppose the other lazy solution would be to hijack the block shatter routine and give it some custom code for just that one level, although that would require messing with the base rom and I don't know if that's allowed/encouraged.
I suppose the other lazy solution would be to hijack the block shatter routine and give it some custom code for just that one level, although that would require messing with the base rom and I don't know if that's allowed/encouraged.
Accepting any and all ASM requests for A2MT. Just send me a PM.
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
- ProfessorDemetri
- Posts: 0
- Joined: 14 years ago
- Location: BC, Canada
Re: ASM: Request, help and general discussion
If you want to experiment with the baserom, do it.
Doesn't mean it messes up the master copy of it, if you're doing it on your own.
Experiment, by all means.
Doesn't mean it messes up the master copy of it, if you're doing it on your own.
Experiment, by all means.
Re: ASM: Request, help and general discussion
If you find a solution that works, you can give it to me or Chibikko (doesn't matter which because in the end, it will go to Chibikko) and he'll (try to) incorporate it into the patch comp.
Re: ASM: Request, help and general discussion
Okay, I'll play around with that a bit. I can't imagine any conflicts, but you never know with this sort of thing.
Accepting any and all ASM requests for A2MT. Just send me a PM.
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Re: ASM: Request, help and general discussion
Lv27 - Take a look at this video. Does that look like what you wanted?
Accepting any and all ASM requests for A2MT. Just send me a PM.
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
- Lv27MarkerMMan
- Posts: 7
- Joined: 14 years ago
Re: ASM: Request, help and general discussion
@VideoGuy
YES YES YES! THAT is EXACTLY what I need!
How do I do it? *I'll check the video description after posting this if the info is there*
Now all I need is an exit (preferably a door, but I'm not that picky on this detail)that can change where it takes you based on the value in the counter (in my case to 4 different subexits that lead to different places in the same room). It has been suggested that I use a custom block for this. I have no idea how to mess with exit things, but I would like to be able to adjust the value part.
YES YES YES! THAT is EXACTLY what I need!
How do I do it? *I'll check the video description after posting this if the info is there*
Now all I need is an exit (preferably a door, but I'm not that picky on this detail)that can change where it takes you based on the value in the counter (in my case to 4 different subexits that lead to different places in the same room). It has been suggested that I use a custom block for this. I have no idea how to mess with exit things, but I would like to be able to adjust the value part.
Don't be afraid to check out my Youtube channel.
I am making let's plays now!
I am making let's plays now!
Re: ASM: Request, help and general discussion
It should just be a simple patch to put on your ROM (and the eventual baserom), as well as a bit of LevelASM. I'll start working on that door, then I'll send you a file with instructions when it's ready.
Accepting any and all ASM requests for A2MT. Just send me a PM.
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
- Schnurmanator
- Posts: 0
- Joined: 14 years ago
Re: ASM: Request, help and general discussion
This is a simple request, I just don't know how to use ASM at all :S
I need a code that makes any collected parrot coins in my level not count towards the coin counter. So the parrot coins don't act as actual coins but still have the capability of all being collected in the level.
It would be nice if someone could write the code because I have no idea how ASM works.
I need a code that makes any collected parrot coins in my level not count towards the coin counter. So the parrot coins don't act as actual coins but still have the capability of all being collected in the level.
It would be nice if someone could write the code because I have no idea how ASM works.
Re: ASM: Request, help and general discussion
Hate to say this, but that would probably require a modification to the code for the Parrot Coin itself. Which could technically be done, but it would be a bit difficult.
Accepting any and all ASM requests for A2MT. Just send me a PM.
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Note: If I accepted your ASM request and you never heard back from me, please let me know. I feel like I've forgotten a few of them.
Also the creator of the new A2MT CMS. PM me if you have any questions.
Youtube Channel
Re: ASM: Request, help and general discussion
If that's the case, it probably won't happen because we are using custom parrot coins which use objectool and we'd need replicas of the same 10 parrot coin blocks and all the code to be inserted into five new objectool slots.
Sorry, man. I'm sure you can find a way around it.
Sorry, man. I'm sure you can find a way around it.
- AUS
- Toni#4796
- Posts: 483
- Joined: 14 years ago
- First name: Toni
- Pronouns: they/them/their
- Location: アース
Re: ASM: Request, help and general discussion
If you tell me what you need it for, I can probably think of a way around that.
Not with code, but you know, on paper.
Not with code, but you know, on paper.
"oh no my best friend was replaced by a evil demon shadow monster"
"argh i am the evil shadow monster demon shadow"
Vip is pronounced "Beep"
nostalgic realtime nitroid let's play playlist
Re: ASM: Request, help and general discussion
Schnurmanator: If I run the 2.17 base rom I don't see any coin increments when the new Parrot coins are collected. So if you insert the new coins yourself instead of the original SMW Dragon Coins it should be fine.