-
Notifications
You must be signed in to change notification settings - Fork 12
Challenges Info
Challenges can be created/edited/managed via the Admin Panel's Challenges Tab. (/Admin/Challenges
)
- All existing transaction records will be updated with the new score on edit of a challenge's score.
- Challenges are all referenced by their challenge IDs
- You can see a full preview of how the challenge modal looks like by clicking on the
Preview
button at the bottom of the create/edit challenge page
Specify the challenge category this challenge will be in. You can either Select an existing category or enter a new category
Specify any number of tags represent this challenge (E.g RE, Forensics)
- The 1st tag is taken as the main tag. When the user sorts by tags in the challenges page, this tag is used
Enter any number of flags that are accepted for this challenge
- If you revoke a flag, any existing solves for that flag are not revoked
Enter any number of hints and their respective costs. Hints from top to bottom are hints 1-n
respectively
- If you revoke a hint, any existing purchases for that hint are not refunded
Challenge description. You can see a preview right below the editor
- Supports Markdown, HTML and Code blocks with syntax highlighting
Simply type the following in the editor:
```<language>
```
E.g
```python
print("hello world")
```
Controls whether the challenge is hidden/shown to users (Type 0 type 1 users)
- Admin users (type 2) can still view and purchase hints on hidden challenges in the Challenges page
- Challenges which are hidden have a
Hidden Challenge
text below them in the Challenges page. - Hidden challenges do not accept any solves even from admins. Admins will get an
Unknown Error
on trying to solve a hidden challenge.
Locks this challenge until the specified challenge has been created.
- The challenge is referenced by challenge ID. Hence it will still point to the correct challenge even if the required challenge name changes
- If the required challenge is deleted, the link will be broken and users will encounter errors ๐ข
Enter a link to a writeup if you want to provide them to the user.
- There is also the option of only revealing the link after the user has solved the challenge.
You can opt to enable dynamic scoring for a challenge by enabling the Dynamic Scoring
option in the create/edit challenge page.
- Solves to Minimum is the number of solves till the challenge decays to the minimum score
- Minimum Points is the minimum points a challenge can decay to
- Initial Points is the initial amount of points of a challenge before any decay
Dynamic scoring is implemented based on ctfd's parabolic decay formula here.
If you choose this option, the Challenge Points
field value will be disabled and disregarded. It will be calculated based on the current no. of solves and the dynamic scoring parameters you entered for this challenge on edit/creation. You can see the edited score in the Table afterwards.
You can delete any numbers of challenges at once via the table editor
- Any hints purchased are refunded
- Any points gained from flags submitted are also removed
- Any transaction records for that challenge are deleted
You can "set the visibility of a category" via the Category Management section.
- In V1.1, the visibility of challenges are retained even if you set the visibility of a category. A visible challenge inside a hidden category still cannot be viewed
You can edit various information for each category by seleting the dropdown:
- Name
- Category Image
-
Category Competition Time
- This option locks the category and any challenges in it until the start time
- After the end time, any new submissions for that category are rejected.
- Challenges are no longer hidden after the end time
Disables any new submissions to all categories and challenges. Even for admins. Use this to stop people from submitting after your CTF has ended
- Hints can still be purchased
Sets the maximum number of sockets(tabs) that can be connected to the live scoreboard per account. This is to help prevent people from hogging up all the sockets for the live scoreboard, especially for large CTFs.
- If an account hits the limit set, they will get a friendly warning message and the earliest connected socket of that account will get disconnected.