Half-Life 2 in a Browser (hl2.slqnt.dev)

550 points by panza 12 hours ago

modeless 11 hours ago

And Quake 3: https://thelongestyard.link/q3a-demo/

And Unreal Tournament: https://dos.zone/mp/?lobby=ut

There's also https://noclip.website/ which, while not playable, has hundreds of levels from dozens of older games that you can explore freely. Including Half-Life 2, with more accurate rendering than this web port (which seems to be missing many shaders including character eyes).

xhrpost 5 minutes ago

Everyone posting links made me want to find HL1 in browser: https://x8bitrain.github.io/webXash/

notsentient 5 hours ago

There's also Ultima Online in the browser (sanctioned by the official servers). I'm one of the maintainers.

https://retail.classicuo.org/

doodpants 4 hours ago

I visited this page in Firefox and was presented with a message that essentialy said (paraphrasing): "this site best viewed with browser X". Now, I'm not a professional web developer, and maybe there are legitimate reasons why this app is depending on new cutting edge browser features that aren't yet supported by Firefox, but it seems to me that this just shouldn't be a thing anymore.

koolala 3 hours ago

What feature was Firefox missing for it?

edwcross 2 hours ago

It requires a paid account though, doesn't it?

w-ll 8 minutes ago

come on man i got work to do

mondainx 4 hours ago

From this mondain to the maintainers, thanks!

nzeid 4 hours ago

What!? Amazing.

IshKebab 4 hours ago

> sanctioned

Oh you mean it is or isn't approved.

KingFelix 43 minutes ago

That was fun thank you, haven't played quake 3 in awhile, so many memory neurons firing!

navane 4 hours ago

Vinnl 4 hours ago

Sadly that one seems to have been removed.

bmurphy1976 4 hours ago

teabee89 an hour ago

And Duke Nukem 3D made by my friend Gawen: https://gawen.me/webduke

todotask2 6 hours ago

Doom 3, smoother on Macbook M1 but it's too dark that I need to actually increase brightness on Firefox reliably. Is there a better solutions?

https://wasm.continuation-labs.com/d3demo/

Jolter 5 hours ago

I seem to recall that Doom 3 was unplayable dark on my PC, once upon a time.

todotask2 4 hours ago

hoofedear 3 hours ago

calebj0seph 10 hours ago

Also The Simpsons Hit & Run! https://shar-wasm.cjoseph.workers.dev/

dmitshur 2 hours ago

It works so seamlessly on macOS at 6016x3384. What a delight.

sho_hn 11 hours ago

And Tomb Raider

https://eikehein.com/stuff/sabatu

Fan remake of the levels to avoid asset copy, but it's a downstream of the original engine (and loads the original level files just fine), so the real game.

dmitshur 3 hours ago

Also a TR1-4 level and cutscene viewer at https://popov72.github.io/TRN2/.

firasd 10 hours ago

Ha fun--works in my regular laptop in Chrome without any CPU/GPU etc spikes

HelloUsername 5 hours ago

OptionOfT 5 hours ago

I have tried that one and it truly baffles me. If you play it you'll notice the movement of the ships is extremely smooth, vs the original where ships only rotated in increments of 45 degrees.

I wonder how they did this.

belinder 4 hours ago

ionwake 5 hours ago

I personally love openra. It’s a smooth free online implementation of red alert 2 with multiplayer

astlouis44 an hour ago

nadermx 10 hours ago

reconectar an hour ago

noclip website is so dang cool, petition for them to add music. I'd cry if I could hear those ragnarok map songs while exploring.

plastic-enjoyer 10 hours ago

What a time to be alive

rvnx 8 hours ago

What a time, but at what cost ?

Interestingly, these Wasm ports are all about nostalgia games.

I sort-of wish we would live in 1998 (when HL1 was released). Less social network, a more creative internet, LAN parties, IRC / ICQ, easier new connections.

We now have tailwind / material UI, a locked-down Apple ecosystem, Photoshop with millions of nagging screens, centralized mega-corps like OpenAI, and the first bits of World War 3 where drones and robotics are made to kill people.

Misses a lot this free internet (though 1 USD / minute)

