Skip to content

Expose managed NPC awareness events - #266

Open
diffuin[bot] wants to merge 1 commit into
stablefrom
diffuin/244-2c9fc64e
Open

Expose managed NPC awareness events#266
diffuin[bot] wants to merge 1 commit into
stablefrom
diffuin/244-2c9fc64e

Conversation

@diffuin

@diffuin diffuin Bot commented Aug 13, 2026

Copy link
Copy Markdown

Requested by @ifBars in #244.

Diffuin response

Confidence: Medium

Implemented the additive NPC awareness API for issue #244. The patch adds eight managed events, immutable noise snapshots, lifecycle-safe native event bridges, and focused API tests. The Mono build could not start because dotnet is unavailable in this checkout.

Recommended next steps

  1. Use retained per-NPC dispatchers so listeners can be removed correctly across Mono and IL2CPP.
  2. Deliver missing player or vehicle wrappers as null without constructing fallbacks.
  3. Catch subscriber exceptions so managed observers cannot interrupt native NPC responses.
Evidence and validation

Evidence inspected

  • Regular and beta stripped sources declare the same eight NPCAwareness UnityEvents.
  • NoiseEvent exposes origin, range, type, source, and OriginInSewer.
  • NPC now bridges native UnityEvents through the existing EventHelper and converts players through Player.All.
  • No game code or assets were added to the repository.

Validation performed

  • Read issue [FEATURE] Expose managed NPC awareness events #244 and approved implementation plan #5274260370.
  • Inspected regular and beta stripped source plus repository wrapper and event patterns.
  • Added snapshot, enum-value, event-shape, and compile-fixture tests.
  • Ran whitespace checks for all changed files with git diff --check.

Runtime validation remaining

  • Run restore, build, and tests for MonoMelon and Il2CppMelon after installing or exposing the configured .NET SDK.
  • Human-test all eight callbacks in regular Mono and IL2CPP.
  • Verify multiplayer callbacks remain local, native reactions remain intact, and NPC save/load lifecycle does not retain stale subscriptions.
Diffuin run details
  • Provider: codex
  • Model: gpt-5.6-terra
  • Reasoning: high (Luna advisor: risk (high); baseline bounded implementation)
  • Elapsed: 544s
  • Codex thread: 019ff8d0-7c43-7971-9836-5ebfbed31d5b

AI notice: Generated with AI assistance and not guaranteed accurate. Verify findings and plans against the current source and runtime.

Closes #244


Diffuin job: 2c9fc64e-25f7-4388-b5ad-9c8821a635a8
Commit: 0c64e5b686cb510a5f459ca526fc0f71a47d4b4d

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.

[FEATURE] Expose managed NPC awareness events

0 participants