Giter VIP home page Giter VIP logo

Comments (12)

Rydian avatar Rydian commented on September 17, 2024 1

With CE's assembly scan (and patience*) I was able to find the right MOV EAX,00005209 because it's ranged attack we want to change. Whereas that video seems to be changing giant throwing attack and then disabling client-side checks. Because shit was crazy back then.

//Find mov eax,00005209
//That's the ranged attack skill ID to change.
//09 52 = Ranged Attack
//0A 52 = Magnum Shot
//0C 52 = Arrow Revolver
//0E 52 = Support Shot
//0F 52 = Mirage Missile
//FB 55 = Crash Shot

var pattern = scan('B8 09 52 00 00 5F 5E');
patch(pattern.add(1), 0x0A, 0x52);

*(CE doesn't like a space after the comma in the opcode, and won't find it without leading 0s because I assumed the skill ID would be two bytes instead of four, and the client doesn't have the same kind of optimization on compile it used to have.)

from kanan.

Poshwosh avatar Poshwosh commented on September 17, 2024

First you need to search for the skill ID located in skillinfo.xml, (Ranged Combat Mastery = 21002). Convert it into HEX and you get 09 52 00 00.

Problem is, 139 instances come up in Cheat Engine. One of them needs to be replaced to 0A 52 00 00 (21003), and I don't know myself how to differentiate which one is the right one without replacing all of them one by one.

from kanan.

Coziestest avatar Coziestest commented on September 17, 2024

Here's a really ancient, outdated method of patching ranged attack skill swap back when there were multiple .dll files in the directory:
https://www.youtube.com/watch?v=3KrAHBFjGTE

I'm not sure how it's done now, but maybe it can provide some kind of hint in the right direction?

As an added bonus... I forget if this was patched or not, either way there are many faster pets even with Boost on, so it's not special now. Infinite Ostrich/Crystal Deer Boost:
https://www.youtube.com/watch?v=Yiu9iQPsFxA

from kanan.

Poshwosh avatar Poshwosh commented on September 17, 2024

You did it @Rydian, I just tried it, nice. Although B8 09 52 00 00 5F 5E wasn't found, I changed the last 2 into wildcards and it found it successfully.
However, there are two results. The 2nd seems to be the correct one.

// Swaps the default normal attack while using ranged weapons with another skill. (Created by Rydian)
// Uncomment the skill you wish to swap the default with by removing the // at the beginning of the line. Make sure to only have one uncommented.

var pattern = scan('B8 09 52 00 00 C3');
// patch(pattern.add(1), [0x09, 0x52]); // Ranged Attack (ID: 21001)
// patch(pattern.add(1), [0x0A, 0x52]); // Magnum Shot (ID: 21002)
// patch(pattern.add(1), [0x0E, 0x52]); // Support Shot (ID: 21006)
// patch(pattern.add(1), [0x0C, 0x52]); // Arrow Revolver (ID: 21004)
// patch(pattern.add(1), [0x11, 0x52]); // Spirit Bow Awakening (ID: 21009)
// patch(pattern.add(1), [0x0F, 0x52]); // Mirage Missile (ID: 21007)
// patch(pattern.add(1), [0xF6, 0x59]); // Final Shot (ID: 23030)
// patch(pattern.add(1), [0xFA, 0xA7]); // Elven Magic Missile (ID: 43002) 
// patch(pattern.add(1), [0xFB, 0x55]); // Crash Shot (ID: 22011)
// patch(pattern.add(1), [0x14, 0x52]); // Spider Shot (ID: 21012)
// patch(pattern.add(1), [0x16, 0x52]); // Urgent Shot (ID: 21014) <Buggy!

from kanan.

Poshwosh avatar Poshwosh commented on September 17, 2024

A bit off topic, but about the isgiant thing... I actually tried it, you got me to go on IDA @c0ziest.

The giant check doesn't seem to be there anymore, but the pet boost and pet ground boost is.

I want to try it myself but I can't do it till the dmp is fully analyzed (because I'm doing something wrong 😔), @cursey has priorities so maybe somebody else with IDA can give it a shot?

from kanan.

cursey avatar cursey commented on September 17, 2024

I think the correct signature is B8 09 52 00 00 C3 for the ranged attack skill id function. Oh and @Poshwosh having wildcards at the end of a signature is redundant.

from kanan.

Poshwosh avatar Poshwosh commented on September 17, 2024

Well they both work, but I updated it anyway. I wonder where that '5F 5E' came from though.

from kanan.

Rydian avatar Rydian commented on September 17, 2024

May have been how things were loaded for me, I restarted the client with a local copy of the script and that sig worked once, but not the second time.

from kanan.

Poshwosh avatar Poshwosh commented on September 17, 2024

I have my share of lack of double checking if you check my pull requests haha. Whatever the case if it works go submit that pull. 👍

from kanan.

Rydian avatar Rydian commented on September 17, 2024

I don't actually know how to submit a new file, only used the shiny buttons Git offers to fork&pull.

from kanan.

Poshwosh avatar Poshwosh commented on September 17, 2024

What I just do is click "Create new file" on the main page, paste the script name (including the folder, so scripts/script.js) then just paste the code. it'll redirect you to a pull creation with it.

I don't know if there's better methods though, probably is.

from kanan.

cursey avatar cursey commented on September 17, 2024

Thanks for all the work everyone.

from kanan.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.