wow-api-lua-environment

Document the World of Warcraft Lua 5.1 runtime security model and API functions.

1|Updated Aug 13, 2024
One-click install
npx skills add https://github.com/Alzakath/Ruilhenn --skill wow-api-lua-environment
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: wow-api-lua-environment
Source: https://github.com/Alzakath/Ruilhenn/tree/main/.gemini/skills/wow-api-lua-environment
Command: npx skills add https://github.com/Alzakath/Ruilhenn --skill wow-api-lua-environment

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a comprehensive understanding of the World of Warcraft Lua environment, including its security restrictions, taint system, and API, enabling developers to write robust and secure addons.

Core Features & Use Cases

  • Lua Sandbox & Security: Understand blocked functions, taint propagation, and secure execution contexts.
  • API Reference: Detailed information on timers, hooks, restricted actions, and logging utilities.
  • Use Case: When developing a new WoW addon, use this Skill to ensure your code adheres to Blizzard's security model, preventing taint errors and ensuring proper interaction with game functions.

Quick Start

Explain how to use hooksecurefunc to safely observe a Blizzard API function.

Frequently Asked Questions about wow-api-lua-environment

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How does the WoW addon taint system work?

The WoW addon taint system tracks execution origins to prevent unauthorized secure code modifications. Taint propagation occurs when insecure addon code interacts with protected Blizzard functions, triggering execution blocks during combat lockdown to maintain UI security.

How do I use hooksecurefunc to safely observe a WoW API function?

Use hooksecurefunc to attach a post-hook callback to a secure Blizzard function without causing taint. Your addon observes the function's execution and arguments safely, executing code after the original secure call completes without altering its behavior.

Why does my WoW addon code break during combat lockdown?

WoW addon code breaks during combat lockdown because the InCombatLockdown security restriction disables protected frame modifications and ability execution. This Blizzard security mechanism prevents automated combat actions, blocking insecure addon code from altering the UI.

Can I use C_Timer to schedule delayed functions in a WoW Lua sandbox?

Yes, you can use C_Timer to schedule delayed or repeating function calls within the WoW Lua sandbox. It provides a secure, Blizzard-approved API for timer management that respects the game's restricted execution environment.

What is the FrameScript sandbox in World of Warcraft?

The FrameScript sandbox is World of Warcraft's restricted Lua 5.1 runtime environment. It isolates addon execution by blocking specific OS-level functions and enforcing the taint system, ensuring addons cannot compromise game client security.

How do I check if a WoW variable is secure using issecurevariable?

Use issecurevariable to check if a specific WoW variable or function is free of addon taint. It returns a boolean indicating secure status, allowing developers to verify whether their code meets Blizzard's secure execution model requirements.