bigfishrunning 5 hours ago

vovavili 6 hours ago

freedomben 5 hours ago

peepee1982 7 hours ago

kogasa240p 3 hours ago

> And Quake 3 There is QuakeJS as well.

modeless 3 hours ago

Yeah but my port is better because it supports phones/touch and gamepads and multiplayer over UDP and has better performance and a bunch of other small details.

foldr 8 hours ago

I vibe coded this for exploring levels in the original Deus Ex: https://dxwebview.pages.dev/ (https://github.com/addrummond/dxwebview).

It's a bit janky owing to the vibe coding, but the basic functionality works pretty well. You need the original game data files to use it.

mrtksn 10 hours ago

Interesting, I am not able to play HL2 on Steam because macOS no longer has 32-bit support and Valve never compiled if for 64-bit but here we are, it’s playable on the same OS in the browser.

BTW IIRC there was some method to convert the 32-bit game binaries to make them run on recent macs. I remember doing it.

gonzalohm 6 hours ago

How is that possible? 32 bits should be compatible with a 64 bit machine. You can always use less bits for your memory addresses.

Are there any other architecture changes that are preventing 32 bits binaries from running? Does that also mean that old software no longer runs unless there is a 64 bit version?

In windows you can run x32 and x64 executables in a 64 bits machine

lynguist 6 hours ago

Monsieur, on Windows this problem was solved with a large development effort, that's why it goes unnoticed on you. Note that CPU level instruction emulation is literally the easiest problem of emulation. (Why do you think you can't just go and execute Nintendo Switch binaries on your Mac M1? Both run ARM64.)

On Windows, this was is implemented as SysWOW64. WOW64 means Windows on Windows 64. It makes the userland emulation and pretends towards the process that everything around him (incl. drivers) are the 32-bit ones.

Source: Microsoft.

https://devblogs.microsoft.com/oldnewthing/20081222-00/?p=19...

odo1242 3 hours ago

MrDOS 6 hours ago

Only the very first few models of Intel Macs had strictly 32-bit processors (the 2006 iMac and Mac minis with Core Solo/Core Duo processors), and none of them were realistically capable of playing Half-Life 2. Apple is guilty of many sins, but this isn't one of them. Valve should never have shipped a 32-bit application in the first place. The binary was already obsolete before it even left Bellevue.

ajross 4 hours ago

jmmv 4 hours ago

functionmouse 6 hours ago

Apple goes way out of their way every few years to ensure old games stop working

naikrovek 3 hours ago

Retr0id 4 hours ago

In the case of hl2 the source code for the engine has leaked, so you can recompile it for your target platform of choice, no "conversion" needed. I got it running natively on aarch64 linux a while back, with no issues.

naikrovek 3 hours ago

wat10000 4 hours ago

Everything in the process has to agree on how big the pointers are, or you need code to convert between the formats at the boundary. That means you either need 32-bit versions of all OS libraries, or you need a complicated shim layer. Apple went for having 32-bit versions of all OS libraries. But this isn't free to maintain, and they dropped them after a few years.

freetonik 4 hours ago

There's a way to compile HL2 on ARM Macs, I've written a guide here: https://rakhim.exotext.com/how-to-play-half-life-2-on-mchip-...

dgb23 8 hours ago

Disheartening. macOS seems to get less and less support in a way. For example some of the Blizzard remakes don't run on macOS but the originals do.

Klonoar 9 hours ago

I admit that Valve’s approach to Steam on macOS has never made sense to me.

shakna 7 hours ago

I think Apple may have burned a lot of developer bridges with Metal, deprecating OpenGL, and ignoring Vulkan.

charcircuit 7 hours ago

doublerabbit 8 hours ago

This was more Apple's doing rather than Valve's.

Valve wanted steam to co-exist on the mac in the early days and John Sculley of Apple didn't want Apple to be seen as a gaming device or a "personal home computer". So they ceased contact with Valve and the rest is history. https://www.youtube.com/watch?v=lPTLPXNtb2I

Apple refused to license joysticks so they could prevent customers from considering early mac's as game machines and deliberately refused to support games on the machine. Myst was only few that were exclusive to the Mac; that they then ported to PC.

