TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Show HN: A remake of my 2004 PDA video game

106 点作者 victorNicollet4 个月前
My background project for the last two years has been re-implementing my 2004 C++ shoot&#x27;em up game in TypeScript + WebGL, and it&#x27;s finally done (just in time for the 20th anniversary!)<p>Play the game online: <a href="https:&#x2F;&#x2F;nicollet.net&#x2F;blog&#x2F;darklaga&#x2F;darklaga.html" rel="nofollow">https:&#x2F;&#x2F;nicollet.net&#x2F;blog&#x2F;darklaga&#x2F;darklaga.html</a><p>Technical article about the remake: <a href="https:&#x2F;&#x2F;nicollet.net&#x2F;blog&#x2F;darklaga&#x2F;remake.html" rel="nofollow">https:&#x2F;&#x2F;nicollet.net&#x2F;blog&#x2F;darklaga&#x2F;remake.html</a><p>I have tested Firefox, Chrome and Edge on desktop and mobile (no access to a device capable of running Safari).<p>It&#x27;s amazing how much difference 20 years makes: the hardware is so much more powerful, the web as a deployment platform is so much easier than side-loading onto a PDA through a serial cable or sharing .exe files through e-mail, and my experience as a professional developer makes almost everything so much easier... but at the same, it didn&#x27;t feel that the language, editor or debugger (TypeScript on Visual Studio Code) were significantly better than good old Visual C++ 6.<p>Repository with the code of the remake: <a href="https:&#x2F;&#x2F;github.com&#x2F;VictorNicollet&#x2F;Darklaga">https:&#x2F;&#x2F;github.com&#x2F;VictorNicollet&#x2F;Darklaga</a> (sadly, I cannot provide the video and audio assets themselves under any open license).

15 条评论

3willows4 个月前
Good stuff! Is there any chance you could write some instructions on how to make &quot;darklaga.bin&quot; locally.<p>I ran &quot;npm install&quot; and then the build script, but then got a bit lost.<p>When I open dist&#x2F;darklaga.html, my browser dev tools (correctly) tells me that I can&#x27;t get at &quot;darklaga.bin&quot;.<p>I worked around this by going on the live demo, grabbing the &quot;darklaga.bin&quot; from the dev tools &quot;Networks&quot; tab, and plugging it to the dist&#x2F; directory. But it would be even better if I could just download the repo and make the bin from there.
评论 #42602036 未加载
评论 #42596835 未加载
theogravity4 个月前
This is pretty fun! There&#x27;s an annoying issue when playing from mobile safari on iOS where the canvas scrolls along with your finger. I think there&#x27;s an HTML directive that can probably fix that but the name escapes me at this time.
评论 #42601938 未加载
ajnin4 个月前
Good old shmup, that&#x27;s a genre that is sadly fallen into disfavour these days.<p>I played a bit however after 2 minutes or so some enemy ships get stuck going in a square pattern across the edge of the screen where they are impossible to hit and the game stops progressing. I refreshed once and got the same issue after a few minutes (Firefox).
评论 #42601955 未加载
评论 #42597355 未加载
pbalau4 个月前
Addictive game, well done. But why do you think WebGL is going to still exists in 20 years? Flash seemed to be here to stay, considering how much content was made for it, then &quot;suddenly&quot; gone.<p>&#x2F;edit:<p><i>Whether WebGL as a whole will be replaced by WebGPU remains to be seen, but the 1.0 feature set is simple enough that I can imagine web browsers implementing those in terms of WebGPU, whereas the 2.0 features are more likely to be dropped, because they were never expected to be universally supported.</i><p>Well, this is a possible reason, but I&#x27;m not sure I agree with.
评论 #42594458 未加载
fancyfredbot4 个月前
Great stuff! Amazing that playing a game written in 2004 which follows the style of games written in 1994 feels current in 2025 just because it runs in my web browser. But nonetheless it did feel modern and it was also really good fun.
onehair4 个月前
I&#x27;m currently thinking of rewriting a personal website from next.js to plain html&#x2F;css&#x2F;js. Just don&#x27;t want no bundling no more. My reasons are similar to yours, but one that&#x27;s been itching at me was the loss of clicking view source and learning about code directly from a page with ease.<p>Didn&#x27;t know I could still do typescript and just have my workflow strip the annotations out though. That&#x27;s really worth exploring.
butz4 个月前
Congratulations, looks great, and feels addicting. I wonder if keeping ship offset from touch point was intentional game design choice?<p>And regarding testing on Safari, if you have access to any Linux distribution, you can try testing on GNOME Web, it uses WebKit, same rendering engine as Safari (with probably some minor differences).<p>Finally, you should put this game up on itch.io, as I am sure some players might like to leave some monetary support.
评论 #42601997 未加载
mmastrac4 个月前
This is ridiculously fun, kudos. I could definitely waste a few lazy afternoons playing this.
hombre_fatal4 个月前
I didn&#x27;t understand how the pick-up system worked nor how to trigger the progress bar once it filled up. But I made it to the end on Normal with 3.7 million points.<p>Nice work. Loved these sorts of games as a kid.
npalli4 个月前
Congrats!. Curious if you tried to run your game in C++ of 2024. What kind of improvements did you see (speed, performance, etc..) compared to doing it in 2004.
评论 #42565300 未加载
duiker1014 个月前
Very cool! I&#x27;m actually curious to learn more about how the bin conversion works. The pack files are pretty interesting!
purple-leafy4 个月前
reallyh fun game, made it past the second boss then died. Was a bit confused about pickups and how they worked, there was so much happening on screen haha
Tor34 个月前
It works fine in Opera on an old Android tablet.
diggan4 个月前
Cool (and intense!) game :) Pretty impressive you had something like that running on a PDA 20 years ago, I was probably playing J2ME games on a Sony Ericsson at that point so don&#x27;t know the performance of those.<p>This constraint + your solution was pretty interesting:<p>&gt; Only use technologies that can be expected to still be present (and backwards-compatible) 20 years from now.<p>I&#x27;d bet on that in 20 years TypeScript will no longer be maintained and also no longer be the most popular transpilation source language for JavaScript. Seems the JavaScript ecosystem always eventually finds a new &quot;source&quot; language even though everyone at the time is certain it won&#x27;t happen with <i>this current one</i>.<p>Probably still wouldn&#x27;t be hard to get the game running though, will still be easy to install old TypeScript compiler and run it.
londons_explore4 个月前
Maybe by 2045 AI will be sufficiently advanced to simply say &quot;make this old game run on my new PC&quot;, and the AI will read through every line of code, pixel of textures, and make a faithful playable reproduction in seconds.<p>If that&#x27;s the case, it really doesn&#x27;t matter what technologies you use.