Skip to content

Commit

Permalink
extra_map_options compatibility
Browse files Browse the repository at this point in the history
Added boss wave at level 20 glory
  • Loading branch information
BrunoSupremo committed Feb 26, 2020
1 parent 02d64e4 commit 31a1a1d
Show file tree
Hide file tree
Showing 15 changed files with 301 additions and 67 deletions.
8 changes: 4 additions & 4 deletions components/weather_stone/weather_stone.lua
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,10 @@ function WeatherStone:change_weather()

--avoid picking the same weather by removing it out of the set
weighted_set:remove(current_weather)
local chosen_weather = weighted_set:choose_random() or "stonehearth:weather:sunny"

stonehearth.weather:_switch_to(chosen_weather, self.player_id)

local chosen_weather = weighted_set:choose_random()
if chosen_weather then
stonehearth.weather:_switch_to(chosen_weather, self.player_id)
end
radiant.effects.run_effect(self._entity, "stonehearth:effects:buff_tonic_energy_added")

self:full_reset()
Expand Down
8 changes: 8 additions & 0 deletions data/extra_map_options.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"biome_options": {
"swamp_goblins:biome:swamp": {
"world_size":1,
"dirt_holes":false
}
}
}
25 changes: 0 additions & 25 deletions data/firefly_clan_population.json
Original file line number Diff line number Diff line change
Expand Up @@ -377,35 +377,24 @@
"Belchy",
"Blinks",
"Blinky",
"Bloats",
"Bubble",
"Bubbles",
"Buffy",
"Bufonia",
"Cherry",
"Chops",
"Chubbles",
"Chubby",
"Clawdia",
"Cookie",
"Cosmo",
"Cricket",
"Croaks",
"Daphne",
"Dirty",
"Faye",
"Fern",
"Fiddle",
"Flubby",
"Flye",
"Freakey",
"Freckles",
"Frogzilla",
"Fye",
"Fyre",
"Geo",
"Gobbles",
"Gooey",
"Hippity",
"Hipscotch",
"Hoppity",
Expand All @@ -414,43 +403,32 @@
"Kirby",
"Kiss",
"Kisses",
"Leaps",
"Leapy",
"Lilo",
"Lily",
"Lilypad",
"Lips",
"Mello",
"Muddy",
"Muds",
"Mystique",
"Noodles",
"Patches",
"Peeps",
"Penelope",
"Pepper",
"Pickle",
"Pickles",
"Princess",
"Puds",
"Pugs",
"Pumpkin",
"Raisin",
"Ribbit",
"Ribbits",
"Sally",
"Shirly",
"Shmoo",
"Shmooches",
"Slimey",
"Slippy",
"Smiley",
"Smooch",
"Snaile",
"Sparkle",
"Sparkles",
"Speckles",
"Spot",
"Spots",
"Squee",
"Squiggy",
Expand All @@ -466,9 +444,6 @@
"Waddle",
"Waddles",
"Wiggle",
"Wiggles",
"Wobble",
"Wobbles",
"Xena"
]
},
Expand Down
29 changes: 29 additions & 0 deletions data/monster_tuning/warrior_hearth/orc/cleric.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"type": "monster_tuning",
"job": "stonehearth:jobs:npc:cleric",
"attributes": {
"max_health": 150,
"muscle": 40,
"menace": 40,
"courage": 150,
"speed": 80,
"exp_reward": 120
},
"equipment": {
"weapon": [
"stonehearth:weapons:tome"
]
},
"loot_drops": {
"entries": {
"default": {
"items": {
"small_healing_tonic" : {
"uri": "stonehearth:consumables:healing_tonic:small",
"weight" : 1
}
}
}
}
}
}
29 changes: 29 additions & 0 deletions data/monster_tuning/warrior_hearth/orc/footman.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"type": "monster_tuning",
"job": "stonehearth:jobs:npc:footman",
"attributes": {
"max_health": 250,
"muscle": 20,
"menace": 80,
"courage": 250,
"speed": 100,
"exp_reward": 120
},
"equipment": {
"weapon": [
"stonehearth:weapons:giant_bone_axe"
]
},
"loot_drops": {
"entries": {
"default": {
"items": {
"small_healing_tonic": {
"uri": "stonehearth:consumables:stamina_tonic",
"weight": 1
}
}
}
}
}
}
29 changes: 29 additions & 0 deletions data/monster_tuning/warrior_hearth/orc/kobold.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"type": "monster_tuning",
"job": "stonehearth:jobs:npc:archer",
"attributes": {
"max_health": 150,
"muscle": 0,
"menace": 80,
"courage": 130,
"speed": 85,
"exp_reward": 50
},
"equipment": {
"weapon": [
"stonehearth:weapons:kobold_bow"
]
},
"loot_drops": {
"entries": {
"default": {
"items": {
"small_healing_tonic" : {
"uri" : "stonehearth:consumables:stamina_tonic",
"weight" : 1
}
}
}
}
}
}
35 changes: 35 additions & 0 deletions data/monster_tuning/warrior_hearth/orc/ogre.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"type": "monster_tuning",
"job": "stonehearth:jobs:npc:knight",
"attributes": {
"max_health": 500,
"muscle": 0,
"menace": 100,
"courage": 300,
"speed": 80,
"exp_reward": 200
},
"equipment_scale": 0.15,
"equipment": {
"abilities": "stonehearth:abilities:door_breaker_abilities",
"equipment": "stonehearth:abilities:ogre_attack_abilities",
"invisible_weapon": "stonehearth:monsters:ogres:ogre_foot_weapon",
"weapon": [
"stonehearth:weapons:giant_bone_mace"
],
"shield": "stonehearth:armor:cracked_wooden_buckler",
"outfit": "stonehearth:monsters:ogres:outfits:tank"
},
"loot_drops": {
"entries": {
"default": {
"items": {
"small_healing_tonic": {
"uri": "stonehearth:consumables:stamina_tonic",
"weight": 1
}
}
}
}
}
}
32 changes: 32 additions & 0 deletions data/monster_tuning/warrior_hearth/orc/warchief.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"type": "monster_tuning",
"job": "stonehearth:jobs:npc:knight",
"scale": 0.13,
"attributes": {
"max_health": 500,
"muscle": 100,
"menace": 80,
"courage": 300,
"speed": 80,
"exp_reward": 200
},
"equipment": {
"weapon": [
"stonehearth:weapons:giant_bone_axe"
],
"shield": "stonehearth:armor:cracked_wooden_buckler",
"outfit": "stonehearth:monsters:orcs:outfits:warchief_boss"
},
"loot_drops": {
"entries": {
"default": {
"items": {
"small_healing_tonic": {
"uri": "stonehearth:consumables:healing_tonic:small",
"weight": 1
}
}
}
}
}
}
14 changes: 7 additions & 7 deletions data/monster_tuning/warrior_hearth/readme.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Instructions on how to use the waves.json file

