NPC Commands: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
One of the common things Citizens users want is the ability to have NPCs run a command when right-clicked. | One of the common things Citizens users want is the ability to have NPCs run a command when right-clicked. | ||
There is a limited version of this newly available in Citizens via the "/npc command" command. For details, refer to | There is a limited version of this newly available in Citizens via the "/npc command" command. For details, refer to <code>/npc help command</code>. | ||
By default, "/npc command" will run commands as the server. Use "-p" to run as the player who clicked instead. | By default, "/npc command" will run commands as the server. Use "-p" to run as the player who clicked instead. | ||
For example: Use <code>/npc command -p | For example: Use <code>/npc command add -p help</code> to make an NPC automatically execute "/help" as the player when clicked. | ||
To auto-fill the player name, use "<p>". To autofill the NPC ID, use "<n>". | To auto-fill the player name, use "<p>". To autofill the NPC ID, use "<n>". | ||
For example: Use <code>/npc command add kick <p></code> to make an NPC automatically kick the player when clicked. | |||
== Old Method == | |||
The old method, which in many cases is still the better method, is to use Denizen - information for that follows below. | The old method, which in many cases is still the better method, is to use Denizen - information for that follows below. | ||
== Prerequisite == | === Prerequisite === | ||
Denizen is a scripting engine that directly integrates Citizens to add more features and options to server owners. Learn about Denizen [https:// | Denizen is a scripting engine that directly integrates Citizens to add more features and options to server owners. Learn about Denizen [https://guide.denizenscript.com/guides/background/what-is-denizen.html on the guides here] and download Denizen [https://ci.citizensnpcs.co/job/Denizen/ on the Citizens Jenkins build server here]. | ||
== How To Make a Click Command == | === How To Make a Click Command === | ||
The standard way to get click-commands set up in Denizen is to write an assignment script with a click action or trigger. There's a [https:// | The standard way to get click-commands set up in Denizen is to write an assignment script with a click action or trigger. There's a [https://guide.denizenscript.com/guides/npcs/assignment-scripts.html guides page explaining how to do this here]. | ||
== Easier Option == | === Easier Option === | ||
If you'd rather not bother with scripting yourself and instead would prefer to use an in-game command, you can use a premade [https://forum.denizenscript.com/viewtopic.php?f=13&t=149 script available here]. Simply download the script linked in that forum post, save it into "plugins/Denizen/scripts" as a .dsc file, and then use "/ex reload" to load the script. At that point, you can select any NPC and use "/npccommand set [command]" (view the forum post linked previously for additional command usage information). | If you'd rather not bother with scripting yourself and instead would prefer to use an in-game command, you can use a premade [https://forum.denizenscript.com/viewtopic.php?f=13&t=149 script available here]. Simply download the script linked in that forum post, save it into "plugins/Denizen/scripts" as a .dsc file, and then use "/ex reload" to load the script. At that point, you can select any NPC and use "/npccommand set [command]" (view the forum post linked previously for additional command usage information). |
Revision as of 10:52, 6 April 2020
NPC Click Commands
One of the common things Citizens users want is the ability to have NPCs run a command when right-clicked.
There is a limited version of this newly available in Citizens via the "/npc command" command. For details, refer to /npc help command
.
By default, "/npc command" will run commands as the server. Use "-p" to run as the player who clicked instead.
For example: Use /npc command add -p help
to make an NPC automatically execute "/help" as the player when clicked.
To auto-fill the player name, use "<p>". To autofill the NPC ID, use "<n>".
For example: Use /npc command add kick <p>
to make an NPC automatically kick the player when clicked.
Old Method
The old method, which in many cases is still the better method, is to use Denizen - information for that follows below.
Prerequisite
Denizen is a scripting engine that directly integrates Citizens to add more features and options to server owners. Learn about Denizen on the guides here and download Denizen on the Citizens Jenkins build server here.
How To Make a Click Command
The standard way to get click-commands set up in Denizen is to write an assignment script with a click action or trigger. There's a guides page explaining how to do this here.
Easier Option
If you'd rather not bother with scripting yourself and instead would prefer to use an in-game command, you can use a premade script available here. Simply download the script linked in that forum post, save it into "plugins/Denizen/scripts" as a .dsc file, and then use "/ex reload" to load the script. At that point, you can select any NPC and use "/npccommand set [command]" (view the forum post linked previously for additional command usage information).
Additional Support
If confused, join the Citizens+Denizen shared Discord to ask for help!