Development Roadmap
Sprint 1
The first sprint of SurfsUp post launch
To Do (22)
BUG: Turnbind speed gets modified by framerate
HighModify turnbind speed to be based on deltatime

Styles
Mediumplz upvote for all the styles like hsw, sideways, a only, bw, TAS style, s...

SPIKE: Investigate FPS, both large lobby and map specific.
Critical
Report function
HighReporting toxic player, ability to mute them for host for everyone, kicking from...

PBs not saving due to steam limiting api calls
Critical
Acceleration and Walkspeed
MediumProblem:Due to the higher ground acceleration and speed, it's now possible for p...

BUG: Players having scores reset to slower times in score card
HighPossibly when new players join, Global.players is being reset causing latest tim...

BUG: FOV reverts to default when changing maps
Medium
Save Lobby Settings
HighSurf Data should save Lobby SettingsGame TypeGame TimePlayer CountSaved settings...

Camera exclusivity
MediumLots of weird camera stuff.Make sure actions that change camera are mutually exc...

BUG: view angles aren't changed discretely
Medium
When testing a PCK loading a loc has 466 limit
High
Allowing players to change their PB Ghost Color and opacity.
MediumAllowing players to change their PB Ghost Color and opacity.

BUG: Changing trail color on Dark Bhop does not change light color
LowGoing to Settings -> Trail Color RPC does not update user's light colorMake s...

BUG: surfsup.website leaderboard shows a time instead of a distance on jump maps
Medium
BUG: Displayed times don't agree in different locations
MediumPlayer timer might say 10.104 but in chat it will say 10.103 and similar thing...

TikToks
Medium
UI Update
MediumToggle main menu buttonsUI SFXChange Mouse Sensitivity to a text inputChange tur...

BUG: friend list not updating
Mediumcomplaint"basically if i add someone from my gameit dont update in the fri...

Text Chat
HighBanned words listMake sure the text chat doesnt allow slurs, etc. Ability t...

Debug Timer console command
Medium
BUG: change map dropdown automatically selecting while scrolling
MediumIf you drag the scrollbar with mouse whatever is highlighted when you release th...

In Progress (0)
Review (2)
BUG: Investigate and fix join 'stutter'
CriticalWhen a player joins or leaves the game, the host stutters, ruining runs mid surf

Fix paint decal
Mediumfunc project_to(surf_norm : Vector3): var tangent := Vector3.UP if sur...

Done (9)
Player Noclip
MediumRefactor F4 freecam to be proper player noclip. Entering noclip disables timer,...

Reporting Boreas
MediumFix ramp bugs by creating custom collision shape for Boreas

BUG: Fix Bhop collision shape
HighRight now Bhop uses a custom player collision hull, when it should be using the...

When players join it sometimes doesn't display the players name in chat and just said 'Joined'
MediumWhen players join it sometimes doesn't display the players name in chat and just...

The replay doesn't always play when you start the run like 1/10 runs which can throw off my run.
MediumThe replay doesn't always play when you start the run like 1/10 runs which can t...

Add community's custom maps
Medium
!extend to extend map timer
HighChat command `!extend` to extend the current map's timer by 5m

Hide current spectated player's nameplate above head when spectating
High
Bug: Replay is not resetting correctly
HighF1 → Ghost continues to playR → Resets ghostFail → Ghost continues to play

Unassigned Tasks
To Do (9)
!help to list all chat commands
Low
Map Voting Refactor
MediumThe current map should not be in the next map pool. (or give more options 4)Show...

Replay Comparisons
Lownot sure if this would be possible but it would be nice to compare your own repl...

Disconnect popup
MediumWhen disconnecting from a lobby especially as host should popup 'Are y...

Crouch toggle setting
Low
Change turnbinds to yawspeed instead of magic number multiplyer
Low
Add keybind to reduce turnbind speed
Low
Press kit & Website update
Medium(Follow Press Kit examples)adding all our logos with transparency, update a...

Add Music
HighAdd music to maps that are missing a unique trackAdd music from discord communit...

Backlog
SDK Update
MediumIntegrate Godot Mod LoaderAdd new start/finish platformsCreate scriptable API

Social Media Buttons on main menu
Medium
SDK Video Tutorial
MediumRecord myself setting up and making a map in the SurfsUp SDK Project

Ship the countersurf theme with SDK
Medium
surf_fractal
Mediumport surf_fractal by King Curtis to SurfsUphttps://gamebanana.com/mods/353938

Chat Commands
MediumNew Commands!extend - Extends current map 15m (use RTV Vote logic)!nominate - add a map to the map vote!maps - show enab...

Visual indicator of where your checkpoint is on a map
Low
SPIKE: Investigate differences between GoldSRC/Source and GoldGDT
MediumCompare GoldGDT Speed + Collision to Halflife (GoldSRC) and Source 2013 SDKhttps://github.com/ValveSoftware/halflife/blo...

