Goblins mobbing your town?

Thanks for the help, I’m not into LUA,for some reason I don’t like it. I like C# or C++ better. LUA just seems like it has to much puncuation rather then words.

I pulled down the smod file to give it a try. However, I started noticing random game crashes that were not happening before. This was in the stonehearth.log file:

2014-Aug-20 14:41:45.367573 | 0 |                         lua.code | -- Script Error (lua) Begin ------------------------------- 
2014-Aug-20 14:41:45.367573 | 0 |                         lua.code |    stonehearth/components/ai/execution_frame.lua:1396: stonehearth/components/ai/execution_frame.lua:1396: stonehearth/components/ai/execution_frame.lua:1396: stonehearth/components/ai/execution_frame.lua:1396: stonehearth/components/ai/execution_frame.lua:1396: stonehearth/components/ai/execution_frame.lua:1396: stonehearth/components/ai/execution_frame.lua:1396: std::exception: 'invalid file path '/goblins/data/rigs/monsters/goblin'.'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    stack traceback:
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:1338: in function <stonehearth/components/ai/execution_frame.lua:1329>
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	[C]: in function 'error'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:1396: in function '_exit_protected_call'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:1385: in function '_protected_call'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:777: in function '_run_from_started'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:170: in function '_run'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:497: in function <stonehearth/components/ai/execution_frame.lua:481>
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	[C]: in function 'xpcall'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:1342: in function '_protected_call'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/execution_frame.lua:507: in function 'run'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/components/ai/ai_component.lua:319: in function '_thread_main'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/services/server/threads/thread.lua:210: in function <stonehearth/services/server/threads/thread.lua:207>
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	[C]: in function 'xpcall'
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code |    	stonehearth/services/server/threads/thread.lua:207: in function <stonehearth/services/server/threads/thread.lua:199>
2014-Aug-20 14:41:45.368573 | 0 |                         lua.code | -- Lua Error End   ------------------------------- 

It looks like it gets thrown whenever the game tries to spawn in the goblins. Not certain that this is due to the mod or not, just something new I noticed.

1 Like

@Nicedude80, maybe double, triple, quadruple check that your mixintos are overriding the right file? There are 2 goblin.json files; one is a rig and one is the actual entity description.

1 Like

@sdee I don’t exactly see what you mean,in the stonehearth/entities/monsters/goblins/goblin/ folder there is only 1 goblin.json. And I believe my manifest is ok.

EDIT: I see what you mean now, and yes, it is going into the right file. I am not touching the rig file.

1 Like

hello there,

would truly build up a little town … but i can’t find the stonhearth_server.lua in my folder? Neither the folder entities …
cleaning my googles … i think they should in the mainfolder above steam/steamapps/common/stonehearth … or i understood something wrong?

But until now, the game feels more and more comfortable ^^

best regards

madda

Ok, just checking. @gryffonx’s error looks like it has to do with not finding a file where it thinks the rig should be. Anyway, I’ll let you guys debug this one. :wink:

Ah, right, Steam and Humble Bundle put the files in different places. For Steam, my path looks something like:

Steam\SteamApps\common\Stonehearth\mods\stonehearth\stonehearth_server.luac

The luac is decompiled lua. Various people here have had luck recompiling it, and editing it to get it to work like a normal text file. Check out this thread here: Stonehearth Modding FAQ

1 Like

Hmmm, well this is what is in the manifest:

{
   "info" : {
      "name" : "Goblins"
   },

   "overrides" : {
      "stonehearth/entities/monsters/goblins/goblin/goblin.json" :"goblins/overrides/goblin.json"
   }
}

And the structure of the inside of my .smod is like this:

smod/goblins/manifest.json
smod/goblins/overrides/goblin.json

1 Like

And post your goblin.json?

Right sorry I was afk. There ya go @sdee

