Master the art of speed, precision, and acrobatic platforming in this high-octane, movement-focused game.
Overview:
Get ready for an adrenaline-fueled adventure where gravity-defying speed and precision platforming take center stage. Inspired by the legendary surf maps of Counter-Strike, this game offers players a fun and thrilling experience.
Glide through the air and tackle gravity-defying ramps in beautifully crafted environments. Every moment in SurfsUp is about mastering momentum and navigating challenging levels with perfect timing and control.
Gameplay Features:
Surfing Mechanics: Master the art of high-speed air-surfing! Use ramps to slide through levels with precision and style. Timing, control, and momentum are crucial as you navigate ramps, tight turns, and massive jumps. The faster you go, the more agile you become, but misjudge your landing, and you'll pay the price.
Fluid Movement: Experience the thrill of fluid, acrobatic movement across unique maps. Perfect your surfing technique to gain speed, jump further, and reach impossible heights, all while maintaining control.
SurfsUp is a game for those who love movement and skill challenges. Whether you're a seasoned surfer or new to high-speed platforming, the game offers a satisfying learning curve. With each level offering unique obstacles and ramps to conquer, you’ll be motivated to keep improving your surfing abilities and perfect your technique alongside your friends.
SurfsUp has released on Steam
Thanks to all the players who participated in the play test, private beta, and Next Fest demo, and pre-release phases of development. The game has now launched free-to-play for all on Steam, and the game would not be what it is without all of you!https://store.steampowered.com/app/3454830/SurfsUp/
The Supporter Bundle DLC is now available
Support the future development of SurfsUp by purchasing the Supporter Bundle DLC. It enables you to host custom lobbies, comes with the Counter-Terrorist and Sitting Clapping cosmetics, and unlocks access to all maps.https://store.steampowered.com/app/3469980/
New Tutorial:

Designed by community member Angelina, the new tutorial is a "0-star" map meant to help new players understand the basics. The new tutorial features animated info-graphs at each stage to help new players understand how to play. To ease new players into the game without the pressure of a timer, you cannot see your run timer on Tutorial until you have a clear on the map.
New Map: Strafe Course

Created by community member 500 Ping Strafe Course is a unique map without gravity to help teach players how to air-strafe. This map features 5 keys spread across a mini-golf course for you to collect to reach the final hole.
Map rework: Nerdiful

Created by Nerdiful, the ramps and layout have been redesigned and the level has been lit and textured.
Map Rework: Christmas

The Christmas map has been redesigned and reworked, players now start inside of a gift-wrapped present and have to strafe around holiday ornaments.
New Map: Dark Bhop

Designed by community member Angelina, Dark Bhop is a new map for the bhop game mode with a flat 'maze' to help people learn air-strafing and have an easier time understanding how to bhop.
New Map: Dunes

Designed by community member Angelina, Dune is a 1-Star trick surf map to teach players mid-run bhops and spins
New Ported Map: Kitsune

Kitsune by Amoreloba has been ported and added to the permanent map pool. It also adds staged map support to SurfsUp! HUGE thanks to Nerdiful for putting in a ton of work on the port.
New Ported Map: OG Mesa

Original Mesa by Amoreloba has been ported and added to the permanent map pool.
New Bonus: Kvas B4

KVAS Bonus 4 has been added to the bonus map pool.
New Community Maps: Space Zero & Amenhotep

Created by community member GOOGOOO GAGA MENTALITY using the SurfsUp SDK Project , SpaceZero is a 2-star surf map with rotating planets, and Amenhotep is a new bhop map

Downloadable Replays
Race your friends ghosts or watch the world record replay

