Status
SteamPeaks
ChartsSalesUpcomingPatchesNewsCalculator
New on SteamEvery app, DLC and depot the minute Steam creates itAppsEvery app on Steam, newest change firstPackagesSubs and bundles, and what each containsDepotsDepots, manifests and install sizesTagsSteam's user tags and the games under themDevelopers & publishersCompanies and their cataloguesTechnologiesEngines, SDKs and anti-cheat found in the filesChange historyEvery PICS changelist as it lands
SignalsNineteen readings of the whole catalogueCompareAny games side by sideRecordsAll-time peaks and the days they were setReportsWeekly and monthly write-upsAlerts & newsroomWatch a game, get told when it movesSteam statusIs Steam up, right nowWeb API explorerTry the endpoints in the browser
NewsSteam's own announcements and the sales calendarCalculatorWhat a Steam account is worth, and its pile of shame
/
Sign in
/
SteamPeaks
The ultimate resource for Steam data.
ExploreChartsSalesSales and festsUpcomingPatchesNewsRecordsTrendingSignals
DatabaseAppsPackagesDepotsTagsDevelopersTechnologiesChange history
ToolsCalculatorCompareSearchAlertsSteam statusAPI
SiteMethodologyFAQDiscordSupportSign in via Steam
Not affiliated with Valve or Steam. Game names and artwork belong to their owners. All times UTC.
PrivacyCookiesFair useStatus
MD EngineNewsFinal Version 1.0.0 uploaded
Major update

Final Version 1.0.0 uploaded

MD Engine · published 6 Sep 2026, 20:56 UTC · build 25156596

All newsPlayers around this dateRead on Steam

There have been many changes since our last upload in March 2026, so we have a detailed changelog below, split per category.

Also, don't forget MD Engine releases on September 7th!

Engine Architecture

  • Hardware abstraction layer: The engine no longer calls SGDK directly. Every hardware operation now goes through a HAL, which is what made most of the rest of this release possible: it is the layer the new PAL support, the window-plane dialogue system and the tile-type callbacks all hook into.
  • Fixed-point physics: Migrated to 24.8 positions and 8.8 velocities for better precision.
  • Performance: Faster projectile and particle pools, cheaper collision gridding, and fewer redundant
    offscreen actor updates.

PAL and NTSC


The engine now knows which region it is running in, and so does everything around it:

  • Default Mode: One project-level NTSC/PAL setting, encoded into the exported build.
  • Region-correct timing: Script durations, actor motion, tweens, the typewriter text effect and music fades are all scaled per region, so a game plays at the same speed on a 50Hz machine as on a 60Hz one. NTSC output is byte-for-byte identical to before.
  • PAL Extra Lines: An opt-in mode that uses PAL's 16 extra scanlines, giving a 240px screen of 30 cells instead of 28, from a single ROM that still serves both regions. The compiler warns you when a scene is too short for it.
  • Region-paced preview: The in-editor emulator and the native desktop runtime both run at 50Hz or 60Hz to match, audio included.
  • If PAL Mode: A script event to branch on the console's region at runtime.
  • PAL vs NTSC sample: A new template project with a stopwatch-against-real-time clock that demonstrates the difference.

Compiler

  • New optimization passes: Strength reduction for non-power-of-2 multiplies, liveness analysis, if-chain
    to switch conversion, and structured basic-block analysis for the assembly emitters.
  • Correctness fixes in CSE and LICM: Indexed globals, non-pure call arguments, globals written by called
    scripts, and unknown callees are now handled properly instead of being assumed safe.
  • Project constants: These are now resolved at compile time.
  • Compact actor instance data: Actor local variable offsets now exist in the instance rows, and scene
    lifecycle dispatched through a descriptor table, making the overall ROM size smaller.
  • Preload palette AUTO: Now resolves at runtime.
  • Export C Source: Added the option to export the project as C source code.

Resource Compiler

  • XGM2 audio parity restored: The TypeScript resource compiler's XGM2 output now matches the original Java tool exactly, fixing music playback, with a few other fixes. MDSDRV fixes were done too.
  • Maps: Multi-tileset TMX support, TMX priority map handling, an empty-map crash fix, and clearer error
    reporting.

