139 files

  1. Manual transmission

    Hello everyone,
    It's been a while i didn't do some resources, and I've seen root taking the throne for a while. So i thought i would contribute again with some average resource for the developers to know more about rage's environment. Basically this resource introduces manual transmission to cars to ensure more control on your vehicle and to enjoy the experience of the manual transmission (Could be useful for some drag racing maybe..).
    Anyways manual is toggled by the command: /manual 
    Controls:
    NUMPAD_ADD increases the gear. NUMPAD_SUBTRACT lowers the gear Simple manual HUD was introduced beside the mini-map to know everything about your vehicle.
    Gears: 1-5, N, R.
    Shifting to fast disables vehicle engine. You have wait the shiftNow sign to appear, so you can shift to the next gear.
    Any questions/bugs please notify me in the comments section.
    Drive safely,
    Keptin

    251 downloads

       (4 reviews)

    0 comments

    Updated

  2. Binoculars

    The scenario used here is not synced
    Use the command to trigger the script :
    /binocular Scroll up and down to zoom in / out.
     
    Installation: Just put the folders where they should be, don't forget to import client side scripts in your index.js
     
    If you have any question feel free to ask us
     
    By AdAstra Dev Team (FR :D)

    153 downloads

       (1 review)

    0 comments

    Updated

  3. Local Voice Chat (3D)

    A local voice chat example using built-in voice chat API. Look for constants to change max range, auto volume (instead of changing volume on your own) and 3D effect.

    Press F4 to toggle local player's muted state.
     
    As of 24th Oct 2018 you need to use "testing_voice" branch to utilize voice chat API.
     

    2228 downloads

       (6 reviews)

    0 comments

    Updated

  4. Global Voice Chat

    The most trivial example usage of the recently introduced built-in voice chat API: global chat. It connects you to all players when you join the server and vice-versa.

    Press F4 to toggle local player's muted state.
     
    As of 24th Oct 2018 you need to use "testing_voice" branch to utilize voice chat API.

    539 downloads

       (5 reviews)

    0 comments

    Updated

  5. Fingerpointing

    First of all i want to credit Geekness for this former Pointing CL code
    I rewrote the Clientside Animation into JavaScript and synced it through two Serverside events and an additional Clientside SyncFix-Event with the help of George.
    Installation:
    1. Add client.js to your client_packages
    2. Add require('./client.js'); in your clientside index.js
    3. Add server.js to your packages (Optional you can copy the code and paste it into your existing events file)
    4. Add require('./server.js'); in your serverside index.js
    Control:
    The Animation is bound to the 'b' key.
    Have fun with this resource.

    1113 downloads

       (5 reviews)

    4 comments

    Updated

  6. Moods

    This resource lets players choose their mood. Selected mood is synced to other players.
    Installing
    Put the files you downloaded in their respective places Download & install NativeUI if you haven't yet, this script needs it Add require('moods') to client_packages/index.js All done Controls
    F7 Key - Show/hide mood menu.

    303 downloads

       (5 reviews)

    0 comments

    Updated

  7. GTAO Suicide

    This script adds the suicide feature of GTA Online.
    You can commit suicide by using /suicide command. Your character will shoot itself if you're holding a pistol and take pills otherwise.
     
    Installing
    Put the files you downloaded in their respective places Add require('suicide') to client_packages/index.js All done

    226 downloads

       (2 reviews)

    0 comments

    Submitted

  8. [v0.3.5] Implementing Custom NameTags

    Hi everyone!
    In need of a custom script for a Custom NameTag, I found the @hartority script, however, it was an outdated project and it had been made for version 0.2 of RageMP, with some references already removed, well, I bring you today the corrected code.
    Requirements:
    RageMP server files. Nothing more! Just have fun.   Introduction: This script is a reliable edition of the one produced by @hartority with only a few references to the RageMP library, so all code is credit @hartority.   Let's start:   1. Go to "client_packages" folder in "RAGEMP/server-files" directory, usually:   2. Create a JavaScript archive (.js) named "customtag.js", example:

      3. Inside the "customtag.js" paste this code:
      4. Save "customtag.js" file, and open "index.js" in "C:\RAGEMP\server-files\client_packages" directory and put this:
    End! Just test it and tell me if something goes wrong
    Usage example:

     
    The original code topic of @hartority:
    Thanks for all feedbacks,
    mad
    thanks @hartority for your commitment
    if you do not authorize this topic, please let me know

    297 downloads

       (1 review)

    1 comment

    Updated

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


     

    880 downloads

       (1 review)

    4 comments

    Updated

  10. Radio Sync

    This script, sync Driver Radio to all Other Passangers...

    INSTALL :

    Simple....
    put the files in the Folders as defined.
    in client_packages/index.js put 
     
    Finish
    i Hope it worked for u
     
    EDIT : A Update is currently in work

    736 downloads

       (6 reviews)

    0 comments

    Updated

  11. n0minal's Interior Browser (client-side only!)

    n0minal's Interior Browser 
    Hello Dear Ragers,
    Today I bring you guys a simple - but useful - browser for interiors to preview.
    I spent something like ~2 hours to make it, so it might contain bugs, if you find a bug please post it in here or contact me by PM and I'll fix it as soon as possible.
    Commands ⌨️
    There are two commands (and binds for it): 
    /interior (or shortened: /i): Loads the Interior Browser menu, in which you can interact and select an interior to preview. /leave (or shortened: /l): Leaves the current interior and gets teleported back to your first position when you called the browser for the first time. The Script 📰
    Download the .zip file and extract it inside your client-packages folder, after that, create (or edit) a index.js file in your client_packages root folder with the following content:
    //requires interior-browser package require("interior-browser"); and you're ready to go!
    Github Link:  https://github.com/n0minal/interior-browser That's all,
    See you on the next release!

    533 downloads

       (2 reviews)

    1 comment

    Updated

  12. Character Previewer

    This resource will help work with player clothes. I hope, someone will add all clothes screens to wiki  😀
     

    360 downloads

       (1 review)

    0 comments

    Updated

  13. CarShop Simple System

    HI all, here is a simple CarShop system, pretty optimized in client side, but not this much server-side.
     
    This CarShop adapt himself to what you give it, from the config file, let me explain:
    You define some parameters in the config file, for your carShop (Vehicles classses, marker position...), and the client side system with do the stuff.
    Here is a example of a carShop:
    "Boat": { // Shop Name "Position": { // vehicle position for the showcase, camera is auto defined from this "x": -729, "y": -1361, "z": 0.05, "rz": 136 }, "Marker": { // Marker for the player when entering shop "x": -815.93, "y": -1346.3, "z": 5.15 }, "Park": { // When you buy your vehicle, here is where you put vehicle location, it is random ! :D ANd a waypoint is created in client side to show where it is "0":{"x":-725.33,"y":-1325.299,"z":0.11,"rz":228.29}, "1":{"x":-727.42,"y":-1329.044,"z":0.11,"rz":230.54}, "2":{"x":-729.79,"y":-1333.469,"z":0.11,"rz":230.29}, "3":{"x":-731.4,"y":-1332.34,"z":0.11,"rz":228.29}, "4":{"x":-734.63,"y":-1334.34,"z":0.11,"rz":228.29}, "5":{"x":-738.73,"y":-1342.34,"z":0.11,"rz":228.29} }, "Blip": 427, // Blip for the map "Class": [ 14 ], // vehicle classes, see below for list "Name": "Boat Shop" // Displayed Name } So, aswell, when connect this will create a Marker / Blip on the marker position of the config file.
    And that's all for creating a car shop !
    Now, you can define prices easily aswell:
    In the vehicle_Shop.json file, you have the list of every vehicle which are available for selling. You have the hash, displayName, name, manufacturer & the price, define dby 15000 by default, but you can define a new price for every vehicle by yourself.
    That's all you have to do, now do /carShop [YouCarShopName], and see the magic happening.
     
    Here is the vehicles class name:
    Sedans SUVs Coupe Muscle Sport Classic Sport Super Moto Off-Road Industrial Utility Vans Cycles Boats Helicopters Planes Service Emergency Military Commercial Trains I think i gave you all the stuff to make it works, i hope you like it!
    By default you have 3 carshops, boat / low budget car/ helicopters.

    1437 downloads

       (1 review)

    10 comments

    Updated

  14. Headshots

    Small script that adds instantly killing headshots.
     
    Installing
    Put headshots into your server's client_packages directory, then add require('headshots'); to client_packages/index.js.

    504 downloads

       (6 reviews)

    0 comments

    Submitted

  15. Simple Vehicle Performance Tuner

    Hello, I've decided to upload one of my first creations on Rage, it being the CEF-based vehicle performance tuning menu. 
    You are free to use this to your liking and edit it as long as you leave the credits in.
    Download:
    https://github.com/Roziiii/ragecarmenu
    !!!IMPORTANT!!! The download on here will only be updated when bigger changes occur, but if you want the latest updates you should always download from the github.
    CURRENT VERSION ON HERE: 1.0.4
    CURRENT GITHUB VERSION: 1.0.4

    619 downloads

       (2 reviews)

    9 comments

    Updated

  16. AwardAPI

    This script lets you create awards/achievements and give them to players.
     
    Installing
    Put the files you downloaded in their respective places Add require('awards') to client_packages/index.js Open packages/awards/database.js and put your MySQL config All done  
    API - Exported
    You need to load awards/api.js in your script with using require() for these.
    /* awardDefinitions object contains all defined awards. Keys of this object are valid award IDs. */ awardDefinitions /* Defines an award. Awards can be single or multi tier depending on what you send to requiredProgress. If you send an array of numbers, it will be a multi tier award. (then tierColor must be an array of numbers too, tierColors length being the same as equiredProgress length) If you send a single number, it will be a single tier award. (then tierColor must be a single number too) Check out https://wiki.rage.mp/index.php?title=Fonts_and_Colors#HUD_Colors for tierColors values. (107, 108, 109, 110 are great) You can search for mpawards in OpenIV/CodeWalker Explorer for txdLib and txdName, or send an empty string to txdLib and txdName if you don't want to use an icon. This function returns true if award is created, false otherwise. */ defineAward(ID, name, description, txdLib, txdName, requiredProgress, tierColor) /* Returns the specified award's tier for the specified progress. You must increase the return value by 1 if you want to display it to players. Returns: -2 if award ID is invalid -1 if progress isn't enough for any tier 0 and above if progress is enough for any tier */ calculateAwardTier(awardID, progress) /* Returns the specified award's icon color for the specified tier. Return value will be -1 if award ID is invalid. */ getAwardTierColor(awardID, tier)  
    API - Player
    /* This property contains the award data and should be used for getting values. Keys of this object are the award IDs that player has any progress on. player.awardData[validAwardID] properties: - Progress (number) - Tier (number) - IsComplete (boolean) - CompletionDate (date, null if award isn't complete) */ player.awardData /* Sets the specified award's progress to the specified amount. Returns false if awardID is invalid, true otherwise. */ player.setAwardProgress(awardID, progress) /* Changes the specified award's progress by the specified amount. Returns false if awardID is invalid, true otherwise. */ player.changeAwardProgress(awardID, progress) /* Resets the specified award's progress. Returns false if awardID is invalid or player doesn't have any data about the specified awardID, true otherwise. */ player.resetAwardProgress(awardID) /* Resets all award progress. Doesn't return anything. */ player.resetAllAwardProgress() /* Saves award data. You don't need to add this to your script's playerQuit event because AwardAPI will save data when a player disconnects. */ player.saveAwards()  
    Serverside Events
    /* playerAwardTierChange This event is called when a player's award's tier changes. */ mp.events.add("playerAwardTierChange", (player, awardID, oldTier, newTier) => { // code }); /* playerCompleteAward This event is called when a player completes an award. */ mp.events.add("playerCompleteAward", (player, awardID) => { // code });  
    Example
    This script creates 2 awards (one single tier and one multi tier), progresses them when certain events happen, sends a message to players when one of their awards has a tier change or completion and provides some commands.
    const awardAPI = require("../awards/api"); /* Multi tier award, will be complete when a player dies 1000 times. 1 deaths - tier 1 (bronze) 10 deaths - tier 2 (silver) 100 deaths - tier 3 (gold) 1000 deaths - tier 4 (platinum) */ awardAPI.defineAward("award_unlucky", "Unlucky", "You keep dying, be careful!", "mpawards5", "killmeleeweapons", [1, 10, 100, 1000], [107, 108, 109, 110]); /* Single tier award, will be complete when a player writes something to the chat. */ awardAPI.defineAward("award_chat", "Baby's First Words", "You used the chat.", "", "", 1, 110); // Events mp.events.add({ // Increase player's "award_unlucky" progress by 1 when a player dies. "playerDeath": (player) => { player.changeAwardProgress("award_unlucky", 1); }, // Set player's "award_chat" progress to 1 (since its max. progress is 1) when a player writes something to chat. "playerChat": (player) => { player.setAwardProgress("award_chat", 1); } }); // Commands mp.events.addCommand("howunlucky", (player) => { // example: check if player has any progress for award_unlucky, display a message based on completion if (player.awardData["award_unlucky"]) { if (player.awardData["award_unlucky"].IsComplete) { player.outputChatBox("You're extremely unlucky."); } else { player.outputChatBox(`Not too unlucky, just ${player.awardData["award_unlucky"].Progress} deaths...`); } } else { player.outputChatBox("You're pretty lucky for now."); } }); mp.events.addCommand("setawardprogress", (player, _, awardID, progress) => { // example: "/setawardprogress award_unlucky 1000" will complete "unlucky" achievement player.setAwardProgress(awardID, Number(progress)); }); mp.events.addCommand("changeawardprogress", (player, _, awardID, progress) => { // example: "/changeawardprogress award_unlucky 5" will add 5 progress to "unlucky" achievement player.changeAwardProgress(awardID, Number(progress)); });  

    139 downloads

       (2 reviews)

    0 comments

    Updated

  17. Simple Teams

    Prevents players of the same team shooting eachother.
     
    Installing
    Put teams into your server's client_packages directory, then add require('teams'); to client_packages/index.js.
     
    Using
    It's pretty simple, just set currentTeam shared variable of a player like this:
    // both strings and numbers should work playerEntity.data.currentTeam = whatever; playerEntity.setVariable("currentTeam", whatever); And set currentTeam to null if you want to reset someone's team.
     
    Note
    This resource doesn't prevent all kinds of friendly fire, for example projectile weapons like RPG can hurt teammates, you can still run teammates over with a vehicle etc. You can check if both killer and victim is on the same team and punish the killer, though.

    223 downloads

       (4 reviews)

    0 comments

    Updated

  18. Kill Feed

    Simple kill feed script that displays recent deaths on the server.
     
    Installing
    Put the files you downloaded in their respective places Add require('killfeed') to client_packages/index.js All done  
    Notes
    Even though this is a kill feed script, you can send other messages to players by passing a string (your message) to pushToKillFeed event. The kill feed is located below the ammo counter HUD element. The kill feed displays 5 items (variable: maxKillFeedItems) and will display an item for 30 seconds. (variable: killFeedItemRemoveTime) Not all death reasons are detected but weaponData.json covers most cases. Default kill feed font might not support all characters.

    240 downloads

       (2 reviews)

    1 comment

    Updated

  19. G button for Passenger

    Improved version of already existing passenger script posted by George.
    * Upon pressing G button this script searches for the first closest and free seat in the vehicle. If it finds one it makes player to enter into the seat.

    676 downloads

       (0 reviews)

    3 comments

    Updated

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

    858 downloads

       (3 reviews)

    3 comments

    Updated

  21. Hunting

    I converted this system from a previous GTA Multiplayer Client. I never had time to update it or add new features so it comes as is.
    It adds animals that are fully synced to each client with different states such as:
    Fleeing Grazing Wandering There are two animals to start:
    Deer Boar + More can be easily added. It also includes a command that allows you to pickup an animal that is dead. (Mainly for RP servers)
     
    MAY REQUIRE SMALL TWEAKS TO WORK

    624 downloads

       (2 reviews)

    4 comments

    Updated

  22. Levels

    Installing
    Put the files you downloaded in their respective places Add require('levels') to client_packages/index.js Open packages/levels/database.js and put your MySQL config All done  
    API
    /* Player level and XP is accessed through currentLevel and currentXP shared data keys. You should not change the value of these shared data keys, just use them to get data and use the API to set data. */ player.data.currentLevel OR player.getVariable("currentLevel") // returns level of the player player.data.currentXP OR player.getVariable("currentXP") // returns XP of the player /* setLevel(newLevel) Sets the player's level to newLevel. (will also change player's XP to level XP) */ player.setLevel(newLevel) /* setXP(newXP) Sets the player's experience to newXP. (will update player's level) */ player.setXP(newXP) /* changeXP(xpAmount) Changes the player's experience by xpAmount. (will update player's level) */ player.changeXP(xpAmount) /* hasReachedMaxLevel() Returns whether the player has reached max level or not. */ player.hasReachedMaxLevel() /* saveLevelAndXP() Saves the player's level and XP data. Automatically called a player disconnects. */ player.saveLevelAndXP()  
    Events
    These events are called on serverside when a player's level or XP changes.
    /* playerXPChange This event is called when a player's XP changes. */ mp.events.add("playerXPChange", (player, oldXP, newXP, difference) => { // code }); /* playerLevelChange This event is called when a player's level changes. */ mp.events.add("playerLevelChange", (player, oldLevel, newLevel) => { // code });  
    Example Script
    Here's a script that lets you change your level/XP and writes it to console:
    mp.events.addCommand("setlevel", (player, newLevel) => { newLevel = Number(newLevel); if (!isNaN(newLevel)) { player.setLevel(newLevel); } else { player.outputChatBox("SYNTAX: /setlevel [new level]"); } }); mp.events.addCommand("changexp", (player, amount) => { amount = Number(amount); if (!isNaN(amount)) { player.changeXP(amount); } else { player.outputChatBox("SYNTAX: /changexp [amount]"); } }); mp.events.addCommand("setxp", (player, amount) => { amount = Number(amount); if (!isNaN(amount)) { player.setXP(amount); } else { player.outputChatBox("SYNTAX: /setxp [new xp amount]"); } }); mp.events.add("playerXPChange", (player, oldXP, newXP, difference) => { console.log(`${player.name} ${difference < 0 ? "lost" : "gained"} some XP. Old: ${oldXP} - New: ${newXP} - Difference: ${difference}`); }); mp.events.add("playerLevelChange", (player, oldLevel, newLevel) => { console.log(`${player.name} had a level change. Old: ${oldLevel} - New: ${newLevel}`); });  
    Credits
    Unknown Modder - RP List IllusiveTea - Rank bar scaleform  
    Notes
    This script will load and save level and XP data of players on its own but a function to save player data yourself is provided. Like said before, don't change the values of currentLevel and currentXP shared data keys. Maximum reachable level is 7999 but a player can earn XP until his rank bar is full, kinda reaching 8000. Use player.hasReachedMaxLevel() to detect if a player is level 7999 and his rank bar is full.  

    475 downloads

       (5 reviews)

    0 comments

    Submitted

  23. Vehicle F/G keys entering

    A ~20 lines client-side script to enable vehicle entering using F/G keys. Radius, max vehicle speed to enter and keys are customizable. This script doesn't search the nearest passenger seat, but the first empty (since it's just an example of how to do that at all and show that it really was customizable).

    1393 downloads

       (5 reviews)

    4 comments

    Updated

  24. Easy Blip Creator

    Easy way to create blips:  create, teleport to blip and delete. The blips are loaded on script load.
    Install:
    Copy files to your server-files and don't forget to edit index.js in client_packages if you have more resources.

    Commands: 
    /blipc or /blipcreator  - Enable and disable creator mod /blipd or /blipdelete - Open menu with blips to teleport or delete Keys:
    '  (single quotation marks) - Open and close creator menu. (Only works if creator mod is enabled) 1 (number one) - Create blip in your position with the config pre-binded (Only works if you bind) 2 (number two) - Create blip in your position with the config pre-binded (Only works if you bind)  
    The blips are saved in json file. if you want change the directory go to (packages/BlipCreator/index.js) and change const SAVE_FILE = './blips.json';
    Anyone can create and delete blips, if you have permission system or whatever, put your verifications in the commands: function blipCreator(player) and function delBlips(player) and also in events mp.events.add("delBlip", (player, id) => and mp.events.add("blipCreate", (player, data) => in file (packages/BlipCreator/index.js)
     
    Did you see a grammar error please coment  thks

    956 downloads

       (2 reviews)

    4 comments

    Submitted

  25. DialogUI

    Need some dialog menus with 2 buttons, for example to show user your server's rules and 2 buttons, "accept" and "not accept"?
    DialogUI can help you with that!
    Example of using:
    const dialogUILib = require('dialogui'); // Load the library var dialog = new dialogUILib.DialogUI("My Title", ["Row number 1", "Row number 2","Row number 3"], "Left Button", "Right Button"); // Make a new instance of dialogUI. dialog.show(); // Show the dialog Your players use enter and escape keys? DialogUI support them.
    You can know which button is pressed by using the OnDialogResponse client-side event, which have 1 parameter of type Boolean, which indicate if the left button pressed.

    179 downloads

       (0 reviews)

    1 comment

    Submitted