Rounding Off - KimonoBoy/SHVDNTutorial-NucleiLite GitHub Wiki

If you've made it this far, well done! I'm proud of you! You did amazing!!

Conclusion

We've created a script for Grand Theft Auto V using C#, ScriptHookV and ScriptHookVDotNet as well as the LemonUI-library to create associated menus. The mod, called NucleiLite, adds a variety of features to the game, including a main menu with submenus for player, vehicle spawner, and weapon options. The player menu includes options for fixing the player's health and armor, making the player invincible, adjusting the player's wanted level, and enabling a super jump. The weapons menu allows the player to gain all weapons with max ammunition. The vehicle spawner menu allows the player to spawn any vehicle from the game in front of them. The mod is activated by pressing the F5 key and can be navigated using the mouse or arrow keys.

Where to Next?

Depending on what you did to get to this point, I have a few suggestions for you.

I followed the Simplified Version

If you followed the Simplified Version of the Code Breakdown-sections, I highly recommend you try developing a few simple scripts of your own - and if you encounter hiccups, ask for help on the GTAForums or GTA5-mods

Ideas for simple scripts

  • When you Spawn a Vehicle put the Player in the Driver-Seat immediately, if the checkBoxWarpInSpawned is checked.
    Hint: The Game.Player.Character has a SetIntoVehicle-method and there is a VehicleSeat-enum

  • Make your Weapon shoot Fire-Bullets or Explosive-Bullets if the feature is checked in the Menu
    Hint: Must be placed inside a Tick and is part of the Game.Player

  • Make a Never Wanted-script that can be checked in the Menu that automatically removes the Wanted Level of the Player if he gets any.
    Hint: Call it every Tick

  • Kill all Nearby Peds by the press of a button
    Hint: There is a World.GetAllPeds() which returns an array of all Peds - you must filter out yourself in the foreach-loop so you don't die as well - so ensure the ped is not Game.Player.Character the loop itself would look like foreach(Ped ped in World.GetAllPeds())(the Ped-class contains a Kill-method)

When you've fiddled with different scripts and got your hands deep in the code - i Highly Recommend you go back and try-out the Advanced-section of each topic, while this section won't create new functionality, it will help you better understand the core concepts of C# and scripting in general.

Note: I've created a small hidden section where you can see how I did the above scripts - here

I followed the Advanced Version

If you've followed the Advanced Version - well done! Don't feel bad if you didn't quite understand all the concepts, the best way to learn is to get your hands dirty with the code, meaning The more you Code, the Better you become

Feel free to re-visit some of the sections you didn't quite understand.

If you feel like you got a pretty good knowledge on the following topics

  • Data Types
  • Classes
  • Arrays and Collections
  • Methods
  • Variables
  • Events
  • Operators
  • Visual Studio in General

Then feel free to continue your Journey and Create a Complete Mod Menu following Nuclei - Complete Mod and its Wiki

Previous - Implementing Give All Weapons Script