New Engine Features

  • Dialogue windows: The dialogue box is now a true window-plane rectangle instead of drawn tiles, with
    dynamic positioning, split bounds clamping, centre-position handling and a warning when a scene falls back.
  • Per-layer plane events: Clear Plane, Redraw Plane and friends unified across layers, with a reset-scroll
    option.
  • Tile-type callbacks: Run a script when an actor or projectile touches a tagged tile type.
  • One-way slopes: Color coded in the collision painter, with the snapping and wall-avoidance bugs fixed.
  • Actor Overlaps Reset: An event to clear first-time collision tracking.
  • Cheat Mode: This can now be enabled with a script event.
  • VDP Settings: Split charblock layout, a per-mode tile budget readout, and a warning when VDP Tile Setup is registered twice in the same onStart.
  • Max Map Changes: Setting exposed in the UI.
  • Flash saves: Save operations guarded on flash support, partial chunks deleted, loaded array metadata
    clamped, and fewer redundant chunk loads, and support for any flash save size, using virtual sectors instead of hardware sectors, supports both SST and Spansion NOR memories now.

Emulator and Debugger

  • Emulator accuracy: H-int counter reload at the active/vblank boundary, CRAM and VSRAM DMA fill, the
    sprite-overflow flag on the per-line dot limit, per-channel YM2612 saturation before the L/R mix, DAC channel 6 stereo panning, 68K open-bus returning 0xFF, and pad control-port write storage.
  • Frame height follows the video mode: Instead of assuming 224 lines, in both the emulator and the debugger.
  • Save states: Exposed through the WASM core.
  • Flash chip: The flash save emulation has been updated to simulate different types of memories if needed.
  • Reset Save Data: A debugger action, plus a fix for saves being dropped while a previous write was still pending.

Playtiles Remote Debugging

  • Debug On Playtiles Device: Added a new setting that runs Play on your phone through the Playtiles debug bridge instead of the built-in emulator. The debugger also adapts itself to what a remote device can actually serve.

Editor Improvements

  • Clean Up Project: Find and remove unused assets, palettes and entities.
  • 11 languages: English, Spanish, French, German, Italian, Japanese, Korean, Polish, Portuguese (BR),
    Russian and Simplified Chinese, across the editor and every sub-app.
  • Go To Sprite: Context menu on actors.
  • Palette import dropdown: And a dedicated remove-unused-palettes button.
  • Numpad shortcuts: Numpad digits now drive the same shortcuts as the top row, including Ctrl+Numpad
    section switching.
  • Build settings regrouped: Into clearly named sections.
  • Save As: Now re-points asset watchers at the new project directory.
  • Show Connections: Honours pixel/tile units for switch-scene destinations.
  • Dozens of script event fixes: Naming consistency, auto-labels, field types, wrong defaults and
    misleading descriptions.

Sub-Applications

  • MiniPainter: Multi-document tabs with per-tab palettes and session restore, an indexed-first pixel
    pipeline, and tile edits that are indexed-authoritative.
  • MiniTracker: WAV-to-pattern and WAV-to-synthesis import, playback moved to an AudioWorklet, and hardened song loading and playback timing.
  • MiniNotator, imgconv, BMFont and bfxr: Localized and wired into the editor's settings.

Other Notable Additions

  • New sample projects — PAL vs NTSC, dialogue planes and HBlank palette effects, bringing the template library to 28 projects.
  • Fixes throughout — the map editor's undo shortcut, scene size resets when a TMX file changes, sprite
    frame timeline scroll, palette color edits not marking a file dirty, and a long list of smaller ones.
More from MD Engine

Other announcements

All news
In-game event16 Sep 2026Version 1.0.7 released for Windows, macOS & LinuxWe've just released the version 1.0.7 for Windows, MacOS & Linux. Changes: · Added support for ZX0 compression which is faster and better ratio than aPlib · Added support to export project palettes in several formats to import on other projects with Right-Click on a pallete · Added a warning when two plugins have the same file name · Added a warning all the time on the preview window regarding…In-game event12 Sep 2026Version 1.0.6 released for Windows, macOS & LinuxWe've just released the version 1.0.6 for Windows, MacOS & Linux. Changes: · Added notes to Disable Collisions and Disable OnCollide Script events to explain what they do and what they don't do · Added a way to export palettes · Added a top-down example · Added support to copy image parts between Mini Painter tabs · Added support to copy palettes between Mini Painter tabs · Added support to lin…Game update11 Sep 2026Version 1.0.5 released for Windows, macOS & LinuxWe've just released the version 1.0.5 for Windows, MacOS & Linux. Changes: · Improved sprite cutter with faster algorithm, oversized sprites fail in seconds not minutes now · Adjusted the compilation process so it doesn't fully abort a build in case a file can't be deleted, should improve usage for antivirus users · Fixed number of CPU cores used from 16 to a calculated amount to try to prevent…