Problem with Winning - Adventure Module

RandomKidGaming

New member
Whenever I make it so you won after you talked to somebody, when I tested it out, the character spoke random garble instead of going to the win screen. does anyone know how I can fix this? :?
 

dale_coop

Moderator
Staff member
Did you set your texts, your text groups? Assigned the text group to your screen?
Check your HUD Area and your Text Area.
 

RandomKidGaming

New member
What I did was make the text, Then in the "end of text action" slot, I chose "Win Game". I put the text in a group, and I assigned that same group to the room the Winning NPC was in. When I tested the game, I talked to the NPC, and he spoke it correctly, but then when it came to the last line, afterwards, it showed random garbles, 1s, and glitchy tiles all over the text box and around the text box, and then it started from the beginning, and continued to loop. I need it so after I talk to him, the win screen shows up.
 

Attachments

  • bandicam 2018-09-10 13-10-49-349.png
    bandicam 2018-09-10 13-10-49-349.png
    183.4 KB · Views: 2,937

TurtleRescueNES

Active member
I can confirm the same experience. I have not tried to resolve it, rather I am waiting to see if it gets addressed in a later version.
 

mystemo

New member
Has anyone figured out a solution to this?
I've been having the same problem problem with a game I'm making as a present to a couple of friends. It's mostly finished so it would be a shame if I could not get the win screen to work propperly before I give it to them.
 

dale_coop

Moderator
Staff member
About NPC actions...
I think the "Win game" is not supported yet (not implemented correctly), even I don't remember Joe talking about that.
I think only "give an item" works (on the "do nothing" thing).

But in your case, you could give an item to your player....
And make a custom Win Game type tile that check if the player has a particular item. (if he has, it's WinGame... if not, the tile does nothing, just a walkable tile).
 

cargo

spam bots yandex
OK. This is what I did. It works for version 4.0.11.


winmarker-ex.gif



Hey RadJunk we need a [youtube] tag!


Go to ZP_and_vars.asm and modify the beginning to look like this:


helping010.jpg



Go to LoadScreenData.asm and before "notAdarkScreen:" type:


helping011.jpg



Now create a new script and save it as "CustomWinTile.asm". Type the following:


helping012.jpg



Now open DrawNPCText.asm. Before "dontTurnOffTextBox:" label you modify:


helping013.jpg



Now go to your game project and assign the CustomWinTile.asm to an unused tile type in Project Settings.
Create the a new tile in you graphics bank assets and assign it the win tile script.
Go to the over/under map and pull up the final screen.
Place win marker tiles where necessary.
Make sure the player walks on this tile (it can be a full row or column of win tiles) before talking to the NPC.

If done correctly your game should show a win screen after dismissing the NPC text.
 

dale_coop

Moderator
Staff member
I like the implementation of cargo...
But instead of wasting a tile type for that, I would directly fix the "Win Game" action of the npc Text.

Here's how to do that :

cargo said:
OK. This is what I did. It works for version 4.0.11.

Go to ZP_and_vars.asm and modify the beginning to look like this:

helping010.jpg



Go to LoadScreenData.asm and before "notAdarkScreen:" type:

helping011.jpg



Now open DrawNPCText.asm. Before "dontTurnOffTextBox:" label you modify:

helping013.jpg


And modify the "System\HandleHudData.asm" script, line 333, from that:
Code:
notDOneWithText3:
	CMP #_ENDTRIGGER
	BNE notEndTrigger
	;; is an end trigger
	INC updateHUD_offset ;; get the very next value.
	LDY updateHUD_offset
	LDA (temp16),y
	STA temp
	;;;; this now has the trigger to change.
	TriggerScreen temp
	JMP DoneWithText
notEndTrigger:
To that:
Code:
notDOneWithText3:
	CMP #_ENDTRIGGER
	BNE notDOneWithTextWin  ;;<<---- HERE: add check for npc WIN
	;; is an end trigger
	INC updateHUD_offset ;; get the very next value.
	LDY updateHUD_offset
	LDA (temp16),y
	STA temp
	;;;; this now has the trigger to change.
	TriggerScreen temp
	JMP DoneWithText
;; BEGIN check for WIN: -->	
notDOneWithTextWin:
	CMP #_ENDWIN
	BNE notEndTrigger
	;;;; this now win the game.
	LDA #%00000001
	STA usr_npc_win_trigger
	JMP DoneWithText	
;; <--  END check for WIN
notEndTrigger:


And set your Text, with the end of action: "Win Game":

2018-12-28-21-59-08-NES-MAKER-4-0-11-Version-0x152-TEST1-MST.png



VoilĂ , it should work as intended.

NPC_Win.gif
 

cargo

spam bots yandex
dale_coop said:
I like the implementation of cargo...
But instead of wasting a tile type for that, I would directly fix the "Win Game" action of the npc Text.
Well a solution is better than a workaround. Thanks Dale.
 

dale_coop

Moderator
Staff member
cargo said:
dale_coop said:
I like the implementation of cargo...
But instead of wasting a tile type for that, I would directly fix the "Win Game" action of the npc Text.
Well a solution is better than a workaround. Thanks Dale.

I am glad we have a lot of ideas, solutions,...
 
Top Bottom