The replay for every run on the leaderboard is now uploaded to Steam! You can use the ESC menu to download and race against or watch other player's replays. Replays now also use a cat-mull rom algorithm for smooth and accurate playback.
Pre-hop Limit
Speed limit added on start zone exit: Player movement speed is now capped at 466/units when leaving the start zone, ensuring competitive fairness.
Checkpoint (Saveloc) Rework
- F1 no longer clears checkpoints
- F2 now clears all checkpoints
- Hitting the floor or killbox will reset you to spawn
- Reset (R) will reset to latest checkpoint
- Holding Reset will freeze the player in the air with a locked camera
Ranked Groups
Your score now sorts you into groups based on map rank. Groups are shown on the player menu (TAB) once you have a clear on a map. Your rank is also posted to the map clears chat window.
- Legend - Top 1%
- Grand master - Top 10%
- Master - Top 25%
- Intermediate - Top 50%
- Novice - Bottom 50%
Website Leaderboard & Twitch Integration

You can now view and share your leaderboards at https://surfsup.website, additionally if you live stream on Twitch under the category SurfsUp you'll be featured on the home page and posted to the Discord server !
New Start/Finish Platforms

Designed and modeled by Nerdiful, the start and finish platforms have new geometry, accurate zoning, and fancy RGB lighting.
Maps:
All Maps: Performance & optimization pass, re-organized and re-starred the maps to be more accurate based on number of completions from Next Fest demo.
Christmas: Moved to 2-star map
Mesa renamed to Mesa Revo
Rainbow: Ramp transparency / texture changed
Prism: Ramp transparency changed
Starry: New "moon" texture for ramps
Summit: Start zone rezoned
Utopia: Start zone rezoned
SoulSearch: Added kill floor on first jump, new labels and arrow directions to show routes.
New Music:
Whimsical Beats released an album for the game titled 'Music for Surfing', check it out on bandcamp: https://whimsicalbeats.bandcamp.com/album/music-for-surfing
Beginner: Coastal Calm by Whimsical Beats
Boreas: Subset Drive by Whimsical Beats
Castle Jump: Quiet Breath by Whimsical Beats
Dark BHop: Cloud Gazing by Whimsical Beats
Dunes: Whirlwind Whisper by Whimsical Beats
Fiellu: Building Blocks by Whimsical Beats
KvasB4: Inertia by Whimsical Beats
Mesa: Crystals and Caverns by Whimsical Beats
Nerdiful: Midnight Moves by Whimsical Beats
River Gap: Water Wonderland by Whimsical Beats
Starry: Star Eyed by UMOS8
Stormy: Circuit Breaker by Whimsical Beats
Sunset: Lost in Motion by Whimsical Beats
Tutorial: Tutorial by DeathbyAlbatross
Utopia: Meditation by Whimsical Beats
Player Muting
You can now mute players on the player menu (TAB). Muting a player stops all voice and text chat from being received from that players. Muted players persist between lobbies but currently reset when the game closes.
UI
UI Elements are now networked and can be viewed by spectators.
- When spectating another player, you will now see their speed, syncbar, timer, inputs, and if the timer is disabled
- The amount of players spectating is shown on screen next to an eye icon
- Change map host select drop down is now sorted by map category
- New input key icons which now include duck and jump
- Clear times are now split into their own chat box
- A player's first clear of a map will now be shown
- Clears always show in clear box, and display +/- times from personal best
- Host crown has been replaced with a 'host border'
- Added Spectate / Mute / Steam Profile action buttons to player menu (TAB)
- Host name is now yellow
- Your name is now in green
[list] - You will not have action buttons for your own profile
Quality of Life & Bug Fixes
- All of the games textures have been compressed saving over 600MB of disk space.
- Gravity and Friction values changes to be more similar to CSS
- Physics Tickrate has been adjusted from 60->66 tick
- Staged map support
- Map World Record holder now has a crown above their head
- Steam will now display your current game mode, level, and player count as rich presence
- Characters are now pre-loaded at boot to prevent some 'hitching' when spawning
- Character models have been optimized
- You can now click "Join Game" from a Steam message and join the lobby while in-game
- Netcode fixes and optimizations
- Custom map test Lobbies now set timer to 60 minutes
- ! optimized and cleaned up
- New console commands:
[list] - clearcheckpoints - clears checkpoints
Unaccessible Colab

Our first indie game colab with our friends at REMBOT GAMES.
Owners of Unaccessible can play as James in SurfsUp if Unaccessible is installed!
https://store.steampowered.com/app/3419670/Unaccessible/
Map Updates
LJ made end platform longer
Soulsearch
- Disable shadows
- Added kill box
- Spawn re-zoned
- New Song
Long jump bug fixes
New Welcome message
Chat now has a 240 character limitRTV now clears who voted after map change
No longer enter first person if a player joins when in 3rd person
Windows first boot incorrect window mode issue potentially fixed
New Console Commands:
- sensitivity - mouse sensitivity
- turnspeed - turn bind speed
[list] - aliased as yawspeed
Watch Mark show-off the NextFest demo build for SurfsUp!
Surfsup.website
I have registered a domain for the game, https://surfsup.website
In the future, this will be a website featuring leaderboards, map rotation, user profiles, and more. I am also interested in working on this with the community so if you would like to help, please make sure to join the SurfsUp Discord Server.
Free-to-Play Model
With NextFest and the v1.0 demo coming up, we have implemented the free-to-play model into SurfsUp. There are 13 available maps per day rotating every 24 hours. The 7 ported maps will always be included in the available maps. You can now only select cosmetics that are available in your Steam inventory. Cosmetics will reset back to default when loading the patch. A timer now shows on the main menu letting you know when maps will rotate. All maps become available when you purchase the supporter bundle .
I am looking for feedback on this model, so please let me know what you think on the Discord server!
Zoning Reworked

After discussion with some members of the community, we have rezoned every map in the game.
Zones are now a "box collider" where the timer begins as soon as you exit the area. Previously the starting line was a horizontal world boundary, this allowed players to pre-hop further into the map and start a few seconds ahead of others. This change makes the competition fair for all now having the same starting location for every player.
Zones are outlined with a mesh wire-frame, Green for start zones, red for end zones, and blue or grey to represent invisible walls in the maps.
'Show Zones' is now enabled by default, but can be disabled in Game Settings or using the console command [code]showzones false[/code]
Due to the zoning changes, all leaderboards have been reset
New Map: AirControl

AirControl is a new ported 1-star map, it has been re-lit and re-textured for SurfsUp and is a long and forgiving map with multiple ramps aimed towards beginners.
New Map: Forest

Forest is a new map by community member Raq, it is a 3-star map with multiple routes to a single end-zone.
New Community Map: SoulSearch

SoulSearch is a new 4-star map created by community member 500 Ping using the SurfsUp SDK Project! It features multiple routes with various paths, each path being quicker than the last.
Crouching recoded
Crouching before:

There have been some issues with the character's crouching. Previously, it had a 0.4s delay for "is_ducking" to the "ducked" state. The entire code for crouching has been rewritten to now be instant and to keep the same collision shape on the character instead of replacing it with a new one.
Crouching after:

New Music
Raqqit: Down the Rabbit Hole by spineywoodchuck
Ruins: Explore the Ruins by spineywoodchuck
Dev Console
New console command disconnect to leave a lobby
New console alias load for map to load custom maps
New console alias qqq for quit and exit
Opening console enables is_typing so character no longer moves when typing in console
Console will capture mouse again when closing in-game
Bug Fixes
- Surfer: Model, Animation, Player Color, and Trail color now synchronize on the network
- Option menu defaults to Game Options again
- Fixed changing a player's color changing all player's color
- If jump is bound to mouse scroll you will no longer jump when scrolling elements in the UI
- Moving the mouse while holding down a mouse button while spectating will no longer changes who you are spectating every frame
- Leaving spectator mode no longer freezes the player in the is_typing state
- Various netcode optimizations
- Starting lines removed from all levels
- Map Voting RPC moved out of the UI Scripts and into the NetCode
- Various textures have been replaced in the game that referenced licensed / adult themes
- Stretch Mode now properly sets the saved setting on load
- Fullscreen now properly sets the saved setting on load
- Game should now properly launch in full screen on first launch
As a reminder, the beta will be ending on May 18th 2025. We will be revoking all beta keys and transitioning to the v1.0 demo which will be releasing May 30th on Steam.
Thank you all for playing and providing feedback.
-Mark
SurfsUpSDK

