Zelda's Adventure: Solarus Edition

Started by CrookiNari, April 24, 2018, 11:27:48 AM

Previous topic - Next topic
Hello all,
My project is a full remake of the critically panned game Zelda's Adventure, released for the Phillips CD-i, in the style of A Link to the Past. I'm very new to the scene and could use some assistance with the programming, especially since a couple of my basic scripts aren't working properly and I can't figure out why.

At the moment I'm cycling through creating maps, sprites, fixing the general game design and writing the dialogue. I've made a bare-bones version of the starting area (Plain of Andor) and the first dungeon (Shrine of Earth). So anybody who can take a bit of the programming work off my hands would be greatly appreciated! :)

Hi CrookiNari :)

Welcome to the community!

Can't wait to see your game progress.

Hugs and love from us!

QuoteZelda's Adventure, released for the Phillips CD-i

Oh snap, the best Zelda ever

April 25, 2018, 04:27:49 AM #3 Last Edit: April 25, 2018, 06:38:20 AM by CrookiNari
I've created a repository in GitHub of everything I've made so far, but if I'm missing any files needed to make it playable then let me know! I'm currently moving onto the southern part of the map, the Forest of Ogbam. I've also started on a couple of the boss sprites, but I may end up needing some assistance with them too. Only the first three bosses have been started, and only Aviana is ready to go.

The link is in my signature but I'll put it here as well: https://github.com/CrookiNari/Zelda-s-Adventure


Quote from: brlmnd on April 25, 2018, 10:00:54 AM
Impressive progress!

Congrats:)

Thank you! I've only been at it a month so far, but I reckon that's about a quarter of the overworld map that's been created. Still a lot of work to go, though.

I've gotten to the point where I'm reasonably satisfied with the following boss sprites. Though I still think I need help with creating the in between animations as well as the remaining three bosses, which have been started but I'm not happy with them.

I'm still looking for programmers who can help me out! My scripts keep not working right! :(

I have the same issue.

You can start mapping and make your quest. Later maybe someone on the forum will fix your bugs.

Quote from: brlmnd on May 03, 2018, 08:58:05 AM
I have the same issue.

You can start mapping and make your quest. Later maybe someone on the forum will fix your bugs.

That's pretty much what I've been doing. There's quite a sizeable overworld so at least there's plenty to do on that front. I just wish that what is there actually had some stuff for the player to do. I'm pretty much just trying to scout for someone who will help out further down the line when it actually becomes important to implement some proper programming.

Quote from: CrookiNari on May 03, 2018, 08:05:52 AM
I'm still looking for programmers who can help me out! My scripts keep not working right! :(
I'm willing to help out. Indicate which scripts are not working and what you'd like them to do.

As deviantart says, llamas are awesome! :P
"If you make people think they're thinking, they'll love you. But if you really make them think, they'll hate you."

Quote from: llamazing on May 03, 2018, 02:30:01 PM
Quote from: CrookiNari on May 03, 2018, 08:05:52 AM
I'm still looking for programmers who can help me out! My scripts keep not working right! :(
I'm willing to help out. Indicate which scripts are not working and what you'd like them to do.

My attempts at implementing a save system and branched dialogs from NPCs have fallen over, despite what I thought was following Christopho's tutorials to the letter. In the former, the game would crash if the save function was in the .lua script. In the latter, it did work at first until I moved my maps around, so one NPC I put in as a test doesn't bring up responses to Yes or No dialog, and the other one part of the actual game gets stuck on one response. If you make answer= No., then she will always say her "No" dialog, even if Yes is picked, and vice versa.

I got rid of the save function just so I could keep play testing while I drew the maps. I'll give you the NPC dialog scripts.

NPC 1:
function lady:on_interaction()

game:start_dialog("sample_text", function(answer)
  if answer == 3 then -- Yes.
  game:start_dialog("sample_text2")
  else
  game:start_dialog("sample_text3")
  end
end)
end


NPC 2:
function hungrylady:on_interaction()

game:start_dialog("hungrylady.dialog1", function(answer)
  if answer == 6 then -- No.
  game:start_dialog("hungrylady.no")
  else
  game:start_dialog("hungrylady.yes")
  end
end)


I have a lot of stuff I want to eventually implement in this game to really make it feel Zelda-like, so if these simple little things don't even work then it's not a good sign.

What's the text of the NPCs? If you aren't using the right syntax within your dialogs, the choices don't work with their ALTTP dialog script. For example, here's a sample dialog:

_npcs.sample_guy.1

Did you like your dinner?
$? Yes
$? No

_npcs.sample_guy.2

I'm glad it was tasty... NOW PREPARE TO DIE!
I poisoned it!!

_npcs.sample_guy.3

Oh no, was it because it was POISONED!?


So your map script would have:

Code (Lua) Select


function sample_guy:on_interaction()

game:start_dialog("_npcs.sample_guy.1", function (answer)

if answer == 2 then
game:start_dialog("_npcs.sample_guy.2")

else

game:start_dialog("_npcs.s.sample_guy.3")

end)

end



Don't copy/paste that without checking for typos, I typed this on mobile and autocorrect is zealous.


I don't think you would ever have something like if answer == 6 because the answer is relative to the choice's line in the box, not in the whole text string. So it'll always be 1-4.



It looks like you're using the whole pause system from the Solarus team's games, which I don't understand fully, so I can't help there : /

Quote from: Max on May 04, 2018, 04:36:44 AM
I don't think you would ever have something like if answer == 6 because the answer is relative to the choice's line in the box, not in the whole text string. So it'll always be 1-4.
Max is correct in that the only way answer == 6 would work is if you modified the dialog script to display at least 6 lines of text. The dialog script currently in your github repo is set to display 4 lines.

I don't see any other problems with the code excerpts you posted on the forum. I'm not going to be able to help you without seeing your map script, dialogs.dat, and probably whatever script is giving you problems when saving.

I downloaded your quest from github but there aren't any maps so it must not be the latest.