TmpMenu/README.md

3.3 KiB

YimMenu made possible by BigBaseV2

A mod menu base for Grand Theft Auto V. Strictly for educational purposes.

Table of contents

How to build

Requirements:

If you have both of the above requirements you can skip to cloning the git repo and generating the project files.

Git

If you haven't installed git on your system go and do so it is REQUIRED for setting up a working build environment.

Download Link

Premake5

Premake5 is used to generate our project files, if you haven't used it before we will need to download and add it to our System Path.

Download Link

Cloning and generating project files

Afterwards set up the build environment, run the following commands in a terminal:

git clone https://github.com/Yimura/YimMenu.git --recursive || echo You don't have git installed, install it from https://git-scm.com/download/win
cd YimMenu
GenerateProjects.bat

Now, you will be able to open the solution, and simply build it in Visual Studio.

Prebuild Binaries

Every 24 hours a build of YimMenu is made if new code has been committed to the master branch.

These prebuild binaries are provided for testing purposes only, I will take no responsibility for people using it online.

Perma Link for latest YimMenu.dll.

Perma Link for the latest nightly.

Project Structure

  • api/ contains some basic example of how I'd make REST api calls
  • backend/ all features that should be ran in a loop are in here sorted by category
  • gui/ includes everything related to UI elements
  • hooks/ function hooks
  • native_hooks/ hooks to natives, currently not implemented
  • services/ service files to interact and maintain stuff
  • util/ general utility functions to keep code as compact and as much in one place as possible

Features

Below is an incomplete list of feature that I believe are notable to this "base" or menu.

  • Return Native spoofing
  • Custom settings with deep compare if changes were made include auto saving
  • Clear and well structured source code
  • Includes a thread pool to queue tasks that shouldn't block the game thread, very similar to fiber pool
  • Updated natives.hpp from https://nativedb.pieceof.art/natives
  • Includes basic code samples to interact with an api
  • ReClass.NET structures implemented, accessible from a global called g_local_player defined in common.hpp

Contributing

You're free to contribute to YimMenu as long as the feature are useful, non-toxic and do not contain anything money related that might get the menu targetted by Take2.

Make sure to read the CONTRIBUTING.md file.