Git Product home page Git Product logo

Comments (4)

veeenu avatar veeenu commented on August 12, 2024

I think matching against loaded DLLs would be more than enough for 99% of use cases, but I have also been briefly looking into querying the COM interfaces, though I'm afraid that would be flimsier.

As per how to have double hooks in hudhook, until a feature like this lands (I'd like it to!) you could just roll-your-own DllMain method where you first determine what backend is being used, and then conditionally setup the hooks. I think if you copy the macro code verbatim for that you should be good to go!

from hudhook.

veeenu avatar veeenu commented on August 12, 2024

These are the modules which are available in the games I have tried.

Looking at this list it should be possible to build a best-effort backend checker. Funnily enough, both the OpenGL 3 and the DirectX 11 renderers work for Baldur's Gate so either result would be fine, but for Elden Ring which also loads OpenGL that is not true. So at a minimum I'd introduce a priority mechanism where dx12 > dx11 > dx9 > opengl3

immagine

from hudhook.

etra0 avatar etra0 commented on August 12, 2024

At the end of the day I ended up doing something incredibly idiotic but it did work heh, haven't had the need to do anything more extensive.

https://github.com/etra0/litcher/blob/c4526c07f04a20b58596d99b50fa8b7068e41480/src/detect_api.rs#L3-L17

from hudhook.

veeenu avatar veeenu commented on August 12, 2024

Well, that's not much different from the way I'd have implemented something like that :D

Thinking about it, I guess this kind of logic might depend heavily on each client's needs, so not sure whether to include it as a first-party thing. It would probably still be a good idea to have a cookbook of these strategies in hudbook, so I'm keeping this open to track that.

from hudhook.

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.