Creating a Treasure Hunt game!

Thinking of creating a Treasure Hunt game?

That's a great idea ! Here are some good tips and pointers that will help you make it the best experience both for you and your kids.



Puzzle types

Don't just use riddles as clues. Clues can be much more diversified and interesting. We use many different puzzle types, so each clue in the game is a completely different type of puzzle. If you are making a game yourself, you can find ideas under our 'free ideas' section. We for instance, use some word-game puzzles, along with puzzles you need to tilt, fold or cut with scissors in order to fold. Try to make the clues colorful and fun.

Puzzle difficulty

The purpose of the Treasure Hunt game is mainly entertainment. It includes a lot of puzzles and riddles which may be brain teasing, but must not be too hard, because most of the enjoyment in the game comes from the excitement of finding the clues, solving them and finding the treasure. It is sometimes a good practice to make the puzzles a little "on the easy side". You don't want anyone to feel frustrated with a hard puzzle.


Choosing hide locations

The game we offer on this site is adapted for playing in your home and backyard. Try to make sure that the hints are quite spread-out, so there is a little running involved. Also, some of the hint locations that we offer are intentionally a little ambiguous, like "a show" which will send the kids looking for the hint in any shoe in the house. The search itself is also a lot of fun.

Using our form to create your game

Below is a screenshot showing our online form for creating your Treasure Hunt game:


The status area

In this area you can see the status of your game. Each time you click "save and check" at the bottom of the form, your selections are saved and the status shows whether you still need to select or fix anything. When it's all green, you can proceed to download your file.

Selecting the theme for your game

When you select a theme (from the drop-down menu) you select the graphical background which will be printed on all pages of your game. Also, when the game is generated, the 'fun facts' area in each page will include a new fun fact (interesting anecdote) about the subject of the theme.

Selecting the age-group

Make sure to select the correct age-group for your kids. This will help our algorithm find the most suited puzzle for your kids.

Selecting the number of clues

You can choose between 2 and 6 clues in each game. This of course will affect the length and duration of the game. The pricing is the same, no matter how many clues you set up.

Selecting the hide locations

Select the locations for the clues and for the treasure. Make sure the clues are spread-out enough in the house.

Writing a treasure message

When your kids find the treasure, this note will be waiting there. You can customize it using your own words. Just click on the page preview to write your message.

form for creating a treasure hunt game

Profile Information

Application afterLoad: 0.000 seconds, 0.40 MB
Application afterInitialise: 0.030 seconds, 2.69 MB
Application afterRoute: 0.042 seconds, 4.16 MB
Application afterDispatch: 0.077 seconds, 6.54 MB
Application afterRender: 0.110 seconds, 7.29 MB

Memory Usage


13 queries logged

  1. SELECT *
      FROM jos_session
      WHERE session_id = 'fad4c6386084349e419b656ca362c35a'
      FROM jos_session
      WHERE ( time < '1490575310' )
  3. SELECT *
      FROM jos_session
      WHERE session_id = 'fad4c6386084349e419b656ca362c35a'
  4. INSERT INTO `jos_session` ( `session_id`,`time`,`username`,`gid`,`guest`,`client_id` )
      VALUES ( 'fad4c6386084349e419b656ca362c35a','1490589710','','0','1','0' )
  5. SELECT *
      FROM jos_components
      WHERE parent = 0
  6. SELECT folder AS type, element AS name, params
      FROM jos_plugins
      WHERE published >= 1
      AND access <= 0
      ORDER BY ordering
  7. SELECT id, title, alias
      FROM jos_jumi
      WHERE published = 1
  8. SELECT m.*, c.`option` AS component
      FROM jos_menu AS m
      LEFT JOIN jos_components AS c
      ON m.componentid =
      WHERE m.published = 1
      ORDER BY m.sublevel, m.parent, m.ordering
  9. SELECT template
      FROM jos_templates_menu
      WHERE client_id = 0
      AND (menuid = 0 OR menuid = 27)
      ORDER BY menuid DESC
      LIMIT 0, 1
  10. SELECT a.*, AS author, u.usertype, cc.title AS category, s.title AS section, CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":",, a.alias) ELSE END AS slug, CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":",, cc.alias) ELSE END AS catslug, AS groups, s.published AS sec_pub, cc.published AS cat_pub, s.access AS sec_access, cc.access AS cat_access 
      FROM jos_content AS a
      LEFT JOIN jos_categories AS cc
      ON = a.catid
      LEFT JOIN jos_sections AS s
      ON = cc.section
      AND s.scope = "content"
      LEFT JOIN jos_users AS u
      ON = a.created_by
      LEFT JOIN jos_groups AS g
      ON a.access =
      WHERE = 29
      AND (  ( a.created_by = 0 )    OR  ( a.state = 1
      AND ( a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2017-03-27 04:41:50' )
      AND ( a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2017-03-27 04:41:50' )   )    OR  ( a.state = -1 )  )
  11. UPDATE jos_content
      SET hits = ( hits + 1 )
      WHERE id='29'
  12. SELECT id, title, module, position, content, showtitle, control, params
      FROM jos_modules AS m
      LEFT JOIN jos_modules_menu AS mm
      ON mm.moduleid =
      WHERE m.published = 1
      AND m.access <= 0
      AND m.client_id = 0
      AND ( mm.menuid = 27 OR mm.menuid = 0 )
      ORDER BY position, ordering
  13. SELECT*
      FROM jos_jcron_tasks
      WHERE published=1

Language Files Loaded

Untranslated Strings Diagnostic


Untranslated Strings Designer