Wowfunhappy 8 hours ago

doginasuit 6 hours ago

jillesvangurp 9 hours ago

On paper qemu should be able to do this. The hard part is hardware acceleration for the GPU. Without Apple putting effort into supporting this with e.g. documentation, that's a bit hard. That's also holding back linux support on Apple hardware. But it's a fixable problem that will only get easier as hw gets better and faster over time.

ErroneousBosh 9 hours ago

> The hard part is hardware acceleration for the GPU

Is it, though?

How Hard Can It Possibly Be to just do a software GL renderer that emulates a mid-2000s Radeon, these days?

account42 8 hours ago

philipwhiuk 5 hours ago

MacOS removing 32bit support was a massive pain. A bunch of Ambrosia Software games no longer work too (e.g. Escape Velocity Nova, Apeiron).

taylor-tg 3 hours ago

I know it's not a remake, but Endless Sky[0] seems to be a pretty faithful "reimagining" of the EV series. Even has an Android port on F-Droid. I haven't played through much of it, but the first few minutes gave me immediate nostalgia.

[0] https://endless-sky.github.io/

anthk 4 hours ago

Wine 11 for Mac will run 32 bit binaries without neeeding 32 bit libraries.

iberator 5 hours ago

wine?

memoryuns4f3fff 10 hours ago

Here is a link to the blog post since I didn’t see it mentioned

https://www.slqnt.dev/blog/hl2-in-web

Cthulhu_ 8 hours ago

Yeah probably better to link to this instead, else everyone clicking will start downloading the big files.

Mossy9 3 hours ago

How (why) does that site block reader mode... At least on Firefox Android it offers the reader mode button, but turning it on just redirects back to the page (which is too wide, hence the reader mode attempt)

utopiah 9 hours ago

That's also the kind of Website, beside the impressive technical result, that reminds me nothing can be blocked.

It's not about bypassing VPN or deep pack inspection, rather it's about how once anything, including a very complex video game (like here) to an entire OS with a host machine (like QEMU on WASM, or a random InternetArchive link about emulation) is "just" a Web page that can be hosted... on anything (including a 10 bucks Rasperry Pi Zero which can also be an AP, a phone obviously, heck even a e-cig!) then it doesn't matter what is "blocked" as it can be brought to anyone with no installation.

brynnbee 29 minutes ago

I made the old MMO EverQuest but in a browser, complete with a custom server built from the ground up. It's in a bit of a state of transition right now and sorta buggy, but:

https://www.idlequest.net/

It shares the neat feature of the HL2 project in that it doesn't need any installation, and it downloads zone files (which aren't huge) as needed. It can also running around and kill/loot things automatically for you!

account42 8 hours ago

Sounds like companies should start locking down browsers to disable WebGL, WASM and other similar APIs targeted at apps as opposed to web pages. I would welcome this if it got web developers to stop using more than they actually need.

utopiah 4 hours ago

Tricky to block WASM. A lot of useful Websites use for genuinely good usage. Can be for syntax highlighting, chess engine, etc and the same goes for WebGL or WebGPU, they are used for responsive UI in dashboard, for data visualization, for video rendering with effects e.g. blurring a background behind a person thus privacy, etc. Blocking either of those would break a lot of modern useful Websites.

itomato 6 hours ago

You’re thinking of Facebook, and you can still get that.

postatic 5 hours ago

Cool!

I recently ported Doom on browser so that you can easily play multi-player (up to 4) completely free (you can host it yourself on Cloudflare)

https://playdoom.ossy.dev/

rwoerz 4 hours ago

Cool, so now I can leave my lawnmower where it belongs.

https://news.ycombinator.com/item?id=39521535

chamomeal 2 hours ago

That is so wicked cool, I’m going to try this later today!!

hwc 5 hours ago

With WASM and WebGL being mature technologies, I'm not sure why there aren't more video games published this way. For really big games with lots of assets, having those assets in local storage makes sense. But I wouldn't mind if a game "installer" is just your browser asking "This game wants to use up to 20 GB of local disc space. Is that okay?"

dandersch 3 hours ago

Technical reasons I know of:

