139 files

  1. GTA SA Classic Menu

    This is a CreateMenu for the illegal gta v emulator.
    Usage example:
    List<string[]> menuItems = new List<string[]>(); menuItems.Add(new string[] { "Item 1 Column 1", "Item 1 Column 2" }); menuItems.Add(new string[] { "Item 2 Column 1", "Item 2 Column 2" }); Menu menu = new Menu("Title", new string[] { "Header 1", "Header 2" }, menuItems).show(); menu.setOnMenuResponseListener((Menu.OnMenuResponseListener onMenuResponseListener) => { RAGE.Chat.Output("Response: " + onMenuResponseListener.response + " item: " + onMenuResponseListener.item); menu.destroy(); });  

    9 downloads

       (6 reviews)

    0 comments

    Submitted

  2. Car Compare (0-100, 0-200, Vmax)

    Copy folder to "client_packages" and add
    require("./genzocarcompare"); to your "client_packages/index.js";

    58 downloads

       (0 reviews)

    0 comments

    Submitted

  3. Combat Helmets

    Installing
    Put the files you downloaded in their respective places Add require('combathelmets') to client_packages/index.js All done  
    Using
    You can toggle visor/goggles by pressing F10 while on foot.
     
    Adding More Helmets
    Even though this is a combat helmet mod, you can add other helmets (such as motorcycle helmets) by editing packages/combathelmets/helmetData.json.
    { // Skin hash (mp_m_freemode_01) "1885233650": { /* Visor/goggles up drawable as key. Visor/goggles down drawable as "closed" property. Animation name as "anim" property. Available names: goggles, visor Optional "type" property for screen FX. Available types: nightvision, thermal Hat/helmet drawables: https://wiki.rage.mp/index.php?title=Male_Hats https://wiki.rage.mp/index.php?title=Female_Hats */ "117": { "closed": 116, "type": "nightvision", "anim": "goggles" }, "119": { "closed": 118, "type": "thermal", "anim": "goggles" }, "124": { "closed": 123, "anim": "visor" }, "126": { "closed": 125, "anim": "visor" } }, // Skin hash (mp_f_freemode_01) "2627665880": { /* Visor/goggles up drawable as key. Visor/goggles down drawable as "closed" property. Animation name as "anim" property. Available names: goggles, visor Optional "type" property for screen FX. Available types: nightvision, thermal Hat/helmet drawables: https://wiki.rage.mp/index.php?title=Male_Hats https://wiki.rage.mp/index.php?title=Female_Hats */ "116": { "closed": 115, "type": "nightvision", "anim": "goggles" }, "118": { "closed": 117, "type": "thermal", "anim": "goggles" }, "123": { "closed": 122, "anim": "visor" }, "125": { "closed": 124, "anim": "visor" } } }  
    Adding More Vehicles
    You can add/remove supported vehicles by editing the vehicle animation dictionary object located in client_packages/combathelmets/index.js line 33. (vehAnimDictName object)
     
    Issues
    The animation won't be synced to other players in 0.3.7 but it should in future versions with improved task sync. FIXED IN v2.0 Visor up/down animation is used for both visors and goggles right now, even though this is a small visual thing it might be fixed in the future. FIXED IN v2.0 Players are not able to toggle visor/goggle state in vehicles right now, might change in the future. This would probably be most useful for bikes. Available on GitHub: https://github.com/root-cause/ragemp-combat-helmets

    24 downloads

       (3 reviews)

    0 comments

    Updated

  4. [C#] Example/Wrapper for fetching world objects.

    Just an example/wrapper on how to properly use "GetClosestObjectOfType" and fetch data from an object.
    I've been using this in my server for a while now to make it easier to get XYZ and rotation of objects in bulk, instead of having to go through them in codewalker which can be a pain.
    Installation
    Move client_packages to your client_packages folder Move Serverside C#/GetWorldObjects.cs to your gamemode or script. Move objectLocations.json to your server root directory.  
    Usage
    The JSON file included in the zip contains the pacific bank vault door as an example object. Use the /getworldobjects or /gwo command to run through all the items in the JSON file and fetch the X, Y, Z and XYZ Rotation of the object.
    As of right now it'll simply log the object to your server console and continue to the next object in the list, you can extend this functionality by editing the "REMOTE_EVENT_OnWorldObjectFetched" method in GetWorldObjects.cs server-side script.
    JSON file object info
    public class ObjectLocation { // The model name to look for, you can fetch this from CodeWalker or RAGEMP objectdb for example. public string Model { get; set; } // The model that should replace the model at this location, optional. I personally used this to store in the database and then on server start it'd delete the world object and replace it with the object model specified here. public string ReplacementModel { get; set; } = ""; // A position within X distance of the object you want to get the data of, distance can be specified by the Radius. public Vector3 Position { get; set; } // An optional type you can pass to the method so you can use it later on for data storage purposes(eg keep objects of certain types separated by an ID) public int Type { get; set; } = 0; // The radius to find the object, doesn't have to be too precise altho I generally recommend putting the player's teleport coordinates as close to the object as possible and decreasing range to 5 or 10. public int Radius { get; set; } } [ { "Model": "v_ilev_bk_vaultdoor", "ReplacementModel": "v_ilev_bk_vaultdoor", "Type": 0, "Radius": 25, "Position": { "X": 254.2859, "Y": 225.3845, "Z": 101.8757 } }, { "Model": "another_object_model_name", "ReplacementModel": "another_object_model_name_to_replace", "Type": 0, "Radius": 10, "Position": { "X": 1234.567, "Y": 123.456, "Z": 12.345 } }, ... ] All you have to do is add more items to the JSON file and it'll run thru all of them.

    24 downloads

       (0 reviews)

    0 comments

    Updated

  5. Login / Register html template

    https://www.dropbox.com/s/3ump4anqb45mm9x/1uJJ7nb7a9.mp4?dl=0
     
    This is just a template for your login / register system.

    73 downloads

       (0 reviews)

    0 comments

    Submitted

  6. [3D] Client-side Sound API.

    Description:
    This resources provides the ability to create/control sound in 3D via custom API. Also demonstrates the ability to use custom urls (Radio streams, local mp3 files). 3D sound should be synced automatically without the need of extra work. If you're looking for Frontend sounds then it should be easy to implement. If many demanded 2D sounds for this resource, i'll add it later.
    API:
    // Client-side // FUNCTIONS mp.game.audio.playSound3D(url, pos, volume, range, dimension) /* * url: string (Required) [Links and local package:// protocol are supported] * pos: vector3 (Required) * volume: int (Optional, Default: 1) [Range: 0 to 1] * range: int (Optional, Default: 60) [Max Range: 60] * dimension: (Optional, Default: 0) * Returns Object. * Object Properties: - id (sound's ID) - url (sound's url) - pos (sound's position) - volume (sound's volume) - range (sound's max range) - dimension (sound's dimension) - listeners (players array that are listening to the sound) - paused (If sound is paused) */ mp.game.audio.setSoundVolume(id, volume); /* * id (Sound's ID) * volume (sound's volume) Range (0.1 - 1) */ mp.game.audio.setSoundPosition(id, pos); /* * Useful for portable sound * id (Sound's ID) * pos (sound's new position) */ mp.game.audio.setSoundRange(id, range); /* * id (Sound's ID) * range (Max Range 60) (Increase it by editing the maxRange...) */ // EVENTS: /* * EventName: audioFinish * params: soundID (Sound's ID that is finished Playing) */ /* * EventName: audioError * params: soundID (Sound's ID that had error), errorObject {code: 'error code', error: 'error description'} */ // Example let sound = mp.game.audio.playSound3D('http://rfcmedia.streamguys1.com/MusicPulse.mp3', pos, 60, 1, 0); sound.destroy(); // Destroys the sound sound.pause(); // Pauses the sound sound.resume(); // Resumes the sound If you have any issues or suggestions, you know the usual routine.
    Credits:
    - Thanks to George for his 3D voice method.
    - Thanks to soundManager 2 for bringing music to life in CEF
    I wish you'll enjoy some epic music.

    121 downloads

       (3 reviews)

    0 comments

    Submitted

  7. RAGE MP Clothes Addon For MP Charater

    With this dlcpack, you're able to add up to hundreds of clothing WITHOUT replacing anything from the original vanilla game. 
    In this pack, you'll be able to add the following as addon content for both MP_Female and MP_Male:
    Heads/Faces (Up to 111!) Beards/Masks (Up to 159!) Hairstyles (Up to 185!) Pants (Up to 128!) Feets/Shoes (Up to 127!) Secondary Tops (Up to 106!) Decals/Emblems (Up to 93!) Primary Tops (Up to 127!) How does it work?:
    From learning the hex codes in the .ymt files and spending hours figuring out where everything was, I made changes and added things into the .ymt files to make this possible. However, the dlcpack overwrites the initial MP clothing dlcpack (the original clothing from the game, albeit it doesn't REPLACE any clothing) so the limits are added BEFORE any new dlc clothing. DLC clothing comes after the limits as they were pushed further to make way for the newer limits adjusted.
    In the future I will possibly adjust it even more if it's necessary.
     
    How do I get addon content to work?
    Simple.
    Go into streamedpeds_mp.rpf From there, it should be easy sailing. MP_Female stuff goes in mp_f_freemode_01 and MP_Male stuff goes into mp_m_freemode_01.  Don't forget to affix (basically dragging a file into the "ArchiveFix" program) "streamedpeds_mp" or "streamedpeds_mp" if you added anything into those archive .rpfs. Replace them inside the .rpf archive after affixing. As for naming them, ONLY name them based off what I have shown here:
    Head DrawableIDs: (46 - 157) Models: head_xxx_r Textures: head_diff_000_a_whi (or _chi, _bla, _lat, _pak, _ara at the end) Berd/Mask DrawableIDs: (8 - 167) Models: berd_xxx_u Textures: berd_diff_xxx_a_uni Hair DrawableIDs: (38 - 223) Models: hair_xxx_u Textures: hair_diff_xxx_a_uni Pants DrawableIDs: (16 - 144) Models: lowr_xxx_r Textures: lowr_diff_xxx_a_whi Feet/Shoes DrawableIDs: (16 - 143) Models: feet_xxx_u Textures: feet_diff_xxx_a_whi Accessory/Tops DrawableIDs: (16 - 122) Models: accs_xxx_u Textures: accs_diff_xxx_a_uni Decal/Emblem DrawableIDs: (0 - 93) Models: decl_xxx_u Textures: decl_diff_xxx_a_uni Tops2 DrawableIDs: (16 - 143) Models: jbib_xxx_u Textures: jbib_diff_xxx_a_uni Start from the number from one of the components of which you're adding from the number the limit suggest. (For an example, if you're adding some shoes mod for the first time, then rename the files to "feet_016_u" and feet_diff_016_a_whi) 

    134 downloads

       (2 reviews)

    1 comment

    Updated

  8. Synced parachute

    🎈 Motivation
    Currenly I develop battle royal gamemode and it was anoying to see how are players falling without any animation. Imagine how is hard to see where your opponents without any parachute object.

    🛠️ Installation:
    Just extract parachute.zip into your server root.
    (it will replace your client_resources/index.js)

    📸 Falling animation and Parachute object fix:

     

    💡 Featues:
    Parachute object is destroying when player is near the ground after 3 seconds Synced falling animation without parachute Synced parachute attaching Working only near streamed players More features from you 😉  

    111 downloads

       (4 reviews)

    0 comments

    Updated

  9. Bitcoin Exchange

    This is a small script that allows players to buy/sell bitcoins.
     
    Requirements
    Currency API (define a currency named "cash" after installing) node-fetch (after installing, go to packages/bitcoin folder, launch command prompt/powershell from shift+rightclick and write "npm install", should download it)  
    Installing
    Drag & drop to your server files folder.
     
    Config
    The config.json file provides some options:
    updateInterval - The time between BTC price updates, in milliseconds. Default value is 300000 aka 5 minutes. markerColor - Color of the markers, [r, g, b, a] format. markerRange - Range of the markers. exchangeCoords - Positions where players can buy/sell bitcoins. Default values add 2 exchange locations: Lester's house and garment factory.  
    Commands
    buybtc [amount] sellbtc [amount] Both commands need you to be inside a Bitcoin Exchange marker.
     
    Notes
    This script does not save data (bought bitcoins etc), saving should be handled by your gamemode since Currency API provides functions for that. BTC price is provided by CoinDesk. Currency API does not support floats so players can't buy less than 1 BTC. Bogdanoff is watching

    72 downloads

       (1 review)

    1 comment

    Submitted

  10. No reticle for all weapons.

    Every weapon has no reticle when aiming. (Working with snipers too.)
     
    Installation:
    1) Unpack the zip.
    2) If you haven't already, create a "dlcpacks" folder inside your "client_packages" folder.
    3) Drop the "nosight" folder inside "dlcpacks"

    67 downloads

       (0 reviews)

    0 comments

    Updated

  11. [Perfect for RP Servers]

    What is this amazing script?
    You are also able to control the steering (unable to set straight afterwards due to setSteeringAngle not being implemented yet) so you can move the vehicle to the side of the road.
    If you are an RP server then this is perfect for you!
    With some wizard maths, the text and position is at the correct end of each car and is based on distance (This has taken over 6 hours to get right). 
     
    Configuration
    I have already built in configuration to set whether you can allow it on locked vehicles, low health vehicles, whether the engine is off and certain vehicle classes.
    These can all be configured in the config section of the file:
    this.config = {            AllowVehicleClass: [0, 1, 2, 3, 4, 5, 6, 9, 18], // These are the normal vehicles in the game classes - to disable it, set it to false            MaxVehicleCubedSize: 25, // This is the vehicle length * width - as an idea an ambulance is 21            LockHandbrakeProtection: false, // If set - you can't push a locked vehicle (Theft prevention or ditching cars)            EngineProtection: false, // If set - you can only push if the enginer is turned off            VehicleHealthProtection: false, // Must be less than 1000 or false which de-activates checking vehicle health            PushEventName: false, // Set this to send an event to your server with the relevant Vehicle and Player attached (ie 'pushing_car')            LabelsDisplayed: true, // Show labels near the pushing positions when close enough            DebugPositions: false, // View pushing positions as markers so they are more visible            AllowVehicleSteering: true, // Allows the player to turn the wheels of the vehicle using A and D keys }  
    In Action
    To see how it looks working just checkout:
    https://streamable.com/ab2v5
     
    Questions
    Lastly if you have any questions feel free to give me a shout on discord (wdoyle2) or respond in the comment section.
    This is currently not on github but more than happy to post it for any future pull requests. 

     

    206 downloads

       (6 reviews)

    0 comments

    Updated

  12. Screen FX viewer.

    This is a simple script was made to help you to find a Screen FX effect!
    Requirements: NativeUI.
    Use F2, to see menu.

    196 downloads

       (1 review)

    0 comments

    Updated

  13. [C#] Custom Timer - Server & Client

    With this script you can easily create custom timer.
    The file is fully commented and should be easy to understand.
    The file in Shared is required - and then use either the file in Server or in Client depending on where you are using it.
    You have to use the constructor to create the timer.

    Examples:
    Examples: // Yes, the method can be private // private void testTimerFunc(Client player, string text) { NAPI.Chat.SendChatMessageToPlayer(player, "[TIMER] " + text); } void testTimerFunc() { NAPI.Chat.SendChatMessageToAll("[TIMER2] Hello"); } [Command("ttimer")] public void timerTesting(Client player) { // Lamda for parameter // new Timer(() => testTimerFunc(player, "hi"), 1000, 1); // Normal without parameters // new Timer(testTimerFunc, 1000, 1); // Without existing method // var timer = new Timer(() => { NAPI.Chat.SendChatMessageToPlayer(player, "[TIMER3] Bonus is da best"); }, 1000, 0); // Kill the timer // timer.Kill(); }  

    321 downloads

       (3 reviews)

    0 comments

    Updated

  14. Compass

    Just simple compass what you can use.
    You need to add compass.js path, to index.js on client_packages.

    64 downloads

       (0 reviews)

    1 comment

    Submitted

  15. RageMP new hairstyles!

    - Up to 20 NEW hairstyles for males!
    - Up to 19 NEW hairstyles for females!
    - Root's character creator adaption supported!
     
    Installation:
    1) Unpack the rar.
    2) If you haven't already, create a "dlcpacks" folder inside your "client_packages" folder.
    3) Drop the "gtahairs" folder inside "dlcpacks"

    162 downloads

       (3 reviews)

    0 comments

    Updated

  16. Vice City Minimap

    Video: https://streamable.com/2cg3g
    This is a cef minimap for vice city in js.
    Helth and armour progress bars don't work you can make it work easily

    90 downloads

       (5 reviews)

    0 comments

    Updated

  17. Shortcuts (Animations) on Numpad 1.0.0 Javascirpt

    About this File
    I used this res to create my res: Shortcuts (Animations) on Numpad 1.0.0 Before first Startup: you import db.sql in your Database and change "Yourname" in the record or leave it. I used RPC in this example, install it. My node_modules are in the archive located. Do this on Login/Startup Serverside
    gm.mysql.handle.query("SELECT * FROM shortcuts WHERE name = ?", [player.name], function (err10,res10) { if (err10) console.log("Error in loadShortcuts: "+err10); if (res10.length > 0) { res10.forEach(function (shortcutData) { player.data.numpad1A = shortcutData.num1animA; player.data.numpad1B = shortcutData.num1animB; player.data.numpad1C = shortcutData.num1animC; player.data.numpad1D = shortcutData.num1animD; player.data.numpad1Name = shortcutData.num1name; player.data.numpad2A = shortcutData.num2animA; player.data.numpad2B = shortcutData.num2animB; player.data.numpad2C = shortcutData.num2animC; player.data.numpad2D = shortcutData.num2animD; player.data.numpad2Name = shortcutData.num2name; player.data.numpad3A = shortcutData.num3animA; player.data.numpad3B = shortcutData.num3animB; player.data.numpad3C = shortcutData.num3animC; player.data.numpad3D = shortcutData.num3animD; player.data.numpad3Name = shortcutData.num3name; player.data.numpad4A = shortcutData.num4animA; player.data.numpad4B = shortcutData.num4animB; player.data.numpad4C = shortcutData.num4animC; player.data.numpad4D = shortcutData.num4animD; player.data.numpad4Name = shortcutData.num4name; player.data.numpad5A = shortcutData.num5animA; player.data.numpad5B = shortcutData.num5animB; player.data.numpad5C = shortcutData.num5animC; player.data.numpad5D = shortcutData.num5animD; player.data.numpad5Name = shortcutData.num5name; player.data.numpad6A = shortcutData.num6animA; player.data.numpad6B = shortcutData.num6animB; player.data.numpad6C = shortcutData.num6animC; player.data.numpad6D = shortcutData.num6animD; player.data.numpad6Name = shortcutData.num6name; player.data.numpad7A = shortcutData.num7animA; player.data.numpad7B = shortcutData.num7animB; player.data.numpad7C = shortcutData.num7animC; player.data.numpad7D = shortcutData.num7animD; player.data.numpad7Name = shortcutData.num7name; player.data.numpad8A = shortcutData.num8animA; player.data.numpad8B = shortcutData.num8animB; player.data.numpad8C = shortcutData.num8animC; player.data.numpad8D = shortcutData.num8animD; player.data.numpad8Name = shortcutData.num8name; player.data.numpad9A = shortcutData.num9animA; player.data.numpad9B = shortcutData.num9animB; player.data.numpad9C = shortcutData.num9animC; player.data.numpad9D = shortcutData.num9animD; player.data.numpad9Name = shortcutData.num9name; }); }else{ gm.mysql.handle.query("INSERT INTO shortcuts SET name = ?", [player.name], function (insertError) { if (insertError) console.log(`[Shortcuts Init Error] ${err.message}`); if(!insertError){ gm.mysql.handle.query("SELECT * FROM shortcuts WHERE name = ?", [player.name], function (err10,res10) { if (err10) console.log("Error in loadShortcuts: "+err10); if (res10.length > 0) { res10.forEach(function (shortcutData) { player.data.numpad1A = shortcutData.num1animA; player.data.numpad1B = shortcutData.num1animB; player.data.numpad1C = shortcutData.num1animC; player.data.numpad1D = shortcutData.num1animD; player.data.numpad1Name = shortcutData.num1name; player.data.numpad2A = shortcutData.num2animA; player.data.numpad2B = shortcutData.num2animB; player.data.numpad2C = shortcutData.num2animC; player.data.numpad2D = shortcutData.num2animD; player.data.numpad2Name = shortcutData.num2name; player.data.numpad3A = shortcutData.num3animA; player.data.numpad3B = shortcutData.num3animB; player.data.numpad3C = shortcutData.num3animC; player.data.numpad3D = shortcutData.num3animD; player.data.numpad3Name = shortcutData.num3name; player.data.numpad4A = shortcutData.num4animA; player.data.numpad4B = shortcutData.num4animB; player.data.numpad4C = shortcutData.num4animC; player.data.numpad4D = shortcutData.num4animD; player.data.numpad4Name = shortcutData.num4name; player.data.numpad5A = shortcutData.num5animA; player.data.numpad5B = shortcutData.num5animB; player.data.numpad5C = shortcutData.num5animC; player.data.numpad5D = shortcutData.num5animD; player.data.numpad5Name = shortcutData.num5name; player.data.numpad6A = shortcutData.num6animA; player.data.numpad6B = shortcutData.num6animB; player.data.numpad6C = shortcutData.num6animC; player.data.numpad6D = shortcutData.num6animD; player.data.numpad6Name = shortcutData.num6name; player.data.numpad7A = shortcutData.num7animA; player.data.numpad7B = shortcutData.num7animB; player.data.numpad7C = shortcutData.num7animC; player.data.numpad7D = shortcutData.num7animD; player.data.numpad7Name = shortcutData.num7name; player.data.numpad8A = shortcutData.num8animA; player.data.numpad8B = shortcutData.num8animB; player.data.numpad8C = shortcutData.num8animC; player.data.numpad8D = shortcutData.num8animD; player.data.numpad8Name = shortcutData.num8name; player.data.numpad9A = shortcutData.num9animA; player.data.numpad9B = shortcutData.num9animB; player.data.numpad9C = shortcutData.num9animC; player.data.numpad9D = shortcutData.num9animD; player.data.numpad9Name = shortcutData.num9name; }); } }) } }) } }); if you need more contact me

    89 downloads

       (0 reviews)

    1 comment

    Updated

  18. Blackout

    This resource lets you control the blackout feature of GTA V.
     
    Installing
    Put the files you downloaded in their respective places Add require('blackout') to client_packages/index.js All done  
    API
    // Serverside (synced to every player) mp.world.blackout.enabled // get mp.world.blackout.enabled = true/false // set // Clientside (only for a client) mp.game.blackout.enabled // get mp.game.blackout.enabled = true/false // set You can also trigger SetBlackoutState event with the first argument being the new state of blackout.
     
    Example
    // Toggle blackout mode with /toggleblackout (Serverside) mp.events.addCommand("toggleblackout", (player) => { mp.world.blackout.enabled = !mp.world.blackout.enabled; player.outputChatBox(`Blackout ${mp.world.blackout.enabled ? `enabled` : `disabled`}.`); }); // Toggle blackout mode with F8 key (Clientside) mp.keys.bind(0x77, false, () => { mp.game.blackout.enabled = !mp.game.blackout.enabled; mp.gui.chat.push(`Blackout ${mp.game.blackout.enabled ? `enabled` : `disabled`}.`); });  


    329 downloads

       (1 review)

    0 comments

    Updated

  19. Vehicle Spawner | Diamond Casino & Resort Update

    I updated the "vehicleHashes.js" to the update "Diamond Casino & Resort".
     
    Orginal version and creator of the script:
     

    108 downloads

       (0 reviews)

    1 comment

    Submitted

  20. Example of proper DLC Pack mapping loading

    An example of proper DLC Pack mapping loading without issues on first connection to the server.

    Installation
    Extract all archive files to the server packages root folder.

    Note
    The game might get frozen for up to 10 seconds (faster on SSD) on first connection, that's the time taken by the game to reload DLC mapping. Mapping will work properly after that though.

    284 downloads

       (1 review)

    0 comments

    Updated

  21. Shortcuts (Animations) on Numpad

    Load this Variables on Login:
    gm.mysql.handle.query("SELECT * FROM shortcuts WHERE charId = ?", [player.data.charId], function (err10,res10) { if (err10) console.log("Error in loadShortcuts: "+err10); if (res10.length > 0) { res10.forEach(function (shortcutData) { player.data.numpad1A = shortcutData.num1animA; player.data.numpad1B = shortcutData.num1animB; player.data.numpad1C = shortcutData.num1animC; player.data.numpad1D = shortcutData.num1animD; player.data.numpad1Name = shortcutData.num1name; player.data.numpad2A = shortcutData.num2animA; player.data.numpad2B = shortcutData.num2animB; player.data.numpad2C = shortcutData.num2animC; player.data.numpad2D = shortcutData.num2animD; player.data.numpad2Name = shortcutData.num2name; player.data.numpad3A = shortcutData.num3animA; player.data.numpad3B = shortcutData.num3animB; player.data.numpad3C = shortcutData.num3animC; player.data.numpad3D = shortcutData.num3animD; player.data.numpad3Name = shortcutData.num3name; player.data.numpad4A = shortcutData.num4animA; player.data.numpad4B = shortcutData.num4animB; player.data.numpad4C = shortcutData.num4animC; player.data.numpad4D = shortcutData.num4animD; player.data.numpad4Name = shortcutData.num4name; player.data.numpad5A = shortcutData.num5animA; player.data.numpad5B = shortcutData.num5animB; player.data.numpad5C = shortcutData.num5animC; player.data.numpad5D = shortcutData.num5animD; player.data.numpad5Name = shortcutData.num5name; player.data.numpad6A = shortcutData.num6animA; player.data.numpad6B = shortcutData.num6animB; player.data.numpad6C = shortcutData.num6animC; player.data.numpad6D = shortcutData.num6animD; player.data.numpad6Name = shortcutData.num6name; player.data.numpad7A = shortcutData.num7animA; player.data.numpad7B = shortcutData.num7animB; player.data.numpad7C = shortcutData.num7animC; player.data.numpad7D = shortcutData.num7animD; player.data.numpad7Name = shortcutData.num7name; player.data.numpad8A = shortcutData.num8animA; player.data.numpad8B = shortcutData.num8animB; player.data.numpad8C = shortcutData.num8animC; player.data.numpad8D = shortcutData.num8animD; player.data.numpad8Name = shortcutData.num8name; player.data.numpad9A = shortcutData.num9animA; player.data.numpad9B = shortcutData.num9animB; player.data.numpad9C = shortcutData.num9animC; player.data.numpad9D = shortcutData.num9animD; player.data.numpad9Name = shortcutData.num9name; }); } });  
    Contact:
    You can Contact me on Discord for Questions.  https://discord.gg/epD7fsv
     
    I can make Scripts for you write me on Discord please German my english is so Bad : SnillocTV

    312 downloads

       (3 reviews)

    2 comments

    Updated

  22. Rage Horse

    Preview video https://streamable.com/b1b0i
    Github repo https://github.com/ItsMos/ragemp-horse
     
    Horse mod for rage multiplayer Notes This replaces the 'deer' model because it is fast-moving. Horses should be synced, this doesnt work well with `online` skins, you can fix that tho, feel free to contribute. You think that you're actually riding the horse? no, think again, the horse is riding you (your ped) Usage // server code let pkg = require('ragemp-horse') let allHorses = pgk.horses, Horse = pkg.Horse // To create a horse let myPony = new Horse(position, dimension) // delete a horse myPony.delete() Press Interact button (default `E`) to mount/dismount a horse Credits Horse model converted by Quechus13

    66 downloads

       (2 reviews)

    1 comment

    Updated

  23. Weapon Spawner

    Requirements
    You need to download & install these resources first:
    NativeUI Weapon Component Sync Weapon Tint Sync  
    Installing
    Put the files you downloaded in their respective places Add require('weaponspawner') to client_packages/index.js All done  
    Using
    You can use the /weapons command to access the weapon spawner menu.
     
    Issues
    Some components might not have a visible name because Rockstar didn't give them one. Equipped component displaying might not be accurate at first but will be fixed after you apply/remove a component.  
    Source code is available on GitHub in case you don't want to download: https://github.com/root-cause/ragemp-weapon-spawner

    257 downloads

       (3 reviews)

    0 comments

    Submitted

  24. [JS] Vehicleseat Menu

    This is a Vehicleseat Menu in JavaScript for Rage:MP
     
    Install:
     
    Unzip vehicleseatJS.zip in your root server folder.
     
    Use:
     
    Press "F" or "G" when a Vehicle nearby you.
     
    Contact:
     
    You can Contact me on Discord for Questions.
     
    {Brace}#0571
     
    Have fun!

    544 downloads

       (0 reviews)

    2 comments

    Updated

  25. MC's Blackjack Mod

    ~~PLEASE LEAVE FEEDBACK ON MULTIPLAYER FUNCTIONALITY~~
    Hello! I'm MC, and I developed this blackjack mod from scratch. The goal was to create an interactive blackjack experience with full UI support. If you decide to give it a go, please make sure to leave some feedback as to whether it works properly or not. Thanks!
    Here's a demo of the mod in action:
    Features:
    When a player creates a table, they will automatically be assigned the HOUSE role for that table. The house player has the following UI options:
    - OPEN TABLE: If the table is currently closed, it will open the table. All tables are open by default.
    - CLOSE TABLE: The table will close for all players, except for the house player. This is used to prevent players from joining a private game, or a game in progress. It can also be used to temporarily close the table for an extended period of time.
    - RESHUFFLE: The tables deck is reshuffled, with all players hands being reset and the house having a new hand dealt. This reuses the same number of decks that was originally equipped with the table.
    - DESTROY TABLE: Destroys the table, deleting all resources associated with it. This will close any open UI for all players currently in the table, and the house player.
    - LEAVE GAME: This just leaves the table. If the house player leaves the table, the current state of the table is lost.
    Clicking on any player name will 'hit' the player. Additionally, clicking on a card on the table will flip the card over.Players will only see the house's hand and their own hand. They only have the option to leave the game.

    That's it! Any future adjustments to this mod will be based purely on the feedback received. 

    Check me out on Twitch if you ever want to catch me occasionally coding RageMP mods live, support future mod development, or if you just want to come say hi: https://www.twitch.tv/mctheboss
     

    98 downloads

       (2 reviews)

    0 comments

    Updated