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.

Porting Zelda Classic to the web

447 pointsby MrAwesomeSauceabout 3 years ago

28 comments

marginalia_nuabout 3 years ago
I remember about 20 years ago there was a (IIRC) Java Applet-based multiplayer clone of Zelda: A Link to the Past that was sort of a forerunner the to MMORPGs we see today. It changed names to Graal Online because of the lawyers.<p>Thinking back to it, it was really ahead of its time, not only because it was massively multiplayer, but it had a great level editor and was doing user-created content in the late &#x27;90s.<p>--edit--<p>Oldest I could find on the wayback machine is from 1999, but that&#x27;s a later version that was a standalone exe. <a href="http:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;19991012175711&#x2F;http:&#x2F;&#x2F;graalonline.com&#x2F;index.htm" rel="nofollow">http:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;19991012175711&#x2F;http:&#x2F;&#x2F;graalonline...</a><p>--edit 2--<p>Here&#x27;s a nice writeup: <a href="https:&#x2F;&#x2F;graal.in&#x2F;t&#x2F;graal-zelda-online-historical-thread&#x2F;14203" rel="nofollow">https:&#x2F;&#x2F;graal.in&#x2F;t&#x2F;graal-zelda-online-historical-thread&#x2F;1420...</a>
评论 #31254010 未加载
评论 #31253416 未加载
评论 #31254446 未加载
评论 #31257466 未加载
评论 #31252553 未加载
评论 #31254028 未加载
评论 #31251925 未加载
评论 #31253448 未加载
评论 #31264002 未加载
评论 #31261158 未加载
评论 #31252956 未加载
评论 #31254667 未加载
评论 #31252717 未加载
xahrepapabout 3 years ago
Zelda Classic holds a special place in my heart.<p>My older brother downloaded it thinking it was just a Zelda 1 clone. I discovered it had a quest editor. And it was a very magical moment for me.<p>I spent hundreds of hours never completing any of my projects. It was the first online community I ever joined and actively participated in.<p>Eventually I yearned for for power and discovered Dark Basic. Now I’m a software dev.<p>Zelda Classic was a major spark in my life. And it’s a really cool piece of software. 100% original code, (obviously the default assets are lifted… from another project). It’s got to be a 20 year old project at this point.
评论 #31252096 未加载
评论 #31252270 未加载
评论 #31252076 未加载
zamadatixabout 3 years ago
TIL about Zelda Classic which has apparently been around a long time <a href="https:&#x2F;&#x2F;www.zeldaclassic.com&#x2F;development-history&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.zeldaclassic.com&#x2F;development-history&#x2F;</a><p>Very cool port, I like that it tries to integrate it into the browser features instead of calling it a day after compiling. The lack of D-pad support is a bit jarring considering gamepads are supported but it was still very playable.
评论 #31254920 未加载
kinabout 3 years ago
I&#x27;m ashamed I haven&#x27;t heard of Zelda Classic. As a Nintendo fanboy (my github handle is kintendo), I thank you!<p>Also thank you for this work! When WASM was first announced this is the kind of project that I envisioned we&#x27;d see more of. Instead, everything has been mobile-centric and app-centric but you give me hope.
评论 #31252212 未加载
googlag878about 3 years ago
Just today I ended up giving up on HTML5 gamedev because of the Chrome extra frame of lag issue:<p><a href="https:&#x2F;&#x2F;www.vsynctester.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.vsynctester.com&#x2F;</a><p>If you have Godot or Unity or some other game engine that does web exports, try playing the native and web versions back-to-back of any game that draws a software mouse cursor, and don&#x27;t hide the native hardware cursor so you can compare how much the software cursor lags the hardware cursor.<p>The cynic in me says Google deliberately adds lag to browser games to guard the multi-billions of Play Store game revenues. Web audio has 300ish millisecond latency on many (not all) Android devices.
评论 #31258256 未加载
HanClintoabout 3 years ago
Thank you! I had never heard of Zelda Classic before, but I&#x27;m also not much of a Windows gamer. Porting it to WASM indeed lets me play this when I wouldn&#x27;t otherwise -- thank you! Awesome work!!
kbensonabout 3 years ago
Wow, the link[1] to the custom games (&quot;Quests&quot;) made using the engine shows a lot of things that look fun to play.<p>1: <a href="https:&#x2F;&#x2F;www.purezc.net&#x2F;index.php?page=quests&amp;sort=rating" rel="nofollow">https:&#x2F;&#x2F;www.purezc.net&#x2F;index.php?page=quests&amp;sort=rating</a>
评论 #31255887 未加载
评论 #31260412 未加载
popmatrixabout 3 years ago
Very neat to see this isn&#x27;t just a re-implementation but provides some modernization by providing extra menus, and persistent storage. Great work. Helps make me feel a little less bad to download multiple MBs for what would otherwise be a small emulator + 64KB ROM :) edit: typo
评论 #31253485 未加载
评论 #31252029 未加载
1970-01-01about 3 years ago
This is as awesome as it is illegal :)<p>God speed to OP.<p><a href="https:&#x2F;&#x2F;torrentfreak.com&#x2F;images&#x2F;storman-judgment.pdf" rel="nofollow">https:&#x2F;&#x2F;torrentfreak.com&#x2F;images&#x2F;storman-judgment.pdf</a><p><a href="https:&#x2F;&#x2F;www.documentcloud.org&#x2F;documents&#x2F;4615448-Nintendo-Loveroms.html" rel="nofollow">https:&#x2F;&#x2F;www.documentcloud.org&#x2F;documents&#x2F;4615448-Nintendo-Lov...</a>
评论 #31257972 未加载
评论 #31251878 未加载
MasterScratabout 3 years ago
It reminds me: a decade ago, I had the idea of porting Baldur&#x27;s Gate 2 to the web: <a href="http:&#x2F;&#x2F;lumakey.net&#x2F;labs&#x2F;battleground&#x2F;demo1&#x2F;" rel="nofollow">http:&#x2F;&#x2F;lumakey.net&#x2F;labs&#x2F;battleground&#x2F;demo1&#x2F;</a><p>I initially played with EMSCRIPTEN as well, starting from GemRB, an open-source reimplementation of the engine. But that was boring, as I wasn&#x27;t really getting any sense of how things were working under the hood.<p>So I started reverse-engineering the various file formats (a website called IESDP had most things figured out already) and converting them to PNG, JSON and other web formats. At that point I only knew PHP which made it a pain to work with binary data. Then, I started rebuilding the game from scratch: pathfinding, streaming huge maps using small tiles, animations...<p>10 years later, there&#x27;s still that one single room and single character that were implemented, but it was still fun times.
评论 #31253668 未加载
评论 #31255335 未加载
als0about 3 years ago
This is an awesome explanation about how to port a real (and tricky) native project to WASM&#x2F;Emscripten. Sadly, the game itself seems to crash in Safari after walking around for a bit.
评论 #31252359 未加载
bilekasabout 3 years ago
This is amazing work.. And infact this is the first &quot;Chrome APP&quot; I have allowed to be installed!<p>&gt;WebGL does not support that, so the entire shader needed to be redesigned<p>I&#x27;m blown away how WebGL has come along. But then theres people like this. Great job!
poulpy123about 3 years ago
Not on the web but there is a game engine dedicated to zelda-like game <a href="https:&#x2F;&#x2F;www.solarus-games.org&#x2F;en&#x2F;games" rel="nofollow">https:&#x2F;&#x2F;www.solarus-games.org&#x2F;en&#x2F;games</a>
ubermonkeyabout 3 years ago
No word of it a lie, one reason I bought a Switch was to have access to Zelda again.<p>I am 52 years old.
joe__fabout 3 years ago
Oh this is super exciting! I used to be on the dev team for ZC as Joe123 back when I was a teenager, I mostly worked on the scripting language. I left the community about 10 years ago and I haven&#x27;t seen anything about it since then. It&#x27;ll be great to have a play on this sometime
评论 #31257299 未加载
tadbitabout 3 years ago
This reminds me of The Mana World<p><a href="https:&#x2F;&#x2F;www.themanaworld.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.themanaworld.org&#x2F;</a><p>An MMORPG based on the game Secret of Mana, started around 2003-2004.
ilakshabout 3 years ago
Is there any work to unbundle web assembly applications from the browser? And further, break apart the monolithic web platform API bundle into something like device drivers?<p>Because let&#x27;s say you just wanted a 2d game engine using SDL without shaders and using the mouse. Why do we need to drag the entire browser with 1000 APIs and features into it?<p>Just add something like a framebuffer and mouse input to web assembly. Distribute via IPFS or something.
评论 #31253702 未加载
giorgiozabout 3 years ago
PURE GENIUS the photo at the very end showing the gadget connecting a smartphone with an Xbox controller:<p><a href="https:&#x2F;&#x2F;hoten.cc&#x2F;images&#x2F;zc&#x2F;gamepad.jpg" rel="nofollow">https:&#x2F;&#x2F;hoten.cc&#x2F;images&#x2F;zc&#x2F;gamepad.jpg</a>
anthkabout 3 years ago
On sprites, the Fanwor project has some which are lookalike to the ones of the Zelda for the NES.<p><a href="https:&#x2F;&#x2F;git.tuxfamily.org&#x2F;fanwor&#x2F;fanwor.git" rel="nofollow">https:&#x2F;&#x2F;git.tuxfamily.org&#x2F;fanwor&#x2F;fanwor.git</a>
3npabout 3 years ago
Great writeup!<p>Trying it out, it does not load in Firefox 81 (potentially due to some restrictive security setting here?) but runs great in Chromium after an update.
toastalabout 3 years ago
I absolutely remember printing off a guide in color to work with Zelda Classic as a kid so I didn&#x27;t tie up the phone lines with the internet
fijiaaroneabout 3 years ago
And I have trouble compiling Apache from source.
gwbas1cabout 3 years ago
Awesome!<p>One very minor suggestion: Can you tell me what keys to use (in the UI)?<p>I figured out the arrow keys, but I just don&#x27;t know what keys map to A &amp; B.
评论 #31253169 未加载
评论 #31254770 未加载
stuckkeysabout 3 years ago
Do you want Nintendo to have a bad day? Because this is going to stress them out now.
causality0about 3 years ago
Considering how DMCA-happy Nintendo is I&#x27;m surprised this is till up.
评论 #31254254 未加载
swayvilabout 3 years ago
I assume there will be a world-editor and multiplayer
lelandfeabout 3 years ago
The site&#x27;s theme makes code unreadable when the OS color scheme is Light: <a href="https:&#x2F;&#x2F;i.imgur.com&#x2F;2Sduvye.png" rel="nofollow">https:&#x2F;&#x2F;i.imgur.com&#x2F;2Sduvye.png</a><p>This is happening because the CSS uses `prefers-color-scheme` media queries – you can&#x27;t use those and <i>also</i> have a site theme switcher.
评论 #31253459 未加载
评论 #31252545 未加载
评论 #31252337 未加载
birdyroosterabout 3 years ago
Doesn&#x27;t load, but its the thought that counts