Pick up, throw, rotate, or reel-in anything that moves using intuitive mouse controls. Resurrect or warp-to peds and vehicles. Includes the ability to fly.
This is a version of my Advanced Gravity Gun mod from GTA5 recreated to work in RDR2. It is packed with features and thoroughly tested. It works with any weapon (I prefer to use fists or the lasso) and is capable of moving static objects such as telephone poles and tents (although these objects have no physics).
Installation:
Install ScriptHookRDR2 from Alexander Blade’s dev-c.com to your game directory.
Then, copy the two files from this mod, Telekinesis.asi and Telekinesis.ini to your game directory, next to PlayRDR2.exe, and run the game
Default Telekinesis Controls:
X enables and disables the mod, to allow for normal interaction with peds. A flash of white light will indicate when the mod has been toggled on or off.
Right Mouse Button aims the long-range gravity gun. A small white dot will appear in the middle of the screen as your crosshair.
Middle Mouse Button picks up entities with the gravity gun. Holding down middle mouse for 0.5 seconds will make the gravity gun grab the player or the player’s vehicle, enabling Flight. Aiming up in the air and pressing middle mouse will pick up again the last object you held, without the need to put your crosshair over it.
Left Mouse Button fires the gravity gun, throwing the object with force. Clicking fast fires at 100% force; holding down the button for 0.2 seconds reduces that force to 0.05%, increasing every millisecond until it again reaches 100% force after 1.5 seconds.
Scroll Wheel drags entities held by the gravity gun closer to the player, or pushes them further away
Left Alt switches the gravity gun to slow mode, reducing the speed of the held object for better control. Once the object is in the center of the crosshair, the gravity gun switches to rotate mode, freezing the camera in place as the mouse is used to adjust the pitch and yaw of the held object. Scroll Wheel adjusts the roll of the object in this mode
Holding Left Alt + Left Control while in rotate mode causes the held object to be pushed forwards and backwards with the movement of the mouse.
F while holding an object freezes that object in place in midair, allowing you to climb on it.
Z repairs and resurrects the entity that is currently being held by the gravity gun. It will resurrect any dead ped, and will repair any destroyed wagon, setting the horses back in place and even putting the passengers back inside. When no object is being held, press Z with the “Repair Self” option enabled in the INI file to restore and clean the player completely, including any vehicles you may be using.
Q warps the player into any held vehicle, or onto the saddle of any held horse Pressing Q on a ped while driving a vehicle will warp that ped into an empty seat in your vehicle.
C dashes the player forwards toward the direction that Arthur’s chest is pointing
All of the above key bindings can be modified by editing the Telekinesis.ini file
Flight:
Grabbing yourself with the gravity gun (hold middle mouse for 0.5 seconds) enables a special mode where the player flies up in the air and is propelled in the direction of the camera. Use WASD controls to dash around in midair in this mode. Use the R key to raise your altitude higher above ground level, and the F key to lower your altitude. Roll out the scroll wheel to increase your throttle / speed, or roll it back in to decrease. You are automatically made invincible for the duration of your flight.
.INI Options:
The mod comes with a configuration file, Telekinesis.ini. You can edit this file at any time while the game is running and changes will be applied immediately.
Key-bindings are described in hex format, you can see what the hex means by looking at this guide.
Repair self when repair = [x]Setting this option to [0] will make it so the player’s health, stamina, dead eye, cores, visible injuries / dirt, vehicle health, and horse health / cleanliness are no longer restored when pressing the repair button while not holding anything with the gravity gun.
Disable screaming in flight = [x]This is just an option I left in because I thought it was funny to hear John screaming every time he airdashed forwards in flight mode. When it is set to [1], the player is silent while flying through midair.
Dislodge Objects = [x] Setting this option to [1] makes the gravity gun create a miniscule explosion on the target, if the target is detected as a static object that may otherwise move with physics if it were partially destroyed. Nearby peds and horses may become scared as they sense the invisible explosion.
Move static objects = [x]Setting this option to [1] lets the player grab static objects such as telephone poles, tents, lamp posts, bushes and much more with the gravity gun. These objects have no physics and will stay wherever you leave them. Moving them overtop of a ped or vehicle will erase that ped or vehicle. Grabbed static objects will not start to be moved until the the gravity gun crosshair is moved off of them. Some static objects cannot be moved around normally, but can be rotated in place instead (including locked doors, which you can use as a means to get past them)
Bugs / Known Issues
There is a problem with static objects where they will sometimes be let go of by the gravity gun, and you have to grab them again. Many objects in RDR2 are resistant to handling with the gravity gun, and will change their ID in the middle of being handled. Due to this, handling some static objects and dislodged static objects would occasionally crash the scripthook with an exception. If you are handling a lot of objects like this, it may be a good idea to create a blank file named “ScriptHookRDR2.dev” and put it in your game directory, so you can press CTRL+R to re-hook the scripthook if it crashes.
If your INI file is failing to read the value you put into it, it is probably because you changed some of the text outside of the brackets. You can re-download the mod to get the original INI file back again, and edit that with your settings.
Credits:
alphaZomega