Skip to content

Cocos2D-Mono - 2.5.11

Latest

Choose a tag to compare

@brandmooffin brandmooffin released this 13 Jul 01:00
78b49a6

What's Changed

Cocos2D-Mono now ships as a single package. The build was collapsed from ~30 per-platform projects into three multi-targeted packages, so the twelve per-platform packages are replaced by three that each cover every platform. 2.5.10 was the final release under the old IDs.

  • 📦 New package IDs (migration required): Cocos2D-Mono.{DesktopGL,Windows,Linux,macOS,Android,iOS}Cocos2D-Mono, and Cocos2D-Mono.Core.*Cocos2D-Mono.Core. Each multi-targets DesktopGL (Windows/Linux/macOS), WindowsDX, Android, and iOS — the correct target framework is selected automatically. The Box2D physics port is now its own package, Cocos2D-Mono.Box2D (also included transitively).
  • BREAKING: assembly renamed Cocos2D.dllCocos2DMono.dll (matching the product name). The namespace is unchanged (Cocos2D), so source and NuGet-resolved references need no change — only by-name <Reference> entries or Assembly.Load("Cocos2D") are affected.
  • BREAKING: OpenTK is no longer a dependency. It was referenced but unused (its only consumer was a long-dead GL-extensions probe), so the dependency graph is leaner for everyone.
  • Added ICCUserDefaultStorage + the settable CCUserDefault.Storage — a pluggable backend for where CCUserDefault persists its settings file, enabling custom stores on platforms without a writable file system.
  • CCAccelerometer's platform guard now states its intent (ANDROID || IOS) instead of a "not desktop" exclusion; removed dead WINDOWS_PHONE8 code.
  • CCRawList<T> clears returned pooled buffers unconditionally on .NET Framework targets (which lack RuntimeHelpers.IsReferenceOrContainsReferences).
  • Modernized C#: file-scoped namespaces repo-wide, _camelCase private fields (internal-only), plus a consolidated CI matrix and a single Cocos2DMono.sln.

Runtime behavior otherwise matches 2.5.10. The .NET 10 / MonoGame 3.8.5 upgrade continues on the 2.6.0 line.

🔀 Migrating from 2.5.x

Replace your per-platform reference with the consolidated one — in most projects it's a one-line change:

- <PackageReference Include="Cocos2D-Mono.DesktopGL" Version="2.5.10" />
+ <PackageReference Include="Cocos2D-Mono" Version="2.5.11" />

📖 Full guide: Migrating to 2.5.11

Full Changelog: 2.5.10...2.5.11

NuGet Packages:

Cocos2D-Mono — the engine (Windows, Linux, macOS, Android, iOS)

Cocos2D-Mono.Core — same engine, without the MGCB content-pipeline dependency

Cocos2D-Mono.Box2D — Box2D physics port

Visual Studio Project Template Extension

Cocos2DMono Samples