Skip to content

Releases: wszqkzqk/PvZ-Portable

0.2.1

Choose a tag to compare

@github-actions github-actions released this 10 Aug 06:00
b4f1ba0

What's Changed

  • Fix: correct several behaviors that differ from the original GOTY by @peashooter2 in #391
  • Fix: correct gold sunflower trophy scale and position on award screen by @wszqkzqk in #390
  • Fix: correct assorted issues in docs, issue templates, and packaging by @wszqkzqk in #393
  • Chore: enable vcpkg binary caching and cache Gradle home in CI by @wszqkzqk in #396
  • Fix: correct mind-controlled zombie tint color to match original by @wszqkzqk in #398
  • Chore: move single-user constants from headers into their .cpp files by @wszqkzqk in #399
  • Refactor: replace ClampInt/ClampFloat/ClampByte helpers with std::clamp by @wszqkzqk in #401
  • Refactor: inject default font into SexyAppBase instead of widgets reading game resources by @wszqkzqk in #402
  • Fix: correct assorted memory-safety and logic bugs in framework and game code by @wszqkzqk in #403
  • Fix: eliminate ResourceManager object-lifetime UB and modernize DataArray iteration by @wszqkzqk in #404
  • Refactor: split GameSelector slide displacement from button layout offset by @wszqkzqk in #407
  • Refactor: make GameSelector buttons child widgets by @wszqkzqk in #408
  • Fix: add missing widget background in Zombatar list screen by @peashooter2 in #411
  • Feat: tag demo files with the program version and warn on mismatch during replay by @wszqkzqk in #410
  • Fix: render Zombatar facial hair above the zombie tie by @wszqkzqk in #413
  • Chore: remove the broken, discontinued Nintendo 3DS port by @wszqkzqk in #416
  • Feat: add 32-bit MSVC (x86) Windows build and fix vcpkg CI cache invalidation by @wszqkzqk in #419
  • Chore: remove the broken ModVal runtime tuning module by @wszqkzqk in #417
  • Fix: correct Zombatar list carousel positions and clipping by @wszqkzqk in #421
  • Fix: keep iOS vcpkg ports on the declared deployment target by @wszqkzqk in #420
  • Chore: unify comment style, retab to tabs, and drop dead code by @wszqkzqk in #428
  • Fix: object lifetime races across modal waits and board lifecycle by @wszqkzqk in #424
  • Feat: add slide transition animation to Zombatar confirm screen by @wszqkzqk in #400
  • Fix: hide Zombatar portrait prev/next buttons at list boundaries by @wszqkzqk in #426
  • Fix: correct Zombatar avatar part stacking and visibility by @wszqkzqk in #430
  • Feat: add static Linux build to CI by @wszqkzqk in #432
  • Fix: use SDL's built-in iconv for the Linux static build by @wszqkzqk in #436

Full Changelog: 0.2.0...0.2.1

0.2.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 03:00
e90689e

What's Changed

  • Fix: join loading thread instead of detaching it by @wszqkzqk in #359
  • Feat: implement clean-room Zombatar support and improve UI by @wszqkzqk in #319
  • Fix: enable C++ exception catching in Emscripten builds by @wszqkzqk in #362
  • Fix: keep edit widgets visible above the soft keyboard on Android by @wszqkzqk in #363
  • Fix: write challenge records to the correct profile in AddPreviewProfiles by @wszqkzqk in #366
  • Fix: enable edit-widget copy/paste/undo shortcuts when text input is active by @wszqkzqk in #367
  • Fix: make demo recording/playback actually work by @wszqkzqk in #369
  • Fix: make wall-clock time deterministic in demo sessions by @wszqkzqk in #375
  • Fix: bundle SDL3 in macOS CI artifacts by @wszqkzqk in #380
  • Fix: eliminate remaining demo replay divergence sources by @wszqkzqk in #379
  • Feat: support full UTF-8 text input in edit widgets by @wszqkzqk in #371
  • Feat: use timestamped demo file names and replay the newest by default by @wszqkzqk in #373
  • Fix: eliminate signed overflow in runtime frame counters by @wszqkzqk in #382
  • Feat: sign Android release APKs with a CI-provided keystore by @wszqkzqk in #384
  • Feat: derive version info from git tags across platforms by @wszqkzqk in #385
  • Fix: derive the Android version with providers.exec for Gradle 9 by @wszqkzqk in #387
  • Fix: eliminate object-lifetime UB in DataArray with a real array by @wszqkzqk in #383
  • Feat: support space-separated option values and explicit -play/-record files by @wszqkzqk in #389

Full Changelog: 0.1.27...0.2.0

0.1.27

Choose a tag to compare

@github-actions github-actions released this 14 Jul 02:14
ae2f517

What's Changed

  • Fix: correct duplicate notifications for achievements in-game popup by @wszqkzqk in #344
  • Fix: save mid-level game before Shutdown() halts music by @wszqkzqk in #345
  • Fix: disable growable array buffers for WASM to avoid TextDecoder error by @wszqkzqk in #348
  • Fix: use live mouse position in GameButton::IsMouseOver by @wszqkzqk in #343
  • Fix: unify resource error handling and use SDL message box for fatal errors on most platforms by @wszqkzqk in #341
  • Chore: bump GitHub Actions to latest major versions (setup-android v4, setup-emsdk v16) by @wszqkzqk in #350
  • Feat: lower Android floor to API 24 by @wszqkzqk in #349
  • Refactor: unify logging to SDL_Log and remove obsolete trace functions by @wszqkzqk in #351
  • Feat: load Android native libraries directly and handle edge-to-edge insets by @wszqkzqk in #352
  • Refactor: replace manual clamping logic with std::min/max/clamp by @wszqkzqk in #324
  • Fix: handle UTF-8 whitespace by code point in Sexy::Trim by @wszqkzqk in #353
  • Chore: add AI agent tooling directories to .gitignore by @wszqkzqk in #354
  • Fix: eliminate undefined behavior in DataReader::ReadString and narrow-type DataSync overloads by @wszqkzqk in #355

Full Changelog: 0.1.26...0.1.27

0.1.26

Choose a tag to compare

@github-actions github-actions released this 02 Jul 06:01
deccbd6

What's Changed

  • Fix: harden GIF decoding in ImageLib by @wszqkzqk in #307
  • Fix memory management issues and refactor for RAII usage by @wszqkzqk in #308
  • Fix: Revise the description of the "Roll Some Heads" achievement to match the original version by @peashooter2 in #310
  • Fix: avoid credits note after achievements in non-adventure modes by @wszqkzqk in #312
  • Fix: award Morticulturalist when all shop plants are owned by @wszqkzqk in #313
  • Fix: set Let's Rock button label hilite color to white by @wszqkzqk in #314
  • Refactor: rewrite Color class constructors and methods to use constexpr by @wszqkzqk in #321
  • Fix: clean up latent UB and modernize string handling by @wszqkzqk in #320
  • Fix: remove redundant sell-dialog label override and dead purchase dialog by @wszqkzqk in #323
  • Feat: map Android back button to escape key by @wszqkzqk in #143
  • Fix: support UTF-8 decoding and safe rect lookup in TodDrawStringMatrix by @wszqkzqk in #327
  • Fix: fix dialog button casing and localize hardcoded strings across versions by @wszqkzqk in #325
  • Fix: correct trophy count font size by @Vector-Syobon-812 in #329
  • Fix: handle UTF-8 by code point in MessageWidget and ChallengeScreen by @wszqkzqk in #330
  • Fix: open menu instead of debug play on seed chooser escape by @wszqkzqk in #332
  • Fix: keep Continue dialog wide enough for its buttons by @wszqkzqk in #331
  • Fix: avoid color pollution in TodWriteString width measurement by @wszqkzqk in #335
  • Fix: correct loading task accounting by @wszqkzqk in #336
  • Fix: ensure texturing is enabled in multi-piece BltTriangles path by @wszqkzqk in #337

Full Changelog: 0.1.25...0.1.26

0.1.25

Choose a tag to compare

@github-actions github-actions released this 15 Jun 01:50
2b33642

What's Changed

  • Fix: ensure Jalapeno-headed zombie dies with loot when burned by @wszqkzqk in #296
  • Feat: replace LIMBO_PAGE build option with in-game unlock via rapid clicks by @wszqkzqk in #297
  • Fix: update vcpkg baseline to 2026.06.01 for CMake 4.0 compatibility by @wszqkzqk in #299
  • Chore: remove iOS libvorbis overlay port and VCPKG_OVERLAY_PORTS usage by @wszqkzqk in #301
  • Fix: correct plant tooltip and dialog text casing by @wszqkzqk in #300
  • Chore: add CONFIGURE_DEPENDS to source file GLOB by @wszqkzqk in #302
  • Fix: enforce LF line endings and remove redundant .gitattributes by @wszqkzqk in #304
  • Feat: toggle fullscreen with Alt+Enter by @wszqkzqk in #306

Full Changelog: 0.1.24...0.1.25

0.1.24

Choose a tag to compare

@github-actions github-actions released this 06 Jun 01:51
0a491f8

