TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Shenmue (1999) reverse engineering reveals possible sun position oversight

183 pointsby BafS2 months ago

18 comments

bbayles2 months ago
Fantastic game!<p>The same development studio, Sega AM2, recently had a developer reveal that he had put an Easter egg into Fighters Megamix for Saturn. However, he mistakenly introduced a crash bug in it.<p>This set me off looking for the Easter egg. After a couple days of reverse engineering, I finally found it [0]! I love looking for this stuff.<p>[0] <a href="https:&#x2F;&#x2F;32bits.substack.com&#x2F;p&#x2F;bonus-fighters-megamix" rel="nofollow">https:&#x2F;&#x2F;32bits.substack.com&#x2F;p&#x2F;bonus-fighters-megamix</a>
chiffre012 months ago
Playing through Shenmue 1, they did a really good job capturing the vibe of the area. Looking at random points in Yokosuka just feel like Shenmue.<p><a href="https:&#x2F;&#x2F;www.google.com&#x2F;maps&#x2F;@35.2781594,139.677597,3a,75y,279.91h,91.8t&#x2F;data=!3m7!1e1!3m5!1s9BMtJmpsfLmf6eDTU9g7GA!2e0!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fcb_client%3Dmaps_sv.tactile%26w%3D900%26h%3D600%26pitch%3D-1.7996999832817977%26panoid%3D9BMtJmpsfLmf6eDTU9g7GA%26yaw%3D279.90910171972325!7i16384!8i8192?entry=ttu&amp;g_ep=EgoyMDI1MDMxMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D" rel="nofollow">https:&#x2F;&#x2F;www.google.com&#x2F;maps&#x2F;@35.2781594,139.677597,3a,75y,27...</a>
评论 #43354125 未加载
评论 #43350354 未加载
评论 #43350082 未加载
评论 #43355255 未加载
评论 #43350891 未加载
评论 #43351232 未加载
AdmiralAsshat2 months ago
Reminds me of a similar story about Blast Corps, specifically how they implemented logic to correctly display apparent retrograde motion vis-a-vis the orbit of Venus from the perspective of Earth...all just for what basically amounts to a background animation. [0]<p>[0] <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=FZ6eNJi02Qk" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=FZ6eNJi02Qk</a>
评论 #43346752 未加载
评论 #43346547 未加载
评论 #43345531 未加载
TapamN2 months ago
Shenmue is one of my favorite games. I did a bunch of Ghidra reversing on the Dreamcast version last year, since I wanted to add improvements to it. Like adding bilinear filtering on the sky background, making time run a bit (faster so you can see time specific events like Christmas&#x2F;New Year more easily,) getting the game to run without disc swapping on an ODE, and adding antialiasing (which would require mipmaps to improve rendering performance, which would require higher texture compression levels to get them to fit, which would require a different texture format that supports that...) I never got around to actually implementing any of that, outside of doing some experiments, like forcing bilinear on all 2D elements.<p>I don&#x27;t think I found the sun&#x2F;moon code (or more likely I did, but didn&#x27;t realize what exactly it was doing, Ghidra SH4 has serious problems with floating point instructions making following anything that uses them almost impossible) but I did find most of the other time related code for updating the clock&#x2F;calendar.<p>One weird thing I found while doing that is about the in-game watch. You always have a watch in your inventory, so you&#x27;d think it would be hard coded in, but it&#x27;s treated like any other item. The game also has code to check if the watch is missing and add it back in anyways. But the code that draws the on-screen clock also checks if you don&#x27;t have the watch, and won&#x27;t draw the clock if you don&#x27;t have it (or at least part of the UI clock logic is disabled, I haven&#x27;t actually tried seeing what happens if you don&#x27;t have a watch to verify if my interpretation is correct).<p>On the PAL version, the code that checks for a missing watch is at 0x0c180dc6 (that&#x27;s where the code is loaded into memory, subtract 0xc010000 to get the address in 1ST_READ.BIN), and I think the code for drawing the clock (or at maybe it was just updating the hands of the clock?) is at 0x0c18290a.<p>Dreamcast Shenmue has code to support other video modes, like alternate resolutions (320x240p!), antialiasing, and 24&#x2F;32 bit color. They&#x27;re a bit bugged, like when using antialiasing, the 2D elements being squashed into the left half of the screen, and some strange issue with the screen position for the RAMDAC being setting incorrectly, causing the screen to vibrate left&#x2F;right by a pixel or two, but the 3D models were drawn correctly.<p>24-bit color worked surprisingly well (even if the flag intended to enable it didn&#x27;t seem to work, and I had to force it elsewhere.) I would have thought that having less video RAM free would have caused serious problems, but the game just loaded fewer NPCs. It was strange playing without dithering.
评论 #43349911 未加载
评论 #43348897 未加载
Ros22 months ago
The moon in-game also has a complex implementation. I don&#x27;t think anyone realized this until the team porting the games to modern consoles pointed it out in an interview<p><a href="https:&#x2F;&#x2F;www.phantomriverstone.com&#x2F;2020&#x2F;09&#x2F;ryo-goes-to-moon-shenmue-ii-hack.html" rel="nofollow">https:&#x2F;&#x2F;www.phantomriverstone.com&#x2F;2020&#x2F;09&#x2F;ryo-goes-to-moon-s...</a>
regus2 months ago
I was really hyped for Shenmue when it came out on the Dreamcast, but I wasn&#x27;t crazy about it once I finally played it. It was a glorified point and click adventure game, and it ultimately had no ending or purpose. It was an interesting and ambitious idea for a game though, they threw the kitchen sink in there.<p>My favorite part of the game was playing space harrier in the arcade.
评论 #43349341 未加载
mtillman2 months ago
I read every piece of US magazine coverage during the development of this game until finally 3-4 years later I bought my Dreamcast on launch and eventually Shenmue followed by a boot disc and Shenmue 2 (UK). 6 years of waiting to spend countless hours playing Space Harrier and Pachinko not to mention find some sailors. Absolutely loved this game.
ghostly_s2 months ago
I’m not sure a single person in this thread actually read the article rather than just taking an opportunity to say how much they like the game.<p>I read it and I’m not sure I get the point—it seems in the end what they discovered is the simulated sun position in the first two games are based on each other&#x27;s locations. Not familiar enough with the series to understand what implication that has, but in any case, is it an easter egg or an oversight? It can&#x27;t be both.
评论 #43350227 未加载
nanna2 months ago
Shenmue I and II will stay with me forever. I waited and waited for Shenmue III, and swore that when it came out I would buy whatever it took to play it, but the reviews were so poor that I haven&#x27;t even tried it. Is it worth it?
评论 #43354328 未加载
评论 #43353767 未加载
评论 #43359089 未加载
khaki542 months ago
Imagine being proud of yourself for 25 years, displaying &quot;implemented innovative orbital positioning methodology for Shenmue&quot; on your resume. It was even your promotion case for staff engineer since you did it yourself, and some guy comes by more than 2 decades later and points out that you actually did it wrong
pkdpic2 months ago
I just coincidentally found my old dreamcast while cleaning out my dad&#x27;s storage space... Guess I&#x27;ll be buying some batteries for my VMU...<p>Also excellent write up and discovery, truly inspiring *clap_emoji *bow_emoji
qingcharles2 months ago
My all-time favorite game. What&#x27;s the best version to play these days?
评论 #43350378 未加载
评论 #43349668 未加载
bitbasher2 months ago
Ok, but do they know who Lan Di is?
评论 #43347789 未加载
NooneAtAll32 months ago
I wish the article spent 2 sentences <i>introducing</i> wtf Shenmue is
评论 #43350219 未加载
tt_dev2 months ago
Didn&#x27;t read the article but man do I love this game.
yoyohello132 months ago
Man I loved this game so much as a kid. I remember being enthralled by opening the drawers, lol. I basically played it once a year every year from ages 9 - 16. Some of the enchantment was lost when I played the remaster recently, but still such a great world they built.
评论 #43345522 未加载
评论 #43345476 未加载
评论 #43346484 未加载
评论 #43348116 未加载
评论 #43346031 未加载
评论 #43345459 未加载
wk_end2 months ago
The tl;dr (though you should read!) of the &quot;oversight&quot; is that there&#x27;s a constant used to adjust the sun&#x27;s position that&#x27;s seemingly based on latitude; in the first Shenmue, it&#x27;s set to 22, and in Shenmue II - which uses much of the same code - it&#x27;s set to 35. This is odd, because Shenmue I takes place at latitude 35°, and Shenmue II at 22° - precisely the other way around.<p>If that&#x27;s what&#x27;s going on, it&#x27;s sort of hard for me to wrap my brain around how that might&#x27;ve happened. I could see them &quot;fixing&quot; the Shenmue I code base and then forgetting to &quot;unfix&quot; it for Shenmue II, but I can&#x27;t - even knowing that there were already plans for where the sequel would be set - come up with a story for how they would&#x27;ve accidentally used Shenmue II&#x27;s latitude for the original game.
评论 #43346818 未加载
评论 #43349425 未加载
评论 #43347721 未加载
评论 #43352156 未加载
评论 #43346878 未加载
评论 #43347057 未加载
kowlo2 months ago
What a game. Lost hours to QTE Title (one of the games within the game) <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=drdFhBKDvIQ" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=drdFhBKDvIQ</a>
评论 #43347051 未加载