-
Notifications
You must be signed in to change notification settings - Fork 624
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[AMK, Lua] Mission 13 puzzle 1 - Beaucedine Glacier runaround #5045
[AMK, Lua] Mission 13 puzzle 1 - Beaucedine Glacier runaround #5045
Conversation
Structure for cutscenes handled by lonely evergreen and goblin grenadier, as well as the structure of the pips.
15311d1
to
4d09ed3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just one question about vars
onEventFinish = | ||
{ | ||
[100] = function(player, csid, option, npc) | ||
player:setCharVar('Mission[10][12]progress', 1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't you just call mission.setVar('progress')
or something here, rather than making up the key by hand?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same question for all manual management and lookup of these keys
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was concerned about repeatability but now that I think about it this mission is only repeated while still on the same mission, never after you've completed it successfully. So I need to actually remove the >= check on mission ID, and yes can use mission:progress. Force of habit for me in amk missions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually scratch that, this mission is run while on the following mission. So I'm not sure how it would work using the mission progress variable while on a different mission in case that one needed to use it. Thoughts?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's fine then, just leave a note saying that's whats happening
pos.x * 1000, | ||
pos.z * 1000, | ||
pos.y * 1000, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think I've ever seen pos units put into an event like this, interesting!
The cutscene event for the goblin grenadier requires two sets of args, first is for the hint and win/lose mechanic, the second from the eventUpdate section is to relabel an pips on the map if you wanted to. Setting the pip args to 0 makes it so the map isn't changed accidentally
4d09ed3
to
defa24f
Compare
2f71f2e
into
LandSandBoat:feature/amk_missions
* Add beauc glac puzzle npc logic Structure for cutscenes handled by lonely evergreen and goblin grenadier, as well as the structure of the pips. * puzzle pips complete, map bug fixed The cutscene event for the goblin grenadier requires two sets of args, first is for the hint and win/lose mechanic, the second from the eventUpdate section is to relabel an pips on the map if you wanted to. Setting the pip args to 0 makes it so the map isn't changed accidentally
* Add beauc glac puzzle npc logic Structure for cutscenes handled by lonely evergreen and goblin grenadier, as well as the structure of the pips. * puzzle pips complete, map bug fixed The cutscene event for the goblin grenadier requires two sets of args, first is for the hint and win/lose mechanic, the second from the eventUpdate section is to relabel an pips on the map if you wanted to. Setting the pip args to 0 makes it so the map isn't changed accidentally
…ndBoat#5045) * Add beauc glac puzzle npc logic Structure for cutscenes handled by lonely evergreen and goblin grenadier, as well as the structure of the pips. * puzzle pips complete, map bug fixed The cutscene event for the goblin grenadier requires two sets of args, first is for the hint and win/lose mechanic, the second from the eventUpdate section is to relabel an pips on the map if you wanted to. Setting the pip args to 0 makes it so the map isn't changed accidentally
I affirm:
What does this pull request do?
This implements the first puzzle of mission 13 of AMK (see walkthrough here). The goblin grenadier tells you to find pips, of which there are six, which based on the order of the vanadiel days of the week, draw a number between 0-9. There is a odd bug that can occur where the args passed from the CS 507 are used to update the map, so the values sent through there can add erroneous pips to show up on the map. This is solved by passing 0's through onEventUpdate, which leaves the map showing only what the player already discovered. This function can also be used to change the map to show something else if desired... but unclear to what end at the moment.
Steps to test these changes
!addmission 10 12
Zone into Castle Zvahl Bailey's and talk to shadowy pillar for cs
Go to lonely evergreen in beaucedine glacier for a cs
Talk to Goblin Grenadier in beaucedine glacier for puzzle instructions
Gather pips and determine answer according to wiki instructions
Return to goblin, ask for hints
Get wrong answer: chest should not open
Get correct answer: chest should open, get pocket mogbomb KI
Return to lonely evergreen for cs, which exchanges pocket mogbomb for trivia challenge kupon KI