From 927dbe6b3f3436eff88d8b1762c9bd9c410df313 Mon Sep 17 00:00:00 2001 From: Bruno Date: Sat, 12 Jan 2019 01:42:49 -0200 Subject: [PATCH] Bug fixes Fixed varanus spawning in peaceful Fixed scavenger trait error messages Fixed goblin crafting menu replacing hearthling menus in multiplayer Fixed spirit walker bug at level 2 summoning his first spirit Fixed random enemy goblin camps appearing for the firefly. Downgraded warrior loadout to start with level 1 equips intead of level 6 Babies will now eat "just" 5 times more than adults, instead of 10 times. (this will be polished later with a better mechanic) Added a wip marker for missing crafters perks --- .../monster_spawner_component.lua | 3 +++ data/loadouts/loadouts.json | 14 +++++------ data/traits/traits_index.json | 4 ++-- .../data => data}/ui/start_menu.json | 23 +++++-------------- entities/goblins/baby/baby.json | 2 +- entities/plants/mushroom/mushroom.json | 13 +++++++++++ firefly_clan_selected/manifest.json | 7 +++--- .../ui/game/start_menu/start_menu.less | 11 +++++++++ jobs/bonesmith/bonesmith_description.json | 11 ++++++++- jobs/earthmaster/earthmaster_description.json | 11 ++++++++- jobs/shaman/shaman_description.json | 11 ++++++++- jobs/spirit_walker/spirit_walker.lua | 3 +++ locales/en.json | 5 ++-- manifest.json | 17 ++++++++++---- swamp_goblins_server.lua | 2 +- ui/game/start_menu/start_menu.less | 3 +++ 16 files changed, 98 insertions(+), 42 deletions(-) rename {firefly_clan_selected/data => data}/ui/start_menu.json (85%) create mode 100644 firefly_clan_selected/ui/game/start_menu/start_menu.less create mode 100644 ui/game/start_menu/start_menu.less diff --git a/components/monster_spawner/monster_spawner_component.lua b/components/monster_spawner/monster_spawner_component.lua index 62ad867..f93e0e3 100644 --- a/components/monster_spawner/monster_spawner_component.lua +++ b/components/monster_spawner/monster_spawner_component.lua @@ -2,6 +2,9 @@ local SwampGoblins_Monster_Spawner = class() -- local log = radiant.log.create_logger('SwampGoblins_Monster_Spawner') function SwampGoblins_Monster_Spawner:activate() + if stonehearth.game_creation:get_game_mode() == "stonehearth:game_mode:peaceful" then + return + end local json = radiant.entities.get_json(self) self.monster = json.monster or "stonehearth:loot:gold" self.player_id = json.player_id or "forest" diff --git a/data/loadouts/loadouts.json b/data/loadouts/loadouts.json index 6331d3e..5d65849 100644 --- a/data/loadouts/loadouts.json +++ b/data/loadouts/loadouts.json @@ -20,18 +20,18 @@ }, "helmet": { "ordinal": 10, - "display_name": "i18n(swamp_goblins:entities.armor.horn_helmet.display_name)", + "display_name": "i18n(swamp_goblins:entities.armor.flower_helmet.display_name)", "type": "entity", - "uri": "swamp_goblins:armor:horn_helmet", - "icon": "/swamp_goblins/entities/armor/horn_helmet/horn_helmet.png", + "uri": "swamp_goblins:armor:flower_helmet", + "icon": "/swamp_goblins/entities/armor/flower_helmet/flower_helmet.png", "amount": 1 }, - "axe": { + "weapon": { "ordinal": 20, - "display_name": "i18n(swamp_goblins:entities.weapons.giant_bone_axe.display_name)", + "display_name": "i18n(swamp_goblins:entities.weapons.spear.display_name)", "type": "entity", - "uri": "swamp_goblins:weapons:giant_bone_axe", - "icon": "/swamp_goblins/entities/weapons/giant_bone_axe/giant_bone_axe.png", + "uri": "swamp_goblins:weapons:spear", + "icon": "/swamp_goblins/entities/weapons/spear/spear.png", "amount": 1 }, "jerky": { diff --git a/data/traits/traits_index.json b/data/traits/traits_index.json index 61d9315..4be1e05 100644 --- a/data/traits/traits_index.json +++ b/data/traits/traits_index.json @@ -23,7 +23,7 @@ "swamp_goblins:traits:passion_beast_tamer":{}, "swamp_goblins:traits:passion_bonesmith":{}, "swamp_goblins:traits:passion_earthmaster":{}, - "swamp_goblins:traits:scavenger":{}, + "swamp_goblins:traits:passion_scavenger":{}, "swamp_goblins:traits:passion_shaman":{}, "swamp_goblins:traits:passion_spirit_walker":{}, "swamp_goblins:traits:passion_warrior":{}, @@ -50,7 +50,7 @@ "stonehearth:traits:heart_of_a_crafter": { "excludes": { "swamp_goblins:traits:passion_beast_tamer":true, - "swamp_goblins:traits:scavenger":true, + "swamp_goblins:traits:passion_scavenger":true, "swamp_goblins:traits:passion_spirit_walker":true, "swamp_goblins:traits:passion_warrior":true, "swamp_goblins:traits:party_goblin": true diff --git a/firefly_clan_selected/data/ui/start_menu.json b/data/ui/start_menu.json similarity index 85% rename from firefly_clan_selected/data/ui/start_menu.json rename to data/ui/start_menu.json index 64936cc..cd91c85 100644 --- a/firefly_clan_selected/data/ui/start_menu.json +++ b/data/ui/start_menu.json @@ -1,22 +1,11 @@ { - "zone_menu": { - "items": { - "mixintypes": { - "create_farm": "remove", - "create_pasture": "remove" - } - } - }, "crafter_menu": { - "mixintypes": { - "items": "override" - }, "items": { "shaman": { - "ordinal": 1, + "ordinal": 1.1, "name": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.shaman.display_name)", "description": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.shaman.description)", - "class": "button", + "class": "swamp_goblins_button", "required_job": "swamp_goblins:jobs:shaman", "required_job_text": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.shaman.required_job_text)", "icon": "/swamp_goblins/jobs/shaman/images/shaman_menu_icon.png", @@ -25,10 +14,10 @@ "hotkey_action": "craft:shaman" }, "bonesmith": { - "ordinal": 2, + "ordinal": 1.2, "name": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.bonesmith.display_name)", "description": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.bonesmith.description)", - "class": "button", + "class": "swamp_goblins_button", "required_job": "swamp_goblins:jobs:bonesmith", "required_job_text": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.bonesmith.required_job_text)", "icon": "/swamp_goblins/jobs/bonesmith/images/bonesmith_menu_icon.png", @@ -37,10 +26,10 @@ "hotkey_action": "craft:bonesmith" }, "earthmaster": { - "ordinal": 3, + "ordinal": 1.3, "name": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.earthmaster.display_name)", "description": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.earthmaster.description)", - "class": "button", + "class": "swamp_goblins_button", "required_job": "swamp_goblins:jobs:earthmaster", "required_job_text": "i18n(swamp_goblins:ui.game.menu.crafter_menu.items.earthmaster.required_job_text)", "icon": "/swamp_goblins/jobs/earthmaster/images/earthmaster_menu_icon.png", diff --git a/entities/goblins/baby/baby.json b/entities/goblins/baby/baby.json index 25eb504..105bb59 100644 --- a/entities/goblins/baby/baby.json +++ b/entities/goblins/baby/baby.json @@ -55,7 +55,7 @@ "description": "i18n(swamp_goblins:entities.goblins.baby.description)" }, "stonehearth:calories": { - "hourly_calorie_loss": 10 + "hourly_calorie_loss": 5 }, "stonehearth:portrait": { "portrait_types": { diff --git a/entities/plants/mushroom/mushroom.json b/entities/plants/mushroom/mushroom.json index ff44571..269d480 100644 --- a/entities/plants/mushroom/mushroom.json +++ b/entities/plants/mushroom/mushroom.json @@ -18,6 +18,19 @@ "harvest_overlay_effect": "stonehearth:effects:harvest_plant_overlay_effect", "unripe_description": "i18n(swamp_goblins:entities.plants.mushroom.unripe_description)", "resource": "swamp_goblins:food:mushroom", + "resource_loot_table": { + "entries": { + "extra_mush": { + "num_rolls": 1, + "items": { + "herb": { + "uri": "swamp_goblins:food:mushroom", + "weight": 1 + } + } + } + } + }, "renewal_time": "22h+2h" }, "stonehearth:entity_forms": { diff --git a/firefly_clan_selected/manifest.json b/firefly_clan_selected/manifest.json index 63d7744..c7b073d 100644 --- a/firefly_clan_selected/manifest.json +++ b/firefly_clan_selected/manifest.json @@ -6,9 +6,7 @@ "version" : 3 }, "aliases" : {}, - "mixintos" : { - "stonehearth/data/ui/start_menu.json":"file(data/ui/start_menu.json)" - }, + "mixintos" : {}, "overrides" : { "stonehearth/entities/gizmos/camp_standard/camp_standard_ghost.json" : "swamp_goblins/entities/gizmos/camp_standard/camp_standard_ghost.json", @@ -32,7 +30,8 @@ "html": [], "less": [ "file(ui/root/css/variables.less)", - "file(ui/game/promotion_tree/promotion_tree.less)" + "file(ui/game/promotion_tree/promotion_tree.less)", + "file(ui/game/start_menu/start_menu.less)" ] } } \ No newline at end of file diff --git a/firefly_clan_selected/ui/game/start_menu/start_menu.less b/firefly_clan_selected/ui/game/start_menu/start_menu.less new file mode 100644 index 0000000..85f2653 --- /dev/null +++ b/firefly_clan_selected/ui/game/start_menu/start_menu.less @@ -0,0 +1,11 @@ +div[parent~="crafter_menu"] div.swamp_goblins_button{ + display: inline-block; +} +div[parent~="crafter_menu"] div.button:not(.swamp_goblins_button){ + display: none; +} +div[parent~="crafter_menu"] div#fisher, +div[parent~="crafter_menu"] div#trapper{ + display: inline-block; +} +/*[parent~="zone_menu"]*/ \ No newline at end of file diff --git a/jobs/bonesmith/bonesmith_description.json b/jobs/bonesmith/bonesmith_description.json index 2f36b85..44f5cac 100644 --- a/jobs/bonesmith/bonesmith_description.json +++ b/jobs/bonesmith/bonesmith_description.json @@ -51,7 +51,16 @@ "max_level": 6, "level_data": { "1": { - "title": "i18n(swamp_goblins:jobs.bonesmith.bonesmith_description.display_name)" + "title": "i18n(swamp_goblins:jobs.bonesmith.bonesmith_description.display_name)", + "perks": [ + { + "name": "i18n(swamp_goblins:wip)", + "id": "wip", + "icon": "/stonehearth/jobs/unknown/images/icon.png", + "description": "i18n(swamp_goblins:wip)", + "level": 1 + } + ] }, "2": { "title": "i18n(swamp_goblins:jobs.bonesmith.bonesmith_description.display_name)" diff --git a/jobs/earthmaster/earthmaster_description.json b/jobs/earthmaster/earthmaster_description.json index 1b60ae6..db3367d 100644 --- a/jobs/earthmaster/earthmaster_description.json +++ b/jobs/earthmaster/earthmaster_description.json @@ -52,7 +52,16 @@ "max_level": 6, "level_data": { "1": { - "title": "i18n(swamp_goblins:jobs.earthmaster.earthmaster_description.display_name)" + "title": "i18n(swamp_goblins:jobs.earthmaster.earthmaster_description.display_name)", + "perks": [ + { + "name": "i18n(swamp_goblins:wip)", + "id": "wip", + "icon": "/stonehearth/jobs/unknown/images/icon.png", + "description": "i18n(swamp_goblins:wip)", + "level": 1 + } + ] }, "2": { "title": "i18n(swamp_goblins:jobs.earthmaster.earthmaster_description.display_name)" diff --git a/jobs/shaman/shaman_description.json b/jobs/shaman/shaman_description.json index 7b8d797..a473199 100644 --- a/jobs/shaman/shaman_description.json +++ b/jobs/shaman/shaman_description.json @@ -54,7 +54,16 @@ "max_level": 6, "level_data": { "1": { - "title": "i18n(swamp_goblins:jobs.shaman.shaman_description.display_name)" + "title": "i18n(swamp_goblins:jobs.shaman.shaman_description.display_name)", + "perks": [ + { + "name": "i18n(swamp_goblins:wip)", + "id": "wip", + "icon": "/stonehearth/jobs/unknown/images/icon.png", + "description": "i18n(swamp_goblins:wip)", + "level": 1 + } + ] }, "2": { "title": "i18n(swamp_goblins:jobs.shaman.shaman_description.display_name)" diff --git a/jobs/spirit_walker/spirit_walker.lua b/jobs/spirit_walker/spirit_walker.lua index d525494..1ac1f83 100644 --- a/jobs/spirit_walker/spirit_walker.lua +++ b/jobs/spirit_walker/spirit_walker.lua @@ -28,6 +28,9 @@ end function SpiritWalkerClass:summon_spirit(delay, amount) local spirit_amount = amount or 1 + if not radiant.util.is_number(spirit_amount) then + spirit_amount = 1 + end for i=1, spirit_amount do local offset = (0.1*i+1) - (0.1*spirit_amount)/2 local summoning_delay = (delay * 33.3 * offset) diff --git a/locales/en.json b/locales/en.json index 93ae651..9873d28 100644 --- a/locales/en.json +++ b/locales/en.json @@ -1,4 +1,5 @@ { + "wip":"Work in Progress", "ai": { "actions": { "status_text": { @@ -595,7 +596,7 @@ }, "level_5_data": { "perk_000_name": "Body Up", - "perk_000_description": "Strenght aquired from past fights grants +1 Body stat" + "perk_000_description": "Strength aquired from past fights grants +1 Body stat" }, "level_6_data": { "perk_000_name": "Rage over Time", @@ -739,7 +740,7 @@ }, "worker": { "worker_description": { - "description": "Workers perform basic tasks like harvesting resources, hauling stuff around, and constructing buildings.

⚔️ Goblin workers though, can also fight and be in a combat party." + "description": "Workers perform basic tasks like harvesting resources, hauling stuff around, and constructing buildings.

⚔️ Goblin workers can also fight and be in a combat party." } } }, diff --git a/manifest.json b/manifest.json index d8b1173..3c6473c 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,9 @@ { "info" : { - "name" : "swamp_goblins", - "version" : 3 + "name" : "Swamp Biome + Firefly Clan + Beast Tamer", + "namespace" : "swamp_goblins", + "version" : 3, + "steam_file_id" : "1620908839" }, "default_locale": "en", "client_init_script" : "file(swamp_goblins_client)", @@ -291,9 +293,11 @@ "stonehearth/data/gm/campaigns/ambient_threats/arcs/trigger/ambient_threats/encounters/trash_mobs/raid_difficulty/hard_raids.json": "file(data/gm/campaigns/ambient_threats/arcs/trigger/ambient_threats/encounters/trash_mobs/raid_difficulty/hard_raids.json)", "stonehearth/data/gm/campaigns/trader/trader_campaign.json": "file(data/gm/campaigns/trader/trader_campaign.json)", - "stonehearth/data/gm/campaigns/game_events/arcs/trigger/game_events/encounters/generate_daily_report.json": "file(data/gm/campaigns/remove_firefly_clan.json)", - "stonehearth/data/gm/campaigns/goblin_war/goblin_war_campaign.json": "file(data/gm/campaigns/remove_firefly_clan.json)", - "stonehearth/data/gm/campaigns/orc_war/orc_war_campaign.json": "file(data/gm/campaigns/remove_firefly_clan.json)", + "stonehearth/data/gm/campaigns/ambient_threats/arcs/trigger/ambient_threats/encounters/goblin_raider_camp.json":"file(data/gm/campaigns/remove_firefly_clan.json)", + "stonehearth/data/gm/campaigns/ambient_threats/arcs/trigger/ambient_threats/encounters/goblin_thief_camp.json": "file(data/gm/campaigns/remove_firefly_clan.json)", + "stonehearth/data/gm/campaigns/game_events/arcs/trigger/game_events/encounters/generate_daily_report.json": "file(data/gm/campaigns/remove_firefly_clan.json)", + "stonehearth/data/gm/campaigns/goblin_war/goblin_war_campaign.json": "file(data/gm/campaigns/remove_firefly_clan.json)", + "stonehearth/data/gm/campaigns/orc_war/orc_war_campaign.json": "file(data/gm/campaigns/remove_firefly_clan.json)", "stonehearth:data:resource_constants": "file(data/resource_constants.json)", @@ -301,6 +305,8 @@ "stonehearth:data:thoughts": "file(data/happiness/thoughts.json)", + "stonehearth/data/ui/start_menu.json":"file(data/ui/start_menu.json)", + "stonehearth:kingdoms:forest": "file(services/server/population/data/forest_population.json)", "stonehearth:jobs:index": "file(jobs/index_to_merge.json)", @@ -382,6 +388,7 @@ "file(jobs/bonesmith/skin/workshop.less)", "file(jobs/earthmaster/skin/workshop.less)", + "file(ui/game/start_menu/start_menu.less)", "file(ui/shell/select_roster/select_roster.less)", "file(ui/shell/loadout_screen/loadout_screen.less)", "file(ui/shell/select_settlement/select_settlement.less)" diff --git a/swamp_goblins_server.lua b/swamp_goblins_server.lua index d35ad2c..18c8b8e 100644 --- a/swamp_goblins_server.lua +++ b/swamp_goblins_server.lua @@ -1,6 +1,6 @@ swamp_goblins = {} local log = radiant.log.create_logger('version') -log:error("Swamp Goblins Mod last updated at Stonehearth 1.1.0.947") +log:error("Swamp Goblins Mod version 19.1.12") function swamp_goblins:_on_services_init() if stonehearth.world_generation:get_biome_alias() ~= "swamp_goblins:biome:swamp" then diff --git a/ui/game/start_menu/start_menu.less b/ui/game/start_menu/start_menu.less new file mode 100644 index 0000000..d669ad1 --- /dev/null +++ b/ui/game/start_menu/start_menu.less @@ -0,0 +1,3 @@ +div[parent~="crafter_menu"] .swamp_goblins_button{ + display: none; +} \ No newline at end of file