- Support from major engines is still bad: Unreal Engine does not have web exports. Godot 4 does not support them when using C#. That only leaves Unity.

- While WebGL is mature, it's based on openGL es3, which is an ancient api/shading language with limited features. If you were previously targeting vulkan/dx12, now you have to restrict your feature set or find (costly) workarounds to make webgl support happen

- WebGPU could be a better fit, but support is still not ubiquitous (Firefox, Linux or older phones are especially bad)

- SDL_GPU (SDL3) still has no WebGPU backend

astlouis44 an hour ago

Unreal Engine 5 does support the web, albeit as a third party implementation (my company)

We spent the last several years building out a WebGPU RHI for UE5, along with tooling to make games load fast using asset streaming, while using less memory. We were recently featured by Gamesbeat.

You can read more about it below or check out our website:

https://gamesbeat.com/simplystream-unlocks-web-compatibility...

https://simplystream.com/

badsectoracula 36 minutes ago

The fact the site died after being posted here might be an indication why :-P.

nickpeterson 5 hours ago

I’ve always wondered a bit about the ssr side of these things a bit. Something like time crisis where the main video is pre-rendered and streamed but the interactive elements (enemies, explosions) are superimposed in front on the client. Feels like you could make a very low bandwidth experience (around the same cost as a YouTube video plus some assets?).

Rohansi 2 hours ago

But why not just render everything 3D? GPUs are more than good enough and it will look more consistent.

kllrnohj 3 hours ago

For what purpose, though? Why saddle yourself with the overhead & restrictions of WASM and the limitations of WebGL (or even WebGPU), just to run in a browser? The typical answer for running in a browser is the fast deployment, but if the user has to sit through a 20GB download anyway, then what's the point? Just to avoid needing an install wizard? And in case you aren't aware, 20GB would actually be a relatively small game. 60GB+ is quite common now (the more recent call of duties tip the scales at 140GB)

Rohansi 2 hours ago

> but if the user has to sit through a 20GB download anyway, then what's the point?

They don't have to unless the game makes them. Assets can be streamed in. This Half Life 2 port streams in each chapter so you are playing without having the entire game downloaded. World of Warcraft is over 100GB but you can start playing with only a fraction complete and it will continue downloading as you play

kllrnohj 5 minutes ago

ex-aws-dude 2 hours ago

nnevatie 5 hours ago

Because you'd be missing the market and monetization layer that Steam so conveniently provides.

ex-aws-dude 2 hours ago

Tech people underestimate how much gamers care about performance

You see that a lot with all the game streaming platforms like Stadia

There's a whole mainstream culture of custom building PCs to maximize performance/value and YT channels focused on game perf like digital foundry are super popular

hbn 3 hours ago

Remember that any time the browser gets more free-reign on the PC it will be 0.01% used in good faith and 99.99% either unintentionally misused or maliciously abused to make computers worse for people who don't know how to diagnose these things.

Just look at web notifications. Maybe it's nice that you can get email alerts on your PC without having to install an app, but now every news site and sketchy clickfarm on the planet is trying to send notifications to get grandma back on their website, showing her ads.

Users are so accustomed to popups and cookie banners and what have you, they've been trained to click "sure, accept, whatever, just let me use the website" so permissions prompts may as well not exist.

I do not like the effort to make webapps as capable as desktop apps. Visiting a website and hitting "accept" which could easily be done by accident should not be offering anywhere near the level of trust and permissions to my system as installing an application. The friction of installing an application is not an inconvenience, it's a feature.

LandenLove 11 hours ago

As much as I dislike webdev stuff, I love the way you can distribute entire programs through WASM. Super cool stuff! For those who are interested, I recommend checking out Godot for exporting games on the web. It's really easy to do and you can host it on Itch.io

roflcopter69 8 hours ago

Isn't Godot kinda flawed for deploying to the web? For example, no C# as of now, although there have been plenty of efforts to make it work. Or AFAIU audio being forced to stay in the main thread which can cause glitches. I just mean that it's not all fun and games as soon as you want to make a more ambitious game and not just a quick demo or game jam thingy.

LandenLove 7 hours ago

