Coder Social home page Coder Social logo

ml2-imgui's Introduction

Welcome to argentum-imgui ๐Ÿ‘‹

License: MIT

ImGui integration for the popular 2D MMORPG Argentum Online

What is this?

This is an integration of Dear ImGui (a bloat-free graphical user interface library for C++) into Argentum Online. For this, it's necessary to hook DirectX EndScene/BeginScene/Present in order to hijack the d3d device, serve it to ImGui and gain access to an extensive graphical interface.

What is the usage?

When you inject a dll to a process, the interaction with I/O is either very poor (e.g spawning a console) or very complex (e.g having to make a GUI on C# and connect it with the dll via pipes). What this enables you is to have an extensive graphical interface to make complex components for the user to interact directly from your dll.

Is this only for Argentum Online?

No. This can be extended to any DX8 game, the only thing you need to find by yourself is the method to feed ImGui the currently pressed keys (in this example, this is the way). Generally it can be done with a WndProc hook but it varies from game to game (e.g some may use DirectInput to which you will need to hook into the created devices to see which keys are being processed in-game).

Requirements

Showcase

Radar PoC

ao-imgui-radar-poc.mp4

DISCLAIMER: Sole purpose of this showcase is giving people insight on how you can interact with the UI, this showcase/feature is not included in the repository and will never be, don't message me asking on how to achieve this.

ImGui Demo Menu

ao-imgui-showcase.mp4

Author

๐Ÿ‘ค Matias Pavan

๐Ÿค Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a โญ๏ธ if this project helped you!

๐Ÿ“ License

Copyright ยฉ 2022 Matias Pavan.
This project is MIT licensed.


DISCLAIMER: Sole purpose of this repository is giving people insight into how to integrate ImGui to any dx8 game, please, don't do anything that negatively impacts someone.


ml2-imgui's People

Contributors

reversive avatar

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.