Forum rules - please read before posting.

Tower of Hanoi Puzzle

Hi!

As a part of a game I'm working on, the player character has to solve a Tower of Hanoi puzzle with 3 rods and 3 discs. It seems like an awful lot of actions would have to be created in the Action List Editor, and even more if my designer would decide he'd like a stack of 4 discs to be moved :)

The action will be driven by dialogue (e.g.: "Move from stack A" - "Move to stack B") as we've decided against using inventory as intermediate store for the disc.

What's the best way to approach such a problem in Adventure Creator?

Comments

  • I'd go with programming a custom action for any kind of mini-game puzzle. If the puzzle is more complex I'd suggest to program it without AC and only interface with AC while starting, solving or failing a puzzle. To send messages to your custom script and thus capture a start of a puzzle I'd go with "Send message" Action that runs a custom method from AC actions and after puzzle completion or failure I'd go with [SomeAction].Interact() method to move on from custom script to actionlist actions. So that would be my recommended entry/exit points into/out of custom mini-game puzzles.
  • Yes, custom scripting would be the way to go if you want to avoid a complex Action tree.  The best way to avoid this would be to write a new script that handles everything, and simply disable AC for the puzzle's duration.

    You can selectively disable AC's systems using the Engine: Manage systems Action - this way you could de-activate the movement and interaction systems, but still retain the dialogue system.  ActionLists can be called manually by running their Interact() function.
  • Thank you, Teshla and ChrisIceBox. I created a custom MonoBehaviour to drive the puzzle logic and simply sent messages to it like you recommended. It worked like a charm.
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.