UI - Options Toggle to convert Seconds to Minutes on Scores/Timer
Medium
Job to post Roadmap Updates to Discord
Medium
Twitch Sub Badges
Mediumhttps://help.twitch.tv/s/article/subscriber-badge-guide?language=en_US

Video Tutorial Steam Trailer
Medium
UI Fix
MediumOption to hide tutorial cardsRefresh lobbies should have hover and click (same as all other buttons)

Ideas
Offline Play
LowUtilize the Godot Offline Multiplayer peer to create an offline only mode for SurfsUp.Local leadboards for runsPossible...

Combat Surf
Medium
Gmod swim animation as a drop
Criticalplz upvote it's classic

Soundtrack Controller for Host
MediumHost/Supporter Only. Favorite songs. Shuffle Favorites. Playlists. No music option. Track and display, play count

!race to allow players to race head to head
Medium
Events with hidden leaderboard times until end of event.
Medium
Map search and sorting
MediumFavorites (Star symbol?)Completed (Checkered flag symbol?)Completions (how many times the player has completed)Total fin...

Player card/titles customization
Medium
Surf Skate Park
Medium
Rhythm based bhop map
Medium
Spectator eye cosmetics
Medium
hotdog achievement idea
Mediumchange freecam to noclip with timer disabledhide hotdogs

add some options like hide players/trials to tab menu
Medium
Godot TPS Demo as Map
Mediumhttps://github.com/godotengine/tps-demo

Events where leaderboards are locked after some time e.g. 1 week
Medium
Map time medals like surf_leidenfrost
Medium
Map pool refactor
MediumLess random, remove map you are surfing, and what map you previously surfedGo from 2->4 maps in votingHost should be...

Lobby titles and lobby settings publicly facing
Medium
Community Suggestions
Login to submit your suggestions
Adding Times or Checkmark to maps you finished in the Map selection screen. Maybe everywhere were a map name appears, just add a checkmark or not, wether you've completed the map or not. Kinda annoying to go through every map and host a game to see if youve done it

A ton of suggestions for the late future: Combat Surf Tricksurf Profile Level/Score based on Percentile position of completed maps with top 10 maybe getting bonus points/score. Stats like number of retries, map completions, time played on map, etc.

1.Perhaps allow players to disable voicechat and display that they have voicechat disabled next to their name above their head or in chat for other users to know 2. after clicking watch replay if you could click f4 to noclip spectate the replay (also adjustable speed for noclip)

i think its kinda lame that on the custom maps, all shortcuts get removed. isnt that part of surfing? finding weird and often very lucky cuts to maps. ive already grinded for several hours the strafetutorial, and already 2 of my WRs got removed and the map changed.....

When a new wr is displayed in discord include the - from the previous wr ex: Player has set a new world record on Map with a score of 9.727 (-.273)

Ranking + global leaderboard based on points / % map completion

allow multiple keybinds for a single action. i use jump on space and mousewheel, cause i got used to it from back in the day where there was no auto bhop :D

https://gamebanana.com/mods/79037 kitsune 2 map

Integrate Steam Workshop to allow distribution of community maps. It would be nice if you join a server with a map you don't have, have it automatically subscribe and download. Leaderboards then become a challenge to maintain - need solution.

Country based records, to see what ranking a player is in their own Country. So a player might be rank 50 on a map in the World, but rank 1 in their own Country.

Add Key Binding through Console and allowing multiple keys to be bound to a single key press(multi-key binding), making it easier to do certain actions in surf. (This is possible in 1.6, CSS, CSGO, and CS2)

Allow supporters on the map selection screen to see which maps are currently in the F2P rotation.

Adding Vote Kick to allow people to vote to kick a player who is cheating, spamming the mic or just overall annoy everyone else in a lobby. (Kick adds a timer to stop them from rejoining the same Lobby - Like a 10min ban)

top left times in lobbies are dropping the decimal points

Map selection menu with personal time / ranking (at least something to know we beat it already)

Colorblind mode and or able to change texture colors.

Allowing everyone to zone Created Maps. Have a section for approved and unapproved maps. Unapproved maps are finishable, but the records are not saved to the Global Records. When Unapproved Maps are Approved the records are wiped and the map is added to the Global Map Pool.

also id like to have combat surf I know its hard you can take as little time as you want im not rushing

When a checkpoint is set in spawn and you reset back to that checkpoint like 2/10 times it will show a prehop limit warning and freeze the timer

When a checkpoint is set in spawn and you reset back to that checkpoint like 2/10 times it will show a prehop limit warning and freeze the timer

optimisation to the game a little bit, my potato doesnt like some maps and runs on 40 fps with big stutters sometimes.
