Games (also called competitions or events) are time-bound CTF competitions where teams compete to solve challenges and earn points.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/GZTimeWalker/GZCTF/llms.txt
Use this file to discover all available pages before exploring further.
Game Lifecycle
A game in GZCTF progresses through several states:Game States
Before Start
Teams can register, but challenges are not accessible. Administrators can configure challenges and settings.
Active
The competition is live. Teams can access challenges, submit flags, and earn points. The game is considered active when:
Ended
Competition time has expired. Depending on configuration:
- Practice Mode Enabled: Teams can still solve challenges (no scoring/ranking changes)
- Practice Mode Disabled: Challenges become inaccessible
Game Configuration
Basic Information
| Property | Description |
|---|---|
| Title | Game name displayed to participants |
| Summary | Brief description shown in game listings |
| Content | Detailed introduction with rules and information |
| PosterHash | Game poster image |
| Hidden | Hide game from public listings |
Timing
All times use UTC withDateTimeOffset for timezone accuracy.
Participation Settings
Team Registration- Open Registration
- Review Required
- Invite Only
Writeup Configuration
Writeups are post-competition technical reports where teams explain their solutions.
WriteupRequired is true:
- Teams must submit writeups before the deadline
- Writeups can be reviewed and downloaded by administrators
- Teams without writeups may have different participation status
Scoring Configuration
Blood Bonuses
The first three teams to solve each challenge receive bonus points:Blood bonus percentages are stored as integers (parts per thousand) for precision:
- 50 = 5.0% bonus
- 300 = 30.0% bonus
- 500 = 50.0% bonus
long value:
Dynamic Scoring
See Scoring for detailed information about the dynamic scoring formula.Security Features
Team Tokens
Each team participation generates a unique signed token:- Dynamic flag generation
- Team-specific challenge instances
- Preventing flag sharing detection
Team Hash Salt
A game-specific salt ensures flag uniqueness:Practice Mode
- Challenges remain accessible after
EndTimeUtc - Teams can still solve challenges
- Scores and rankings are not updated
- New teams cannot join
- Useful for learning and practicing
Divisions
Games can be divided into separate divisions (tracks) for different participant groups:- Separate scoreboards per division
- Different challenge visibility per division
- Division-specific permissions and invite codes
Game Model Reference
The Game model is located at:View Game Model Structure
View Game Model Structure
Related Topics
Challenges
Learn about challenge types and configuration
Teams & Participation
Understand how teams join and participate
Scoring System
Explore dynamic scoring and blood bonuses
Containers
Manage container-based challenges