Actions Missing
Moderator: EN - Forum Moderators
-
- Posts: 5
- Joined: Mon Mar 11, 2019 11:09 pm
- Gender: Male
- Spoken languages: English
Actions Missing
Posting this because I didn't see anything addressing the issue. I was playtesting my case and when I got to an instance where it should decrease my health, it didn't do so. I looked in my storyboard and noticed that the action for it was blank, even though the option was there, and that the action to reduce health was missing entirely. Is this happening for anybody else?
-
- Posts: 5
- Joined: Mon Mar 11, 2019 11:09 pm
- Gender: Male
- Spoken languages: English
Re: Actions Missing
Noted that it only happens in a frame that has "merge with next" checked.
-
- Posts: 5
- Joined: Mon Mar 11, 2019 11:09 pm
- Gender: Male
- Spoken languages: English
Re: Actions Missing
Thanks.
- Enthalpy
- Community Manager
- Posts: 5172
- Joined: Wed Jan 04, 2012 4:40 am
- Gender: Male
- Spoken languages: English, limited Spanish
Re: Actions Missing
fendas is correct. This is not a bug but something Unas deliberately put into AAO for reasons I don't quite understand but plan to figure out soon-ish.
[D]isordered speech is not so much injury to the lips that give it forth, as to the disproportion and incoherence of things in themselves, so negligently expressed. ~ Ben Jonson
- Enthalpy
- Community Manager
- Posts: 5172
- Joined: Wed Jan 04, 2012 4:40 am
- Gender: Male
- Spoken languages: English, limited Spanish
Re: Actions Missing
The bug that was above this on my priority list is pretty much solved (I talked about the problem with Unas, and he just needs to accept the fix), so I'll look into this next. I'm hoping it'll be quick.
[D]isordered speech is not so much injury to the lips that give it forth, as to the disproportion and incoherence of things in themselves, so negligently expressed. ~ Ben Jonson
- Enthalpy
- Community Manager
- Posts: 5172
- Joined: Wed Jan 04, 2012 4:40 am
- Gender: Male
- Spoken languages: English, limited Spanish
Re: Actions Missing
...Quick here meaning about fifteen minutes.
The list of actions you can't do on a merged frame are:
Proceed to another frame
End the game
Ask player to select an answer
Ask the player for evidence
Ask player to point an area
Store player's input into a variable
Test an expression's value
Evaluate conditions to redirect the player
Set player's health points
Reduce player's health points
Set the "Game Over" redirection
Items 1-8 on here are fairly intuitive. All of those actions are incompatible with the normal rule of "end this frame, then go on to the frame it's merged with". The last two are less obvious, but they need to be prohibited for the same reason. Those commands allow you to end the game, which would interefere with normal frame processing. The odd one out here is setting the game over redirection. When that command runs, all AAO needs to do is update a single variable value. There should be no reason for that to interefere with the frame you proceed to next. Perhaps this was a mistake in the coding? Or maybe there's something I'm just not seeing. Regardless, I'm not inclined to put more effort into this one command.
The list of actions you can't do on a merged frame are:
Proceed to another frame
End the game
Ask player to select an answer
Ask the player for evidence
Ask player to point an area
Store player's input into a variable
Test an expression's value
Evaluate conditions to redirect the player
Set player's health points
Reduce player's health points
Set the "Game Over" redirection
Items 1-8 on here are fairly intuitive. All of those actions are incompatible with the normal rule of "end this frame, then go on to the frame it's merged with". The last two are less obvious, but they need to be prohibited for the same reason. Those commands allow you to end the game, which would interefere with normal frame processing. The odd one out here is setting the game over redirection. When that command runs, all AAO needs to do is update a single variable value. There should be no reason for that to interefere with the frame you proceed to next. Perhaps this was a mistake in the coding? Or maybe there's something I'm just not seeing. Regardless, I'm not inclined to put more effort into this one command.
[D]isordered speech is not so much injury to the lips that give it forth, as to the disproportion and incoherence of things in themselves, so negligently expressed. ~ Ben Jonson
- Unas
- Admin / Site programmer
- Posts: 8850
- Joined: Tue Jul 10, 2007 4:43 pm
- Gender: Male
- Spoken languages: Français, English, Español
- Contact:
Re: Actions Missing
The distinction is between actions that occur before the frame, and actions that occur after the frame.
See in player_actions.js, runFrameActionBefore and runFrameActionAfter each handle a distinct subset of actions.
On a merged frame, the runFrameActionAfter will be skipped (see player.js line 296).
In other words, any action which is supposed to run after a frame will be skipped on a merged frame; they can only occur on the last frame of the merged sequence.
This is why the editor also has logic to hide these actions from the list : even if you could select them, they wouldn't be executed in the player.
(Which is exactly what will happen if you set one such action and then tick the "merged" checkbox : the action will still be stored in the trial data, but ignored by the player.)
And yes, the actions that run after the frame are those which prompt for player input and/or trigger a redirection to other frames, because those couldn't work properly in a merged frame.
As for Set Game Over Redirection, yep, I just messed up I guess. It's part of runFrameBefore, so it can work on merged frames, and thus shouldn't be hidden in the editor.
See in player_actions.js, runFrameActionBefore and runFrameActionAfter each handle a distinct subset of actions.
On a merged frame, the runFrameActionAfter will be skipped (see player.js line 296).
In other words, any action which is supposed to run after a frame will be skipped on a merged frame; they can only occur on the last frame of the merged sequence.
This is why the editor also has logic to hide these actions from the list : even if you could select them, they wouldn't be executed in the player.
(Which is exactly what will happen if you set one such action and then tick the "merged" checkbox : the action will still be stored in the trial data, but ignored by the player.)
And yes, the actions that run after the frame are those which prompt for player input and/or trigger a redirection to other frames, because those couldn't work properly in a merged frame.
As for Set Game Over Redirection, yep, I just messed up I guess. It's part of runFrameBefore, so it can work on merged frames, and thus shouldn't be hidden in the editor.