top | item 46958231

Clean-room implementation of Half-Life 2 on the Quake 1 engine

427 points| klaussilveira | 19 days ago |code.idtech.space

89 comments

order

bni|19 days ago

If you want to play Half-Life today I highly recommend Xash3D FWGS (yes its a super awkward name)

https://github.com/FWGS/xash3d-fwgs

Easy to use Mac build here: https://www.macsourceports.com/game/halflife

jmiskovic|18 days ago

This is engine for HL1 while OP talks about HL2.

I'll add, if you have a VR headset, modded HL1 runs beautifully on it with full hand controller support for gun aiming and crowbar smashing. I've also heard lots of praises for HL2 VR mod bringing the game to new levels, I have yet to try it myself.

nomel|19 days ago

Or, can still be purchased on Steam for $0.99, during sales. Windows only though.

sho_hn|19 days ago

Super interesting! I'm curious what the purpose is, though?

Edit to answer myself: Looks like this is more of an offshoot of the FreeHL projects by the same author, which rewrite GoldSrc game logic to QuakeC to get those games to run on open source engine stacks, where the utility is more obvious. I guess it was just fun to see how hard it'd be to get HL2 content running.

A bit similar to the OpenMW project working on Oblivion and Skyrim content loading on the side, though perhaps that's a more obvious future vector for that project.

its_magic|19 days ago

[deleted]

sdwr|19 days ago

What does clean room mean in this context? They built it from the assets with the game as a reference , but didn't look at the engine source code?

brynnbee|19 days ago

It means they didn't reference any existing or decompiled code from the original client. None of it is directly infringing on any copyright, though it may be doing so indirectly since there have been plenty of lawsuits for tools that contain no copyrighted information can but can used to facilitate infringement (e.g. a tool that decompiles a game ROM)

fp64|19 days ago

>The game is not playable from start to finish. You can play deathmatch and other odd modes.

tsunamifury|19 days ago

De-makes are interesting because they continuously seem to show what may have been possible long ago in ancient engines if teams pushed them even further.

Then again maybe that level of detail even in idtech1 would have required more computing than was available for many years.

plorkyeran|19 days ago

I do suspect this would not run well on a 75 Mhz Pentium 1. It would be very surprising if Quake 1 was actually the pinnacle of what as possible on the hardware of the time, though. id made exactly one game targeting that generation of hardware, and then their next game had meaningfully higher system requirements despite coming out only a year later. The hardware capabilities were changing so fast that there simply wasn't time to iterate on a specific target.

user____name|19 days ago

FTE barely qualifies as a pure Quake engine at this point though, it does tons of stuff.

vkazanov|19 days ago

It does a lot, yes, but also is very much a continuation of the original codebase - i've spent quite some time tinkering with internals of it.

CodeCompost|19 days ago

SSL_ERROR_BAD_CERT_DOMAIN

Seems to be using a dnsft.cloud.zyxel.com certificate. Is this a home router?

opello|19 days ago

https://community.zyxel.com/en/discussion/23595/why-i-get-bl...

Seems like you or someone upstream of you uses a Zyxel brand device that has some kind of dns content filtering enabled. You should be able to get around this on a given machine by configuring an alternate dns provider (dns over https, cloudflare's 1.1.1.1, google's 8.8.8.8, quad9's 9.9.9.9, etc.) or doing something similar at your own router/dns resolver/dhcp server if it's not the thing doing this.

linuxguy2|19 days ago

I certainly don't get that cert. I'm seeing a LetsEncrypt cert for idtech.space with various SANs.

  # host code.idtech.space
  code.idtech.space is an alias for idtech.space.
  idtech.space has address 192.99.32.215
  idtech.space has IPv6 address 2607:5300:60:47d7::

singularfutur|18 days ago

This is what I love about the open source community. Twenty years later and people are still finding ways to make classic games accessible without DRM or platform lock in. Clean room implementations like this preserve gaming history better than any publisher ever will.

lloeki|19 days ago

Interesing, there's more here including HL1 (a.k.a "valve")

Funnily enough the looks of this HL2 through this engine makes it flow more with HL1 than I could expect; an interesting reverse Half Life: Source / Black Mesa / demake of sorts.

homebrewer|19 days ago

Even simple Half-Life 1 mods built on textures and models from Half-Life 2 look much closer to 2 than one would expect. For example this mod, but not only:

https://moddb.com/mods/half-life-dark-future

You won't confuse it with modern Half-Life 2, but the original HL2 engine had far worse graphics than the latest version. Makes you realize how much of the difference between HL2 and HL1 is due to different textures and level design.

unixhero|19 days ago

Is this the way we can have HL3 also?

anthk|19 days ago

Would it work under vanilla quake 1? Ah, no. I can't check it out.

Good job keeping me away with Anubis, btw.