Quest Log

Name: Quest Log
Version: 1.0a
Author: Mr. Trivel

Created: 2016-05-03


What does it do?

Tracks quests, awards players for completing them.

Video:


How to use?
To manage quests ingame use script calls or plugin commands.

Plugin Commands:
QuestLog Start ID – Starts quest
QuestLog Advance ID – Advances quest by a single step
QuestLog SetStep ID STEP – Sets quest to a specific step
QuestLog Finish ID – Finishes quest and gives rewards
QuestLog Fail ID – Fails a quest
QuestLog Enter – Enters quest log scene

Script Calls:
$gameSystem.getQuestStep(id) – returns step number of a quest
$gameSystem.isQuestStarted(id) – returns true/false is quest started
$gameSystem.isQuestFinished(id) – returns true/false is quest finished
$gameSystem.isQuestFailed(id) – returns true/false is quest failed

See how to set up quests in help documentation of the plugin in Plugin Manager.
I highly recommend downloading and seeing how the quest file is set up in the demo below

Plugin(v1.0a): <Link: Github>
How to download Plugin. Click the link above, there will be a button named Raw, press Right Click -> Save As.


Terms of Use:
Don’t remove the header or claim that you wrote this plugin.
Credit Mr. Trivel if using this plugin in your project.
Free for commercial and non-commercial projects.

Crafting

Author: Mr. Trivel
Name: Crafting
Created: 2016-03-27
Version: 1.0

What does it do?
Allows players to craft items.

Video:


How to use?
First, you’ll need 2 new files in data folder:
Recipes.json
Disciplines.json
Recipes file will hold all recipe data and Disciplines file will hold data about disciplines. I *highly* recommend checking sample files that are located in the demo of this plugin.

Discipline object looks like this:
{
“ID”: 999,
“Name”: “NAME”,
“IconID”: 1337,
“ExpFormula”: “10000*level”,
“MaxLevel”: 2,
“Categories”: [“1”, “2”, “3”, … , “n”],
“Background”: “FileName”
}

And file structure looks like this:
[
null,
object,
object,
…,
object
]
“ID” – to identify which disciiplice is which and for plugin calls. ID > 0
“Name” – how discipline is called
“IconID” – icon for discipline
“ExpFormula” – leveling formula for discipline, level stands for current discipline level
“MaxLevel” – max possible discipline level
“Categories” – Categories to organize items when crafting
“Background” – Give a background to crafting. Leave it empty – “” to use default background. Images go into img\System

Recipe object looks like this:
{
“ID”: 192312,
“Name”: “Ultimate Sword of Ascension”,
“IconIndex”: 122,
“Result”: [
{
“Type”: “weapon”,
“ID”: 99999,
“Amount”: 1
}
],
“Requires”: [
{
“Type”: “item”,
“ID”: 1337,
“Amount”: 99
}
],
“Discipline”: ID,
“Category”: [“Swords”, “Weapons”],
“XP”: 999999999,
“LevelReq”: 150,
“Learned”: “command”
}

And file structure looks like this:
[
null,
object,
object,
…,
object
]

“ID” – To know which recipe is which. ID > 0
“Name” – How it appears in crafting window
“IconIndex” – Icon for recipe
“Result” – What items and how many of them result by crafting it, can be more than one item.
“Requires” – What items and how many of them are required to craft it.
{
“Type” – item type – “weapon”, “item”, “armor”
“ID” – item ID
“Amount” – how much of the item
}
“Discipline” – which disicipline’s recipe is this
“Category” – under which categories will item be shown, can be multiple
“XP” – XP given for the discipline
“LevelReq” – Discipline level requirement to craft it
“Learned” – how is the recipe learned – “start” – from the start, “command” by plugin command, “levelhit” – unlocks automatically when hits  required level

Plugin Commands:
Crafting Start [DISCIPLINE_ID] – opens scene to craft with discipline
Crafting GainExp [DISCIPLINE_ID] [EXP] – give exp to certain discipline
Crafting Learn [RECIPE_ID] – learn a specific recipe
Examples:
Crafting Start 3
Crafting GainExp 1 100
Crafting Learn 5

Script Calls:
$gameSystem.getDisciplineExp(DISCIPLINE_ID) – returns EXP of a discipline
$gameSystem.getDisciplineLevel(DISCIPLINE_ID) – returns LEVEL of a discipline
$gameSystem.isRecipeKnown(RECIPE_ID) – returns if recipe is learned
$gameSystem.knownRecipesNumber(DISCIPLINE_ID) – returns amount of recipes known

How to download the Plugin: Click the link above, there will be a button named Raw, press Right Click -> Save As.

Terms of Use:
Don’t remove the header or claim that you wrote this plugin.
Credit Mr. Trivel if using this plugin in your project.
Free non-commercial projects.
For commercial use contact Mr. Trivel.