We have created a new SurfsUpSDK project that allows community members to create and test their own custom maps in-game. Providing prebuilt ramp prefabs to drag and drop, as well as VMF Map Importing.

Currently, the maps need to be manually zoned and added to the game, this is the first pass at this kind of tooling
SDK Documentation: https://bearlikelion.github.io/SurfsUpSDK/
Community Map: Sandspin

Our first Community Map using the SDK project is created by CloudNinja in just under 2 hours.
New Map: Runes

Created by FadedFrank
New Map: LJ

A fresh take on the long jump game mode, a flat surface leap with pre-hop enabled.
Developer Console
You can now press tilde (~) to open a developer console in game, it has some basic functionality and will be expanded with more commands as development continues.
Ported maps now have star ratings.
- Summit - 2 Star
- Boreas - 2 Star
- Mesa - 3 Star
- Utopia - 3 Star
- Fiellu - 5 Star
- FielluB4 - 5 star
star ratings are subject to change
Space Loop has a new song by Spiney
Technical Changes
- Version bump to 0.9, next major update will be 1.0
- SurfsUp now supports Mac OS X (Universal App)
- Windows build now uses DirectX 12 instead of Vulkan
[list] - This change fixes the "scan lines" issue reported on some AMD video cards
New Features

Personal Best Replays
[list]- Personal bests now create replay files
- Replays are loaded on run restart (R) if the file exists
- Your ghost will automatically begin replaying once you cross the starting line
- Player Menu (tab) allows you to watch & stop the replay in first person
- You can disable the replay from playing back by unchecking "Replay Enabled" on the player menu
- Due to this requiring a Personal Best record to work, all leaderboards have been reset
Player cosmetic choices now save
Multiple saved locations
[list]
Emotes!
The settings menu has been redesigned
[list]

Quality of Life (QoL)
- Changed the theme's default font
- Normalized volume of music across all levels
- Removed the .0 after units on speed label
- Your score on the leaderboard is now highlighted in green
- VOIP Volume Increased +5db
- End Game / Pause Menu / Player Menu panel updated
- You can now a join lobby by ID
[list] - You can copy a lobby's ID from pause menu
Map Changes
- Starry:
[list] - Resized Skip Block

Bug Fixes
- Third Person Camera stutter fixed
- Player Trails only add points when timer is running
- Fixed UI Scaling at larger resolutions (4k / Ultrawide)
- VOIP no longer pauses on Game Over menu
- VOIP should no longer crackle if multiple people talk at once
- Mouse input is no longer captured while spectating
- Player menu no longer shows duplicate entries
- Player menu now removes clients on disconnect
- Spectator cam near increased from 0.05->0.5 (same as pre-run cam)
- Mosue rotation input is no longer captured when spectating
- !rtv will now properly show the game over screen when ending the game
- World Boundary shape size increased from 2000->10000 (should fix kill boxes on levels)
- Turn binds no longer accept input when spectating
- Fixed character model color not updating in-game from Settings menu
- Numpad Enter now sends chat messages instead of breaking to a new line
- Opening Settings when Settings is already open no longer opens a extra Settings window
- Player color now applies to models on load
- Player menu's player count now updates when a new player connect
Thank you to everyone who has been providing feedback during the beta
-Mark
Minimum Setup
- OS: Ubuntu LTS or Steam OS
- Processor: Intel Core 2 Duo E8200. AMD Athlon XE BE-2300. Raspberry Pi 4
- Graphics: Intel HD Graphics 2500 (Ivy Bridge). AMD Radeon R5 Graphics (Kaveri)
- Storage: 1 GB available space
Recommended Setup
- OS: Ubuntu LTS or Steam OS
- Processor: Intel Core i5-6600K. AMD Ryzen 5 1600. Raspberry Pi 5 with overclocking
- Graphics: NVIDIA GeForce GTX 1050 (Pascal). AMD Radeon RX 460 (GCN 4.0)
[ 6419 ]
[ 2200 ]
[ 4325 ]