3
0
Fork 0
issues/Half-Life.md

82 lines
4.4 KiB
Markdown
Raw Normal View History

# Half-Life - Issues
Here's a list of things that we'd fix in Half-Life, given the opportunity.
## Bug: You can `+use` through walls.
No game assumes that this behaviour is accurate. In fact, in certain mods (such as The Specialists, where the role-play map fiskcity comes to mind) it can be used to escape the bank vault when you're trapped within. This is not by design.
## Linux: Underscores look like white space
In the console, all underscores look like whitespace. This makes choosing maps or using the auto-completion system in console rather annoying.
## Linux: Mouse input breaks when loading a map from the command-line
In your Steam launch options, do the following for Half-Life:
`+map c1a0`
...and when trying to use the menu it becomes unusable.
The only solution is to open the console and to issue `quit`.
## Proton: Filesystem issues
People will want to play Half-Life mods. Many of those are only for Win32.
Using Proton after installing the Linux version will create a lower case titled version of the game directory and it results in namespace conflict related bugs. The game might not launch anymore, etc.
Will have to be fixed outside the engine obviously.
## SDK: Outdated code
The code at https://github.com/ValveSoftware/halflife seems to be outdated.
If you [manage to fix up and compile the code](https://github.com/ValveSoftware/halflife/issues/3133) (newer toolchain/buildsystem would be appreciated) under Linux, you'll notice how the mouse input code within cl_dll/in_camera.cpp will need to be updated quite heavily in order for mouse input to work properly.
Someone has already drafted a Pull Request for this years ago:
https://github.com/ValveSoftware/halflife/pull/1900
## Quality of Life: VPK/PK3 archive support
For over 2 decades, people have been sharing maps, mods and addons in a variety of frustrating ways. Install an addon and you're the janitor - cleaning up the base install of Half-Life is so annoying you better just remove the game and re-install it.
Add support for pak style loading of zip files (also commonly seen in id Tech games with the extension of .pk3 and .pk4 (indicating compressed zips)) within the game directory and people can finally delete a map by issuing a command as simple as:
```
rm map-JohnDoe-dm_partybus.pk3
```
...and that would take care of it all. The directory structure within the .zip should be as if you could run `unzip` on the file and it'd organize itself inside the game directory.
Choosing zip and recognizing the .pk3 and .pk4 extensions would make it easier for people to package the files for the virtual filesystem. Valve may choose to also use their own .vpk format if it would benefit things like Workshop support.
## Quality of Life: Workshop support
With once major websites having been shut down over the years, there is a need for Valve to help in preserving maps and addons by making them discoverable through the addition of a Steam Workshop.
VPK/PK3 archive support within the virtual filesystem would need to be completed first, then the workshop integration would be rather straightforward.
## Quality of Life: Rich Presence
While you can join games, it's not easy to see who is playing actively on a multiplayer game. It'd be very beneficial if we could see which game mode they're playing ([the gameAPI exposes this to the engine](https://github.com/ValveSoftware/halflife/blob/c7240b965743a53a29491dd49320c88eecf6257b/engine/eiface.h#L462)) and which map they're playing on.
## Quality of Life: Community features
Valve has created some high quality artwork for Half-Life's Steam Community thing. Like wallpapers, emotes and stuff - the trading card shenanigans. It should probably be used.
## Fluff: Bring back the GLQuake shadows
Some mods like to use them. [They also were used in advertising for the game](https://combineoverwiki.net/images/a/ac/Houndeye_video.png) so it would be appreciated to bring them back.
## Fluff: The viewmodel bob is incorrect
Half-Life had added a slight roll to the viewmodel from the bob calculation. When Half-Life SDK 2.0 came out this broke as a result changes that were intended for Team Fortress Classic, since the client shared code between the two games at one point.
The logic that needs to be restored is along the lines of:
```
viewmodel.angles[ROLL] += bob
```
Noting that the model tilts to the left, which means you may have to reverse the direction of the applied bob depending on how the engine interprets angles.