Jump to content

BadCase

Modding Team
  • Posts

    683
  • Joined

  • Last visited

  • Days Won

    33

Posts posted by BadCase

  1. 19 hours ago, Ydnac2110 said:

    I checked it out, the thing is, if you look inside the XML files, it uses a different structure than an average one, eg:

        <Template Na="NotTitan">
          <Conditions>
            <ModExists Na="MOD_TITAN" Not="1"/>
          </Conditions>
        </Template>

    I don't quite know how to change the values on this.

    If you know what you want to edit values to but just not how to do it in lua send more details on exactly what value you want to edit using lua

  2. On 6/28/2023 at 9:24 AM, TomChandler said:

    Hello,

    I know it's possible to hack the notebooks in Hogwarts Mystery. Because I was unable to do so myself a few years ago, somebody here was nice enough to do it for me.

    But after a problem with Facebook, I lost my account. So I would like to start a new one if, hopefully, someone would be willing to help me again with the notebooks. I would start a new game and give you a temporary password so you can access my account.

    I tried again to do it myself, but even with the tutorials I am unable, and it's so frustrating because I am a really big fan of Harry Potter and this game. Just not having to pay a fortune to unlock stuff.

    I thank you in advance.

    You can hack prices instead, of notebooks

  3. 10 minutes ago, MAARS said:

    This is an issue considering nature and philosophy of ggos.execute and io.popen should be optional mean can activate it from the settings, and always warn user when it get used just like gg.makeRequest, what do you think about this @Enyby@Sysadmin @BadCase @NoFear @Lover1500

    If GG ever gets updated I can pretty much guarantee that they will not be enabled, Enyby has been pretty clear about this in the past.

  4. On 3/31/2023 at 7:37 AM, DOOM1212 said:

    Need help guys, GG script does not working anymore after I changed my ROM to custom EvolutionX (Android 13), just several script work, but most of it doesn't work, previously I used MIUI and work everything.

    Does this ROM not support GG?

    Btw my phone is rooted.

    Thanks. 

    Nearly every person I speak to that has issues running GG is on Android 12 or 13, my recommendation is that if you want to continue using GG stop updating your android and possibly roll it back

  5. BadCase's Discord API


    Has Most GET, POST, PUT and DELETE Methods from the Discord API

    I will try to add PATCH methods later

    PUT and DELETE Methods use a PHP curl script on my server, the code is included at the bottom of the script if you want to run it on your own server.


     

  6. BadCase's PasteBin API


    Set these values at top of pasteBin table

        api_dev_key = "YOUR_API_DEV_KEY",
        api_user_name = "YOUR_USERNAME",
        api_user_password = "YOUR_PASSWORD",

     

    Usage:

    -- Upload with username
    -- print(pasteBin.publishPaste(api_paste_code, api_paste_name, true))

    -- Upload without username
    --print(pasteBin.publishPaste(api_paste_code, api_paste_name, false))

    -- List users pastes
    --print(pasteBin.listPastes())

    -- Delete a paste
    -- print(pasteBin.deletePaste("Jef8vQcX")) -- replace "Jef8vQcX" with valid paste key from users paste

    -- Get users info
    -- print(pasteBin.getUser())

    -- Get users private or public paste
    -- print(pasteBin.getUserPasteRaw("zbEbNh2n")) -- replace "zbEbNh2n" with valid paste key from users paste

    -- Get public or unlisted paste
    -- print(pasteBin.getPasteRaw("zbEbNh2n")) -- replace "zbEbNh2n" with valid paste key
     


     

  7. 10 hours ago, _insidious said:

    i was wondering how to make gg.makeRequest posts a message in a paste site like pastebin as example.

    function publishToPastebin(api_dev_key, api_paste_code, api_paste_name, api_user_name, api_user_password)
      local char_to_hex = function(c)
        return string.format("%%%02X", string.byte(c))
      end
    
      local function urlencode(url)
        if url == nil then
          return
        end
        url = url:gsub("\n", "\r\n")
        url = url:gsub("([^%w ])", char_to_hex)
        url = url:gsub(" ", "+")
        return url
      end
    
      local api_user_key = ""
      if api_user_name then
        local url = "https://pastebin.com/api/api_login.php"
        local headers = {
          ["Content-Type"] = "application/x-www-form-urlencoded"
        }
        local data = "api_dev_key=" ..
            api_dev_key .. "&api_user_name=" .. api_user_name .. "&api_user_password=" .. api_user_password
        local result = gg.makeRequest(url, headers, data)
    
        api_user_key = result.content
      end
    
      local url = "https://pastebin.com/api/api_post.php"
      local api_paste_private = "0"
      local api_paste_expire_date = "N"
      local api_paste_format = "lua"
    
    
      api_paste_name = urlencode(api_paste_name)
      api_paste_code = urlencode(api_paste_code)
    
      local headers = {
        ["Content-Type"] = "application/x-www-form-urlencoded"
      }
    
      local data = "api_option=paste" ..
          "&api_dev_key=" .. api_dev_key ..
          "&api_user_key=" .. api_user_key ..
          "&api_paste_private=" .. api_paste_private ..
          "&api_paste_name=" .. api_paste_name ..
          "&api_paste_expire_date=" .. api_paste_expire_date ..
          "&api_paste_format=" .. api_paste_format ..
          "&api_paste_code=" .. api_paste_code
    
      local response = gg.makeRequest(url, headers, data)
    
      if response.code == 200 then
        return response.content
      else
        return "Error: " .. response.message
      end
    end
    
    local api_dev_key = "YOUR_DEV_KEY"
    local api_user_name = "YOUR_USERNAME" -- Only needed if you want paste uploaded with username otherwise paste will be uploaded as Guest
    local api_user_password = "YOUR_PASSWORD" -- Only needed if you want paste uploaded with username otherwise paste will be uploaded as Guest
    local api_paste_code = [[local testText = "Some Text"
    gg.alert(testText)]]
    local api_paste_name = "file name.lua"
    
    --Upload with username 
    print(publishToPastebin(api_dev_key, api_paste_code, api_paste_name, api_user_name, api_user_password))
    
    --Upload without username 
    print(publishToPastebin(api_dev_key, api_paste_code, api_paste_name))

     

  8. 6 hours ago, Liamxt said:

    Can someone please help me hack the VIP of the game Galaxy Attack Alien Shooter? 
     

    I know changing values is possible without the system detecting you if you do all the cheating before you sign up with a username/fb account, and I know how to do everything else using GG except the VIP number so if anyone could help me I’d really appreciate it🙏 
     

    Play store link to the game?

  9. On 12/27/2022 at 1:19 PM, Marks01 said:

    I installed VirtualXposed, installed GG in it. The game started, but immediately found GG and closed. It turns out that even VirtualXposed does not help, what to do?

    Screenshot_20221227-231227.png

    After adding GG to virtual xposed you must uninstall the normal copy.

    Then press "Fix It" when you start GG and select the Root in virtual spaces option.

    There are copies of VPhoneGaGa rooted with magisk and exposed that have Hide My Applist which can also achieve this.

    Another option that I have not tested in VMOS or emulators is an app named Island from the play store.

    Install island, move the game to the new work profile, run GG normally and the game from the work profile.

     

  10. Unity Script Templates by BadCase


    These are a few templates to allow you to easily create scripts for Unity based games.

    Fields.Class.Name.Offset.Template.by.BadCase

    Add edits to the "fieldEdits" table in the following format

        [1] = {
            editName = "Free Clothes",
            emoji = "👖",
            edits = {
                {
                    className = "ClothesOriData",
                    armEdits = {0X18, 0X28},
                    editTo = 0,
                    editType = gg.TYPE_DWORD,
                    editIfEqual = nil
                }, {
                    className = "ClothesOriData",
                    armEdits = {0X1C, 0X28},
                    editTo = 0,
                    editType = gg.TYPE_DWORD,
                    editIfEqual = nil
                }}
        },

    className: is the name of the Class the Field belongs to

    armEdits: is a table in this format {arm7_field_offset,arm8_field_offset}

    editTo: is the value to edit the Field instances to

    editType: is the type of value to edit the Field instance as

    editIfEqual: use if you only want to edit fields of a certain value and or get user input for this value can bet set to
    nil: if editing all Field instance
    integer: for editing all Field instances of a single value
    integer range: in this format 0~100 for editing all Field instance with a value in that range
    text: for providing instructions to the user in a prompt asking them to specify the value to be edited

    Methods.Class.Method.Name.Template.by.BadCase

    Add edits to the "methodEdits" table in the following format

        [1] = {
            editName = "Unlimited Ammo",
            emoji = "♾️",
            edits = {
                {
                    className = "Player",
                    methodName = "HasBulletsClip",
                    armEdits = {{"~A MOV R0, #1", "~A BX LR"}, {"~A8 MOV W0, #1", "~A8 RET"}}
                }}
        },
        
    className: is the name of the Class the Method belongs to

    methodName: is the name of the Method to edit

    armEdits: is a table in this format {(arm7_lib_edits},{arm8_lib_edits}} edits can be GG assembler opcodes (~A BX LR), hex (00000000h) or reverse hex (00000000r)

    Combined.Field.Method.Template.by.BadCase

    This is the above 2 templates combined, make sure you have the same items in both the "methodEdits" and "fieldEdits"

    If a function only has one type of edits for example "fieldEdits" and no "methodEdits" then the "methodEdits" edit table for that function should be an empty table {}

    Check the last function in the script for an example.


     


     

  11. On 11/27/2022 at 6:58 PM, zhangzheng320823 said:

    BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:1281

    ` for i, v in pairs(Il2Cpp.simpleFloatsTable["ARM7"]) do`

    attempt to index ? (a nil value) with key 'simpleFloatsTable' (global 'Il2Cpp')

    level = 1, const = 16, proto = 0, upval = 1, vars = 10, code = 43

    GETTABLE v4 v4 "simpleFloatsTable"

     ; PC 4 CODE 02408107 OP 7 A 4 B 4 C 258 Bx 2306 sBx -128765

    stack traceback:

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:1281 in function 'ggil2cppEdits.getSimpleFloatEdit'

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:900 in function 'ggil2cppEdits.createEdit'

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:267 in function 'ggil2cppFrontend.PatchesAddress'

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:582 in function 'ggil2cppFrontend.methodMenu'

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:363 in function 'ggil2cppFrontend.handleClick'

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:60 in function 'ggil2cppFrontend.home'

     /storage/emulated/0/-by帅小伙脚本/2022.10.11脚本/-重要/工具/BadCase's_GGIl2cpp_Toolbox_v1.0.0 (1).lua:1861 in main chunk

     [Java]: in ?

     at luaj.LuaValue.f(src:989)

     at luaj.LuaValue.c(src:2864)

     at luaj.LuaValue.i(src:2767)

     at luaj.LuaValue.w(src:1094)

     at luaj.LuaClosure.a(src:363)

     at luaj.LuaClosure.l(src:160)

     at luaj.LuaClosure.a(src:537)

     at luaj.LuaClosure.l(src:160)

     at luaj.LuaClosure.a(src:537)

     at luaj.LuaClosure.a(src:176)

     at luaj.LuaClosure.a(src:535)

     at luaj.LuaClosure.a(src:167)

     at luaj.LuaClosure.a(src:534)

     at luaj.LuaClosure.l(src:160)

     at luaj.LuaClosure.a(src:533)

     at luaj.LuaClosure.l(src:160)

     at luaj.LuaClosure.a(src:533)

     at luaj.LuaClosure.l(src:160)

     at android.ext.Script.d(src:6056)

     at android.ext.Script$ScriptThread.run(src:5785)

    Oops, I will fix in next update but changing "Il2cpp." to "ggil2cppEdits." on line 1281 should fix it in the meantime

  12. BadCase's GGIl2cpp Toolbox


    This script provides a frontend for all of the core functions of @Kruvcraft's 

    GGIl2cpp (#1zbicc50) as well as some additional functions.

    FindClass: Calls GGIl2cpp's Il2cpp.FindClass() function and loads results to the Save List. Selecting results in the Save List opens a menu to copy data, load Field instances, make Method edits and create Field and Method edits for exported scripts.

    FindFields: Calls GGIl2cpp's Il2cpp.FindFields() function and loads results to the Save List. Selecting results in the Save List opens a menu to copy data, load instances of the Field and create Field edits for exported scripts.

    FindMethods: Calls GGIl2cpp's Il2cpp.FindMethods() function and loads results to the Save List. Selecting results in the Save List opens a menu to copy data, edit Methods and create Method edits for exported scripts.

    FindObject: Calls GGIl2cpp's Il2cpp.FindObject() function and loads results to the Save List. Selecting results in the Save List opens a menu to load Field instances.

    PatchesAddress: Calls GGIl2cpp's Il2cpp.PatchesAddress() function which edits a Method in Xa with a hex byte edit. The script can create the hex byte edits for you or you can enter them manually.

    Keyword Search: Allows you to search for Classes, Methods and Fields by keyword instead of exact name. Classes will be added to the Save List for Class and Field results, Methods will be added for Method results.

    Script Creator: Allows you to edit created function names, modify menu order and export scripts.


     

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.