(this is old news, I know, I'm just reposting stuff from my idtech.space account) One of the highly requested features in Xash3D FWGS was player decals. The GoldSrc implementation, to be honest, sucks ass. For some reason, they generate a WAD file, then pack it into a special file format archive that acts like a cache called HPAK (that custom.hpk file!). File limit size was a pathetic 16 kilobytes, but understandable for it's time. Step by step, we got rid of this mess. Unkle Mike implementedβ¦
hm, it's almost as if some of these maps were intended to have lit water... ...no, of course, they mostly weren't, but soon level designers would be able to easily configure it through worldspawn's key/value settings in a new feature coming to xash3d-fwgs
Support of lightmapped water from ericw-tools. It's so ugly but people like it for some reason.
Instead of trying to add my software water implementation into our software renderer, I did it in an OpenGL renderer that everyone uses and will use anyway. This code waited for this moment for two year until somebody reminded about it... It doesn't use shaders, it's really just that software effect implemented modifying the texture and re-uploading to GPU. I thought it will be slower but I guess generating and uploading 128x128 is not a problem for modern computers. I also found some bugs andβ¦
Merged gamma fixes and overbright implementation into Xash3D FWGS. Now everything looks as intended.
This weird Xash bug (that just doesn't reproduce anymore) still makes me giggle. The mod is Snow War btw. The entity info thing on the right is GoldSrc Monitor.
Did you know that @nekonomicon, one of Xash3D FWGS contributors and hlsdk-portable maintainer, tracks the list of opensourced and reverse-engineered Half-Life mods? Yes he does!
During another sleepless night, I tried to hack GoldSrc protocol into Xash3D FWGS. This isn't something I really want to implement and support in the engine, just want to see what could be improved in further Xash protocol extensions. There isn't so much to show off yet because client doesn't connect to HLDS yet. But I noticed a few interesting things. 1) In GoldSrc there are still remnants of old authentication with CD keys, which cannot even be used anymore. The only way to authenticate is the so-called "Steam protocol" in LAN mode, in which it doesn't validate the certificate cookie in Steam. I guess that's how networking works on pirated games? Honestly, I never looked into this. 2) To prevent protocol reverse-engineering, Valve tried to mangle the network data. This isn't a problem anymore, because the algorithm itself was RE'd a long time ago. It's a pure comedy of security through obscurity: github.com/dreamstalker/rehlds/bβ¦. You tβ¦
Finally added a hotkey handlers to my mainui_cpp from Xash3D FWGS, featuring Half-Life WON menu. However, behavior differs from WON launcher. In WON it handles it on key press, which makes navigation confusing, and sometimes it might react twice or more. Like if you're in main menu, pressing 'C' to open configuration menu, and it jumps straight to controls menu instead. This is probably due to mishandled button repeat, but I'm not sure. Instead, I do it on key release, which allows in my opiniβ¦
Xash3D engine supported movie playback for a long time, but it utilizes Video for Windows API, which has downsides from obviously being closed source and Windows exclusive and requiring the user to install third-party software. It also sometimes just outright doesn't work for an unknown reason. This time I have implemented video player using ffmpeg to the Xash3D FWGS engine, which was in the plan for a whopping eight years already. The obvious improvement of using ffmpeg is a wide variety of cβ¦