To create your own script file, it is enough to:

  1. Create an empty file with the .json extension and give it a name that exactly matches the name of the map (to which the script is being attached).
  2. Copy the example provided below into this new empty file.
  3. Modify the example however you like.

{
	"counters":
	[
		{
			"sid": "counter_unique_descriptive_id",
			"comment": "a brief description of what this counter does | 'sharing', 'value', 'minValue', 'maxValue' are optional",
			
			"sharing": "Clone",
			"value": 0,
			"minValue": 0,
			"maxValue": 4
		}
	],

	"interruptions":
	[
		{
			"sid": "interruption_unique_descriptive_id",
			"interruption": "AfterHeroWinVsHero",
			"activeOnStart": true,
			"p": [ "winner_hero_sid", "loser_hero_sid" ],

			"actions":
			[
				{ "a": "Dialog", "p": [ "dialogue_unique_id" ] }
			]
		}
	],
		
	"quests":
	[
		{
			"sid": "quest_unique_descriptive_id",
			"comment": "a brief description of what this quest is about and what happens in it | 'name' is the only required field, all others = false, by default",
			
			"sharing": "Clone",
			"activeOnStart": true,
			"hidden": true,
			"main": true,

			"name": "quest_name_localization_id",
			"desc": "quest_description_localization_id",

			"subQuests":
			[	
				{
					"sid": "subquest_unique-within-quest_id",
					"comment": "a brief description of what this subquest is about and/or which triggers it contains",
						
					"activeOnStart": true,
					
					"name": "subquest_name_localization_id",

					"triggers":
					[
						{
							"conditionsLogic": "Or",
							"repeat": true,

							"conditions":
							[
								{ "c": "Counter", "p": [ "counter_unique_descriptive_id", ">=", "2" ] },
								{ "c": "UnitKill", "p": [ "skeleton" ], "counter": 100 }
							],

							"actions":
							[
								{ "a": "InitiateInteract", "p": [ "entity_to_interact_with" ] },
								{ "a": "NextQuest" }
							]
						}
					]
				}
			]
		}
	]
}