Gmod Job NPC Customizable System - Script
The "Job NPC System Customizable" addon for Garry's Mod (Gmod) and DarkRP lets you add NPCs offering a variety of customizable jobs. It features access restrictions based on level, reputation and rank, with a customizable interface and editable dialogs. It can turn NPCs into a job store with rates, recording purchases. It is compatible with other scripts such as Gmod's Karma and Reputation System, Level System and Monetary System.
Description of Gmod Job NPC Customizable SystemSummary:
- 📘 Addon Description: Job NPC System Customizable
- 🔒 Various Access Restriction Conditions for NPCs
- 💼 Different Job Access Restriction Systems from NPC List
- 🎨 Fully Customizable Interface
- 💬 Editable Dialogue System
- ❌ No Need to Modify jobrelated.lua for Access Levels or Restrictions, No Whitelist Needed
- 💰 Job NPC System Can Become a Job Shop
- 👤 Each Placed NPC Can Be Unique
- ✔️ Scripts Compatible with Job NPC System for Seamless Integration
- 🗜️ Optimization Perspective
📘 Addon Description: Job NPC System Customizable
What is the JOB NPC SYSTEM?
Gmod Job NPC System is an addon for Garry's Mod (Gmod) designed for DarkRP. It provides customizable content to enhance or expand the "DarkRP" (Roleplay) game mode in Garry's Mod and its variants. This addon introduces NPC characters offering various jobs for your Garry's Mod project.
It allows you to add multiple non-playable characters (NPCs) to the game, linked to different jobs you configure through a simple and intuitive interface. These NPCs can serve as starting points to access different jobs and roles in the game without using the F4 menu. Instead of merely selecting a job from a menu or interface, players can interact with these NPCs you've placed to engage in specific roles/jobs.
This adds a layer of realism and immersion to the universe, as players physically go to appropriate locations to get jobs, interact with NPCs for missions, payments, etc. It enriches the gaming experience by making the job selection process more interactive and adding passive roleplay to your server.
A little nod to One Piece because I'm a fan. But the script is for all DarkRP and their modifications. When I create my job system this script will also be compatible with my job creation system without DarkRP.
🔒 Various Access Restriction Conditions for NPCs
Various combinable restrictions can block a player's access to an NPC, encouraging players to follow a certain path. The different access restriction conditions for NPCs include: Player Level, Reputation Level defined by Karma points through the Karma System, rank (VIP or others), currently occupied job category, or specific occupied jobs.
For example, you can set up a limitation based on player level and/or reputation via the karma system. A person with a poor reputation cannot interact with the NPC, thus they won't see the jobs it offers. The user will be informed clearly through a dialogue, explaining the reason. You can restrict by rank, for instance, making certain NPCs accessible only to VIP/Premium members or Admins. This is designed to be easy to configure without Lua coding.
💼 Different Job Access Restriction Systems from NPC List
Each job offered by the NPC can also have its own restrictions. This means that the player's access to the NPC's job list can be restricted. The jobs themselves can also have individual access restriction rules, and these rules can vary based on the NPC, as well as the style of the fully customizable interface.
🎨 Fully Customizable Interface
You can create interface styles for each placed JOB NPC on your map.
Possible customizations include:
Replace the job image that displays model heads (originally slightly distorted and outdated) with a job link image. This allows you to create an image assigned to a job in real-time with just a link, without needing to update a workshop. It also avoids the persistent Red Model Error that remains even after installing the model.
Adjust the size of menu elements and responsively rearrange all elements to automatically adapt to all resolutions seamlessly.
Set the color of each element to match the background image or your universe's style, enabling each one to offer several unique menus with a single script.
You can add a background image with a link to the list of jobs offered by the NPC.
💬 Editable Dialogue System
If you're aiming to add passive RP to your server, NPCs are equipped with a dialogue system that greets the player with a phrase you can define yourself. The player can choose their response, and depending on this, the list of jobs the NPC offers will be displayed or the dialogue will close.
If you have access restrictions on the Jobs menu, the NPC will clearly inform the user.
❌ No Need to Modify jobrelated.lua for Access Levels or Prices, No Need for Whitelist in Job System
You can adjust various access restrictions for a job at the NPC from its own configuration interface. These restrictions won't apply to the F4 menu.
💰 Job NPC System Can Become a Job Shop
By assigning prices to job purchases (directly from the configuration menu), you have the option to transform the NPC's job proposal menu into a real job shop. When you assign a price to a job, these rates will be visible on the different jobs displayed in the NPC's Job Selection menu.
A Database System is integrated to record user purchases. This means that once a job is purchased, the user won't need to buy it again in the future. By default, this option is disabled, so the database won't be installed unless needed.
👤 Each Placed NPC Can Be Unique
Since you can place different NPCs with unique configurations and restrictions of their own, you can also customize each NPC's unique identity.
From the Job System NPC configuration interface, you can define the model it will use, the type of avatar to be displayed (3D NPC Model or Image Link), its roleplay name, the background image for the dialogue interface, and its text.
These NPCs are referred to as NPCs, but they're essentially standard entities. You can use a box model, an NPC model, or a Playermodel – it works the same way. (So yes, it also works with Playermodels.)
✔️ Scripts Compatible with Job NPC System for Seamless Integration
List of compatible addons that can provide additional features:
Gmod Karma and Reputation System: The Karma System gives your Gmod server the ability to automatically assess a user's reputation based on their Karma points.
Gmod Leveling System: If you want to restrict access to a job or NPC by level and you don't have a leveling system installed, this script works in conjunction.
Gmod Money System + HUD Maker: If you want to place a price on job access and you don't want to use DarkRP, this script will work. It also enables creating a custom HUD to display currency.
🗜️ Optimization Perspective
The addon won't significantly increase your server's loading time as it remains extremely lightweight.
The script consists of only 3 Lua files, including
the configuration file.
Total Lua files = 86KB
Addon workshop resource = 0.015MB
- The AddWorkshop function is automatically added to the script server file and can be deactivated from the configuration file. : resource.AddWorkshop( 3020593191 )
- To add gmod workshop resources to your collection : Gmod Job NPC Customizable System [Content Only] | Gmod Workshop