Skip to content

WPR 0.1.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 22:11

Prebuilt WPR 0.1.0.

Download Platform
WPR-Setup-0.1.0.exe Windows x64 — self-contained, no .NET install required
WPR-0.1.0.apk Android — API 21+, arm64-v8a / x86_64

What's changed

First tagged release — this summarises the history to date.

Highlights

This is a ground-up overhaul — the largest change since the project started, and the reason the
version moves to 0.1.0 rather than another 0.0.x increment.

Architecture

The codebase has been reorganised into clear layers with enforced boundaries, replacing a tree
where the rendering backend leaked into every project.

  • Backends are now real, swappable adapters. WPR.Backend.FNA drives the XNA game path and
    the new WPR.Backend.Direct3D11 drives the Silverlight surface path. They are the only two
    projects allowed to reference a graphics backend, and an automated fitness test fails the build
    if anything else acquires one.
  • The XNA type system is WPR-owned. Roughly 240 XNA types — the whole value/math, graphics,
    audio, media, input and content surface — moved out of the vendored FNA fork into
    WPR.Framework.Xna, talking to the backend through explicit seams. FNA is now only a platform
    layer, not the type system games bind to.
  • Databases live in one place. A new WPR.Database project owns both schemas, the seed data
    and the per-game achievement catalogues, which previously existed in three copies across the
    repo.
  • Projects renamed to match what they are. The platform heads are now WPR.Platform.Windows
    and WPR.Platform.Android in project and assembly name, and several compatibility shim
    projects were dissolved into the layers they belonged to.

Achievements

  • 277 per-game achievement catalogues ship with the app, each with its own artwork.
  • Achievements are read from that curated catalogue rather than being extracted by scanning game
    code at install time — no network calls, no guesswork, and unlock progress is never reset when a
    catalogue is updated.
  • The achievements backend now sits behind a proper interface, so the GamerServices API games call
    no longer reaches into the database directly.

Game fixes

Many titles that previously failed to launch, crashed, or rendered incorrectly now work —
including Battleship (EA), Babel Rising 3D, Bejeweled LIVE, Crimson Dragon: Side Story,
Fruit Ninja, Hydro Thunder Go, Mirror's Edge, Minesweeper and Tiki Towers. Fixes span engine
initialisation, orientation and viewport handling, audio, notifications, and crashes on relaunch.

See the compatibility list for per-game status.

Maintenance

  • Entity Framework Core unified on a single supported version across both platforms; the desktop
    build had been pinned to a .NET 5-era dependency graph.
  • All known package vulnerabilities resolved — the repo now audits clean, including one
    critical and several high-severity advisories.
  • Version numbering is single-sourced, and release notes are generated from commit history.

All changes

Features

  • refactored classes to seperate for shims
  • hardcoded achievement catalogue + Fruit Ninja 2013 launch fixes Achievements - Replace IL-scanning XnaAchievementCodeExtractor with a
  • added more games to catalogue, added fixes around music and device id null pointers
  • more game library and fix for crimson story black screen
  • big refactor started, names of games from game ids added to catalogue (292 games), adding more achievements
  • 4 more game achievements added
  • Major refactor added initial work for release apk build and installers
  • architecture overhaul, centralised database, and 0.1.0 release tooling

Fixes

  • minesweeper help and options loads, bottom bar always on top now for silverlight
  • Hydro thunder Go crash on loading main menu (unsure if this was the issue) but now running. updated readme to reflect
  • assassins creed plus add links to wiki
  • single click in desktop caused game to run instead of navigate to game page, few errors around net8 target framework and collision for
  • Babel Rising 3D — Shiva/llvm2cs engine init + achievements
  • Battleship (EA) — playable + achievements

Other changes

  • Fruit Ninja working
  • Stable PC build
  • More compability and Android build
  • Directory refactoring and more compatibility for release
  • Add removed changes to bak files
  • Add README
  • Update FNA3D libraries
  • 0.0.5-alpha dev edition
  • System.Security.Cryptography emulation RnD
  • ImagingBitmapSource emulation RnD
  • Adding functions-stubs to Phone Shell StandartTileData
  • Edit Readme (how to add special AvaloniaUI Nuget-package source)
  • Starting to realize ImagingBitmap and BitmapSource deals
  • Src reform
  • Android part deleted to simplify RnD
  • 0.0.7-alpha dev edition
  • 0.0.8-alpha dev edition
  • Mirror s Edge R.E. & fix...
  • 0.0.9-alpha dev edition
  • wpr-dev 0.0.12 checkpoint

…and 36 more.

Built from commit 2ce1cd2.