Skip to content

Instantly share code, notes, and snippets.

@Waester
Created January 21, 2026 07:25
Show Gist options
  • Select an option

  • Save Waester/e0fc4cb891e7462676221b7cf35ccf18 to your computer and use it in GitHub Desktop.

Select an option

Save Waester/e0fc4cb891e7462676221b7cf35ccf18 to your computer and use it in GitHub Desktop.
Monster Hunter Wilds
local function pre_skipOriginalMethod(args)
return sdk.PreHookResult.SKIP_ORIGINAL
end
local function pre_resetUsedTickets(args)
local saveDataManager = sdk.get_managed_singleton("app.SaveDataManager")
local systemCommon = saveDataManager._SystemSaveData._Data._SystemCommon
local userSaveData = saveDataManager._UserSaveData._Data
systemCommon.HunterTicketsUsed = 0
systemCommon.PalicoTicketsUsed = 0
for _, data in pairs(userSaveData) do
data._FreeBuffer.BufferInt[18] = 0
data._FreeBuffer.BufferInt[19] = 0
end
return sdk.PreHookResult.SKIP_ORIGINAL
end
local function post_getTickets(retval)
return sdk.to_ptr(1)
end
local function post_getUsedTickets(retval)
return sdk.to_ptr(0)
end
local function post_useTicket(retval)
return
end
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("getMaxHunterTickets()"), pre_skipOriginalMethod, post_getTickets)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("getMaxPalicoTickets()"), pre_skipOriginalMethod, post_getTickets)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("getRemainingHunterTickets()"), pre_skipOriginalMethod, post_getTickets)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("getRemainingPalicoTickets()"), pre_skipOriginalMethod, post_getTickets)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("verifyHunterTicketsUsed()"), pre_skipOriginalMethod, post_getUsedTickets)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("verifyPalicoTicketsUsed()"), pre_skipOriginalMethod, post_getUsedTickets)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("useHunterTicket()"), pre_resetUsedTickets, post_useTicket)
sdk.hook(sdk.find_type_definition("app.CharacterEditUtil"):get_method("usePalicoTicket()"), pre_resetUsedTickets, post_useTicket)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment