Simple TypeSafe Checkpoints Module
When I first began creating ROBLOX games, my dream was to develop an obby game set across various intricately designed worlds. However, I lacked the necessary knowledge to implement a functioning checkpoint system. As a result, I abandoned that idea and shifted my focus to smaller projects.
Now, after roughly five years and countless hours of learning the programming language, I’m excited to introduce a solution that addresses this challenge: a straightforward, reliable, and user-friendly Checkpoints Module!
It’s not the best, and it’s still version one, however I plan on fully rewriting the whole module and system depending on how people like it, and of course, it’s open-source so feel free to do what you would like with it!
– oh, and by the way, it’s fully typesafe! (i think)
API
:getTotalCheckpoints() -> number
:initializeLeaderstats(...: Player) -> Folder
:registerCheckpoint(...: BasePart) -> ()
:getStages() -> {}
:getPlayerStage(...: Player) -> number
:goToStage(...: Model, ...: number?) -> ()
:listAllPlayersStages() -> {[Player]: number}
:resetPlayerStage(...: Player) -> ()
:savePlayerStage(...: Player) -> ()
:getPlayerStageByUserId(...: number) -> number
:teleportPlayerToStage(...: Player, ...: number) -> ()
:deletePlayerData(...: Player) -> ()
:initialiseClientRemoteEvent(...: Instance?) -> RemoteEvent
:getVersion() -> number
Setup
Create a folder in the workspace titled “Checkpoints” and add a part for every stage you would like, name the stage the stage number, such as shown below: