Repository navigation
Pokopia Recomp 0.7.5 (build K: Koala)
This is the last update you ever install by hand. Extract it over your 0.7.0 install one more time, and from the next
release on, updating is one click: press Update in the launcher and it does the rest. The game code is unchanged, so no
Set up again is needed.
Highlights
- One-click updates. No more downloading zips, no more extracting over your install. The launcher fetches the new release,
checks it against the release's checksums, swaps its files, restarts, and starts setup by itself if the new version needs it.
Your saves, settings, shader cache and built game are never touched, and if anything goes wrong every file is put back. - A brand new launcher. One big button on Home that always does the next right thing (Choose game files, Set up, Play),
patch notes right inside the launcher, a crash card with the report and log, and settings that save as you change them. - More settings without opening an ini file: quality preset, view distance, upscaler and its quality, frame rate counter,
mute when not focused, keep 16:9. - Steam Deck and Proton find Link Play hosts on the LAN (and are found by them), with nothing to type.
- F1 "Just under the refresh rate" no longer slows the game on 60 and 90 Hz screens.
- A typo in
controls.inino longer wipes all your controls, and pad combos take the Switch button names (l+r).
New
A new launcher: one button, updates in one click, patch notes inside
Before: five pages (Play, Game files, Link Play, Settings, About), a long settings form with a Save button and hint text, and an "Update available" banner that sent you to GitHub to download and extract the release yourself. Release notes were only on GitHub.
Now: four pages: Home, Link Play, What's New, Settings, in a frameless glass window. Home has one button that always does the next step (Choose game files, Set up, Continue setup, Finish update, Play) and uses the same check as Play, so it never offers Play when Play would refuse. Update downloads the new release, checks it against the release's checksums, replaces the launcher's files, restarts, and starts setup by itself when the new version needs it; saves, pkp.ini, controls.ini, the shader cache and the built game are never touched, and a failed update puts every file back. What's New reads the release notes in the launcher, and Home shows the newest three. A crash shows a card on Home with its report and the game log. Setup and updates keep running when you change pages.
Settings are tabs (Display, Graphics, Audio, Controls, Saves, Game, About) that save on change, with choices instead of numbers (frame rate "Match display, 60, 120, Unlimited", render resolution "Match window, 1080p..."; Custom keeps any other value). New in the launcher: quality preset (writes the whole preset like the F1 menu), view distance, upscaler and its quality, frame rate counter, mute when not focused, keep 16:9. DLSS moved to Graphics. Link Play is one switch (Off, Same network, Internet) with every field applied by itself; the pkp.ini keys are unchanged.
Removed: the shader cache path (it never worked), the RomFS folder (it follows the game files), the Save/Revert bar, the old Link Play protocol choice (a notice offers to switch).
Still not: this update itself is installed by hand (0.7.0's launcher cannot install updates); one-click updates start with the next one. The Linux AppImage update has not been tried yet.
Fixes
Launcher volume could be undone by pkp.ini
Before: a volume line in pkp.ini beat controls.ini, so the volume shown was not always what played.
Now: the launcher also writes pkp.ini when it already holds the line.
F1 "Just under the refresh rate" no longer slows the game on 60 and 90 Hz screens
Before: the button set the frame limit 3 fps under any refresh rate: 57 on a 60 Hz screen, 87 at 90 Hz. At 57 the game counts every frame as 1/60 s, so it ran about 5 % slow and felt sluggish; on a screen without G-Sync / FreeSync (Steam Deck) the lower rate also showed frames unevenly.
Now: below 100 Hz the button sets the refresh rate itself (60, 90). From 100 Hz up it still keeps a few fps under (116 at 120 Hz, 138 at 144 Hz), which is what G-Sync / FreeSync need. The button says it is for G-Sync / FreeSync screens, with a tip. Nothing changes unless you press it.
Link Play: Steam Deck and Proton find hosts and are found on the LAN
Before: Proton has no DNS-SD (dnsapi.dll without DnsService*), so a host under Proton was invisible and a visitor under Proton found nothing (DNS-SD needs Windows 10 1809 or later ... join by address); every visit needed the host's address. Proton also showed a wrong "this PC's network is set to Public" note.
Now: where DNS-SD is missing, each scan sweeps this device's own private network (up to 254 addresses per network, 512 in all, TCP port 47600, about 300 ms) and asks every host that answers for its game over the co-op link, as for a host DNS-SD found. A hosting device answers DNS-SD queries itself (a small mDNS responder on UDP 5353 with the records pokopia-native registers), so Windows players see it. Nothing to type, and nothing to change on another network. The Public-network note is not shown under Wine. Windows with DNS-SD is unchanged. [net] lan_sweep = off turns it off; NXRT_COOP_NO_DNSSD=1 tries it on Windows (a diagnostic).
Still not: Wi-Fi that keeps devices apart (cafes, hotels, guest networks; use internet play with a relay), and a host that fell back to another port than 47600.
One bad line in controls.ini no longer resets every setting (#218)
Before: pad combos ([quit] pad, [overlay] pad) only took position names like left_shoulder+right_shoulder, so btn_l+btn_r was an error. Any bad value in a fixed key made the whole controls.ini invalid: factory settings loaded, and the next save wrote them over your file. It looked like the setting reset to none on every start.
Now: combos also take the Switch names of the buttons that sit in the same place on every pad, with or without btn_: l r zl zr plus minus lstick rstick (the file is written back with the position names). A bad value only resets that one key and is logged in pkp.log, together with unknown keys. If a file still cannot be loaded, it is copied to controls.ini.bad before anything can save over it.