{
“type”: “entity”,
“mixins” : “stonehearth:mixins:mob”,
“components”: {
“render_info” : {
“animation_table”: “file(/data/rigs/monsters/goblin)”
},
“model_variants”: {
“default”: {
“models”: [
{
“type”: “one_of”,
“items”: [
“file(goblin_head_1.qb)”,
“file(goblin_head_2.qb)”,
“file(goblin_head_3.qb)”
]
},
“file(goblin_body.qb)”
]
}
},
“stonehearth:ai”: {
“actions” : [
“stonehearth:actions:idle:sway”,
“stonehearth:actions:idle:look_around”,
“stonehearth:actions:wander”,
“stonehearth:actions:wander_within_leash”,
“stonehearth:actions:wander_when_bored”,
“stonehearth:actions:choose_point_around_leash”,
“stonehearth:actions:wait_for_attribute_above”,
“stonehearth:actions:wait_for_attribute_below”,
“stonehearth:actions:combat”,
“stonehearth:actions:combat:attack_after_cooldown”,
“stonehearth:actions:combat:attack:melee”,
“stonehearth:actions:combat:attack:melee_adjacent”,
“stonehearth:actions:combat:defend_dispatcher”,
“stonehearth:actions:combat:defend:melee”,
“stonehearth:actions:combat:idle_dispatcher”,
“stonehearth:actions:combat:idle:ready”,
“stonehearth:actions:combat:idle:shuffle”,
“stonehearth:actions:combat:hit_stun”,
“stonehearth:actions:chase_entity”,
“stonehearth:actions:restock_stockpile”,
“stonehearth:actions:reserve_stockpile_space”,
“stonehearth:actions:work_task_dispatcher”,
“stonehearth:actions:place_item”,
“stonehearth:actions:stockpile_arson”,
“stonehearth:actions:follow_entity”,
“stonehearth:actions:combat:create_engage_callback”,
“stonehearth:actions:combat:get_melee_range”,
“stonehearth:actions:combat:get_primary_target”,
“stonehearth:actions:combat:set_global_attack_cooldown”,
“stonehearth:actions:combat:wait_for_global_attack_cooldown”,
“stonehearth:actions:set_posture”,
“stonehearth:actions:unset_posture”
],
“observers”: [
“stonehearth:observers:aggro”,
“stonehearth:observers:find_target”,
“stonehearth:observers:health_score”
]
},
“unit_info” : {
“name”: “A Goblin”,
“faction”: “goblin”,
“description”: “Attracted to shiny things”
},
“sensor_list”: {
“sensors”: {
“sight”: {
“radius”: 64
}
}
},
“stonehearth:attributes”: {
“max_health”: {
“type” : “basic”,
“value” : 1
},
“health”: {
“type” : “variable”,
“equation” : “max_health”
},
“speed”: {
“type” : “basic”,
“value” : 80
},
“ferocity”: {
“type” : “basic”,
“value” : 1
},
“menace”: {
“type” : “basic”,
“value” : 1
},
“courage”: {
“type” : “basic”,
“value” : 1
}
},
“stonehearth:carry_block”: {
},
“stonehearth:posture”: [
]
},
“entity_data” : {
“stonehearth:entity_radius” : 0.75,
“stonehearth:entity_reach” : 1.0,
“stonehearth:combat:melee_attacks” : [
{
“name” : “combat_1h_forehand_spin”,
“active_frame” : 21,
“cooldown” : 8000,
“priority” : 1
}
],
“stonehearth:combat:melee_defenses” : [
{
“name” : “combat_1h_dodge”,
“active_frame” : 8,
“cooldown” : 12000,
“priority” : 1
}
]
}
}

1 Like

Thanks! Hm, off the top of my head it might be that the relative paths inside your json aren’t working right because they’re relative from your mod folder instead of the target entity folder. As @gryffonx’s post said, ‘/goblins/data/rigs/monsters/goblin’.’ just isn’t a path that exists inside either your goblins mod or the stonehearth mod itself. Instead, try making your override a mixinto so that it only has to mention the 4 values you’re changing. And of course, test it out on your machine and whatever volunteers are interested.

Thatswierd, I don’t get this error at all. Oh well, I’ll do that. Thanks

I was actually able to hold off something like a 10+ goblin attack on day 7. I figured I was going to get stomped on because by night 3 there hadn’t been any attacks. So I got 3 of my villagers setup as foot soldiers, built a lot of beds which brought me a 4th foot soldier via the random events, got them setup in cloth armor (easy to make) and when the attack happened I pressed “R” to have all of my villagers respond to the attack. We beat them and lost NOBODY in the process! WOO HOO!

4 Likes

What is the location of goblin.json for the game when it is stored as a Steam App. Currently SteamLibrary/SteamApps/common/Stonhearth contains no entities folder.

Am I the only person that hasn’t come across a goblin mob? And to honest, I would just awwwe at them then be upset they are killing my people.

1 Like

No large mobs for me, just 1 or 2 goblins every few days… if that.

1 Like

Please check my forum post:

@FiredHigh … It also looks like pathing is an issue. I’ve seen Goblins spawn in without discovering a way to get to your village, even though there is one. They just stand there doing nothing. Then more spawn, and more, and more… Then all of a sudden a spawn is close enough to your village that they figure it out and you have a 12+ goblin mob attacking you.

1 Like

It may be a factor, but I find it strange that most players would be attacked by 10 or more goblins overall within the third day, whether spaced out or not. Also, this would need confirming by the devs, but how many looting goblins are able to be spawned at once?

My point here is, if there were just lots of goblins being spawned but getting lost, wouldn’t you have more looting goblins and less armed ones? If it restricts to one looting goblin at a time, that makes more sense, but if not, then I think the problem goes beyond a pathing problem

That’s just what I think about it

lets see how this goes, (I for one still havent been mobbed once) I only get some thieves after like 4 or 5 days.

I havent seen any either.