resourcepack.ai
DOCS

Running a server

Commands

RP Engine has one main command, /rpengine, which you can also type as /rpe or /rp. Players also get /emote, and /emotereply for answering emote invitations.

/rp on its own (or /rp help) lists the commands you are allowed to run. Arguments tab-complete, and you are only offered subcommands you have permission for. When the plugin tells you to run a command in chat, you can click it.

[player] means the command can target somebody else, which needs a second permission. See Pointing a command at somebody else.

Content#

CommandWhat it doesPermission
/rp reloadReread the content folder and config, and rebuild every packrpengine.reload
/rp infoHow much content is loaded, and the commands you can runrpengine.info
/rp bundlesThe built packs, with their sizes and hashesrpengine.bundles
/rp pushSend this server's pack to yourself againrpengine.push
/rp itemsEvery custom itemrpengine.items
/rp item menuA chest of every custom item: click for one, shift-click for a stackrpengine.item
/rp give <id> [amount]Give yourself an itemrpengine.give
/rp blocksEvery custom block, and how many block states are leftrpengine.blocks
/rp recipesEvery reciperpengine.recipes

Models and entities#

CommandWhat it doesPermission
/rp models [radius]Placed models near you, with orphans markedrpengine.models
/rp purge [radius]Remove orphaned models near you (see Reloading)rpengine.purge
/rp entitiesEvery custom entityrpengine.entities
/rp spawn <id>Spawn a custom mob where you standrpengine.spawn
/rp spawn <id> <x> <y> <z> [world] [count] [level]Spawn up to 64 at a place, at a level. The world may also come first. This is the form the console usesrpengine.spawn
/rp egg <id> [player] [amount]A spawn egg that hatches that mob where it is usedrpengine.egg
/rp spawner create <name> <mob> [x y z [world]]Make a spawner, where you stand if you give no placerpengine.spawner.create
/rp spawner set <name> <setting> <value>Change one of a spawner's settingsrpengine.spawner.set
/rp spawner remove <name>Remove a spawner made in game. Its mobs stayrpengine.spawner.remove
/rp spawner listEvery spawnerrpengine.spawner.list
/rp spawner info <name>One spawner's settingsrpengine.spawner.info
/rp bind <item id>Put that item's model on the mob you are looking atrpengine.bind
/rp unbindTake it off againrpengine.unbind

The radius is in blocks: 16 by default, 128 at most. Binding a model to another player, rather than a mob, needs rpengine.bind.others. Giving an egg to somebody else needs rpengine.egg.others, and rpengine.spawner grants every /rp spawner verb.

Sound, text and interface#

CommandWhat it doesPermission
/rp soundsEvery custom soundrpengine.sounds
/rp sound <id> [player]Play onerpengine.sound
/rp sound stop <id|all> [player]Stop one early, or every custom soundrpengine.sound
/rp musicEvery piece of music, and what is playing for yourpengine.music
/rp music play <id> [player]Start a piecerpengine.music.play
/rp music stop [player]Stop itrpengine.music.stop
/rp music skip [player]On to the next trackrpengine.music.skip
/rp iconsEvery icon, with the character it becamerpengine.icons
/rp say <text>Send yourself text, with :pack:icon: drawn as icons and <fx:name> as Text Effectsrpengine.say
/rp effectsEvery Text Effect, each drawn in itself, with its colourrpengine.effects
/rp effects presetsThe ready-made Text Effects a content file can namerpengine.effects
/rp effect <name> [text]Send yourself text in a Text Effectrpengine.effect
/rp vfxEvery VFX this server can playrpengine.vfx
/rp vfx presetsThe ready-made VFX a content file can namerpengine.vfx
/rp cast <name> [player] [options]Play a VFX where a player stands: on a loop, until a condition, faster, bigger, following them (options)rpengine.cast
/rp cast <name> at <x> <y> <z> [world] [options]Play a VFX at a place, tied to no player: ~ counts from whoever runs it (casting at a place)rpengine.cast.at
/rp cast stop [all|<player>|tag:<name>]End VFX playing: all, one player's, or one tag'srpengine.cast
/rp screensEvery screen and HUDrpengine.screens
/rp screen <id> [player]Open a screenrpengine.screen
/rp hud <id|clear> [player]Draw an overlay, or clear itrpengine.hud
/rp shadersEvery shader object from Studio, and whether you hold its packrpengine.shaders
/rp shader <id|clear> [player]Show a shader object, or take them all offrpengine.shader

Dialogs#

Dialogs need Minecraft 1.21.6 or newer.

CommandWhat it doesPermission
/rp dialogsEvery dialog, and whether you hold its packrpengine.dialogs
/rp dialog <id> [name=value...] [player]Open one, filling its {placeholders} with the values givenrpengine.dialog
/rp var <name> <value>Change one of your own dialog settingsrpengine.var (everyone)
/rp page <id>Turn the dialog you are looking at to another pagerpengine.page (everyone)
/rp page closeClose the dialog you are looking atrpengine.page (everyone)
/rp slot <slot>Move an item in a dialog's item slotsrpengine.slot (everyone)
/rp click <key>Press a dialog's console button: what a console: button runsrpengine.click (everyone)
/rp run <key>Press a dialog's button of several commands: what a command: list runsrpengine.run (everyone)
/rp quick <id>Open a dialog on the Quick Actions key: what its launcher's button runsrpengine.quick (everyone)
/<command> [player]A dialog's own command, such as /shopeveryone, or the permission the dialog names

var, page, slot, click, run and quick are what clicks inside a dialog run, so every player has them, and they are not tab-completed. Each only does what a click in the dialog you were shown could do.

A dialog gets its own command from command: in its file, or Players open it with in Studio. If another plugin already has that command name, the other plugin keeps it. /rp dialogs shows each dialog's command.

Emotes#

CommandWhat it doesPermission
/emoteList the emotes you can playrpengine.emote (everyone)
/emote <name>Perform an emote, or wear it if it is a movement setrpengine.emote (everyone)
/emote <name> <player...>Perform it with other players. They are asked firstrpengine.emote.cast
/emote <name> --showYourselfWear a movement set and see it yourself. For testing: it lags behind yourpengine.emote
/emote stopStop yours, and everybody in it with yourpengine.emote
/emotereply <accept|deny> <token>Answer an invitation. This is what the [accept] and [deny] buttons runnone
/rp emote ...The same as /emoterpengine.emote
/rp emotesEvery emote the server holdsrpengine.emotes (everyone)

emotes.player-commands: false in config.yml removes /emote, for a server that already has one from another plugin. /rp emote still works, and /emotereply is always there.

Liquids#

CommandWhat it doesPermission
/rp liquid cornerMark one corner of a poolrpengine.liquid
/rp liquid fill <id>Fill the box between that corner and where you stand with that liquidrpengine.liquid
/rp liquid clearRemove the pool you are inrpengine.liquid
/rp liquid listEvery pool, per worldrpengine.liquid

Vehicles#

CommandWhat it doesPermission
/rp vehiclesEvery vehicle, and who fits in itrpengine.vehicles
/rp vehicle <id>Park one where you stand, facing the way you facerpengine.vehicle
/rp vehicle removeTake away the one nearest yourpengine.vehicle

Players get in by right-clicking a seat. See Vehicles.

3D objects#

3D objects need Minecraft 1.21.4 or newer. Every verb except spawn acts on the nearest object, and each has its own node, rpengine.object.<verb>.

CommandWhat it doesPermission
/rp objectsEvery 3D object, with its states and sequencesrpengine.objects
/rp object spawn <id> [size] [x y z]Put one down in front of you, or at those coordinatesrpengine.object.spawn
/rp object state <state>, replayPut it into a state, or play its state againrpengine.object.state, .replay
/rp object play <sequence>, stopRun or stop one of its sequencesrpengine.object.play, .stop
/rp object move, turn, size, seedMove, turn or resize it, or change its seedrpengine.object.move, .turn, .size, .seed
/rp object remove [all]Take it away, or every onerpengine.object.remove

rpengine.object grants every verb. See 3D objects for the arguments.

3D armour#

CommandWhat it doesPermission
/rp armorEvery 3D armour set the server holdsrpengine.armor
/rp armor wear <set> [player]Put the whole set on. What they were wearing goes into their inventoryrpengine.armor
/rp armor give <set> [player]Hand over its piecesrpengine.armor
/rp armor selfSee your own 3D armour, in F5 and first person. Run it again to hide itrpengine.armor

See Armour.

Studio#

Sync sends a pack open in Studio to you (and anybody you add) for testing, on top of the server's own pack. Nobody else sees it and nothing on the server changes. Distribute serves a published pack to every player. See Testing with the plugin and Distribution.

CommandWhat it doesPermission
/rp sync <code>Pair with a pack open in Studio, using the code from Studiorpengine.sync
/rp sync add <player>Share your pushes with somebody elserpengine.sync
/rp sync accept / denyAnswer an invitation to somebody's syncrpengine.sync
/rp sync whoWho is on your syncrpengine.sync
/rp sync remove <player>Take somebody off, and the pack off themrpengine.sync
/rp sync leaveLeave somebody else's syncrpengine.sync
/rp sync stopEnd yours, for everybody on itrpengine.sync
/rp distribute <code>Serve a pack published in Studio to everybody who joins, using the code from the pack's Distribution page. It is kept in content/studio-<pack>/ and updated on every releaserpengine.distribute
/rp distribute offStop serving it, and remove its folderrpengine.distribute
/rp distribute off --keepStop serving it, and keep its folder as your own contentrpengine.distribute

Editing in a browser#

No account needed. See Editing in a browser.

CommandWhat it doesPermission
/rp edit <id>Open it in the right editor in your browserrpengine.edit
/rp editThe links you have open, and how long they have leftrpengine.edit
/rp edit closeEnd themrpengine.edit

Permissions#

Each subcommand has its own node, rpengine.<subcommand>, and rpengine.admin grants all of them. Everything defaults to op except rpengine.emote, rpengine.emotes, rpengine.chat.icons and the six dialog click nodes (var, page, slot, click, run, quick), which every player has. Permissions has the full list.