Skip to content

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Aug 02:02
· 85 commits to main since this release

Palworld Save Pal v1.3.0

PSP in your browser

PSP now runs entirely in your browser, at https://palworldsavepal.app, no install, no account, and no backend holding your data.

To be clear about what that means: the parser and the entire editor are compiled to WebAssembly and run on your machine, in your tab. Your save is never uploaded. There is no server on the other end to upload it to. The code is public, so you don't have to take our word for it.

What you can do on the web version:

  • Load a .zip or point it at your whole world folder, both work.
  • Save straight back to that folder if you're on a Chromium browser (this needs the File System Access API, which Firefox doesn't have yet). Originals get backed up first, and writing in place is always something you opt into. Everywhere else you download the edited save like normal.
  • Close the tab and come back later. Saves you've opened are kept locally in OPFS/IndexedDB, and there's a Resume button on the landing page.
  • Presets, Universal Pal Storage, and Blueprints all work, backed by SQLite compiled to WASM and stored in the browser.
  • PSP checks what your browser can actually do up front and tells you before you start, instead of letting you get halfway through editing and then failing on the save.

The desktop app is not going anywhere. It's still free, still maintained, and still the faster of the two. It also keeps the dedicated server features, which a browser tab can't reach no matter how much WASM you throw at it. If you're already happy on desktop, nothing changes for you.

New Features

  • 3D World Map: The map moved from OpenLayers to MapLibre and now renders real 3D terrain built from the extracted landscape heightmap, so you can tilt the world and the islands actually have shape instead of being a flat picture. Your base structures render in 3D on top of it, classified by archetype and material, using the real game meshes where we have them and proxy geometry where we don't. Structure picking is done on the GPU so it stays smooth on big bases. Click a structure to see its details, and there are filters and hover labels for finding things in a base that has sprawled out of control. Markers are 15% larger now with proximity halos, and relics and fast travel points both got a "hide found" filter.
  • Blueprints: Capture the structures from a base and re-place them in another world. Placement gives you a ghost preview before you commit, remaps all the IDs, and validates the result. Blueprints export and import so you can share them, and you can now delete bases directly from the map.
  • Awakened & Imported Pals: bIsAwakening and bImportedCharacter are now read from and written back to the save, so awakened pals survive a round trip instead of getting flattened. You can toggle either flag on any pal. Awakened pals get a gold ring and glow, imported pals get a badge. Stats scale correctly, max HP uses the game's AwakeningStatusMultiply and the rest reflect the 1.1x awakened scaling. Max Out and Fill produce awakened pals now, and presets carry both flags through. UPS gained filters and stat counters for both, using a filter bar that's now shared across the pal views.
  • Breeding Calculator: A full breeding planner, in three modes, shoutout to @CyrixJD115!:
    • Direct: A + B gives you the child, A + a target gives you the partner you need to find, or just give it a target and it lists every parent pair that produces it.
    • Selection: Build a pool of pals and it finds multi-generation chains to whatever you're aiming for.
    • Save: Same thing but using the pals you actually own, filtered by player, with an option to include wild pals.
    • Gender is handled properly throughout, gender-specific combos, male/female probability, and the unique pairs that only work one way around. Results render as a list or as a graph in four layouts (dendrogram, smooth curves, one column per generation, or radial), and you can step through one generation at a time. Export or copy the tree as a PNG if you want to share your plan.
  • UI Refresh shoutout to @CyrixJD115!:
    • New Sidebar: The navigation rail is a grouped sidebar now, split into Main, Tools, and Help. The feature list has gotten long enough that a flat rail of icons stopped being findable.
    • Overall Tweaks: Improvements made to the theme and layout throughout the app.
  • Landing Page: The web version gets a proper landing page, with a live 3D map you can actually spin around in the background.

Improvements & Fixes

  • Updated all game data for the latest update: pals, active and passive skills, technologies, buildings, map objects, missions, effigies, and fast travel points, plus refreshed pal images and the rank 5 asset.
  • Fixed save-in-place resolving target filenames case-sensitively, which could leave you with duplicate files and a lost backup.
  • .sav decompression now dispatches on the file magic instead of the save type byte, which fixes saves the old check was reading wrong.
  • Fixed essential container slot iteration in the player editor.
  • Fixed malformed ICU placeholders across the locale files that were breaking translated strings.
  • PSP degrades instead of dying when storage isn't available. sqlite init failures, missing OPFS, and quota limits now warn and keep going so you can still edit and download your save.
  • Worker conversion failures now surface as an error instead of hanging the UI with no explanation.
  • Fixed the skill filter calculation for rank 5.
  • The desktop window now opens maximized.
  • Every hardcoded color moved to palette variables, so themes apply consistently on the newer pages instead of half-ignoring your selection. Also expanded the shared design system, restyled the save platform picker, and fixed layout at 2xl resolutions.
  • There's something on the About page for the people who've contributed, go find it.

License

PSP is now GPL-3.0-only, it was MIT before. The code has always been public and auditable, this just makes sure it stays that way downstream.