Remove core addon, it only contained test functions

The WeirdUtils core addon only provided /wu slash commands, a version
global, and a test function. Remove it along with the WeirdUtils
dependency from all module addon TOC files -- the DLL controls addon
load order directly so the dependency was cosmetic.
This commit is contained in:
MarcelineVQ
2026-03-07 11:11:49 -08:00
parent 23e44cd2a4
commit 6266d6ff10
8 changed files with 5 additions and 83 deletions
-36
View File
@@ -1,36 +0,0 @@
-- WeirdUtils core addon (embedded in DLL, loaded from memory)
-- This is always loaded - module addons (Outline, Interact, Screenshot) are loaded separately
WEIRDUTILS_VERSION = 1
local frame = CreateFrame("Frame")
frame:RegisterEvent("ADDON_LOADED")
frame:RegisterEvent("PLAYER_LOGIN")
frame:SetScript("OnEvent", function()
if event == "PLAYER_LOGIN" then
DEFAULT_CHAT_FRAME:AddMessage("|cff00ff00WeirdUtils|r v" .. WEIRDUTILS_VERSION .. " core loaded")
end
end)
SLASH_WEIRDUTILS1 = "/weirdutils"
SLASH_WEIRDUTILS2 = "/wu"
SlashCmdList["WEIRDUTILS"] = function(msg)
msg = string.lower(msg or "")
if msg == "" or msg == "help" then
DEFAULT_CHAT_FRAME:AddMessage("|cff00ff00WeirdUtils|r v" .. WEIRDUTILS_VERSION .. " commands:")
DEFAULT_CHAT_FRAME:AddMessage(" /wu version - Show version")
DEFAULT_CHAT_FRAME:AddMessage(" /wu test - Test C function call")
DEFAULT_CHAT_FRAME:AddMessage("Module commands (if compiled):")
DEFAULT_CHAT_FRAME:AddMessage(" /outline, /ol - Outline controls")
DEFAULT_CHAT_FRAME:AddMessage(" /interact - Interact/loot info")
DEFAULT_CHAT_FRAME:AddMessage(" /ss, /screenshot - Screenshot controls")
elseif msg == "version" then
DEFAULT_CHAT_FRAME:AddMessage("WeirdUtils v" .. WEIRDUTILS_VERSION)
elseif msg == "test" then
local result = WeirdUtilsTest()
DEFAULT_CHAT_FRAME:AddMessage("C function returned: " .. tostring(result))
else
DEFAULT_CHAT_FRAME:AddMessage("|cffff0000Unknown command:|r " .. msg)
end
end
-6
View File
@@ -1,6 +0,0 @@
## Interface: 11200
## Title: WeirdUtils
## Notes: Core utilities DLL framework
## Version: 1.0
WeirdUtils.lua
+1 -1
View File
@@ -2,6 +2,6 @@
## Title: Interact
## Notes: Nearest NPC/object interaction and bulk looting
## Version: 1.0
## Dependencies: WeirdUtils
Interact.lua
+1 -1
View File
@@ -2,6 +2,6 @@
## Title: LogSessions
## Notes: Session-based combat and chat log management
## Version: 1.0
## Dependencies: WeirdUtils
LogSessions.lua
-36
View File
@@ -76,29 +76,7 @@ fn allocateGameBuffer(size: u32) ?[*]u8 {
// Custom C functions (callable from Lua)
// =============================================================================
fn weirdUtilsTest(L: lua.State) callconv(.c) u32 {
hook.fastcall(void, 0x6F3890, @intFromPtr(L), @intFromPtr(@as([*:0]const u8, "WeirdUtils is working!")));
return 1;
}
fn weirdUtilsVersion(L: lua.State) callconv(.c) u32 {
asm volatile (
\\sub $8, %%esp
\\fld1
\\fstpl (%%esp)
\\call *%[func]
:
: [_] "{ecx}" (@intFromPtr(L)),
[func] "r" (@as(u32, 0x6F3810)),
: .{ .eax = true, .ecx = true, .edx = true, .memory = true, .cc = true });
return 1;
}
fn registerLuaFunctions() void {
// Core functions (always registered)
registerFunction("WeirdUtilsTest", @intFromPtr(&weirdUtilsTest));
registerFunction("WeirdUtilsVersion", @intFromPtr(&weirdUtilsVersion));
// Conditional module functions
if (build_opts.screenshot) {
registerFunction("WeirdUtilsScreenshot", @intFromPtr(&screenshot.screenshotCommand));
@@ -149,12 +127,6 @@ const FileEntry = struct {
data: []const u8,
};
// Core addon (always included)
const core_prefix = "Interface\\AddOns\\WeirdUtils\\";
const core_files = [_]FileEntry{
.{ .name = "WeirdUtils.toc", .data = @embedFile("core/addon/WeirdUtils.toc") },
.{ .name = "WeirdUtils.lua", .data = @embedFile("core/addon/WeirdUtils.lua") },
};
// Conditional module addons
const screenshot_files = if (build_opts.screenshot) [_]FileEntry{
@@ -225,7 +197,6 @@ const markers_xyz_texture = if (build_opts.worldmarkers) [_]FileEntry{
// All addon prefixes to check
const addon_prefixes = [_]AddonPrefix{
.{ .prefix = core_prefix, .files = &core_files },
.{ .prefix = "Interface\\AddOns\\Screenshot\\", .files = &screenshot_files },
.{ .prefix = "Interface\\AddOns\\Interact\\", .files = &interact_files },
.{ .prefix = "Interface\\AddOns\\Outline\\", .files = &outline_files },
@@ -683,13 +654,6 @@ fn loadAddonsDetour(error_handler: u32) callconv(fc) void {
var md5ctx = std.mem.zeroes([88]u8);
// Always load core addon
callLoadFileListWithIncludes(
"Interface\\AddOns\\WeirdUtils\\WeirdUtils.toc",
&md5ctx,
error_handler,
);
// Conditionally load module addons
if (build_opts.screenshot) {
callLoadFileListWithIncludes(
+1 -1
View File
@@ -2,6 +2,6 @@
## Title: WorldMarkers
## Notes: Client-side world markers
## Version: 1.0
## Dependencies: WeirdUtils
WorldMarkers.lua
+1 -1
View File
@@ -2,6 +2,6 @@
## Title: Outline
## Notes: Screen-space outline rendering for targets, raid marks, and corpses
## Version: 1.0
## Dependencies: WeirdUtils
Outline.lua
+1 -1
View File
@@ -2,6 +2,6 @@
## Title: Screenshot
## Notes: PNG screenshot capture with configurable compression
## Version: 1.0
## Dependencies: WeirdUtils
Screenshot.lua