Skip to content

P0303

Latest
Compare
Choose a tag to compare
@nmlgc nmlgc released this 25 Jan 23:55
· 7 commits to master since this release

The Linux port is now ready and functional! The game is now packaged for the following distributions and runtimes:

The codebase should hopefully also compile on everything else that has pkg-config.

The Linux port tries to load a system-wide installation of MS Gothic to perfectly match the originally intended look of the text. However, MS Gothic is non-free and any use of the font outside of a Windows system violates Microsoft's EULA. If you still want pixel-perfect text rendering when compared to pbg's original Windows release, put msgothic.ttc into one of your system's standard font directories, as listed by fc-cache -v. On Arch Linux, you can do this by installing one of these AUR packages.

If MS Gothic is not available, the port tries to fall back on a system-wide installation of the free and metric-compatible IPAMonaGothic font. Since this font can be bundled in packages more easily, it's also what the Flatpak release uses by default. The summary blog post contains plenty of comparisons between the two fonts:

The remaining changes, all of which apply to this Windows build as well:

  • Added a new high-res 128×128 icon with three lower-res variants at 48×48, 32×32, and 16×16. Commissioned from Mr. Tremolo Measure, thank you very much!

  • The Music option in the Main Menu is now disabled if BGM is not playing. The original game already prevented Selecting Music in this case already did nothing in the original game, but this is now also indicated visually and via the cursor jumping over the option.

  • The High Score menu can now display more than 11 score digits and 6 evade digits without overflowing the respective buffers.

  • Fixed two hotkey-related bugs in the SDL graphics backend:

    • Changing from unscaled 640×480 to higher resolutions in framebuffer-scaled borderless fullscreen mode now works properly during the 西方Project logo animation, and no longer wrongly applies a 640×480 clipping region to these higher resolutions.

    • Sprites now always stay clipped when changing between windowed non-640×480 resolutions in-game. Previously, clipping was disabled for the single frame after the resolution change.

Troubleshooting

As of the P0256 build, D3DWindower can no longer be used with the vintage DirectDraw/Direct3D binary, but DxWnd still works. Import this configuration via File → Import, then adjust the path to your GIAN07.exe.

If the vintage binary still runs slow on your system, or doesn't render anything at all:

  • Delete any reference to GIAN07.exe from the following registry keys:

    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
    • HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
  • Make sure that the 32-bit mode is activated in the Config → Graphic menu.


Additional credits


Summary blog post: https://rec98.nmlgc.net/blog/2025-01-25
Full changelog compared to the previous release: P0295...P0303
Previous release: https://github.com/nmlgc/ssg/releases/tag/P0295