damage softlocking and stuff

rimoJO

Member
Probably self-explanatory here. I take damage, the game dies. I've set the health and the death animation, but I only got to see it one percent of the time.
 

dale_coop

Moderator
Staff member
I checked your project... some small mistakes.

Your projectile object should have all its Action Step with end of action/animation set to "loop", like this:

2019-01-21-20-02-28-NES-MAKER-4-0-11-Version-0x152-KA-MST.png



And in your Player's object details, you have to set the Action Step 2 to "GoToFirst" at the end of animation (if you have an animation) or end of action (you need to set a timer value), like this:

2019-01-21-20-03-02-NES-MAKER-4-0-11-Version-0x152-KA-MST.png


It should work now.

PS: Don't hesitate to watch again the tutorial video (with your project opened) when you have issues. All these was explained in the tutorial video.
 

dale_coop

Moderator
Staff member
I will add a small explanation to this...

When the "a_create_projectile" script is executed, it set your player to its Action Step 2 (his "attacking" state):
Code:
ChangeObjectState #$02, #$02
(It's same for the b_create_melee script)

The movement scripts check the state of the player, if the player is not in his Attacking state (and not already walking) :
Code:
    GetCurrentActionType player1_object	;; we check the current state of the player
    CMP #$02 					;; compare with the attacking state (action step 2)
    BEQ ++					;; if it IS, we go skip the code
...then, he can move:
Code:
StartMoving player1_object, MOVE_UP

You understand why the player needs to leave from his attacking state... So, it's the reason, after a timer (value "1" for example) or after the end of his animation, we want him to go back to his first action step (then all the movement scripts will let him move).
 

rimoJO

Member
Thank you! that worked well for me! And also, when I come into contact with an enemy, I either lose a heart or die, if I have only one heart left when I do, or the game goes into one hundred and ten percent graphic corruption mode, similar to the great Orange Ocean 1-1 glitch from Kirby's Adventure. : |
 

dale_coop

Moderator
Staff member
Check the "health" of your "Player" game object, in the "object details", set it to '3'.
Check your "HUD & Boxes", in the Variables tab, select "myHealth" and set it to "3", and in the Elements tab select the one that represents my Health and check that max value is also set to "3".
If all those 3 values are set to 3, you should go without any problem (I am not at home now, I can't test it with your project).
 

rimoJO

Member
I did, but I will check again. Sometimes I lose a heart and/or die, but most of the time, the game does.
EDIT: Do strength and defense matter?
 

dale_coop

Moderator
Staff member
In 4.0 there was some issues with SFX.
Try commenting out the "PlaySound #SFX_XXXX" in the Adventure HandlePlayerHurt script (adding a ";" at the begining of the line).
 

dale_coop

Moderator
Staff member
Yep sorry, I am not see who knows and who doesn’t know what commenting out means in asm code :S
I didn’t wanted to be mean or condescending. I am just try being as easy to understand as possible.

Arg... sorry my English is so bad.... m(_ _)m
 

rimoJO

Member
And on another topic, just because I don't want to start another post, I can't move my character, before or after I use my sword. By the way, I'm using the Platform MOD. Anyways, I think it's the collision. I followed the Pl. MOD tutorial, and matched the hitbox to the rabbit's?. Picture for reference.
EDIT: I have no User Constants page on my version, as you may or may not have noticed. So I never got to try your solution for jumping...
 

Attachments

  • Screenshot (6).png
    Screenshot (6).png
    96.6 KB · Views: 2,835

dale_coop

Moderator
Staff member
Might be your actions steps... check the "action step 2" and the "action step 3" set "End of Action" to "GotoFirst" and a Timer value "1".
It should work.
 

rimoJO

Member
I got it. And also, instead of the character jumping, it just teleports to up in the air. I don't think the tutorial says anything about that though. And I don't have a User Constants tab in my Project Settings.
 

dale_coop

Moderator
Staff member
rimoJO... if you're starting a new project, I would suggest you to try the latest version (www.thenew8bitheroes.com, following all the new tutorial videos).
But for the 4.0.11, and your jump problem... could you share the jump script you are using? And check your Action Steps that you did NOT check the "ignore gravity" flag. What module your project is using?
 

rimoJO

Member
platform. There's a new version? I'll try it!
EDIT:
Code:
LDX player1_object
LDA Object_status,x
AND #%00000100
BEQ +
LDA #$00
SEC
SBC #$56
STA Object_v_speed_hi,x
LDA Object_status,x
AND #%11111011
STA Object_status,x
ChangeObjectState #$02, #$02
PlaySound #SFX_PLAYER_JUMP
+
RTS
 

rimoJO

Member
I keep feeling like there's something wrong with this, because the person in the tutorial kept changing things, and the video was low quality for whatever reason, so I couldn't really follow along.
EDIT: And all that I see on the website is 4.1.0. Is that it?
EDIT: Never mind it is. Thanks! Now I can actually follow ALL of the tutorials!
 

dale_coop

Moderator
Staff member
It's just NESMaker changes/evoluates... so the tutorials have to change too.
Yep, NEsmaker 4.1 is VERY different than the 4.0 ones. And you will have to learn again, and your 4.0 projects/scripts will NOT be compatibles with the 4.1
So if you hae projects already started... finish them in the version you are.
If you want to make new projects, learn the 4.1 and start with that version as almost everyone here are working with that version, all the new scripts you will see, all the new answers/posts will be for the 4.1.
 
Top Bottom