Sentry Knockout Order Puzzle

I am trying to make a puzzle in which you have to knockout sentries in a specific order to open a door. So if go out of order, the puzzle will reset.

So. . . Like an Undertale type lever puzzle?

Welcome to the forums! @olyube !

Don’t forget to check out the new-user-must-read and forum-tips tag.

The Community Made Guides category is also very useful, posts there give you a gist of the rules and mechanics in Gimkit Creative.

While you’re at it, I suggest also reading the

TOS and FAQ.

If you need help with anything, just ask!

After all, this is a Community Forum :robot: !

Checker?
I don’t know…

Also, welcome to the forums, @olyube !
Be sure to look at new-user-must-read and beginner-must-read !

maybe use the solutions provided in this help question, but with sentries instead?

1 Like

For every button, place down an item granter. Wire each button to each corresponding item granter. Go into each item granters settings, and tell it to grant 10 times the amount of the previous item granter. They should all grant the same item. Wire each button to a separate wire repeater, and the wire repeater to the button, so when the button is pressed, it gets deactivated. In every button, have them transmit on channel ButtonPressed when they are pressed. Place down a counter, and have it increment on channel ButtonPressed. Connect it to the property RightInRow. Place down a trigger, and go into its block menu. It should be triggered off of the channel ButtonPressed, with a 0.2 second delay. Have it broadcast on channel (get property [ RightInRow]). Then, place down a checker. Have it check when receiving on channel 1. Have it check if the amount of item that the player has is equal to (the amount of item the item granter connected to the first item granter grants). If false, broadcast on channel Restart. Repeat the checker, but change the channel it receives on, and the number of item it checks for, to where it would be in its order (third button, receive on 3), and the sum of all items that the player should have at that point. For the last checker, if the amount of items equal the total amount that every item granter gives out, broadcast on channel Done, and deactivate the barrier holding the exit. Finally, place down a IIM, and have it clear the item from the players inventory when receiving on Restart. Hope this helps!
This is what @ClicClac said.

1 Like

When did I say this? The channels look like something I would say, but I just want to make sure.

1 Like

Read The Llama’s reply.

What happened to your pfp?

We could use order of operations to check for the password
First, i’m going to assume that you have 4 sentries that need to be knocked out correctly

Lets use the equation [(4 x 3) - 2] x 2
the result is 20
Now each sentry would trigger a trigger
Set each trigger’s settings to:
“Trigger Scope” → “Player”
“Trigger by Player Collision” → “No”

Make a block for each trigger for “when triggered”
Add a property called “order”

Trigger #1 Block code:
Set Property: order
Value : 4

Trigger #2 Block code:
Set Property: order
Value : (Get Property: order [ x ] “3”)

Trigger #3 Block code:
Set Property: order
Value : (Get Property: order [ - ] “2”)

Trigger #4 Block code:
Set Property: order
Value : {Get Property: order [ x ] “2”)

For each sentry, wire it to their corresponding trigger:
“Sentry Knocked Out” → “Trigger”

Add a checker that checks for the property value “order”
Change “Comparison” to “Equal To” (this should be “equal to” by default, but check this part just in case)
Change “Value” to “20”

Add a counter
Set the “Target Value” to “4”
Set “Counter Scope” to “Player”
Wire each trigger to the counter:
“Trigger Triggered” → “Increment Counter”

Do the following EXACTLY how it is written due to AUO
Set “When Target Value Reached, send on channel…” to “orderentered”
Set “Reset when recieving on channel…” to “orderentered”

AUO part is over.
For your checker, set “Check when recieving on channel…” to “orderentered”
Set “When the Check fails, transmit on” to “resetorder”
Set “When the Check passes, transmit on” to “correctorder”

Go back to Trigger #1
Set “Trigger when recieving on…” to “resetorder”
(this works fine because the 1st sentry just sets the value, no operations are performed)

Assume your door is a barrier
Make the barrier “deactivate when recieving on…” the channel “correctorder”

Explanation for why the order of operations works:
The eqaution " [(4x3)-2]x2 " has to been done in this specific order to reach the value 20.
Below are all the possible ways the sentries could be knocked out (24 total, a.k.a. 4! or 4 factorial)
1 2 3 4
4 x3 -2 x2
Trigger Order|Result
1,2,3,4 20 (the correct order)
1,2,4,3 22
1,3,2,4 12
1,3,4,2 12
1,4,2,3 22
1,4,3,2 18
2,1,3,4 4
2,1,4,3 6
2,3,1,4 8
2,3,4,1 4
2,4,1,3 2
2,4,3,1 4
3,1,2,4 24
3,1,4,2 24
3,2,1,4 8
3,2,4,1 4
3,4,1,2 12
3,4,2,1 4
4,1,2,3 10
4,1,3,2 6
4,2,1,3 2
4,2,3,1 4
4,3,1,2 12
4,3,2,1 4
As you can see, 20 is a unique number among all 24 possibilites. This means that only the specific combo 1,2,3,4 would recieve a value of 20, thus making the “passcode” work.

Some numbers repeat due to Trigger #1 being activated the last and the multiplicating operations being next to each other.

Thanks for reading!

5 Likes

Note: the above solution only works if you have 4 sentries. please tell me the number of sentries you have so i can update the guide

2 Likes

I am using 5 sentries but it could work with 4

1 Like

Also, in your map, do you have any “clues” that hint at the correct knockout order?
otherwise its just guess and check

1 Like

You mean Trial and Error?

same thing

1 Like

I don’t read all of that, but you should use counters with a target that decrements the counter to set a property instead of blocks. Oh now I did. It’s pretty smart, having a natural reset. You could use checkers to check if “order” is the right value.

1 Like