6 stories

7 stories · 1 update

LibEdit dropped from Linux SRCDS; Mesh:DrawSkinned 52-bone error fixed

Commit 291b48 on main removes the LibEdit dependency (SRCDS input on Linux now works like on the x86-64 beta), fixes Linux32 SRCDS under WSL and fixes a wrongful error in Mesh:DrawSkinned with 52 bones.

Details
  • "MixMax 2: Electric Boogaloo"
  • LibEdit dependency removed; minor cosmetic changes to srcds_run
  • Fixed Linux32 SrcDS being unable to read file stats under WSL
  • Fixed wrongful error with Mesh:DrawSkinned with 52 bones
  • Folder addons are no longer searched in mountable games/platform
  • "Engine Error" added to the Sys_Error_Internal printf
  • Progress on Linux64 builds

nighty on LuaJIT versions, a lua_shared fork and Jolt physics

In #developer-talk, nighty said the main branch uses LuaJIT 2.0.4 and the x86-64 beta uses LuaJIT 2.1 beta 3. Zaurzo added that 64-bit main uses the same LuaJIT as x86-64. nighty described his lua_shared fork: it targets a custom language but should run existing GMod Lua exactly like stock, and isn't public yet. Its threading is worker-based, with message passing between separate Lua states. He also showed Jolt physics experiments.

DrawTexturedRectUV change breaks RNDX-based UIs on dev

In #next-update, Zaurzo reported his UI broken on dev. Rubat said it's likely the surface.DrawTexturedRectUV change, and Zaurzo confirmed that was the cause, since RNDX uses the function. He will fix his copy of RNDX, and suggested the new behaviour may need to go behind an argument since it's "already starting to break shit".

Details

The thread turned to RNDX's author: puffy asked whether Srlion still works on his GMod projects, Nykez said "no, he quit", and Astralcircle noted he left the GMod Discord too.

Artemking4 argues Mesh:DrawSkinned should allow bone 0

In #next-update, Artemking4 said IMesh:DrawSkinned can't use all 53 matrices: it's off by one and wrongly errors on the last bone. Rubat replied that matrix 0 is reserved by the engine as far as he remembers, so DrawSkinned gets 1–52. In his tests, setting matrix 0 did nothing or caused issues. Artemking4 disagreed: bone 0 is a normal bone that also serves as the model matrix for unskinned vertices, and his patched client.dll renders models almost perfectly with it.

6 stories

Crash from removed triggers fixed; Hunter pose parameter fix; VPC and gmad build for Linux64

Commit b9fc35 on main fixes a crash with inputs firing from removed triggers, the Hunter NPC's wrong lookup function and lets SetSaveValue set m_hStoredPathTarget; VPC and gmad/gmpublish now build for Linux64.

Details
  • Fixed a crash with inputs firing from removed triggers
  • Fixed the wrong lookup function in Hunter NPC code
  • m_hStoredPathTarget added to the SetSaveValue whitelist
  • VPC and gmad/gmpublish build for Linux64; VPC builds and runs for Win64; VPC colors on Linux; no CodeLite projects on Linux
  • Lowercase min/max macros removed so they don't interfere with C++ headers on 64-bit Linux
  • Minor Hammer code fixes

Autorefresh reworked on dev; Rubat explains how to debug it

In #next-update, Gonzo Pipi said Lua autorefresh stopped working for him on 64-bit dev (Windows 11 26H2) and asked how to debug it. Rubat said he added a console print for when autorefresh will certainly not work. On Windows there may be debug output, visible by attaching a debugger such as Visual Studio or WinDbg. Autorefresh changed in the previous day's dev update; he isn't having issues himself.

InitPostEntity hooks not running traced to an addon returning a value

In #next-update, DMatter04 reported that some addons' InitPostEntity hooks added with hook.Add never run, breaking addons such as Custom FOV. homonovus suggested an addon returns a non-nil value from its hook, and Zaurzo posted a lua_run snippet to find it. On 22 Oct DMatter04 found the culprit, lua/autorun/ultrakill_test_soulorbs.lua from "[DrGBase] ULTRAKILL - Enemies - Act II & Act III", using Zaurzo's whereis tip, and Zaurzo suggested asking the author to fix it.