It is a list of waves, each wave needs an unique name identifier, can't repeat names.
It is a list of possible waves, each wave entry needs an unique name identifier, can't repeat names.
For example:

{
Expand All @@ -14,9 +14,9 @@ For example:

Each wave has 4 fields. bulletin, weight, at_glory_level and members.
* "bulletin" is optional, it is the custom message that appears when confirmation window asks to accept or decline a challenge. When ommited, a default message is used instead.
* "at_glory_level" is optional too. It defaults to {"min":1,"max":9999}. It restricts at which glory levels this wave can appear.
* "weight" is optional, defaults to 1. weight measures the chance this wave has to be picked (has to be on the correct glory level) against other wave options.
* "members" is a required field. It should contain a list of unique members, using this format:
* "at_glory_level" is optional too. It defaults to {"min":1,"max":9999}. It restricts at which glory levels this wave can happen.
* "weight" is optional, defaults to 1. Weight measures the chance this wave has to be picked (has to be on the correct glory level) against other wave options.
* "members" is a required field. It should contain a list of possible members, with unique names, using this format:

"members": {
"cool_member": {
Expand All @@ -37,10 +37,10 @@ Examples:

Each member has 5 fields. role, tuning, job_level, weight and max_allowed.
* "weight" is optional and defaults to 1. Weight measures the chance this member has to be picked against other member options.
* "max_allowed" is optional and defaults to 9999. The randomizer will not try to pick this member again if it already spawned this amount of times
* "tuning" is optional, points to a monster_tuning file. Those files can set a bunch of parameters for the entity, such as job, hp, speed, loot, equipments, etc... (vanilla has it too, for more examples)
* "max_allowed" is optional and defaults to 9999. The randomizer will not try to pick this member again if it already spawned this amount of times in this wave
* "tuning" is optional, points to a monster_tuning file. Those files can set a bunch of parameters for the entity, such as job, hp, speed, loot, equipments, etc... (vanilla has it too, far more examples)
* "job_level" is optional and defaults to {"min":1, "max":1}. It randomly set the level of the job for each member spawned. Do not use if the member had no job set in its tuning file (or no tuning)
* "role" points to a role in the "swamp_goblins:kingdoms:warrior_hearth" file. It is a kingdom population file. Each role in the population can have male and female variations, each with random uris and names. As long as the role is correctly set in the population file, you can use it in a wave. (check any population file for examples, plenty in vanilla)
* "role" points to a role set in the "swamp_goblins:kingdoms:warrior_hearth" file, which is a kingdom population file. Each role in the population can have male and female variations, each with random uris and names. As long as the role is correctly set in that population file, you can use it in a wave. (check any population file for examples, plenty in vanilla)

Here two new waves added as an example, explanation below it:

Expand Down
Loading

0 comments on commit 31a1a1d

Please sign in to comment.