Injected luaengine menu

User Tag List

Results 1 to 6 of 6
  1. #1
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Injected luaengine

    Hi.

    I want to call some of WoWs luafunctions.
    I don't really want to use Framescript__execute alias lua_doString as its a pain to retrieve values and its not very flexible as every value has to be converted to ASCII.

    So I want to do it using luaengine-functions. This is how I attempted to call CastSpellById:

    void WrappedLua::CastSpellById(float spellId, const char* spellTarget)
    {
    int argc = 0;
    lua_getglobal(lua, "CastSpellByID");

    lua_pushnumber(lua, spellId);
    argc++;
    if(spellTarget)
    {
    lua_pushstring(lua, spellTarget);
    argc++;
    }

    lua_pcall(lua, argc, 0, 0);
    }
    I am fetching the lua_State referenced in lua_doString.

    But its failing, some functions produce access violations.
    Its important to notice I don't call WoWs luafunctions, I inject my own luaengine and feed it with WoWs lua_State. (lua 5.14)

    Obviously there seem to be incompatible things.

    So my question is: Is anyone doing something similar? If yes, which version of lua do you use? Or maybe better said: What version of lua is WoW using?

    I didn't play WoW when it was beta, was lua always a part of WoW ?
    Hey, it compiles! Ship it!

    Injected luaengine
  2. #2
    zzgw's Avatar Member
    Reputation
    6
    Join Date
    Mar 2008
    Posts
    31
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    No you can't use your own compiled Lua distribution, WoW's is altered and you need to use its functions or reverse engineer the changes WoW did.

  3. #3
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by zzgw View Post
    No you can't use your own compiled Lua distribution, WoW's is altered and you need to use its functions or reverse engineer the changes WoW did.
    Yeah, I already figured it out.
    Screwed my whole scripting-wrapper but now I am using WoWs functions.
    Hey, it compiles! Ship it!

  4. #4
    amadmonk's Avatar Active Member
    Reputation
    124
    Join Date
    Apr 2008
    Posts
    772
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I went down this road about a while back. It's the Lua state object that's customized. I wanted to RE it, because if you could find out what's custom in their state object you could, in theory, just inject your own Lua and bypass almost all of their protected/restricted checks, and so on.

    To make it work, you'd need to:

    1) RE what's different about the state. This sounds hard, but I bet it's just the addition of a couple of additional variables to hold protected/taint status.
    2) Recompile CLua to use this modified state object (or at least, pass it through transparently, much the same)

    et voila

    I stopped with this project because I very much fell out of love with Lua. Once I discovered how to make dostring return values without needing a wrapper, I pretty much stopped caring about writing my code in Lua.
    Don't believe everything you think.

  5. #5
    audible83's Avatar Member
    Reputation
    4
    Join Date
    Jun 2008
    Posts
    48
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Just having the ability to inject functions into lua's engine is enough though.

    use "OnUpdate" and you are good to go

  6. #6
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by audible83 View Post
    Just having the ability to inject functions into lua's engine is enough though.

    use "OnUpdate" and you are good to go
    Yeah, I just wanted to use my wrapper I wrote for some other project

    @amadmonk: Thanks, but I doubt its worth the work if I can just call WoWs functions instead.
    Hey, it compiles! Ship it!

Similar Threads

  1. [Guide] Model Injection Guide
    By Glitchy in forum WoW ME Tools & Guides
    Replies: 109
    Last Post: 05-27-2010, 08:16 AM
  2. [Model Injection] Bobble Head
    By Glitchy in forum World of Warcraft Model Editing
    Replies: 16
    Last Post: 02-18-2008, 08:17 PM
  3. Packet Injecting Items
    By yungen2003 in forum World of Warcraft General
    Replies: 7
    Last Post: 08-07-2007, 07:02 AM
  4. Using DLL's to inject values without CE.
    By Matsy in forum World of Warcraft Bots and Programs
    Replies: 7
    Last Post: 06-29-2007, 02:26 PM
  5. [Bot] Anti-AFK Bot (No Injection & Focus not Needed)
    By Cypher in forum World of Warcraft Bots and Programs
    Replies: 12
    Last Post: 09-10-2006, 11:14 AM
All times are GMT -5. The time now is 08:42 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search