DaymareOn/hdtSMP64
GitHub で見るRemove hardcoded exterior world space ID list from WeatherManager
Open
#239 opened on 2026年3月26日
enhancementhelp wantedrefactor
Repository metrics
- Stars
- (67 stars)
- PR merge metrics
- (平均マージ 15h 45m) (30d で 28 merged PRs)
説明
Summary
The NOT_EXTERIOR_WORLDS array in src/WeatherManager.h (used in WeatherManager::runWeatherTickImpl) contains a static, hardcoded list of Skyrim world space Form IDs that should be treated as non-exterior (i.e., no wind). This approach is fragile and difficult to maintain as it:
- Requires recompiling the DLL to add/remove world spaces.
- Does not account for modded world spaces that might also be interiors.
- Was originally added in commit 34743ff.
Goal
Remove the hardcoded list by doing one or both of the following:
- Find a programmatic method — e.g., checking whether the world space has a valid sky/climate attached (similar to how the Creation Kit detects outdoor environments), or inspecting flags on the
TESWorldSpacerecord. The RE server may have insight here. - Move to a data/config file — allow users/maintainers to configure the excluded world space IDs externally (e.g., in the existing SMP config file) rather than baking them into the DLL.
References
- PR #238 discussion: https://github.com/DaymareOn/hdtSMP64/pull/238#discussion_r2990702662
- Requested by: @alandtse