[TAS] Half-Life - Office Complex (no NPC door glitch) in 50.926 s
Channel: Ivan Molodetskikh
Date: 01/08/2020

The Office Complex chapter completed without the use of the NPC door opening glitch. In practice, this means forgoing the Barney skip and going through the freezer instead.

This is a project I've initially started in 2014, more than 6 years ago, on Half-Life TAS Mod v1. I had done the first map twice (https://youtu.be/HwZ9fcbcHzQ and https://youtu.be/ywZF-TzQSMA), but never progressed further. This video is thus the third attempt at the goal, and it's much better than anything I could possibly achieve with back-then TASing tools.

I heavily focused on watchability, fully utilizing the recently-added velocity_lock strafing and smooth angle changes. As I had finished each small segment of the TAS, I had gone through the input and corrected all camera motion to have no sudden jumps and to reduce the number of angle locks. I'm very satisfied with the outcome, it's much more pleasant to watch compared to what the "raw" version would look like (unfortunately, it's not possible to see the true "raw" version, since Half-Life is very sensitive to changing pretty much anything in the input, including the camera angles, which in the theoretical optimum should not affect movement in any way).

On a very crude estimate, this TAS has taken me 40 minutes of work per second of gameplay on average, which is 5 times more than HLKZ map TASes. Most of this time was spent on grenade throws, camera work and object boosts—all three lacking TAS editor support and needing to be done manually. Adding first-person angle adjustment with grenade trajectory prediction, camera angle visualization and editor and some basic entity prediction would speed up TASing complex levels tremendously.

Considerable time was spent at the very start of c1a2, solving what I've called "the c1a2 puzzle". There's a lot of very tight movement, weapon timings and stuff happening that needs to align together just right to get through it quickly. The first 7 seconds is easily the most action-packed part of the TAS.

This video is also the result of several days of work rewriting hl-capture from scratch to use Vulkan for GPU acceleration (supports non-NVIDIA GPUs and windowed mode) and an external FFmpeg process for encoding (significantly reduces the RAM usage in an already-limited 32-bit Half-Life process). Using a prototype version, I've recorded this TAS in 8K resolution.

I've had to jump over a few more hoops to get good 8K video, most notably the HUD which I've upscaled 4× by editing the sprites. I've also run out of my 16 GB of RAM instantly as soon as I tried to render a 8K video in Kdenlive but I've managed to do all necessary editing using FFmpeg filter graphs.

This TAS uses the Steam settings:
• Unlimited FPS
• Bunnyhop cap

I've used the c1a2 IC config which can be found under "Legacy IC NG+ Setup Configs": https://www.speedrun.com/hl1/resources

Potential improvements:
• Quadrazid has discovered that it's possible to gain enough speed for the trigger skip in the very beginning using space inside the elevator. Not doing this first damage boost leaves more HP for boosts later on.
• During planning I got the freezer boost with 1 less damage than I've managed to in the TAS. I suspect this is due to the grenade being slightly above ground in the TAS, whereas it was lying on the ground during testing. I've spent lots of time on this damage boost but I couldn't get enough speed with 1 less HP of damage.

Slow-motion version with HUDs: https://youtu.be/MAvPOB_p2Ps

Making of this TAS:
• Part 0 (planning): done offline
• Part 1 (1st iteration of the start): https://youtu.be/f-ubRLr545M
• Part 2 (2nd iteration of the start, 1st iteration of the grenade throw): forgot to export
• Part 3 (pistol window breaking, 2nd iteration of the grenade throw): https://youtu.be/vnqtWtrGR-Q
• Part 4 (3rd iteration of the grenade throw): https://youtu.be/dhHJPbTZwy8
• Part 5 (4th and final iteration of the grenade throw): done offline
• Part 6 (up to the object boost at the end of c1a2): https://youtu.be/6CHN5Z2wFkc
• Part 7 (first set of stairs): done offline
• Part 8 (rooms, second set of stairs): done offline
• Part 9 (Barney room, 1st iteration of going through the planks to the freezer map): done offline
• Part 10 (2nd iteration of going through the planks, opening the freezer): done offline
• Part 11 (freezer boost): https://youtu.be/A56Sq14t1dw
• Part 12 (the rest of the freezer map): https://youtu.be/xotSEPt2wyI
• Part 13 (up to the end of the chapter): https://youtu.be/zTFxQF-NvFA

Script: https://bxt.rs/files/runs/tas-office-complex-no-npc-door-glitch-50.926.hltas
Demo: https://bxt.rs/files/runs/tas-office-complex-no-npc-door-glitch-50.926.dem
Done on Linux on latest Steam Half-Life (build 8308) running under Flathub Steam using this Bunnymod XT: https://github.com/YaLTeR/BunnymodXT/releases/tag/aug-1-2020
Captured with a prototype version of hl-capture 2.

Part of thumbnail was taken from Barney the Movie: https://youtu.be/Rc4dbnGUAWA