What's Changed
- feat: Make final score no longer be rounded by 10 by @yell0wsuit in #287
- refactor: Replace grab flags with composed hook behaviors by @yell0wsuit in #288
- chore: Download FFmpeg from GitHub Releases instead of from Nuget by @yell0wsuit in #289
- refactor: Refactor level results into a single immutable source of truth by @yell0wsuit in #290
- refactor: Centralize game controller input state by @yell0wsuit in #291
- refactor: Refactor candy removal into an atomic retirement transaction by @yell0wsuit in #293
- fix: Prevent gameplay lifecycle leaks during level exit by @yell0wsuit in #295
- refactor: Refactor LightBulb to use authoritative candy lifecycle state by @yell0wsuit in #296
- refactor: Refactor candy attachment state into a single source of truth by @yell0wsuit in #297
- refactor: Make mouse carry state a single source of truth by @yell0wsuit in #298
- fix: Prevent rocket drift after mouse release by @yell0wsuit in #299
- refactor: Centralize per-pointer gesture state by @yell0wsuit in #300
- refactor: Refactor gravity into a single source of truth, allow 2+ gravity buttons by @yell0wsuit in #301
- Refactor: Centralize Om Nom behavior state by @yell0wsuit in #302
- refactor: Consolidate delayed operations into atomic tickets by @yell0wsuit in #303
- refactor: Consolidate ghost apparition state by @yell0wsuit in #304
- refactor: Make level outcome an atomic state machine, allow skipping win/loss cutscenes by @yell0wsuit in #305
- refactor: Consolidate mechanical hand state, scope rotation to a single hold by @yell0wsuit in #307
- fix: Give a hand a grace window before a bouncer takes its candy by @yell0wsuit in #308
- refactor: Split the game into a MonoGame-free Core and a Desktop host by @yell0wsuit in #309
- feat: add the SkiaSharp WebAssembly browser edition by @yell0wsuit in #310
- chore: install FFmpeg for CI and report conversion progress by @yell0wsuit in #311
- refactor: Consolidate layout code by @yell0wsuit in #317
- Bump Microsoft.NET.Test.Sdk from 18.8.1 to 18.9.0 by @dependabot[bot] in #313
- feat: Make the game layout responsive on various screen sizes by @yell0wsuit in #318
- fix: Remove the startup window size at boot by @yell0wsuit in #319
- fix: Repair the service worker install and its stale content cache by @yell0wsuit in #320
- chore: improve web pipeline speed by @yell0wsuit in #321
- fix: Make mobile physics collision and attachment parity with mobile version by @yell0wsuit in #322
- fix: Address some gameplay background coverages by @yell0wsuit in #323
- Bump MonoGame.Framework.Native from 3.8.5 to 3.8.5.1 by @dependabot[bot] in #314
- feat: Freeze button and Time Travel rocket physics by @yell0wsuit in #326
- feat: Add screenshots for richer PWA, request storage persist and
launch_handlerby @yell0wsuit in #327 - feat: Add listener for playtesting levels from the browser level editor by @yell0wsuit in #328
- feat: Address playtest error and bye messages to their session by @yell0wsuit in #329
- chore: Bump xunit to v4 and run tests on Microsoft.Testing.Platform by @yell0wsuit in #330
- fix: Require mobile physics for Time Travel's rocket tuning by @yell0wsuit in #332
- fix: Preload each level's sounds so objects don't hitch on first use by @yell0wsuit in #333
- Bump FontStashSharp.MonoGame from 1.5.6 to 1.5.8 by @dependabot[bot] in #331
- fix: Repeat P2 and earth bg across every tiled P1 background section by @yell0wsuit in #334
- fix: Stop the service worker answering every in-scope URL with the shell by @yell0wsuit in #336
- fix: Follow the candy across large levels, and hold gameplay through the intro pan by @yell0wsuit in #335
- fix: Match Time Travel's chain link shading by @yell0wsuit in #338
- feat: Run the browser game loop and renderer on a worker thread by @yell0wsuit in #343
- feat: Move tutorial prompts in map XML attributes, instead of a scene-wide switch by @yell0wsuit in #339
- feat: Add bomb object from Cut the Rope: Time Travel by @yell0wsuit in #337
- feat: Implement Paddington-themed animation by @yell0wsuit in #341
- feat: Add procedural hat stripes and perceptual color math by @yell0wsuit in #342
- feat: Replace MonoGame with SkiaSharp rendering and an SDL3 host, add logging by @yell0wsuit in #347
- feat: Add single thread fallback for browser version by @yell0wsuit in #352
- Bump xunit.v3 from 4.0.0 to 4.0.1 by @dependabot[bot] in #351
- ci: Skip the single-threaded browser build on PR quality workflows by @yell0wsuit in #353
- Add Discord RPC PSD pack template, update PDN template layer names by @CtRHome in #354
- feat: Om Nom easter egg on click from H5DX by @yell0wsuit in #355
- fix: Complete pause switcher freeze across objects, plus some fixes by @yell0wsuit in #356
- fix: Read stored playtest level and repeat the handshake by @yell0wsuit in #357
- chore: Bump assets to v6 with flac music and new sfx by @yell0wsuit in #358
- fix: Remove lightbulb interaction with conveyor belt by @yell0wsuit in #360
- fix: Stop the gun firing at a mouse-carried candy by @yell0wsuit in #359
- test: fix the race condition bug in the pump progress assertion by @yell0wsuit in #361
- fix: Save window size on resize and persist maximized state by @yell0wsuit in #363
- chore: Add CI prereleases, use three-part versions, and rebrand to Cut the Rope DX by @yell0wsuit in #364
- refactor: Extract native message box from crash dialog by @yell0wsuit in #365
- fix: Stop bee movement while frozen by @yell0wsuit in #366
- fix: Resolve issues with content builder by @yell0wsuit in #367
New Contributors
Full Changelog: v2.29.0.3...v1.0.0-prerelease+5
What's Changed
- feat: Make final score no longer be rounded by 10 by @yell0wsuit in #287
- refactor: Replace grab flags with composed hook behaviors by @yell0wsuit in #288
- chore: Download FFmpeg from GitHub Releases instead of from Nuget by @yell0wsuit in #289
- refactor: Refactor level results into a single immutable source of truth by @yell0wsuit in #290
- refactor: Centralize game controller input state by @yell0wsuit in #291
- refactor: Refactor candy removal into an atomic retirement transaction by @yell0wsuit in #293
- fix: Prevent gameplay lifecycle leaks during level exit by @yell0wsuit in #295
- refactor: Refactor LightBulb to use authoritative candy lifecycle state by @yell0wsuit in #296
- refactor: Refactor candy attachment state into a single source of truth by @yell0wsuit in #297
- refactor: Make mouse carry state a single source of truth by @yell0wsuit in #298
- fix: Prevent rocket drift after mouse release by @yell0wsuit in #299
- refactor: Centralize per-pointer gesture state by @yell0wsuit in #300
- refactor: Refactor gravity into a single source of truth, allow 2+ gravity buttons by @yell0wsuit in #301
- Refactor: Centralize Om Nom behavior state by @yell0wsuit in #302
- refactor: Consolidate delayed operations into atomic tickets by @yell0wsuit in #303
- refactor: Consolidate ghost apparition state by @yell0wsuit in #304
- refactor: Make level outcome an atomic state machine, allow skipping win/loss cutscenes by @yell0wsuit in #305
- refactor: Consolidate mechanical hand state, scope rotation to a single hold by @yell0wsuit in #307
- fix: Give a hand a grace window before a bouncer takes its candy by @yell0wsuit in #308
- refactor: Split the game into a MonoGame-free Core and a Desktop host by @yell0wsuit in #309
- feat: add the SkiaSharp WebAssembly browser edition by @yell0wsuit in #310
- chore: install FFmpeg for CI and report conversion progress by @yell0wsuit in #311
- refactor: Consolidate layout code by @yell0wsuit in #317
- Bump Microsoft.NET.Test.Sdk from 18.8.1 to 18.9.0 by @dependabot[bot] in #313
- feat: Make the game layout responsive on various screen sizes by @yell0wsuit in #318
- fix: Remove the startup window size at boot by @yell0wsuit in #319
- fix: Repair the service worker install and its stale content cache by @yell0wsuit in #320
- chore: improve web pipeline speed by @yell0wsuit in #321
- fix: Make mobile physics collision and attachment parity with mobile version by @yell0wsuit in #322
- fix: Address some gameplay background coverages by @yell0wsuit in #323
- Bump MonoGame.Framework.Native from 3.8.5 to 3.8.5.1 by @dependabot[bot] in #314
- feat: Freeze button and Time Travel rocket physics by @yell0wsuit in #326
- feat: Add screenshots for richer PWA, request storage persist and
launch_handlerby @yell0wsuit in #327 - feat: Add listener for playtesting levels from the browser level editor by @yell0wsuit in #328
- feat: Address playtest error and bye messages to their session by @yell0wsuit in #329
- chore: Bump xunit to v4 and run tests on Microsoft.Testing.Platform by @yell0wsuit in #330
- fix: Require mobile physics for Time Travel's rocket tuning by @yell0wsuit in #332
- fix: Preload each level's sounds so objects don't hitch on first use by @yell0wsuit in #333
- Bump FontStashSharp.MonoGame from 1.5.6 to 1.5.8 by @dependabot[bot] in #331
- fix: Repeat P2 and earth bg across every tiled P1 background section by @yell0wsuit in #334
- fix: Stop the service worker answering every in-scope URL with the shell by @yell0wsuit in #336
- fix: Follow the candy across large levels, and hold gameplay through the intro pan by @yell0wsuit in #335
- fix: Match Time Travel's chain link shading by @yell0wsuit in #338
- feat: Run the browser game loop and renderer on a worker thread by @yell0wsuit in #343
- feat: Move tutorial prompts in map XML attributes, instead of a scene-wide switch by @yell0wsuit in #339
- feat: Add bomb object from Cut the Rope: Time Travel by @yell0wsuit in #337
- feat: Implement Paddington-themed animation by @yell0wsuit in #341
- feat: Add procedural hat stripes and perceptual color math by @yell0wsuit in #342
- feat: Replace MonoGame with SkiaSharp rendering and an SDL3 host, add logging by @yell0wsuit in #347
- feat: Add single thread fallback for browser version by @yell0wsuit in #352
- Bump xunit.v3 from 4.0.0 to 4.0.1 by @dependabot[bot] in #351
- ci: Skip the single-threaded browser build on PR quality workflows by @yell0wsuit in #353
- Add Discord RPC PSD pack template, update PDN template layer names by @CtRHome in #354
- feat: Om Nom easter egg on click from H5DX by @yell0wsuit in #355
- fix: Complete pause switcher freeze across objects, plus some fixes by @yell0wsuit in #356
- fix: Read stored playtest level and repeat the handshake by @yell0wsuit in #357
- chore: Bump assets to v6 with flac music and new sfx by @yell0wsuit in #358
- fix: Remove lightbulb interaction with conveyor belt by @yell0wsuit in #360
- fix: Stop the gun firing at a mouse-carried candy by @yell0wsuit in #359
- test: fix the race condition bug in the pump progress assertion by @yell0wsuit in #361
- fix: Save window size on resize and persist maximized state by @yell0wsuit in #363
- chore: Add CI prereleases, use three-part versions, and rebrand to Cut the Rope DX by @yell0wsuit in #364
- refactor: Extract native message box from crash dialog by @yell0wsuit in #365
- fix: Stop bee movement while frozen by @yell0wsuit in #366
- fix: Resolve issues with content builder by @yell0wsuit in #367
New Contributors
Full Changelog: v2.29.0.3...v1.0.0-prerelease+5