Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it still being updated and maintained? #220

Closed
2445244810 opened this issue Feb 19, 2025 · 6 comments
Closed

Is it still being updated and maintained? #220

2445244810 opened this issue Feb 19, 2025 · 6 comments

Comments

@2445244810
Copy link

No description provided.

@veeenu
Copy link
Owner

veeenu commented Feb 19, 2025

Yes, as you can surely see yourself by briefly checking out the issue tracker.

Updates are not super frequent because the library is stable enough, has an API surface sufficient to cover its use case, and is itself relying upon stable technology; but PRs are reviewed, issues are being responded to and bugs are being fixed.

@veeenu veeenu closed this as completed Feb 19, 2025
@2445244810
Copy link
Author

Thank you for your answer. I tried to use the latest API of Windows and got an error. I tried many methods but did not get a solution. Finally, I wish you a happy life.

@veeenu
Copy link
Owner

veeenu commented Feb 20, 2025

Feel free to submit your error as an issue! I'd gladly help out, and doing that improves the library for everyone else.

@2445244810
Copy link
Author

Thank you for your answer
I want to write a game cheat by myself, but I am a Rust rookie and don't know where to start. Can you give me some advice?

I plan to use eGUI as a drawing framework to draw some boxes on it, but it is not transparent and the mouse cannot penetrate it. I would like to ask you if you can write an eGUI example. I will be grateful to you.

@veeenu
Copy link
Owner

veeenu commented Feb 21, 2025

I would like to ask you if you can write an eGUI example.

Unfortunately I can't help you with that. This project currently only has a dear imgui backend. But even if it did have an egui backend, the time I can dedicate to open source maintenance is already stretched thin as it is, and the tasks are many; writing random, unrelated example code which you can find in other libraries already is not a good investment of it.

For our current dear imgui backend, there are complete examples in the documentation and you can check out the source code of the Dark Souls III and Elden Ring practice tools which use hudhook.

If you have found bugs and issues with hudhook specifically, again, feel free to discuss them, but I can't offer direct support on other libraries.

Can you give me some advice?

Sure! First of all, I definitely encourage you to experiment by yourself so you can better understand both Rust, and the techniques you are intending to use. Reverse engineering and graphics programming are hard disciplines that require a lot of study and there are no shortcuts, and so is Rust as a language. The good news is that anyone can do it if they are willing to put in the effort and the material out there is plenty.

The general process that hudhook uses is hijacking games' rendering engines to inject our own drawing commands. What dear imgui and egui do is providing graphics primitives (vertices, indices and textures); it is our job to render them. In Rust, we do not have first-party renderers available like dear imgui's C++ implementations, so we need to provide our own and also deal with the rendering lifecycle as we are "stealing" resources from the host application.

If you (understandably) don't want to deal with all that, hudhook does that for you, but you'll have to use dear imgui. egui support has been discussed in the past but it is a gargantuan undertaking and nobody has had time or will to get that done so far.

@2445244810
Copy link
Author

Thanks for the answer. I will continue to study and now I will sleep. Good night, my friend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants