Changelog

Week of December 1

  • DB Migration for better event support
  • TTs (both ITT and TTT) now support multiple retries
  • Bluetooth - automatically use "Virtual Gear" control mode when available
  • Race results - only auto-refresh while the menu is open
  • Rider list - added toggle between "Individual" and "Group" views
  • Rider list - added automatic groups based on rider proximity
  • Rider list - added auto-scroll so the current rider name stays visible
  • Rider list - when spectating, click a group name to spectate the lead rider
  • Rider list - cleaned up styling
  • Preparing for the holiday challenge...

Week of November 24

  • Minimap - stripped some feature layers to improve performance
  • Reduced camera mouse drag sensitivity proportional to zoom distance
  • Fixed grass spawning inside tunnel entrances
  • Fixed bridge pylons sometimes still spawning inside roads
  • Editor - fixed map view crash when selecting points
  • Editor - fixed issue of not being able to select individual points with CTRL
  • Editor - fixed lag when adding new points to a route

Week of November 17

  • Added pager next/back button support
  • Fixed the pager (again)
  • Fixed responsive issue w/ profile page activities table
  • Fixed black pixels dancing in the fog
  • Fixed roadside cliff edges poking into the road
  • Added new "Foliage style" setting in the route editor
  • Reduced tree density at distance to improve performance
  • Improved shadow casting, fixed missing shadows
  • Fixed disappearing trees in low detail settings
  • Set a reasonable limit (100km) for free user route uploads

Week of November 10

  • Improved visuals!
  • Improved visual detail at range (trees, water, etc)
  • Improved mountain, rock, and cliff detail
  • Improved road textures
  • Improved building appearance
  • Added ground color variation that adjusts based on elevation
  • Added new "Lighting style" Route setting (Morning, Evening, etc)
  • Added groundwork for supporting urban surfaces
  • Improved colors, increased detail and vibrance
  • Fixed issue causing crinkled square artifacts on the ground
  • Fixed sizing of roadside shrubbery
  • Fixed crop spawning issue on desert biome
  • Fixed bug that occasionally crashed spectate mode on pageload
  • Fixed server crashing bug (whoops) ๐Ÿ™ƒ
  • W/S keys can now be used to contextually (a) change virtual gears, (b) adjust workout intensity, or (c) adjust ERG free-ride power
  • Events styling tweaks
  • Minor optimizations
  • Fixed rare crash on pageload
  • Improved shrubbery detail and performance
  • Fixed issue with trees sometimes not spawning around the road
  • Fixed hemisphere lighting issue casting improper shadows
  • Tweaked lighting styles to reduce harshness and improve colours
  • Enabled "Lighting style" setting in timed races
  • Fixed road geometry jutting upwards after the first lap
  • Fixed tunnel de-spawning issue

Week of November 3

  • Added new "Draft feel" setting (reduces trainer resistance while drafting)
  • Display the "Results" tab for spectators
  • Physics code cleanup
  • Removed the "Draft stickiness" setting for now
  • Working on adding environmental details...

Week of October 27

  • More accurate "has_ended" for event API endpoint
  • Improved activity backups + admin backup restore
  • Added "Signed up" filter on events page
  • Fixed bots getting removed for casual events
  • Adding environmental details...

Week of October 20

  • BikeTERROR - final spellcasting & axe sharpening
  • BikeTERROR launch! ๐ŸŽƒ
  • Added Fall theme for temperate routes
  • Added some experimental road surface types
  • Increased steering responsiveness
  • Fixed conifer colors in the autumn biome
  • Fixed floating gravestones (and other lifecycle bugs)
  • Added a first-person look back during sprints
  • Fixed dark pumpkins in spectator mode
  • Added more BikeTERROR details
  • Improved grass/crop placement
  • Fixed infinite loop bug w/ event rider starting positions
  • Auto-remove completed workout on the following ride
  • Auto-start timed events (excluding TTTs)
  • Added "Start pedaling to begin" for casual events
  • Added modal (and sound) when approaching the next workout interval
  • Fixed workout graph tooltip (it now stays within bounds)
  • Fixed camera getting stuck when dragging over UI elements
  • Fixed sudden spike in camera motion when clicking off chat box
  • Fixed cursor hiding after a few seconds of inactivity
  • Fixed first-person camera initialising in the wrong direction
  • Fixed rider models being visible when spectating in first-person
  • Fixed look-behind button showing the wrong camera view on first press
  • Added extra logging for error handling
  • Added more texture to autumn leaves
  • Fixed disappearing roads
  • Renamed "Rankings" to "Results" for clarity
  • Added ITT (individual time trial) race type
  • Fixed camera shaking bug
  • Reduced aggressiveness of the "Low FPS" warning
  • Added more descriptive error messages to route editor
  • Added and updated BikeTERROR details

