This add-on opens up new fresh RolePlay possibilities to your DarkRP server by allowing your players to disguise into others, just like the Spy from Team Fortress 2, using items such as Disguise Kits, the Disguise Drawer or the Disguise Briefcase! Look like the Mayor to infiltrate protected areas, act as the Police Chief to rule their subordinates while the real one's gone off to somewhere, and much more!

Video Demo

Video Demo


  • No DRM!
  • Works right off the bat!
  • Tested with latest version of DarkRP, try other gamemodes at your own risk!
  • Two entities with different amounts of uses to put in your shipments, as well as a SWEP for jobs to disguise infinitely if you'd like. (See media)
  • Simplistic but unique and sleek user interface
  • Works on all resolutions.
  • No downloads required!
  • Besides model change, the disguise is completely clientside! All that is done serverside is networking who is disguised into who.
  • Restrict feature to VIPs and donators with custom message, if that's your thing! (turned off by default)
  • Translations (Read the languages section for more details)
  • Fully fledged configuration options! (Read the configuration section for more details)
  • Lifetime updates, bugfixes and support!


Works by detecting the system's language used by the client, just change the deceive_language ConVar if needed.
Will fall back to English if your language can't be found.
Translation files are created just as easily as DarkRP's and file names are lowercase and formatted using the ISO 3166-1 alpha-2 standard.
If you made your own translation and wish to share it with me, please feel free to do so in a support ticket!

Languages included by default are:

  • English (default)
  • French
  • German
  • More to come later!


Only requires basic Lua knowledge, just as easy as editing DarkRP jobs!

Allows you to:

  • restrict jobs that can't disguise as other players (Optional)
  • restrict jobs that players can't disguise as (Optional)
  • restrict usergroups that are allowed to use the disguise feature (Optional)
  • pick the disguising cooldown's length
  • pick the disguise drawer's number of maximum uses (Can be configured to be infinite)
  • pick the disguise drawer's health (Can be configured to be unbreakable)
  • change the undisguise command name
  • choose if you want disguises to be removed on gunfire

Next Updates / Ideas / Coming Soon

  • New media including Video Demo with more details containing new updates features
  • Support for TTT
  • Some kind of visual effect when disguising (clip effect from bottom to top as transition to new model from old, or TF2 Spy style smoke)
  • Context Menu button to manage the add-on
  • Limited time disguise with config, optional (Energy bar)
  • Disguise SWEP limited uses depending on job?
  • Time to disguise with config, optional
  • More supported gamemodes, if needed


Same as any basic add-on!

  1. Unzip "" into your server's add-ons directory.
  2. Make sure the "deceive" directory is in there before freaking out about it not working!
  3. Change the config in "sh_config.lua" to your liking
  4. Feel free to peek at "sh_shipments.lua" to add your own custom shipments to your custom jobs if you want to disable the default ones in the config
  5. If you want to add the SWEP to one of your jobs, its classname is swep_disguise_briefcase.
  6. Leave a review!


Q: It doesn't work!!!

A: Unless you give me some error, I can't help you with just that. Create a support ticket giving me a complete error log with steps to reproduce and make sure you installed it properly. It might also be a conflicting add-on.

Q: Is my gamemode supported? If not, can you add support for this add-on to it?

A: Probably, send me a support ticket or add me on Steam to discuss about it.


If a script error / bug has shown up, something looks wrong or you simply have a feature suggestion, add me on Steam or create a support ticket! I should be able to do something about it.

For developers / API

  • PLAYER.Deceive_Using - The entity the player is currently using to disguise
  • PlayerPreDisguise Hook
    • arguments: user
    • return false to disallow disguising
  • PlayerPreDisguiseTo Hook
    • arguments: user, target
    • return false to disallow disguising
  • PlayerPostDisguiseTo Hook
    • arguments: user, target
  • DisguiseBlowing Hook
    • arguments: user
    • return false to not remove the disguise
  • DisguiseRemoved Hook - called after a player's disguise is removed, for any reason and by any means
    • arguments: user
    • I guess I can figure out a better name and more information later if needed, this was requested by someone without any other details.

Don't forget to check out my other add-ons!


  93 sales

Buyer Rating:

5.00 average based on 6 reviews.

Views 10934
Added 11 months ago
Updated 1 week ago
Price $4.99
Languages English
Tags darkrp, gameplay, roleplay