139 files

  1. 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

  2. [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!

    553 downloads

       (0 reviews)

    2 comments

    Updated

  3. 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

    314 downloads

       (3 reviews)

    2 comments

    Updated

  4. Clothing Shops

    This script lets you create your own clothing shop(s) with JSON files.
     
    Installing
    Put the files you downloaded in their respective places Download & install NativeUI if you haven't yet, this script needs it (Only if you're going to have paid items) Download & install Currency API then define a currency named cash. Add require('clothing-shops') to client_packages/index.js Set up some clothing shops (read below) All done  
    Setting Up Shops
    Shop data is loaded from packages/clothing-shops/shops, any JSON file there will be treated as a clothing shop. Shop file structure:
    { // OPTIONAL, this object will be the menu banner sprite on clientside. Search for "shopui_title_" on https://wiki.rage.mp/index.php?title=Textures "bannerSprite": { "library": "shopui_title_highendfashion", "texture": "shopui_title_highendfashion" }, // REQUIRED, this array contains the shop coordinates "shops": [ { "x": 123.4, "y": 456.7, "z": 8.9 }, { "x": 10.0, "y": 20.0, "z": 30.0 } ], // REQUIRED, this object contains item data for freemode male model "male": { // REQUIRED, this object contains all clothing item data "clothes": { // REQUIRED, this array contains item data for a component slot (https://wiki.rage.mp/index.php?title=Clothes - we're using 11 - tops here) "11": [ // REQUIRED, item object(s) for component slot 11 { "name": "Blue Burger Shot Hockey Shirt", "drawable": 282, "texture": 0 }, // This item will need the player to have some money (handled with Currency API) { "name": "Blue Cluckin' Bell Hockey Shirt", "drawable": 282, "texture": 4, "price": 500 } ] }, // REQUIRED, this property contains all prop item data (we're not gonna add any props to freemode male here, so it's just an empty object) "props": {} }, // REQUIRED, this object contains item data for freemode female model "female": { // This time we're not adding any clothes "clothes": {}, // But we're adding props "props": { // Same as above, prop slot as key (we're using 7 - bracelets) "7": [ // Prop items are defined just like clothing items { "name": "Gold Snake Cuff", "drawable": 0, "texture": 0, "price": 200 }, { "name": "Light Wrist Chain (R)", "drawable": 7, "texture": 0 }, { "name": "Spiked Gauntlet (R)", "drawable": 13, "texture": 0, "price": 85 } ] } } } If this wasn't any clear, there is a file named ExampleShopFile.json inside packages/clothing-shops/. (it's the file used in the preview video, put it to shops folder if you want to load it)
    I'd also recommend you to check out my "Clothing Names" resource for valid names.
    Source code is available on GitHub in case you don't want to download: https://github.com/root-cause/ragemp-clothing-shops

    606 downloads

       (6 reviews)

    4 comments

    Updated

  5. Better Notifications

    Now with 200% more color.
    Clientside Functions:
    mp.game.ui.notifications.show(message, flashing = false, textColor = -1, bgColor = -1, flashColor = [77, 77, 77, 200]) mp.game.ui.notifications.showWithPicture(title, sender, message, notifPic, icon = 0, flashing = false, textColor = -1, bgColor = -1, flashColor = [77, 77, 77, 200]) Serverside Functions:
    player.notify(message, flashing = false, textColor = -1, bgColor = -1, flashColor = [77, 77, 77, 200]) player.notifyWithPicture(title, sender, message, notifPic, icon = 0, flashing = false, textColor = -1, bgColor = -1, flashColor = [77, 77, 77, 200]) As Events:
    BN_Show(message, flashing = false, textColor = -1, bgColor = -1, flashColor = [77, 77, 77, 200]) BN_ShowWithPicture(title, sender, message, notifPic, icon = 0, flashing = false, textColor = -1, bgColor = -1, flashColor = [77, 77, 77, 200]) Example:
    // Clientside mp.game.ui.notifications.show("Normal message with custom text and background color.", false, 15, 20); mp.game.ui.notifications.showWithPicture("New Message", "Facebook", "You got some more of that data?", "CHAR_FACEBOOK", 1, false, 0, 139); // Serverside player.notify("This message is red which means you're doing something wrong.", false, 6); player.notifyWithPicture("Title", "Ammu-Nation", "Ammunation has all the equipment you need to protect your family from the evils of a liberal society! Fixed, mounted, and shoulder-held submachine guns. Mortars! Surface-to-air and all manner of heat-seeking missiles!", "CHAR_AMMUNATION"); Icons:
    You can specify an icon ID for picture notifications, here's a list of them:
    0, 4, 5, 6 = No Icon 1 = Speech Bubble 2 = Message 3 = Friend Request 7 = Arrow 8 = RP 9 = Money Notes:
    textColor and bgColor parameters want a HUD color ID which you can find here. (it is a bit outdated now though) You can find notification pictures here. If you can't see picture notifications, you must enable Phone Alerts from Settings > Notifications > Phone Alerts. This script changes player.notify on serverside.

    920 downloads

       (6 reviews)

    3 comments

    Updated

  6. Animation Viewer

    Hi everyone,
    I've decided to share my Animator resource which basically lets you play all animations avaliable in this list:
    https://wiki.gtanet.work/index.php?title=Animations
    I have converted it from GTA Network to RAGEMP recently. It's a very simple but useful script. Searching through the animations list is like looking for needle in the haystack, considering about 2/5 of all anims cannot be applied to ped and 1/2 of those you wouldn't really find use for. It's a great solution if you don't want to install any mods to view anims. Just include the file and preview! Save included.
    There are 12,365 animations to play. Some of anims do not work on player as they are intended to be used on props, vehicles, weapons etc.
    You can also experience a few seconds delay on some animations, but none of them causes crashes.
    After launching the Animator a drawText will appear in bottom-right corner of the screen, showing you which animation you are viewing including ID, animation group and name.
     
    How to install:
    UnZip the file and move the animation-viewer folder to bridge -> resources folder. Include animation-viewer resource in settings.xml. Move animator.js from animation-viewer folder to clientside_packages folder and include it in index.js.  
    How to use:
    Type /animator to launch or close the animator. Type /animator help for in-game help. Type /animator skip [number] to skip to animation id. Type /animator save [savename] to save the animation. ( saves in server root folder in Saved_Animations.txt. ) Type /animator stop to stop currently playing animation. Use LEFT and RIGHT arrow keys to cycle through animations. Use UP and DOWN arrow keys to cycle through 100 animations at once.  
    Notes:
    All animations are looped. Clientside file is minified. This resource is made for server developers. It sends huge amounts of data to clientside when launching so use it only to preview/save animations. You can see the code here: https://gitlab.com/Hazes/animator-viewer  
    Changelog:
    [v1.0]
    Code has been sorted and is a bit more optimized. Fixed assembly reference error for those who didn't have System.IO.dll included in their main resource. Parsing the number in /animator skip now works correctly.  
    Presentation:
     

    765 downloads

       (3 reviews)

    3 comments

    Updated

  7. 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

  8. Better Keybinding

    This module saves you some time on bindings keys. 
    Read more here: 
     

    87 downloads

       (2 reviews)

    2 comments

    Updated

  9. Light Control

    This resource adds a light control menu to toggle the state of various lights in GTA V. Use /lcmenu command to access the menu.
    Since this is a new feature of RAGEMP, light IDs don't have names/descriptions yet. (Maybe people will document them later, who knows...)
    You might also want to check the screenshots for a preview of various light states.
     
    Installing
    Download & install the latest NativeUI if you haven't already, this script needs it Drop the lightcontrol folder to your server's client_packages Add require('lightcontrol') to client_packages/index.js All done  
    Q: "But I still have weird lights/fog around the city buildings?"
    See:
     

    393 downloads

       (9 reviews)

    2 comments

    Updated

  10. Basic Vehicle Sync

    This resource will sync basic things for you such as the doors, windows, tyres, engine, dirt, and lock status.
    Note that this resource incorporates the disabling of automatic engine toggle. If you get in a car you can only start it by script commands.
    There are several API functions provided for you to use.
     
    Read up on how to use this resource here;
    https://wiki.gtanet.work/index.php?title=Getting_started_with_Basic_Vehicle_Sync_Resource

    1885 downloads

       (3 reviews)

    3 comments

    Updated

  11. Crouch

    Lets you crouch by pressing CTRL.
     
    Installing
    Put the files you downloaded in their respective places Add require('crouch') to client_packages/index.js All done  
    Notes
    Since both this script and walking styles script uses setMovementClipset and resetMovementClipset, they probably won't work at the same time. Crouching is synced between players.

    853 downloads

       (3 reviews)

    3 comments

    Updated

  12. Smooth Throttle Script

    This resource will stop your vehicle from constantly skidding when acceleration. It will also stop you from reversing when you're braking. You will come to a complete stop and then you have to press reverse again to actually reverse. Automatic brake lights are included.
    Note that you can hold your handbrake (space bar) down and accelerate and this will temporarily remove the throttle limiter.

    488 downloads

       (3 reviews)

    2 comments

    Updated

  13. Basic Vehicle System

    First Credits for @valdirdd for the Speedometer that i Edited....
    And a big thank for @CommanderDonkey
     
    for that fancy design of the speedometer.
    FEATURES : 
    Fuel System,
    Distance Calculation

    And a Notice to all that would use it... its a german version so... u must be change it if u want another type.

    INSTALL :
    Put the files in the served folders...
    add clientside in ur index.js
    require('basicVehSystem');


    to change to MPH use the following Tutorial...

    I Hope u enjoy the files... Bugs please send me...

    NOTICE:
    to change the gas mileage edit line 30 in ur index.js in packages/basicVehSystem/index.js
     
    let rest = (Veh_data*10); change the Multicator '10' to another value.... it calculate ur driven distance at the moment... with this multiplicator
     


     

    872 downloads

       (1 review)

    4 comments

    Updated

       (4 reviews)

    0 comments

    Submitted

  14. [JS] [Server-Side] Control Actions

    Hey.

    You can simple disable/enable a control actions for the player on the server-side.
    It can be useful if you want disable/enable some keys like pause menu in game on the server-side.

    104 downloads

       (1 review)

    0 comments

    Submitted

  15. More Immersive Emergency Lights

    More Immersive Emergency Lights for RageMP
    A script for GTA V's multiplayer modification RageMP, that adds more immersive controls of emergency lights and sirens for default and non-els vehicles. Both lights and sirens are synchronized between players!
    Read the documentation, check out the code or get the newest version, go here: GitHub

    Credits:
     - RageMP team for creating this awesome mod
     - Mos#2649 on Discord for this keybinding idea
     

    142 downloads

       (1 review)

    0 comments

    Updated

  16. Simple Camera - Typescript

    Here is my written Camera Class for RAGEMP. You can easy implement this file into your client-sided Scripts and use it pretty powerful.
     
    //Create Camera CameraEditor.createCamera("Login", new mp.Vector3(-1549.810546875, 1679.3438720703125, 106.20653533935547)); CameraEditor.setCameraActive("Login"); //Interpolate Camera CameraEditor.setCameraInterpolate("Login", new mp.Vector3(-1561.000732421875, 1685.904296875, 102.0960693359375), new mp.Vector3(-1563.254150390625, 1683.891845703125, 102.28447723388672), 30000); //Destroy Camera CameraEditor.destroyCamera("Login");  
    greeting DevGrab

    92 downloads

       (1 review)

    0 comments

    Submitted

  17. Echtwelt RageMP Source

    Echtwelt Reborn Rage MP on base of NodeJS+MongoDB+React/SemanticUI


    Please don't use the attached file, download the latest version from the repository here https://github.com/xzessmedia/EchtweltRageMP
    CEF Demo:
     
    Simple deployment powered by docker:
     
    To discuss and get help please join this Discord (Please don't use issue tracker for discussion)
    https://discord.gg/KmPZy9f
    Looking forward to your contributions to make this repository successful and alive


    Optional: Custom Vehicles:
    You can download the last Vehicle Pack from here:
    https://www.echtwelt-life.de/filebase/index.php?entry/13-echtweltragempmodpack/
    Password: OpenSource

    To install you have to create a folder "dlcpacks" inside your client_packages folder of your server and copy the files inside.


    All vehicles tested and with numberplate (as far as i know)
     

    682 downloads

       (4 reviews)

    0 comments

    Updated

  18. Scaleform Hud

    This resource introduces the well known scaleform hud for mission/heists. Makes it easy to create it in-game
    Known Issues:
    Mission end  doesn't display black background due to unknown reason, still addressing it. API:
    Client-side API
    // Client side // Credits to kemper for his amazing scaleform class... /* * Creates an intro that you see on mission start. * style: int (1-20) Adds background to the intro banner * header: Mission title * subHeader: Mission secondary title */ mp.banners.createIntro(style, header, subHeader).then(done => { }); /* * Creates an objective banner * style: (1-20) Adds background to the intro banner * header: Mission title * objective: Mission secondary title */ mp.banners.createObjective(style, header, objective).then(done => { }); /* * Creates an objective banner * style: int (1-20) Adds background to the intro banner * missionName: Mission title * reason: Reason of pass/fail * passed: boolean */ mp.banners.missionResult(style, missionName, reason, passed).then(done => { }); /* * Creates an mission end banner. * style: int (1-20) Adds background to the intro banner * cashWon: Cash Earned * level: Object * { rpGain: (int), rpStart: (int), rpMin: (int), rpMax: (int), currentRank: (int), nextRank: (int), rankUpText: (string), rankUpExtraText: (string) } */ mp.banners.missionEnd(style, cashWon, level).then(done => { });  
    Banner Images:
    Intro:

     
    Objective

     
    Mission Complete

    Mission End


    If you have any issues you know what to do....

    Thanks for reading this at least....

    69 downloads

       (1 review)

    1 comment

    Submitted

  19. Courier

    Requirements
    You need to download & install these resources first:
    NativeUI Efficient Attachment Sync
    Currency API (after installing, define a currency named cash)
     
    Installing
    Put the files you downloaded in their respective places Set up some businesses and products (read below) All done  
    Basically
    This script adds factories and buyers which sell and buy products, your job is to buy stuff from factories and sell them to buyers for profit.
     
    Commands
    /products: Accesses a vehicle's product inventory, you have to be at the back of the vehicle.
    /takeproduct: Takes a product from the ground/factory.
    /dropproduct: Drops a product from your hands to the ground/buyer.
     
    JSON Files
    Most of the changes are done by editing JSON files located in packages/courier/json/.
    Remember to validate your changes here: https://jsonlint.com/
     
    config.json
    businessWorkInterval: Interval of the business work timer (used for factories to make product and buyers to sell product), default value is 60000.
    worldCleanerInterval: Interval of the world cleaner timer (used for removing dropped products), default value is 60000.
    droppedProductLife: Milliseconds a dropped product will stay for, default value is 600000.
    dropProductOnDeath: If true, dying will cause players to drop the product they're carrying, default value is true.
    dropProductOnDisconnect: If true, leaving the server will cause the players to drop the product they're carrying, default value is true.
     
    vehicles.json
    This file contains an object that keeps which vehicles are supported by this script in modelName: capacity format. (Vehicles List)
    { "burrito3": 6, // 6 products for burrito3 "rumpo": 6, // 6 products for rumpo "speedo": 4, // 4 products for speedo "youga": 4 // 4 products for youga }  
    products.json
    This file contains the product information in object of objects format. A product has name, model, price, profit, businessTime, attachOffset and attachRotation properties.
    name: The product's visible name.
    model: Model name of the product, used for dropping and attaching.
    price: Price of the product.
    profit: Profit rate of the product. Price is multiplied by this value while selling products to a buyer.
    businessTime: Milliseconds it takes for a factory to create one of this product/for a buyer to sell one of this product.
    attachOffset: Attachment offset of the product model on player.
    attachRotation: Attachment rotation of the product model on player.
    // Example: Ammunition product "ammo": { "name": "Ammunition", "model": "gr_prop_gr_bulletscrate_01a", "price": 300, "profit": 1.2, "businessTime": 600000, "attachOffset": { "x": 0, "y": -0.18, "z": -0.18 }, "attachRotation": { "x": 0, "y": 0, "z": 0 } }  
    businesses.json
    This file contains business information in array of objects format. A business has type, productType, initialStock, maxStock and position properties.
    type: Business type, only factory and buyer are available.
    productType: The product this business is interested in, only the values in products.json are available.
    initialStock: How much product this business has on server start.
    maxStock: Maximum product this business can have.
    position: Location of the business.
    // Example: Beer Factory & Buyer used in the video [ { "type": "factory", "productType": "beer", "initialStock": 100, "maxStock": 100, "position": { "x": 4.168992519378662, "y": 12.795921325683594, "z": 69.82928466796875 } }, { "type": "buyer", "productType": "beer", "initialStock": 0, "maxStock": 20, "position": { "x": 29.61789321899414, "y": 5.448328018188477, "z": 69.10714721679688 } } ]  
    businessTypes.json
    This file contains business type information in object of objects format. You probably don't need to make any changes to this file, unless you want to add new business types. (which needs some scripting as well)
    A business type has label and blipSprite properties.
    label: Visible name, used for blip name and label.
    blipSprite: Blip sprite of the business type. (Blip Sprite List)
    // Example: Default business types { "factory": { "label": "Factory", "blipSprite": 615 }, "buyer": { "label": "Buyer", "blipSprite": 616 } }  
    Extensions
    This script extends mp.Player and mp.Vehicle.
     
    Player Functions
    // Returns true if the player is carrying a product. player.isCarryingProduct(); // Returns the type of product the player is carrying, will be null if the player isn't carrying anything. player.getCarryingProduct(); // Makes the player start carrying a product. Type should be a valid product type and the player shouldn't be carrying a product, or it won't work. player.startCarryingProduct(type); // Makes the player stop carrying a product. player.stopCarryingProduct();  
    Vehicle Functions
    IMPORTANT: Vehicles with models that are in vehicles.json automatically get an inventory when entityCreated event is called, so you don't need to use setProductInventory for them. (Unless you want to be 100% sure they have it)
    // Sets the product inventory of a vehicle. newInventory must be an array created by the array constructor like "new Array(8)". vehicle.setProductInventory(newInventory); // Returns true if the vehicle has a product inventory. vehicle.hasProductInventory(); // Returns the product inventory of the vehicle, will be null if the vehicle doesn't have one. vehicle.getProductInventory(); // Adds a product to the vehicle product inventory, index must not have an item already and index must be within the bounds of product inventory array. Returns true if successful, false otherwise. vehicle.giveProduct(index, productType); // Returns the product at the specified index of vehicle product inventory, will be null if index doesn't have a product. vehicle.getProduct(index); // Removes the product at the specified index of vehicle product inventory. Returns true if successful, false otherwise. vehicle.removeProduct(index);  
    Source code is available on GitHub in case you don't want to download: https://github.com/root-cause/ragemp-courier

    349 downloads

       (5 reviews)

    0 comments

    Submitted

  20. [JS,CEF] Emergency Alert System

    (EN) This script allow you to play emergency alert sound (2 sounds: tornado siren, alert siren), coming soon: amber alert with sound&pop-up
    (FR) Ce script vous permet de déclencher des sirènes d'alertes (sirène tornade, sirène d'alerte), à venir: alerte enlèvement avec son&popup
    ----- HOW TO INSTALL -----
    1) Unpack RAGEMP Alert v0.1
    2) Drop the content of "client_packages" folder inside your client folder
    3) Drop the content of "packages" folder inside your server folder
    4) Add in your server index.js :
    require('./Alert/sAlert');
    5) Add in your client index.js :
    require('./Alert/cAlert');
    6) Do not forget to change link of mp.browsers.new in Alert/cAlert.js if needed

    ----- HOW TO USE -----
    /alert tornado {repeat time}
    --> {repeat time} FROM 1 TO 9 TIMES
    Duration: EACH time: 9sec (min: 9sec, max: 81sec)
    /alert siren {repeat time}
    --> {repeat time} FROM 1 TO 9
    Duration: START: 5sec / ACTIVE: 12sec (repeat from 1 to 9) / END: 13sec (min: 30sec, max: 126sec)
    /alert siren stop
    --> stop the siren immediatly if activated (duration: 13sec)
    ----- DEMO -----
    Tornado Siren:
    Alert siren:
    Amber alert (coming soon):
     

    176 downloads

       (1 review)

    0 comments

    Updated

  21. Interactive Phone for CEF

    I created this phone for a previous GTA MP Mod. I never properly finished it but it has useful features such as:
    Lockscreen push notifications Home button Custom phone style support Apps that open divs. Phones are stored in phones/phones/[phone-name]/
    There is a JSON file that contains the needed info for the phone as well as an image for the phone.
    This is unfinished

    2051 downloads

       (7 reviews)

    4 comments

    Submitted

  22. RC-Bandito

    This resource makes you create/experience the rc-bandito. It can be used to do some spying or even suicide bomb...
    // Server-side mp.vehicles.createRC(player); // Adds player to experience the bandito Controls:
    INPUT_CONTEXT aka. E (Detonates the bomb) INPUT_ENTER aka. F (Returns to player) Thank to root for signing the Chinese weapon contract, and thank George men for continuous motivation...
    You know what to do when you have issues (don't contact me obv.)
    Thanks for reading this...

    84 downloads

       (1 review)

    0 comments

    Updated

  23. 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
     

    101 downloads

       (2 reviews)

    0 comments

    Updated

  24. [JS, CEF] Internet Radio

    Internet radio over colshapes using CEF.
    Scope of application: custom clubs, interiors.
    Default location is the Galileo Observatory (behind the monument).
    Default radio station - Wacken Radio (DE).
    Installation:
    I. Put server files to: server-files\packages\yourGameMode
    II. Add require('./rStreamColshapes');  to your server's index.js
    III. Put client files to: client_packages then edit your client's index.js and add require('./rStream');
    To change radio stream url, edit index.html here: client_packages\cef\rStream\index.html
     
    GitHub

    167 downloads

       (2 reviews)

    0 comments

    Updated