Difference between revisions of "Project Phoenix 2 Boss Spawners"

From Legends of Aria Admin and Modding Wiki
Jump to: navigation, search
(Created page with "*Back to Main Page ==Welcome==")
 
Line 1: Line 1:
 
*[[Project_Phoenix_2#Scripts|Back to Main Page]]
 
*[[Project_Phoenix_2#Scripts|Back to Main Page]]
 
==Welcome==
 
==Welcome==
 +
The boss spawner is my way of creating a ultima online champion style spawn setup. This system is flexible in what it allows you to do with the spawn. It is also designed to allow easy modification for features you want to add.
 +
==Files==
 +
Below is a list of all the files that involve the merchant system or where the core structure is.
 +
*scripts\spawning\boss_spawner\boss_spawner.lua
 +
*scripts\spawning\boss_spawner\boss_spawner_tables.lua
 +
==Example Spawn==
 +
below is the example spawn that comes with project phoenix.
 +
  BossSpawner.Mogus =
 +
  {
 +
  --- the starting stage of the boss spawner
 +
  StartingStage = "Stage1",
 +
  --- table containing the stages of the spawn
 +
  Stages =
 +
  {
 +
  --- a stage entry which contains information needed by the boss spawner
 +
  --- this is to allow you to tweak settings.
 +
  Stage1 =
 +
  {
 +
  --- a list of template strings to randomly pick from and spawn during this stages waves
 +
  MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 +
  --- a numeric value that controls how many waves are in this stage
 +
  TotalWaves = 1,
 +
  --- a table to control the amount of monsters to spawn every wave
 +
  --- Base is the minimum amount to spawn each round
 +
  --- Bonus is amount to add per wave.
 +
  MonstersPerWave = {Base = 5, Bonus=1},
 +
  --- min and max range to spawn objects
 +
  --- if range is not supplied the system uses 5 as default
 +
  Range = {Min = 1, Max = 7},
 +
  --- system message to aleart players the waves have begun
 +
  StartWaveMessage = "Mogus's minions grow stronger.",
 +
  --- when this stage is done, what is the next stage to move too.
 +
  NextStage = "Stage2",
 +
  },
 +
  Stage2 =
 +
  {
 +
  MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 +
  TotalWaves = 1,
 +
  MonstersPerWave = {Base = 1, Bonus=1},
 +
  Range = {Min = 1, Max = 7},
 +
  StartWaveMessage = "Mogus's minions grow stronger.",
 +
  NextStage = "Stage3",
 +
  },
 +
  Stage3 =
 +
  {
 +
  MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 +
  TotalWaves = 1,
 +
  MonstersPerWave = {Base = 1, Bonus=1},
 +
  Range = {Min = 1, Max = 7},
 +
  StartWaveMessage = "Mogus's minions grow stronger.",
 +
  NextStage = "Stage4",
 +
  },
 +
  Stage4 =
 +
  {
 +
  MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 +
  TotalWaves = 1,
 +
  MonstersPerWave = {Base = 1, Bonus=1},
 +
  Range = {Min = 1, Max = 7},
 +
  StartWaveMessage = "Mogus's minions grow stronger.",
 +
  NextStage = "Stage5",
 +
  },
 +
  Stage5 =
 +
  {
 +
  MonsterList = {"mogus_boss",},
 +
  TotalWaves = 1,
 +
  MonstersPerWave = {Base = 1, Bonus=0},
 +
  Range = {Min = 1, Max = 1},
 +
  StartWaveMessage = "[FF7700]Mogus:[-] Death to all who challange me.",
 +
  --- the last stage must have NextStage being "EndStage" so the system knows to shut down
 +
  --- and wait till the next spawn cycle.
 +
  NextStage = "EndStage"
 +
  },
 +
  }
 +
  }

Revision as of 22:33, 21 August 2019

Welcome

The boss spawner is my way of creating a ultima online champion style spawn setup. This system is flexible in what it allows you to do with the spawn. It is also designed to allow easy modification for features you want to add.

Files

Below is a list of all the files that involve the merchant system or where the core structure is.

  • scripts\spawning\boss_spawner\boss_spawner.lua
  • scripts\spawning\boss_spawner\boss_spawner_tables.lua

Example Spawn

below is the example spawn that comes with project phoenix.

 BossSpawner.Mogus =
 {
 	--- the starting stage of the boss spawner
 	StartingStage = "Stage1",
 	--- table containing the stages of the spawn
 	Stages =
 	{
 		--- a stage entry which contains information needed by the boss spawner
 		--- this is to allow you to tweak settings.
 		Stage1 =
 		{
 			--- a list of template strings to randomly pick from and spawn during this stages waves
 			MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 			--- a numeric value that controls how many waves are in this stage
 			TotalWaves = 1,
 			--- a table to control the amount of monsters to spawn every wave
 			--- Base is the minimum amount to spawn each round
 			--- Bonus is amount to add per wave.
 			MonstersPerWave = {Base = 5, Bonus=1},
 			--- min and max range to spawn objects
 			--- if range is not supplied the system uses 5 as default
 			Range = {Min = 1, Max = 7},
 			--- system message to aleart players the waves have begun
 			StartWaveMessage = "Mogus's minions grow stronger.",
 			--- when this stage is done, what is the next stage to move too.
 			NextStage = "Stage2",
 		},
 		Stage2 =
 		{
 			MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 			TotalWaves = 1,
 			MonstersPerWave = {Base = 1, Bonus=1},
 			Range = {Min = 1, Max = 7},
 			StartWaveMessage = "Mogus's minions grow stronger.",
 			NextStage = "Stage3",
 		},		
 		Stage3 =
 		{
 			MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 			TotalWaves = 1,
 			MonstersPerWave = {Base = 1, Bonus=1},
 			Range = {Min = 1, Max = 7},
 			StartWaveMessage = "Mogus's minions grow stronger.",
 			NextStage = "Stage4",
 		},		
 		Stage4 =
 		{
 			MonsterList = {"mogus_skeleton_warrior","mogus_skeleton_mage","mogus_skeleton_archer",},
 			TotalWaves = 1,
 			MonstersPerWave = {Base = 1, Bonus=1},
 			Range = {Min = 1, Max = 7},
 			StartWaveMessage = "Mogus's minions grow stronger.",
 			NextStage = "Stage5",
 		},		
 		Stage5 =
 		{
 			MonsterList = {"mogus_boss",},
 			TotalWaves = 1,
 			MonstersPerWave = {Base = 1, Bonus=0},
 			Range = {Min = 1, Max = 1},
 			StartWaveMessage = "[FF7700]Mogus:[-] Death to all who challange me.",
 			--- the last stage must have NextStage being "EndStage" so the system knows to shut down
 			--- and wait till the next spawn cycle.
 			NextStage = "EndStage"
 		},		
 	}
 }