ReC98's Avatar

ReC98

@rec98.nmlgc.net

https://rec98.nmlgc.net The Touhou PC-98 Restoration Project. Decompiled 100% of TH01 to provably legit C++ code, remaining games in progress. Which mods or ports do *you* want to see?

121
Followers
7
Following
230
Posts
27.09.2024
Joined
Posts Following

Latest posts by ReC98 @rec98.nmlgc.net

Work-in-progress screenshot of the TH03 explosion hitbox figure from the upcoming ReC98 blog post, displaying the hitbox of an explosion that originated from a 48×48-pixel enemy against a 64×64-pixel enemy. With 5 different kinds of explosions (from 16×16/32×32/48×48/64×64 enemies or fireballs) that can hit 6 different types of gameplay entities (16×16/32×32/48×48/64×64 enemies, pellets, or fireballs), there are a total of 5 × 6 = 30 hitboxes that the blog post has to visualize, which necessitates two layers of tabs and some coding effort to make it work nicely.

Work-in-progress screenshot of the TH03 explosion hitbox figure from the upcoming ReC98 blog post, displaying the hitbox of an explosion that originated from a 48×48-pixel enemy against a 64×64-pixel enemy. With 5 different kinds of explosions (from 16×16/32×32/48×48/64×64 enemies or fireballs) that can hit 6 different types of gameplay entities (16×16/32×32/48×48/64×64 enemies, pellets, or fireballs), there are a total of 5 × 6 = 30 hitboxes that the blog post has to visualize, which necessitates two layers of tabs and some coding effort to make it work nicely.

Almost done writing! Still need to spend some more coding time on the blog UX though, so that you can seamlessly switch between two layers of tabs and the 30 hitbox videos underneath.

(Word count already above 10,000, by the way.)

08.03.2026 00:45 👍 1 🔁 0 💬 0 📌 0
Active ReC98 subscriptions for February 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting the SDL 3 build of Shuusou Gyoku back to Windows 98

Active ReC98 subscriptions for February 2026: • €125 from [Anonymous] towards anything (including tooling) • €35 from [Anonymous] towards TH03 RE • €10 from Root towards porting the SDL 3 build of Shuusou Gyoku back to Windows 98

Many thanks to this month's subscribers!

Life priorities have shifted and I'll likely be even slower in the foreseeable future. Then again, what else is left in PC-98 Touhou that's as complex as TH03's enemies, fireballs, and explosions?

Blog post should be out next week.

28.02.2026 13:07 👍 1 🔁 0 💬 0 📌 0
Command-line output showing a metadata comparison between the original lossless WebM file for TH03's enemy formation #3 and the resulting blob of the Bluesky upload, downloaded via `goat blob export`, via ffprobe. Shows how Bluesky not only converted the video to H264 with YUV420P chroma subsampling (the same format Twitter enforces for its videos, which is bad enough), but even chopped the video down to 30 FPS, losing almost half of all frames in the original video.

Command-line output showing a metadata comparison between the original lossless WebM file for TH03's enemy formation #3 and the resulting blob of the Bluesky upload, downloaded via `goat blob export`, via ffprobe. Shows how Bluesky not only converted the video to H264 with YUV420P chroma subsampling (the same format Twitter enforces for its videos, which is bad enough), but even chopped the video down to 30 FPS, losing almost half of all frames in the original video.

Bluesky confirmed for having the worst video processing pipeline in the entire social media landscape.

Reducing *frame rates* is disgusting at a level that even Twitter wouldn't step down to.

27.02.2026 00:39 👍 3 🔁 1 💬 0 📌 0

(That's all of them, the post series is complete now!)

20.02.2026 10:04 👍 2 🔁 0 💬 0 📌 0
Video thumbnail

Formation #17: Flying Junction

20.02.2026 10:04 👍 1 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #17 (Flying Junction), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #17 (Flying Junction), decoded from ENEDAT.DAT.

Formation #17: Flying Junction

20.02.2026 10:04 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #16: Zigzag

19.02.2026 11:50 👍 1 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #16 (Zigzag), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #16 (Zigzag), decoded from ENEDAT.DAT.

Formation #16: Zigzag

19.02.2026 11:50 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #15: Low Crossing

18.02.2026 13:04 👍 2 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #15 (Low Crossing), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #15 (Low Crossing), decoded from ENEDAT.DAT.

Formation #15: Low Crossing

18.02.2026 13:04 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #14: Fork of Doom

17.02.2026 21:56 👍 2 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #14 (Fork of Doom), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #14 (Fork of Doom), decoded from ENEDAT.DAT.

Formation #14: Fork of Doom

17.02.2026 21:56 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

(Happens across difficulties, as shown by this second video on Easy.)

16.02.2026 12:04 👍 1 🔁 0 💬 1 📌 0
Video thumbnail

Formation #13: Folding "7"

This one is special because ZUN removes the vertical enemies in the center just a few frames too early. 🎺

16.02.2026 12:04 👍 1 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #13 (Folding "7"), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #13 (Folding "7"), decoded from ENEDAT.DAT.

Formation #13: Folding "7"

16.02.2026 12:04 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #12: Off-centered Crossing

15.02.2026 13:36 👍 0 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #12 (Off-centered Crossing), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #12 (Off-centered Crossing), decoded from ENEDAT.DAT.

Formation #12: Off-centered Crossing

15.02.2026 13:36 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #11: Slanted Crossing

14.02.2026 11:21 👍 0 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #11 (Slanted Crossing), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #11 (Slanted Crossing), decoded from ENEDAT.DAT.

Formation #11: Slanted Crossing

14.02.2026 11:21 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #10: Upside-Down Triangle

13.02.2026 13:55 👍 1 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #10 (Upside-Down Triangle), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #10 (Upside-Down Triangle), decoded from ENEDAT.DAT.

Formation #10: Upside-Down Triangle

13.02.2026 13:55 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #09: Inverse "Y"

12.02.2026 23:14 👍 0 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #09 (Inverse "Y"), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #09 (Inverse "Y"), decoded from ENEDAT.DAT.

Formation #09: Inverse "Y"

12.02.2026 23:14 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #08: Four Lines of Four

11.02.2026 20:09 👍 0 🔁 0 💬 1 📌 0
Script code for TH03's enemy formation #08 (Four Lines of Four), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #08 (Four Lines of Four), decoded from ENEDAT.DAT.

Formation #08: Four Lines of Four

11.02.2026 20:09 👍 0 🔁 0 💬 1 📌 0
Video thumbnail

Formation #07: Aimed Line

10.02.2026 11:37 👍 2 🔁 1 💬 1 📌 0
Script code for TH03's enemy formation #07 (Aimed Line), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #07 (Aimed Line), decoded from ENEDAT.DAT.

Formation #07: Aimed Line

10.02.2026 11:37 👍 1 🔁 0 💬 1 📌 0
Video thumbnail

Formation #06: Double Loop

09.02.2026 22:55 👍 5 🔁 1 💬 2 📌 0
Script code for TH03's enemy formation #06 (Double Loop), decoded from ENEDAT.DAT.

Script code for TH03's enemy formation #06 (Double Loop), decoded from ENEDAT.DAT.

Formation #06: Double Loop

09.02.2026 22:55 👍 1 🔁 0 💬 1 📌 0
Video thumbnail

Formation #05: Expanding/Contracting Circle

09.02.2026 00:24 👍 1 🔁 0 💬 1 📌 0