Skip to content

Partial port of metrocops and citizen NPCs - #168

Merged
marchc1 merged 73 commits into
SourceDotNET:mainfrom
ZehMatt:npc-ports
Oct 12, 2026
Merged

marchc1 merged 73 commits into
SourceDotNET:mainfrom
ZehMatt:npc-ports

Conversation

@ZehMatt

@ZehMatt ZehMatt commented Oct 12, 2026

Copy link
Copy Markdown
Contributor

This makes the very first few HL2 maps actually don't look like everyone died. I took the liberty to change how the schedules are registered to make it data driven rather than having it tokenizer and parse the schedules at runtime for already hardcoded data for whatever reason, it should be easier to declare custom schedules for all the NPCs now. This PR also implemented the npc_maker and npc_template_maker so they actually show up, the cup cop in d1_trainstation_02 also is now fully functional and it plays out as expected for as long he doesn't pull out the stunstick that is. There are a couple other deviations from the SDK but it's all about simplification and not behavior changes. Also the AI Motor is not a faithful port currently, that would add another 2k~ lines and this one is big enough and just gets things working for now.

Comment thread Game.Server/PhysicsNPCSolver.cs
Comment thread Source.Common/Mathematics/MathLib.cs
@marchc1
marchc1 merged commit e6d6b24 into SourceDotNET:main Oct 12, 2026
4 checks passed
@ZehMatt
ZehMatt deleted the npc-ports branch October 12, 2026 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants