Vocation
Get it, cuz she's a voca- nevermind
Vocation is a mod about text (and voice acted) messages appearing on screen. Check out that video for a short (under 1 minute) demo. The mod is intended for pack developers and similar. This is a mod I made in around 7-8 hours on a stream one day, so it might not be super amazing.
The "Tutorial" shown in the demo is not included with the mod.
How to get started:
Message format:
You can get an example file, the one used in the demo video, right here. I would advise you to do so after you're read through the rest of this so you can get a good idea on how to use this.
Messages are in a normal JSON format. The base of the file must be a simple array:
[
(your messages go here)
]
Inside your array, you can put as many messages as you want. Here's the format for a message:
{
"id": "(the ID of this message)",
"message": "(the message to show up on screen)",
"narrator": "(the name to show up above the message)",
"time": "(how long, in ticks, you want this message to stay on screen)",
"voiceover": "(the sound to play when this message appears, must be the name of an .ogg file located in your audio folder, optional)",
"requirements": (an array of message IDs that the player needs to have seen at least once for this message to appear once a trigger happens, optional),
"triggers": (the things that will trigger this message to appear, this is an "or" when any of these are fulfilled, the message will appear, optional, trigger format will be shown later),
"actions": (the things that will happen when this message appears, optional, action format will be shown later)
}
While "message" is not optional, you can leave it empty. If you do, the message will not display, but it'll still count as seen, and its actions will still be performed. You can use this for having stuff happen on condition or just to create more complex requirement chains.
Triggers are also optional, as there is a command to show a message, you can use that if you don't want a trigger. Here's the trigger format.
"triggers": [
{
"trigger": "message_seen (this trigger happens whether another message from Vocation has been seen)",
"key": "(the ID of the message to check for)"
},
{
"trigger": "stat_above (this trigger happens whenever a player's stat is above a value)",
"key": "(the name of the stat to check)",
"value": "(the value that the stat has to be, at the least, for this trigger to happen)"
},
{
"trigger": "item_pickup (this trigger happens when the player picks an item up)",
"stack": (the item stack to check for, stack format will be shown later)
},
{
"trigger": "item_craft (this trigger happens when the player crafts an item)",
"stack": (the item stack to check for, stack format will be shown later)
},
{
"trigger": "mob_kill (this trigger happens when the player kills a mob)",
"key": "(the name of the mob that needs to be killed)"
}
]
Once a message is triggered, its actions will occur, if there's any. You can have as many as you want. There aren't many actions now, but they should take care of most possible things. Here's the action format.
"actions": [
{
"action": "give_item (this action gives an item to the player)",
"stack": (the item stack to give the player, stack format will be shown later)
},
{
"action": "run_command (this action runs a command, with command block level privilege at the position of the player)",
"param": "(the command to run here, including the /)"
}
]
Lastly, here's the stack format.
"stack": {
"id": "(the id of the item, including the mod id, example: minecraft:log)",
"metadata": "(the metadata of this item. Optional. If not present, item metadata will be zero, if the stack is used in a trigger, metadata will not be checked against)"
"stackSize": "(the size of this stack. Optional. If not present, stack size will be 1. Doesn't matter at all for triggers)",
"nbt": (a json object of this item's NBT, similar to what you'd use if you were running the /give command. Optional. If not present and the stack is used in a trigger, NBT will not be checked against)
}
Commands
The mod also comes with commands that can be used with the run_command action, by command blocks or server admins:
If you have any problems with the mod or just want to contact me, you can find me on Twitter (@Vazkii) or IRC (#vazkii on irc.esper.net).
No files available for download.