Week of October 13

  • Updated logic for ERG-based virtual shifting
  • Additional refinements for ERG-based virtual shifting
  • Throttle trainer commands for power and gear changes
  • Minimap performance tweaks
  • Fixed resistance for older Wahoo smart trainers
  • Added "Calendar sync" setting to send the events you're attending to your favorite calendar app
  • Fixed houdini jersey textures when saving settings
  • Show the "Spectate" button whenever an event has active riders
  • Improved smoothness of in-ride drag and drop
  • Working on BikeTERROR...

Week of October 6

  • Added in-ride freecam (drag/pinch in any camera mode)
  • Added freecam touch support
  • Zooming all the way in transitions into first-person mode
  • Added camera terrain detection and avoidance
  • Tweaked rider models to better align jersey textures
  • Tweaked animations for smoother mounts / dismounts
  • Fixed power2 not saving correctly
  • Fixed balanced pacer bots riding too far ahead
  • Fixed minimap wobbling when in "always up" mode
  • Fixed roamer bots spawning in low-detail mode momentarily
  • Added slight randomness to the hoods-to-drops animation
  • Fixed a styling issue in the spectate mode wait screen
  • Added raglan sleeve outline to the jersey template file
  • Added support for Tymewear VitalPro (breathing + HR sensor strap)
  • Fixed activity chart mis-alignment (props Steven E)

Week of September 29

  • Added Zwift Play controller support (props matjaz & trco)
  • Added "HR to Power" feature to ride with only a HRM (non-racing)
  • Settings - added 3D avatar live preview
  • Added support for custom jerseys
  • Added jersey template (base for jersey designs)
  • Fixed text color for TTT event signups
  • Fixed jersey texture caching issue

Week of September 22

  • Added a forward-leaning animation that increases with speed/grade
  • Added a dropped posture at high speeds
  • Animation performance optimizations
  • Tweaked lean animation and rider meshes
  • Sanitized rider colours to avoid super-saturation or full-black
  • Fixed antsy rider animations when waiting in the start pen
  • Fixed rare animation head angle glitches
  • Fixed crazy-cadence bots
  • Fixed crash involving very long bridges
  • Fixed crash when trying to access non-indexed tiles
  • Fixed scale labels in the route editor elevation graph
  • Refactored bluetooth logic with a focus on simplicity

Week of September 15

  • Added in-ride error icon
  • Added initial support for the Zwift Click 2
  • Zwift Click 1 requires firmware 1.1.0+ (update via the Zwift Companion app)
  • Added firmware version check
  • Improved error handling upon failed bluetooth connect
  • Workouts - stay in ERG mode after the workout ends
  • Display the grade in 0.1% increments
  • Throttle grade commands (to prevent overloading some trainers)
  • Added support for power meter L/R balance (props Jim & Wouter)
  • Force a whole number for L/R balance
  • Updated race results API to support TTT
  • Added new rider models and animations
  • Added a variety of rider LODs
  • Added leaning, steering, leg openers on tight turns
  • Added support for custom jerseys (UI coming soon)
  • Optimized rider models for a ~40% size reduction
  • Improved mount/dismount animations

Week of September 8

  • Considerably faster processing for uploaded routes
  • Fixed TICKR X improperly overriding cadence
  • Improved elevation data
  • Fixed stats drag-and-drop ordering (in-ride, Windows)
  • Dynamic activity detail stats (Full activity vs Race vs Cooldown)

Week of September 1

  • Fixed grass poking through bridge edges
  • Fixed issue causing trees to grow through buildings
  • Fixed world coordinate transformation issue (noticeable on longer routes)
  • Fixed sudden speed drops for some users on lower-end machines

See the archive ยป