Skip to content

CS2Surf/Timer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PLEASE DO NOT USE THIS, IT IS NOT COMPLETE AND IS AN ACTIVE WORK-IN-PROGRESS. ISSUES HAVE BEEN DISABLED FOR THIS REASON.

Please join the Discord: https://discord.cs.surf

Timer

Core plugin for CS2 Surf Servers. This project is aimed to be fully open-source with the goal of uniting all of CS2 surf towards building the game mode.

Goals

Note: This is not definitive/complete and simply serves as a reference for what we should try to achieve. Subject to change. Bold & Italics = being worked on.

  • Database
    • MySQL database schema (W.I.P Design Diagram)
    • Plugin auto-create tables for easier setup?
    • Base database class implementation
  • Maps
    • Implement map info object (DB)
    • Zoning
      • Hook zones from map triggers
        • Map start/end zones
        • Stage zones
        • Checkpoint zones (this is each stage for a Staged map)
        • Bonus zones
      • Support for stages/checkpoints
        • Hook to their start/end zones
        • Save/Compare checkpoint times
        • Save Stage times
      • Support for bonuses
        • Hook to their start/end zones
        • Save Bonus times
      • Start/End trigger touch hooks
      • Load zone information automatically from standardised triggers: https://github.com/CS2Surf/Timer/wiki/CS2-Surf-Mapping
      • Support for stages (/rs, teleporting with /s)
      • Support for bonuses (/rs, teleporting with /b #)
      • Start/End touch hooks implemented for all zones
  • Surf configs
    • Server settings configuration
    • Plugin configuration
    • Database configuration
  • Timing
    • Base timer class implementation
    • Base timer HUD implementation
    • Prespeed measurement and display
    • Save/load times
      • Map times
      • Checkpoint times
      • Stage times
      • Bonus times
    • Practice Mode implementation
    • Announce records to Discord
    • Stretch goal: sub-tick timing
  • Player Data
    • Base player class
    • Player stat classes
    • Profile implementation (DB)
    • Points/Skill Groups (DB)
    • Player settings (DB)
  • Replays - Not tracking Stage/Bonus times but Replay functionality for them is there
    • Personal Best
      • Map Record
      • Stage Record
      • Bonus Record
    • World Record
      • Map Record
      • Stage Record
      • Bonus Record
  • Style implementation (SW, HSW, BW)
  • Paint (?)