I found GDScript to be quite powerful in terms of functionality. I don't have experience in professional game Dev to be aware of the benefits of C# beyond it being the industry standard for Unity.

Single threaded audio is a big concern. I haven't implemented music in my game yet to know if it is a deal breaker.

The main problem that I have run into is shader compilation stutters on the compatibility render. Makes the game basically unplayable. My work around was to spawn certain objects on the main menu out of sight to force compilation. I believe the forward renderer has some pre-compilation.

roflcopter69 7 hours ago

tancop 2 hours ago

tapoxi 6 hours ago

Godot 3.x supports C# on the web because it uses Mono.

Godot 4.x migrated to CoreCLR since Mono is a dead end, but Microsoft insists on .NET being the entrypoint in a WASM build. MS initially promised support for .NET being invoked by something else but dropped the feature, leaving Godot stranded. The current proposal is to make Godot a library (libgodot) invoked by .NET.

entropyneur 11 hours ago

Whew. Crashed before I sunk my day there.

butlike 4 hours ago

Did it also crash on the part where you exit into the city square? Cause that's where it crashed for me.

entropyneur an hour ago

Yep.

paganartifact 3 hours ago

The ugliest site in the world that just starts loading and saving files without user interaction.

Give me a play button, let me initiate the install, show me what the hell it is first.

This looks no different than a scam phishing link

zamadatix 2 hours ago

It only loads the first 50 MB needed to start the game at first, as you interact/progress it loads more. 50 MB is definitely at the boundary of "how many users appreciate a button vs how many are ignored they have to click it to load the initial page" size.

Having to click a button to see anything itself is even a scammy pattern as it's used by scam sites to get more permissions before the user has a chance to doubt the content at all.

Rohansi 2 hours ago

Pretty sure it's just the default Emscripten page. It is bad and most demos don't bother changing it.

0x0 10 hours ago

I just wish Valve could add official macos-arm64 builds of the various hl2 games on Steam :-/

mynameajeff 5 hours ago

Does anyone know some of the rebinded controls? The main menu doesn't show them and I can't figure out how to reopen the menu during gameplay or any using the bindings that are usually set to the function keys. The page doesn't seem to have any info included like that kind of thing.

Edit 1: crouch is bound to C according to the blog post, but that's the only one mentioned. Edit 2: You can use key_listboundkeys from console. Also can just open the menu with `

themonsu 4 hours ago

Platforms like geforce now are already the superior ways of playing on Mac, as so many games are never ported and old games stop working.

mclau153 3 hours ago

I wish there were more github deployments of these, when people make these custom websites they are more likely to be blocked

ironhaven 11 hours ago

First half life one in browser now we have half life 2! I guess it’s that time again Mr Freeman

typon 10 hours ago

I remember saving up for a year to buy the ATI Radeon 9600 XT (I think it was $200 MSRP) so I could play the game on high settings. Now we can play it inside a virtual machine on a crappy laptop. What a journey

WarmWash 3 hours ago

I remember when the game files got hacked before release, and you could run around in half completed maps and small area snippets. I spent hours running around in awe of the new physics engine

noufalibrahim 8 hours ago

I was just going to say the same thing. I couldn't afford the rigs needed to run any of these games and never really played them. Now, it's running inside a browser on a laptop.

itomato 6 hours ago

…while inside Jira working on a ticket.

https://github.com/wjkennedy/jira-quake3

comprev 10 hours ago

Same here - splashed out crazy money upgrading my PC to play HL2.

After that moment I switched to consoles.

iso1631 10 hours ago

In a few years todays high end AI models will run on your watch

Of course that assumes we maintain open access to compute that we've enjoyed for the last half century, and I doubt that very much.

Stallman warned about the dangers of software being closed [0] 30 years ago, and the majority of modern IT industry just laugh a that sort of stuff because you can't make a billion dollar startup with that attitude, but I think the restrictions on owning the hardware at all will probably come first.

[0] https://www.gnu.org/philosophy/right-to-read.en.html

alt227 6 hours ago

> In a few years todays high end AI models will run on your watch

Although possible with cpu power, I dont think you will ever get enough ram in a watch to run a decent local LLM.

