Player "cheating the puzzle" detection?
And in a recent playtest i found a different, wrong way to solve the puzzle.
Though instead of removing the possibility completely, i want to make Glados respond angry and some panels doing some funny things to mess with the "wrong" solution.
I managed to get it running from a button, though i cant seem to get any logic system to detect it.
The trigger would be that lasercatcher02 would be activated while lasercatcher01 isn't activated yet.
Also it needs to detect a certain prop at a certain location (to trigger the right panel popping up)
Has anyone a idea on how to approach this?
(here is a picture of the chamber with the panel messing with the player)
http://img26.imageshack.us/img26/9728/2011052800004.jpg
Also the trigger should go off when lasercatcher01 was activated, but since has been deactivated before activating lasercatcher02
Also i am wondering on how to play a animation backwards, since i have a nice animation with the panel popping up, but the animation doesnt come with a "backwards" version.
Croolsby wrote:
also I think you can make a logic_relay with an output like "OnTrigger, prop, SetPlaybackRate, -1". I think that makes the animation play backwards.
That is actually not true, Frame rate cannot have negative values.
kwp21 pitts wrote:
Croolsby wrote:also I think you can make a logic_relay with an output like "OnTrigger, prop, SetPlaybackRate, -1". I think that makes the animation play backwards.
That is actually not true, Frame rate cannot have negative values.
Incorrect, you can set negative playback rates.
Anyways with this situation you'll want to set up a logic_compare, and have your second catcher set a value to it. If your first catcher turns on, compare the value, and if it's "untrue" then you don't play the special event, if the value is true (in this case compare the value when the second catcher turns on) then play the event.
MrTwoVideoCards wrote:
kwp21 pitts wrote:Croolsby wrote:
also I think you can make a logic_relay with an output like "OnTrigger, prop, SetPlaybackRate, -1". I think that makes the animation play backwards.
That is actually not true, Frame rate cannot have negative values.
Incorrect, you can set negative playback rates.
Anyways with this situation you'll want to set up a logic_compare, and have your second catcher set a value to it. If your first catcher turns on, compare the value, and if it's "untrue" then you don't play the special event, if the value is true (in this case compare the value when the second catcher turns on) then play the event.
Ok my bad missed some of the details on the developer site.
What do I use to detect if that portal was placed?
Anywhere you shoot in the radius of the sphere (i used 96 on a 128x128 panel), the portal gets opened at the center location of the placement helper
I used it to simplify the puzzle and prevent (some) cheating methods.
theres a option that adds angle control, its off by default.
You need to rotate it like this:
(Big)Red arrow points out perpendicular from the surface
Green arrows pointing left and right
Blue arrow poining to the "bottom" of the portal
Also you could just use a portal cleaning trigger to get rid of the player's portal...
Also for what i did with the determining of the "being cheated" state is, i had every item in the puzzle add a value to a math counter.
And to avoid getting mixups (2+1 = 3+0 = 1+1+1 ect.) i inputted some binary numbers.
Like portalcatcher 1 adds/substracts 10 and portalcatcher 2 adds/substracts 100 (when they activate/deactivate)
That way 110 would mean the puzzle is correctly solved, and 10 would be a incomplete puzzle, and 100 a cheated puzzle.
The logic_case can then add all the events you need, since you can specify a value for every "case"
so if the logic case gets a value of 100 it applies to case nr 3, with the output of "OnCase3" being some panels activating.