en:authors_main:task_editor:advanced:author_scripts

Scripts and Interactive Elements in Tasks

The engine supports special placeholders that automatically resolve to player-specific or team-specific information:

  • !username! — player login
  • !name! — player display name
  • !teamname! — team name
  • !game_id! — game ID
  • !task_id! — task ID
  • !task_n! — task number (sequence)
  • !bonus! — sum of collected bonuses (total score)
  • !task_bonus! — sum of bonuses earned on the current task

Example in game

Described on the level styling page.

If you want players to submit answers by clicking a button instead of typing, switch task editing to “Source” mode and insert:

<!-- Submit answer normally -->
<button type="button" class="btn btn-default btn-block shadow" onclick="enter('Code to submit')">Submit code</button>
 
<!-- Submit answer silently without page feedback message -->
<button type="button" class="btn btn-default btn-block shadow" onclick="enter_silent('Code to submit')">Submit code without displaying result</button>
 
<!-- Submit answer with dialog confirmation -->
<button type="button" class="btn btn-default btn-block shadow confirm" onclick="enter('Code to submit')">Submit code with confirmation</button>
 
<!-- Submit answer with confirmation and silently -->
<button type="button" class="btn btn-default btn-block shadow confirm" onclick="enter_silent('Code to submit')">Submit code with confirmation and without displaying result</button>

Example in game

You can dynamically replace task elements with content from hints, bonuses, or solved codes. To use this, switch to “Source” mode and write:

<span class='replacer' data-find='what to replace with'>Any text before replacement</span>

or

<div class='replacer' data-find='what to replace with'>Any text before replacement</div>

The data-find attribute defines which element value to copy:

  • #b3 .bonus-hint — bonus description text (revealed after solving) for bonus 3.
  • #b3 .bonus-description — bonus task question description for bonus 3.
  • #c4 .right-answer — the exact correct code submitted for sector 4.
  • #hb2 — hint content text for hint 2 (or penalty hint 2).

<note important> Important: There must be a space between the code/bonus selector and the class name. * Incorrect: #c4.right-answer * Correct: #c4 .right-answer </note>

Example in game | Another example in game

Typical code templates and examples of client-side scripts can be viewed here: Typical scripts.

  • en/authors_main/task_editor/advanced/author_scripts.txt
  • Last modified: 2026/06/15 21:07
  • (external edit)