Phaser 3.90: What Changed and Should You Upgrade?
Phaser 3.90: What Changed and Should You Upgrade?
Honesty note: my game runs on Phaser ^3.90 (per my package.json), so this is the version I shipped against — the review below is from the official 3.90 changelog and my own use of it.
TL;DR
- Phaser 3.90 “Tsugumi” (May 23, 2025) is a focused QoL release, not a rewrite: rounded-corner rectangles, angle math helpers, and a pile of fixes. No breaking API changes for typical games (changelog).
- The headline feature is
Rectangle.setRounded(radius)— rounded corners on the Rectangle Shape game object without custom graphics. Zero for sharp corners. Small, but it kills a common UI hack. - The useful fixes for game devs: Firefox Web Audio fallback (missing
positionX/Y/Zon AudioListener), EXPAND scale mode now clamps on ultra-wide displays, chained tween persistence afterstop(), Chrome 134+ RTL text, and particle emitter color-array/moveTo fixes. - Should you upgrade? Honest advice: if you’re on 3.85–3.88, the upgrade is low-risk (mostly additive + fixes); if your game is stable and you don’t need the new features, “not yet” is a defensible position — but read the changelog before you decide, because the fixes may already be biting you.
- Why 3.90 and not Phaser 4? Purpose-driven, not shiny-driven. My game runs 3.90 by decision, not default: it’s a mature, stable version that’s completely sufficient for a casual H5 game, its tutorials and documentation are the deepest in the ecosystem, and a brand-new major version doesn’t automatically mean better stability or compatibility. When a newer version exists, the question isn’t “is it newer?” — it’s “does it solve a problem I have?” (see below).
What’s actually in 3.90
| Area | Change | Who benefits |
|---|---|---|
| Shapes | Rectangle.setRounded(radius) + isRounded | UI, buttons, panels without texture hacks |
| Math | Angle.GetCounterClockwiseDistance(), Angle.GetShortestDistance() | Angle-based gameplay, AI steering |
| Audio | Firefox Web Audio fallback for missing AudioListener positionX/Y/Z | Web audio on Firefox |
| Scale | EXPAND mode clamps on ultra-wide displays | Desktop ultra-wide layouts |
| Tweens | Chained tween persistence after stop() | Tween chains (my tween use) |
| Text | Chrome 134+ RTL rendering fix | RTL text |
| Particles | Emitter color array + custom moveTo fixes | Particle effects (particle guide) |
What it means for a casual game like mine
- Rounded rectangles are the feature I’d actually use — score panels and buttons get rounded corners natively instead of PNG hacks (UI reality).
- The tween fix matters if you chain tweens (my merge animations chain scale → move → scale) (tween guide).
- The audio fallback matters for Firefox players, which portals still see a real share of (monetization reality).
- Nothing in 3.90 changes your game’s architecture — it’s an in-place improvement.
The upgrade path (low-risk, ~30 min)
npm install [email protected](or bump^3.90.0).npm run build— if it compiles, run the game.- Smoke test the features you use: tweens, particles, audio, scale mode (verification habit).
- Roll back instantly if anything regresses (
npm install [email protected]).
The honest risk profile: additive changes + targeted fixes; the regression surface for a typical game is small.
Why 3.90 and not Phaser 4 (the purpose-driven answer)
Phaser 4 exists (in development, 4.0.0 changelog published) — so “why not the latest?” deserves an honest answer, and mine is purpose-driven:
- 3.90 is mature and sufficient. For a casual H5 game, 3.90 covers everything needed — scenes, tweens, particles, input, scale management, arcade physics. Nothing in Phaser 4’s roadmap is required for the games I make; features I don’t need are cost, not value (tutorial reality).
- Tutorials and docs are deepest on 3.x. Every guide, forum answer, and example in this site’s Phaser series is 3.x; a newer major means a thinner learning ecosystem and more “works differently in v4” surprises (docs reality).
- Newer ≠ more stable. A new major version carries new architecture and new bugs; stability and compatibility are earned over releases, not promised by version numbers. 3.90 is the version with years of fixes behind it (upgrade discipline).
- The decision rule: adopt a new version when it solves a problem you have, not when it exists. “Is it newer?” is marketing; “does it solve a problem I have, at acceptable risk?” is engineering. For my game, the answers are: no unsolved problem, and 3.90’s risk profile is known.
That’s the same logic as the whole site: choose the tool that fits the job and the developer (engine choice).
Should you upgrade? (decision table)
| Your situation | Verdict |
|---|---|
| On 3.85–3.88, game in active development | Upgrade — fixes + rounded rects, low risk |
| On 3.90 already (like me) | Stay; watch for 4.0 when it stabilizes |
| Stable shipped game, no new features needed | “Not yet” is fine — pin your version |
| Using Firefox-audio or chained tweens heavily | Upgrade — the fixes target you |
Pitfalls
- Upgrading mid-crunch — a release week is the wrong time; do it between milestones.
- Assuming “upgrade = rewrite” — 3.90 is additive; most games change nothing.
- Ignoring the changelog — “did they fix my bug?” is answered in the changelog in two minutes.
- Not pinning versions —
^3.90.0is fine, but a lockfile is your rollback story (setup). - Chasing 4.0 now — Phaser 4 is in development; a new major doesn’t mean better stability or compatibility. For a casual H5 game, 3.90 is the stable, well-documented, purpose-driven choice (why not 4.0).
Bottom line
Phaser 3.90 (Tsugumi, May 2025) is a quality-of-life release: rounded rectangles, angle helpers, and targeted fixes (Firefox audio, EXPAND ultra-wide, tween chains, RTL, particles) with no breaking changes for typical games. Upgrade if you’re actively developing (low risk, real fixes); pin and wait if your game is stable and needs nothing new — and either way, the changelog answers “does this fix me?” in two minutes. And on “3.90 vs Phaser 4”: choose by purpose, not novelty — a mature version that’s sufficient, with the deepest tutorials and a known risk profile, is the engineering answer, not the marketing one (the full Phaser setup).