Skip to content

Monster Hunter Wilds

Monster Hunter Wilds 适配器为《怪物猎人:荒野》提供专门的音频功能和游戏事件支持。

主要功能

  • 玩家动作监听:实时监听玩家的动作和状态变化
  • 音频触发器拦截:拦截游戏原生的音频播放事件
  • 游戏状态获取:获取武器信息、动作信息等游戏数据
  • 事件驱动音频:基于游戏事件自动播放自定义音频

基本使用

lua
local API = require("_AudioEngine.mhwilds.api")
local api = API.new()

-- 监听玩家动作
api:on_event(api.EventType.PLAYER_MOTION, function(motion_info, sub_motion_info)
    if motion_info.MotionID == 123 then
        api:play_effect("audio/custom_attack.wav")
    end
end)

注意事项

  1. 音效终止判断:音效自然停止或被覆盖时不好判断,处理较难
  2. 触发器ID查找:需要使用音频调试器找音效触发的事件ID
  3. 队友限制:动作ID只能判断自己的,队友音效不会被替换。而触发器ID则会包含队友的音效。如果混用两种方式,则会导致队友只会播放部分音效

参考使用场景

该系统可以实现包括但不限于:

  1. 自定义动作音效:根据玩家动作播放自定义音效
  2. 自定义事件音效:根据游戏事件播放自定义音效
  3. 防止音效复用:能基于游戏内更多状态,实现对相同音效播放场景的判断,进而避免音效复用
  4. 自定义游戏状态音效:根据游戏状态播放自定义音效,可自行编写任意代码实现。例如:残血时播放BGM,血量越少声音越大、怪物到捕获线时播放提示音等有创意的逻辑

示例项目参考

编辑本页提交更多使用案例,来自 Nexusmods, GitHub 或其他平台皆可!

MIT License