I also dont think the high ram requirements for running them will come down at all.

pelagicAustral 10 hours ago

Ah! Just in time for HL3

el_peaton 10 hours ago

Along with Team Fortress 3 and Portal 3 ofc. :)

denkmoon 5 hours ago

Input doesn’t work so well on my iPad (lol) but seeing that intro rendered in safari on said ipad, wild. So cool

hwc 5 hours ago

A few years ago, before I bought a Nintendo for my kid, he was playing Minecraft on an iPad. I tried to pair a Bluetooth controller, and had no luck. I think the OS was too locked down. At the same time, I could connect a Bluetooth controller to my Android phone and play Minecraft with no problem.

In fact, I've said for a long time that I wish I had a nice Android tablet with a Tegra chip that I could both use as regular tablet and as a game system.

antalis 10 hours ago

The screens are missing and the lips don't move, but it's pretty close!

hwillis 5 hours ago

for me the eyes are also showing the unwrapped texture of character's own heads, which is extremely unnerving lol

ramon156 9 hours ago

The blog post mentions that the animation system was disabled, because it caused a lot of issues

vladar107 10 hours ago

What's the biggest bottleneck you hit - GPU compute, memory bandwidth, or network latency for asset streaming? Curious how it compares to native WebGPU.

Artoooooor 8 hours ago

What a time to be alive. My suggestion: progress bars instead of throbbers during loading data.

fuzzy2 9 hours ago

Very cool. The download progress bar is broken though, it receives values 0-1 but the max is set to 300.

Yizahi 5 hours ago

If anyone is nostalgic about HL2 and want's revisit it, I highly recommend Black Mesa remake, it's mind blowing in a good way.

kllrnohj 3 hours ago

While you got the Black Mesa remake confused, HL2 did get a free 20th Anniversay Update a couple years ago: https://www.half-life.com/en/halflife2/20th

So it's still worth a revisit :)

omni 4 hours ago

Isn't Black Mesa Half-Life 1?

jjice 4 hours ago

I believe you're correct, and the Half-Life wiki seems to support that: https://half-life.fandom.com/wiki/Black_Mesa_(game)

Yizahi 3 hours ago

Oh, sorry, you are correct. My brain melted a bit in a heat :)

otikik 4 hours ago

Yes, but with several asterisks.

* Graphics are better (this should not be a surprise)

* Some maps have been made shorter (the underground railway tunnels, if my memory serves)

* The last part of the game (Xen) was pretty much completely overhauled, and in my opinion, improved.

This is from memory so I might be getting one or two details wrong.

wilkystyle 4 hours ago

What did you like about it?

Yizahi 3 hours ago

Very competent rework with good graphics.

schappim 10 hours ago

If they have halflife 2 in the browser, I wonder if this means they can do original CS in the browser too!

panza 10 hours ago

zuzululu 2 hours ago

few questions

1) how are games now showing up in browser?

2) how are they porting it, whats the process, can LLM do it?

3) how is it legal? how are they monetizing it ?

AndriyKunitsyn an hour ago

1) They were in browsers since 2000s. Then Steve Jobs held a grudge with Adobe and Flash took a major blow. Today, we successfuly reinvented the wheel using "open" technologies - on the client side at least, the authoring tools of Flash are still uncomparable.

2) WebAssembly, compiling the leaked HL2 code. The graphics stack is WebGL.

3) Absolutely illegal, it exists until a cease&desist comes from Valve. We may see it taken down even today. They aren't.

mclau153 2 hours ago

Art assets are the most controversial part about this, using the code is also controversial but can be obfuscated much easier than the art can

bozdemir 11 hours ago

What a time to be alive :D

GL26 9 hours ago

Is there a repo for this ? Can we mod it ?

Beijinger 11 hours ago

play-cs.com

othmanosx 9 hours ago

What about gaming on a mac?

AzzyHN 11 hours ago

[flagged]

crote 10 hours ago

Valve already gave Half-Life 2 away for free, and released the source code of the HL1 engine.

Is it technically illegal? Yeah, but Valve isn't losing out on any money, and there's no way they're going to risk the negative PR blowback they'd get for a takedown.

Besides, IP law is dead. The rise of AI made it pretty clear that you can steal literally anything without consequences.

Cthulhu_ 8 hours ago

Giving things away for free (at one point) is not the same as making it public domain or relinquishing your (copy)rights. Source available is not the same as open source. Open source code does not mean open source assets/product. I find it weird that this needs to be explained in this community.

crote 7 hours ago

nba456_ 9 hours ago

>Besides, IP law is dead. The rise of AI made it pretty clear that you can steal literally anything without consequences.

God, AI keeps making life better than I could've ever imagined!

zombot 8 hours ago

dminik 10 hours ago

GoldSrc (HL1 engine) is very much not open source (or even source available). There's at least one open source remake (which is possibly illegal due to using the SDK) but no official release.

crote 7 hours ago

flordaman 9 hours ago

No no, you can't steal anything without consequences, only big corperations who are making slop machines(tm) can.

account42 8 hours ago

foldr 8 hours ago

crote 7 hours ago

rvz 6 hours ago

> Yeah, but Valve isn't losing out on any money, and there's no way they're going to risk the negative PR blowback they'd get for a takedown.

So that makes it okay to pirate and steal games developed by your fellow indie game developers as well?

> Besides, IP law is dead. The rise of AI made it pretty clear that you can steal literally anything without consequences.

Try doing the same thing to Nintendo.

Even large companies like Anthropic were not going to risk going to trial and getting bankrupted of over $120B+ in damages in using pirated copyrighted eBooks for training. The best case was a settlement for $1.5B which that is a record settlement in copyright law.

account42 8 hours ago

This project seems perfectly congruent with current year industry standards regarding copyright, which are to move fast and lobby for permission later.

londons_explore 11 hours ago

That is up for the copyright owner to enforce or not to enforce.

Until they decide, we can't know if it's illegal or not - who knows, this site might have a license.

KeplerBoy 10 hours ago

It's not legal just because the copyright owner doesn't immediately sue you.

simondotau 9 hours ago

account42 8 hours ago

Cthulhu_ 8 hours ago

A crime is a crime even before a judge rules over it. Sure, innocent until proven guilty, but most people know when they're doing something wrong and then don't do it.

Of course, this is a lot more grey area for copyright violations etc because it's a civil matter.

__alexs 7 hours ago

rvz 10 hours ago

It's quite dangerous to make unsubstantiated comments and assumptions on US copyright law without the proper research.

Valve still owns the copyright to the game and just because they won't do anything now does not mean it is legal to redistribute it without their consent, especially when we know that the game is still being sold. [0]

They (Valve) reserve the right to enforce that and this site clearly does not have such a "license" and haven't disclosed as such. Why would you expect Valve to be in discussions with a 15 year old to redistribute the game for free?

So just say you do not know.

[0] https://store.steampowered.com/app/220/HalfLife_2/

Ukv 9 hours ago

account42 8 hours ago

naikrovek 6 hours ago

How is it that this came to my Apple-Silicon Mac before Valve could do it natively? How could it possibly be easier to create a complete-enough virtual machine that runs in a browser and the compiler for it than it is to port the native application?

I wish we could spend as much time on native application development as we do on horribly crippled and slow browser application development.

Web technology is so non-sensical to me. "you can run an application without installing it!" Well, friend, installation is not required either, and we can deliver applications on demand, and we've done it before. "You just visit a page and you can program the macros on your keyboard!" Again, it's not like those applications are large; they could be delivered on demand if we wanted.

But we don't want that, do we? We want people to remain online under any circumstance, we desparately want their time, so we require that people be online if they want to program their microcontroller and they don't know how to do it without visiting the very convenient webpage.

If people spent 10% of the effort on native applications that they spent on web applications, we would be so much further advanced than we are now. If you're a developer, targeting the web is so seductive, so easy in comparison, that we all have to be online to do anything, now. We all have to run two dozen Electron apps because developers want to have an easy time at the expense of every user.

0x6c6f6c 32 minutes ago

That's a somewhat reaching use of the word "natively".

It's being run through the equivalent of a virtual machine. So it's really quite similar to the layers used to abstract away platform specifics like Wine / Proton does for Windows compatibility. Instead of DXVK you have WebGL.

