karifeld 0f09234130 refactor: Modernized/optimized general code, bug fixing and more (#226)
* refactor: Use self globals

* refactor: Use gui::components

* fix(Vehicle Preview): Addresses #119

Previewed vehicle set to unclimbable

Only preview when hovered on vehicle

* fix(Infinite Clip): Disabling it now works

* fix(No Ragdoll): Disabling it now works

Removed unnecessary calls to natives (0xB128377056A54E2A should be enough)

* fix(Spawn): Wrong footer placement

* fix self globals file name typo

* refactor(Mobile): Clear ped tasks when set conditions are met

Only clear ped tasks if pv_teleport_into bool is true and ped is in a vehicle

* feat(Weapons): Remove current weapon

* refactor: Added missing variable in calls to self globals

* refactor: Utilize usage of ControllerInputs

* fix(Vehicle Fly): uninitialized local variable 'ped' used

* refactor(No Ragdoll, Infinite Clip): Only run on boolean change.

* refactor(Infinite Ammo): Simplified code

* refactor: Utilize ControllerInputs in other areas of code

* refactor: Utilize ControllerInputs in other areas of code
2022-05-22 18:38:45 -04:00
2022-02-28 23:04:56 +01:00
2021-11-09 14:45:40 +01:00

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

Clone the repository including submodules:

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"

Go into the directory you just cloned:

cd YimMenu

Generate project files:

GenerateProjects.bat

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

Staying Up To Date

Pull the latest changes from Github:

git pull && git submodule update

Make sure your Visual Studio is closed and regenerate project files:

GenerateProjects.bat

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.

Description
YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience.
Readme GPL-2.0
Languages
C++ 99.4%
Python 0.5%