What's Changed

  • Feat: suppress right-click context menu on canvas for WASM builds by @peashooter2 in #266
  • Fix: correct KillDialog mResult sentinel from -1 to 0x7FFFFFFF by @wszqkzqk in #271
  • Fix: restrict Zombiquarium floating check to placed plants only by @wszqkzqk in #273
  • Fix: correct PARTICLE_VASE render layer from TOP to GROUND by @wszqkzqk in #276
  • Fix: swap grave spawn weight in WhackAZombie by @Vector-Syobon-812 in #278
  • Fix: correct zombie velocity of dolphin-riders and plain zombies by @windbell0711 in #277
  • Fix: adjust golden sunflower trophy sparkle position upward by @wszqkzqk in #275
  • Fix: apply Dancer Zombie scale in DrawSeedType by @wszqkzqk in #268
  • Fix: disable C++ language extensions for stricter standard compliance by @wszqkzqk in #279
  • Feat: add AUR publishing workflow and split PKGBUILD variants by @wszqkzqk in #269
  • Fix: duration of STATE_SQUASH_LOOK should be 45 instead of 30 by @windbell0711 in #283
  • Fix: remove incorrect -0.5f offset in Reanimator matrix translation by @wszqkzqk in #285
  • Fix: correct Imitater tooltip string key from NOT_RECOMMEND_FOR_LEVEL to NOT_RECOMMENDED_FOR_LEVEL by @wszqkzqk in #289
  • Fix: green gap in selector screen grass after achievements slide by @wszqkzqk in #287
  • Fix: call SexyAppBase::Shutdown before early return in LawnApp::Shutdown by @wszqkzqk in #294
  • Feat: disable LIMBO_PAGE by default, enable explicitly in Arch testing PKGBUILD by @wszqkzqk in #282

New Contributors

Full Changelog: 0.1.23...0.1.24

0.1.23

Choose a tag to compare

@github-actions github-actions released this 13 May 06:38
fd359c0

What's Changed

  • Fix: correct dave upgrade dialog by @Vector-Syobon-812 in #238
  • Fix: now dave can't choose not recommended plants by @Vector-Syobon-812 in #243
  • Fix: enable floating plants in Zombiquarium background by @wszqkzqk in #236
  • Fix: restrict HomeSecurity achievement trigger to Adventure Level 1 by @wszqkzqk in #245
  • Fix: use mBoard->mLevel instead of mPlayerInfo->mLevel for adventure special-level checks by @wszqkzqk in #247
  • Fix: move Whack-a-Zombie hammer cursor initialization to StartLevel by @wszqkzqk in #252
  • Fix: correct intro camera pan direction in CutScene by @wszqkzqk in #256
  • Fix: increase intro presentation text size in CutScene by @wszqkzqk in #258
  • Fix: correct Dancing Zombie phase and summon behavior by @wszqkzqk in #261

Full Changelog: 0.1.22...0.1.23

0.1.22

Choose a tag to compare

@github-actions github-actions released this 28 Apr 08:58
6655dc2

What's Changed

  • Fix: correct caustic UV computation in PoolEffect to match original behavior by @wszqkzqk in #210
  • Fix: correct particle freeze conditions for Grave Buster and Pool Sparkly in cutscene by @wszqkzqk in #213
  • Fix: defer LawnApp cleanup to destructor to avoid Zen Garden store close crash by @wszqkzqk in #214
  • Fix: correct Zen button layout and wave rendering by @Vector-Syobon-812 in #216
  • Fix: correct shop pagestring display and coinbank by @Vector-Syobon-812 in #217
  • Change counter fields to uint32_t for consistency in Board and PlayerInfo by @wszqkzqk in #211
  • Fix: disable vcpkg binary caching to avoid GHA token errors by @wszqkzqk in #222
  • Fix: correct flag wave countdown condition in UpdateZombieSpawning by @wszqkzqk in #221
  • Fix: prevent interaction with menu buttons during reward acquisition by @12471220 in #224
  • Fix winter melon splash on shielded zombies, balloon pool spawning, and blover wind-up by @wszqkzqk in #226
  • Fix: correct store PACKET_UPGRADE description range by @Vector-Syobon-812 in #229
  • Fix: enable texture repeat for pool caustic effect by @wszqkzqk in #215

New Contributors

Full Changelog: 0.1.21...0.1.22

0.1.21

Choose a tag to compare

@github-actions github-actions released this 13 Apr 06:09
a05a961

What's Changed

  • Fix: ensure screen redraw only occurs when necessary and mark all widgets as dirty on window resize by @wszqkzqk in #187
  • Fix: update OpenGL ES initialization for Nintendo Switch by @wszqkzqk in #190
  • Feat: implement SDL cursor enforcement and custom cursor support by @wszqkzqk in #189
  • Fix: update mouse position handling in MouseDown function by @wszqkzqk in #198
  • Fix: use original track image dimensions for pivot calculation in reanimator by @wszqkzqk in #208
  • Fix: correct snorkel zombie speed after eating in pool by @wszqkzqk in #207
  • Fix: adjust scale handling for dancer and backup dancer zombies in ApplyBurn function by @wszqkzqk in #209
  • Fix: stabilize long-run animation and flashing counters by @wszqkzqk in #199

Full Changelog: 0.1.20...0.1.21

0.1.20

Choose a tag to compare

@github-actions github-actions released this 30 Mar 05:38
ddf9f1c

What's Changed

  • Fix: remove unnecessary SDL_MOUSEWHEEL_FLIPPED check to correct mouse wheel scrolling by @wszqkzqk in #186
  • Fix: adjust golden sunflower tooltip update area boundaries by @wszqkzqk in #178
  • Fix: prevent state transitions and concurrent slides during screen animation by @wszqkzqk in #185

Full Changelog: 0.1.19...0.1.20