astlouis44 20 minutes ago

So this port isn't a straight WASM port, you're saying they're running the Windows binary and translating the DirectX8 graphic commands over to WebGL..? Am I understanding correctly?

Rohansi 4 hours ago

> How is it that this came to my Apple-Silicon Mac before Valve could do it natively?

Why should Valve update their old games to work on Apple Silicon? They're old and only 2% of Steam users (clients?) are on macOS.

Also, this port works offline in your browser. If you've loaded it up before the assets are cached and you can play with no internet. Yes, even if you've closed the tab and open it again later without internet.

DANmode 5 hours ago

> I wish we could spend as much time on native application development as we do on horribly crippled and slow browser application development.

But native to what?

Windows is no longer the commonality between all users.

The browser has that role, now.

> We want people to remain online under any circumstance

Webapps often have offline-first functionality,

which is one of the biggest strengths of a progressive web app.

hwillis 5 hours ago

browsers aren't common either. Standards, formats, and interfaces are, which is exactly what WASM is and what this demonstrates. Native apps don't need a common operating system or even a common core like nix. They just need to support a common interface, like browsers do.

NovaCode37 9 hours ago

Looks pretty good

acosmism 8 hours ago

i need a gary's mod

lucas_davis 2 hours ago

nice game

diimdeep 9 hours ago

Cool, but then game hangs in city square.

globular-toast 10 hours ago

I've played this from the start until around Ravenholm probably close to a hundred times. It's so familiar to me. There's some funky stuff going on for me, though. The characters' eyes are all wrong. G-man had no eyes at all. And the giant screen with Breen on it was missing.

Can't believe it runs as well as it does on my non-gaming laptop without even seeming to struggle. It's funny when you leave a hobby for a while. I haven't played games since the HL2 era so for me this is still state of the art.

I did say a couple of years ago that if HL3 ever came out, and it was good, that it would make me buy another gaming PC. But with current prices I don't even think that would make me do it.

Hamuko 10 hours ago

Tried it on my M4 iPad Pro and was surprised that it works - to a degree. NPCs (Gman and the citizens on the train) seem to be missing eyes and have no mouth animations. FPS was pretty poor too, and it was ass to use the camera on the trackpad.

gambiting 11 hours ago

What I find incredibly impressive is that it just loaded in and seems to work fine on my phone. So cool.

jessinra98 5 hours ago

I loaded this up on my old Intel MacBook half-expecting it to crash instantly, and it actually ran through the train station at a solid clip before falling over in the canals. Anyone know how the shader work compares to the actual Source engine?

rvz 11 hours ago

[flagged]

albertgoeswoof 11 hours ago

Yup. I was going to finally buy half life 2 today but now I’ve seen this I guess I won’t need to.

Hard times at Valve, I suppose they’ll have to find more children to start gambling with them.

zamadatix 3 hours ago

I don't think they wrote the comment because of the impact to Valve. After all, they said legal rather than ethical and the page already seems to be gone (hopefully just a temporary hosting thing due to popularity rather than a takedown thing, but it will soon become the latter regardless).

If you want these kinds of things to stay up long enough for many people to see/use them you have to work around the legal limitations (regardless of whether they make ethical sense). Most commonly, make the site apply as a diff to the original content/assets the user provides.

linzhangrun 11 hours ago

lmao :)

tmountain 10 hours ago

Someone has to look out for the big guys! /s

m00dy 11 hours ago

looks like you forgot to add /s tag to your comment :swh

fragmede 10 hours ago

haunter 11 hours ago

[flagged]

charcircuit 10 hours ago

2 wrongs don't make a right.

haunter 10 hours ago

account42 8 hours ago

gempir 8 hours ago

It's only legal if you are a billion dollar AI company

sudo_cowsay 11 hours ago

Is that why I can't access the site?

AzzyHN 11 hours ago

It works on chromium-based browsers at least

zamadatix 3 hours ago

koolala 10 hours ago

legality != morality

foresto 10 hours ago

In which jurisdiction?

hmry 10 hours ago

Every signatory of the Berne convention or member of the TRIPS agreement, and most others too.