Things to hook
Summary
Published: Mar 31 2024 by mana vortex Last documented edit: Mar 31 2024 by mana vortex
This page lists things that you can hook into (straight from the code of Addicted, thanks Roms1383 for the contribution!)
If you want to see an example, check How to create a hook -> Example
Player Actions
After the player is spawned:
@wrapMethod(PlayerPuppet)
protected cb func OnMakePlayerVisibleAfterSpawn(evt: ref<EndGracePeriodAfterSpawn>) -> Bool { }When a status effect is applied or removed
@wrapMethod(PlayerPuppet)
protected cb func OnStatusEffectApplied(evt: ref<ApplyStatusEffectEvent>) -> Bool
protected cb func OnStatusEffectRemoved(evt: ref<RemoveStatusEffect>) -> BoolWhen the player does something
@wrapMethod(PlayerPuppet)
protected cb func OnAction(action: ListenerAction, consumer: ListenerActionConsumer) -> BoolWhen the player interacts with an item
@wrapMethod(ItemActionsHelper)
public final static func ProcessItemAction(gi: GameInstance, executor: wref<GameObject>, itemData: wref<gameItemData>, actionID: TweakDBID, fromInventory: Bool) -> Bool
public final static func ProcessItemAction(gi: GameInstance, executor: wref<GameObject>, itemData: wref<gameItemData>, actionID: TweakDBID, fromInventory: Bool, quantity: Int32) -> BoolWhen the player consumes a quickslot item
@wrapMethod(ItemActionsHelper)
public final static func ConsumeItem(executor: wref<GameObject>, itemID: ItemID, fromInventory: Bool) -> VoidWhen the player consumes an item from backpack
@wrapMethod(ItemActionsHelper)
public final static func PerformItemAction(executor: wref<GameObject>, itemID: ItemID) -> VoidWhen the player equips/unequips an item
@wrapMethod(EquipmentSystemPlayerData)
private final func UnequipItem(itemID: ItemID) -> Void
private final func UnequipItem(equipAreaIndex: Int32, opt slotIndex: Int32, opt forceRemove: Bool) -> VoidWhen the player equips Cyberware at a Ripperdoc
@wrapMethod(RipperDocGameController)
private final func EquipCyberware(itemData: wref<gameItemData>) -> Bool Different menus
In the character creator
@wrapMethod(ConsumeAction)
protected func ProcessStatusEffects(const actionEffects: script_ref<array<wref<ObjectActionEffect_Record>>>, gameInstance: GameInstance) -> VoidOn equipment preview
@wrapMethod(inkPuppetPreviewGameController)
protected cb func OnPreviewInitialized() -> BoolPhoto mode
@wrapMethod(PhotoModePlayerEntityComponent)
private final func SetupInventory(isCurrentPlayerObjectCustomizable: Bool) ESC menu
@wrapMethod(SingleplayerMenuGameController)
protected cb func OnInitialize() -> BoolWeapon selection wheel (?)
@wrapMethod(DpadWheelGameController)
protected cb func OnInitialize() -> BoolWhen receiving a message
@wrapMethod(GenericMessageNotification)
protected cb func OnInitialize() -> Bool???
@wrapMethod(GenericMessageNotification)
protected cb func OnHandlePressInput(evt: ref<inkPointerEvent>) -> Bool ???
@wrapMethod(PopupsManager)
protected cb func OnPlayerAttach(playerPuppet: ref<GameObject>) -> BoolWhen showing/hiding a custom popup
@addMethod(PopupsManager)
protected cb func OnShowCustomPopup(evt: ref<ShowCustomPopupEvent>) -> Bool
protected cb func OnHideCustomPopup(evt: ref<HideCustomPopupEvent>) -> Bool BackpackMainGameController
@wrapMethod(BackpackMainGameController)
protected cb func OnInitialize() -> Bool
protected cb func OnItemDisplayClick(evt: ref<ItemDisplayClickEvent>) -> Bool
private final func NewShowItemHints(itemData: wref<UIInventoryItem>) CraftingGarmentItemPreviewGameController
@wrapMethod(CraftingGarmentItemPreviewGameController)
protected cb func OnCrafrtingPreview(evt: ref<CraftingItemPreviewEvent>) -> BoolEquipmentSystemPlayerData
@wrapMethod(EquipmentSystemPlayerData)
public final func OnAttach()
public func LockVisualChanges()
public func UnlockVisualChanges()
public final const func IsVisualSetActive() -> Bool
public final const func IsSlotOverriden(area: gamedataEquipmentArea) -> Bool
private final const func ShouldUnderwearBeVisibleInSet() -> Bool
private final const func ShouldUnderwearTopBeVisibleInSet() -> Bool
public final func OnRestored()
public final func OnQuestDisableWardrobeSetRequest(request: ref<QuestDisableWardrobeSetRequest>)
public final func OnQuestRestoreWardrobeSetRequest(request: ref<QuestRestoreWardrobeSetRequest>)
public final func OnQuestEnableWardrobeSetRequest(request: ref<QuestEnableWardrobeSetRequest>)
public final func EquipWardrobeSet(setID: gameWardrobeClothingSetIndex)
public final func QuestHideSlot(area: gamedataEquipmentArea)
public final func QuestHideSlot(area: gamedataEquipmentArea)
public final func QuestRestoreSlot(area: gamedataEquipmentArea)
private final func ClearItemAppearanceEvent(area: gamedataEquipmentArea)
private final func ResetItemAppearanceEvent(area: gamedataEquipmentArea)
private final func ResetItemAppearance(area: gamedataEquipmentArea, opt force: Bool)gameuiInGameMenuGameController
@wrapMethod(gameuiInGameMenuGameController)
protected cb func OnInitialize() -> Bool
protected cb func OnPuppetReady(sceneName: CName, puppet: ref<gamePuppet>) -> Bool
protected cb func OnEquipmentChanged(value: Variant) -> Bool
protected cb func OnUninitialize() -> BoolgameuiInventoryGameController
@wrapMethod(gameuiInventoryGameController)
protected cb func OnInitialize() -> Bool
protected cb func OnUninitialize() -> Bool
private final func SetupSetButton() -> Void
protected cb func OnWardrobeBtnClick(evt: ref<inkPointerEvent>) -> Bool
protected cb func OnWardrobePopupClose(data: ref<inkGameNotificationData>)
protected cb func OnBack(userData: ref<IScriptable>) -> Bool
protected cb func OnEquipmentClick(evt: ref<ItemDisplayClickEvent>) -> Bool gameuiPhotoModeMenuController
@wrapMethod(gameuiPhotoModeMenuController)
protected cb func OnInitialize() -> Bool
protected cb func OnAddMenuItem(label: String, attribute: Uint32, page: Uint32) -> Bool
protected cb func OnShow(reversedUI: Bool) -> Bool
protected cb func OnSetAttributeOptionEnabled(attribute: Uint32, enabled: Bool) -> BoolPhotoModeMenuListItem
@wrapMethod(PhotoModeMenuListItem)
private final func StartArrowClickedEffect(widget: inkWidgetRef) inkInventoryPuppetPreviewGameController
@wrapMethod(inkInventoryPuppetPreviewGameController)
protected cb func OnInitialize() -> Bool InventoryItemDisplayController
@wrapMethod(InventoryItemDisplayController)
public func Bind(inventoryDataManager: ref<InventoryDataManagerV2>, equipmentArea: gamedataEquipmentArea, opt slotIndex: Int32, opt displayContext: ItemDisplayContext, opt setWardrobeOutfit: Bool, opt wardrobeOutfitIndex: Int32) {
public func Bind(inventoryScriptableSystem: ref<UIInventoryScriptableSystem>, equipmentArea: gamedataEquipmentArea, opt slotIndex: Int32, displayContext: ItemDisplayContext)
protected func RefreshUI()
protected func NewUpdateRequirements(itemData: ref<UIInventoryItem>)InventoryItemModeLogicController
@wrapMethod(InventoryItemModeLogicController)
private final func UpdateOutfitWardrobe(active: Bool, activeSetOverride: Int32)
protected cb func OnItemDisplayClick(evt: ref<ItemDisplayClickEvent>) -> Bool
protected cb func OnItemDisplayHoverOver(evt: ref<ItemDisplayHoverOverEvent>) -> Bool
private final func SetInventoryItemButtonHintsHoverOver(const displayingData: script_ref<InventoryItemData>, opt display: ref<InventoryItemDisplayController>)
private final func HandleItemClick(const itemData: script_ref<InventoryItemData>, actionName: ref<inkActionName>, opt displayContext: ItemDisplayContext, opt isPlayerLocked: Bool) PhotoModePlayerEntityComponent
@wrapMethod(PhotoModePlayerEntityComponent)
private final func OnGameAttach()
private final func SetupInventory(isCurrentPlayerObjectCustomizable: Bool)
protected cb func OnItemAddedToSlot(evt: ref<ItemAddedToSlot>) -> Bool
QuestTrackerGameController
@wrapMethod(QuestTrackerGameController)
protected cb func OnInitialize() -> BoolUIInventoryItem
@wrapMethod(UIInventoryItem)
public final func IsEquipped(opt force: Bool) -> Bool
public final func IsTransmogItem() -> Bool
public final static func Make(player: wref<PlayerPuppet>, transactionSystem: ref<TransactionSystem>, uiScriptableSystem: wref<UIScriptableSystem>) -> ref<UIInventoryItemsManager>
public final func IsItemEquippedInSlot(itemID: ItemID, slotID: TweakDBID) -> Bool
public final func IsItemTransmog(itemID: ItemID) -> Bool WardrobeSetPreviewGameController
@wrapMethod(WardrobeSetPreviewGameController)
protected cb func OnInitialize() -> Bool
protected cb func OnPreviewInitialized() -> Bool
public final func RestorePuppetEquipment()
ComputerInkGameController (already wrapped by Virtual Atelier)
Check for it with this annotation:
@if(ModuleExists("VirtualAtelier.Site"))
@if(!ModuleExists("VirtualAtelier.Site"))@wrapMethod(ComputerInkGameController)
private final func ShowMenuByName(elementName: String) -> Void
private final func HideMenuByName(elementName: String) -> Void ComputerControllerPS (already wrapped by Virtual Atelier)
@wrapMethod(ComputerControllerPS)
public final func GetMenuButtonWidgets() -> array<SComputerMenuButtonWidgetPackage>ComputerMenuButtonController (already wrapped by Virtual Atelier)
@wrapMethod(ComputerMenuButtonController)
public func Initialize(gameController: ref<ComputerInkGameController>, widgetData: SComputerMenuButtonWidgetPackage) -> VoidBrowserController (already wrapped by Virtual Atelier)
@wrapMethod(BrowserController)
protected cb func OnPageSpawned(widget: ref<inkWidget>, userData: ref<IScriptable>) -> Bool Consumables
When the consumable cooldown is over:
@wrapMethod(ConsumableTransitions)
protected final func ChangeConsumableAnimFeature(stateContext: ref, scriptInterface: ref, newState: Bool) -> Void {}When the player heals themselves
@wrapMethod(UseHealChargeAction)
protected func ProcessStatusEffects(const actionEffects: script_ref<array<wref<ObjectActionEffect_Record>>>, gameInstance: GameInstance) -> VoidWhen the player uses a consumable
@wrapMethod(ConsumeAction)
protected func ProcessStatusEffects(const actionEffects: script_ref<array<wref<ObjectActionEffect_Record>>>, gameInstance: GameInstance) -> VoidOther stuff
When you skip time
@wrapMethod(TimeskipGameController)
private final func Apply() -> VoidLast updated
Was this helpful?