<spanid="evennia-contrib-game-systems-puzzles-puzzles"></span><h1>evennia.contrib.game_systems.puzzles.puzzles<aclass="headerlink"href="#module-evennia.contrib.game_systems.puzzles.puzzles"title="Permalink to this headline">¶</a></h1>
<p>Puzzles System - Provides a typeclass and commands for
objects that can be combined (i.e. ‘use’d) to produce
new objects.</p>
<p>Evennia contribution - Henddher 2018</p>
<p>A Puzzle is a recipe of what objects (aka parts) must
be combined by a player so a new set of objects
(aka results) are automatically created.</p>
<p>Installation:</p>
<p>Add the PuzzleSystemCmdSet to all players (e.g. in their Character typeclass).</p>
<codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">proto_def</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">obj</span></em>, <emclass="sig-param"><spanclass="n">with_tags</span><spanclass="o">=</span><spanclass="default_value">True</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#proto_def"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.proto_def"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">maskout_protodef</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">protodef</span></em>, <emclass="sig-param"><spanclass="n">mask</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#maskout_protodef"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.maskout_protodef"title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a new protodef after removing protodef values based on mask</p>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">PuzzleRecipe</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#PuzzleRecipe"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">save_recipe</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">puzzle_name</span></em>, <emclass="sig-param"><spanclass="n">parts</span></em>, <emclass="sig-param"><spanclass="n">results</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#PuzzleRecipe.save_recipe"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe.save_recipe"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'PuzzleRecipe'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleRecipe.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">CmdCreatePuzzleRecipe</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdCreatePuzzleRecipe"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = '@puzzle'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['@puzzlerecipe']</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:perm(puzzle) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'puzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">confirm</code><emclass="property"> = True</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.confirm"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">default_confirm</code><emclass="property"> = 'no'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.default_confirm"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdCreatePuzzleRecipe.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the hook function that actually does all the work. It is called
by the cmdhandler right after self.parser() finishes, and so has access
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:perm(puzzle) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': '@puzzlerecipe', 'category': 'puzzles', 'key': '@puzzle', 'no_prefix': 'puzzle puzzlerecipe', 'tags': '', 'text': "\n Creates a puzzle recipe. A puzzle consists of puzzle-parts that\n the player can 'use' together to create a specified result.\n\n Usage:\n @puzzle name,<part1[,part2,...>] = <result1[,result2,...]>\n\n Example:\n create/drop balloon\n create/drop glass of water\n create/drop water balloon\n @puzzle waterballon,balloon,glass of water = water balloon\n @del ballon, glass of water, water balloon\n @armpuzzle #1\n\n Notes:\n Each part and result are objects that must (temporarily) exist and be placed in their\n corresponding location in order to create the puzzle. After the creation of the puzzle,\n these objects are not needed anymore and can be deleted. Components of the puzzle\n will be re-created by use of the `@armpuzzle` command later.\n\n "}</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdCreatePuzzleRecipe.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">CmdEditPuzzle</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdEditPuzzle"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = '@puzzleedit'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:perm(puzzleedit) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'puzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdEditPuzzle.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the hook function that actually does all the work. It is called
by the cmdhandler right after self.parser() finishes, and so has access
<codeclass="sig-name descname">aliases</code><emclass="property"> = []</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:perm(puzzleedit) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdEditPuzzle.lock_storage"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">CmdArmPuzzle</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdArmPuzzle"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = '@armpuzzle'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:perm(armpuzzle) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'puzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdArmPuzzle.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the hook function that actually does all the work. It is called
by the cmdhandler right after self.parser() finishes, and so has access
<codeclass="sig-name descname">aliases</code><emclass="property"> = []</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:perm(armpuzzle) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': '', 'category': 'puzzles', 'key': '@armpuzzle', 'no_prefix': 'armpuzzle ', 'tags': '', 'text': '\n Arms a puzzle by spawning all its parts.\n\n Usage:\n @armpuzzle <puzzle #dbref>\n\n Notes:\n Create puzzles with `@puzzle`; get list of\n defined puzzles using `@lspuzzlerecipes`.\n\n '}</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdArmPuzzle.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">CmdUsePuzzleParts</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdUsePuzzleParts"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'use'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['combine']</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:pperm(use) or pperm(Player)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'puzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdUsePuzzleParts.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the hook function that actually does all the work. It is called
by the cmdhandler right after self.parser() finishes, and so has access
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:pperm(use) or pperm(Player)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'combine', 'category': 'puzzles', 'key': 'use', 'no_prefix': ' combine', 'tags': '', 'text': '\n Use an object, or a group of objects at once.\n\n\n Example:\n You look around you and see a pole, a long string, and a needle.\n\n use pole, long string, needle\n\n Genius! You built a fishing pole.\n\n\n Usage:\n use <obj1> [,obj2,...]\n '}</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdUsePuzzleParts.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">CmdListPuzzleRecipes</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdListPuzzleRecipes"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = '@lspuzzlerecipes'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:perm(lspuzzlerecipes) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'puzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdListPuzzleRecipes.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the hook function that actually does all the work. It is called
by the cmdhandler right after self.parser() finishes, and so has access
<codeclass="sig-name descname">aliases</code><emclass="property"> = []</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:perm(lspuzzlerecipes) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListPuzzleRecipes.lock_storage"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">CmdListArmedPuzzles</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdListArmedPuzzles"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = '@lsarmedpuzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:perm(lsarmedpuzzles) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'puzzles'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#CmdListArmedPuzzles.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the hook function that actually does all the work. It is called
by the cmdhandler right after self.parser() finishes, and so has access
<codeclass="sig-name descname">aliases</code><emclass="property"> = []</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:perm(lsarmedpuzzles) or perm(Builder)'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.CmdListArmedPuzzles.lock_storage"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.puzzles.puzzles.</code><codeclass="sig-name descname">PuzzleSystemCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">cmdsetobj</span><spanclass="o">=</span><spanclass="default_value">None</span></em>, <emclass="sig-param"><spanclass="n">key</span><spanclass="o">=</span><spanclass="default_value">None</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#PuzzleSystemCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleSystemCmdSet"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_cmdset_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/puzzles/puzzles.html#PuzzleSystemCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleSystemCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Hook method - this should be overloaded in the inheriting
class, and should take care of populating the cmdset by use of
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.game_systems.puzzles.puzzles.PuzzleSystemCmdSet'</em><aclass="headerlink"href="#evennia.contrib.game_systems.puzzles.puzzles.PuzzleSystemCmdSet.path"title="Permalink to this definition">¶</a></dt>