139 files
-
Manual transmission
By Captien
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
-
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
-
Local Voice Chat (3D)
By ragempdev
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
-
Global Voice Chat
By ragempdev
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
-
Fingerpointing
By etrex2k4
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
-
Moods
By rootcause
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
-
GTAO Suicide
By rootcause
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 done226 downloads
(2 reviews)0 comments
Submitted
-
[v0.3.5] Implementing Custom NameTags
By heyMad
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
-
Basic Vehicle System
By BlackPanther
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
-
Radio Sync
By BlackPanther
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
-
n0minal's Interior Browser (client-side only!)
By n0minal
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
-
Character Previewer
By MarkCavalli
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
-
CarShop Simple System
By Protocole
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
-
Headshots
By rootcause
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
-
Simple Vehicle Performance Tuner
By Rozi
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
-
AwardAPI
By rootcause
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
-
Simple Teams
By rootcause
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
-
Kill Feed
By rootcause
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
-
G button for Passenger
By Kudze
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
-
Crouch
By rootcause
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
-
Hunting
By matical
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
-
Levels
By rootcause
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
-
Vehicle F/G keys entering
By ragempdev
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
-
Easy Blip Creator
By valdirdd
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
-
DialogUI
By davidsl6
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
