Any help with making a Cloned Class?

So, I attempted to make a stronger version of the Cleric and somewhat copied the Cleric class. Everything works but the buffs… which is technically everything.
This is what I get when the Stronger Cleric Levels up to lvl 1.

Error Report

release-763 (x64)[M]
stonehearth/components/buffs/buffs_component.lua:48: assertion failed!
stack traceback:
radiant/modules/common.lua:245: in function 'report_traceback’
radiant/modules/common.lua:256: in function <radiant/modules/common.lua:250>
[C]: in function 'assert’
stonehearth/components/buffs/buffs_component.lua:48: in function 'add_buff’
radiant/modules/entities.lua:670: in function 'add_buff’
stonehearth/data/buffs/scripts/aura_buff.lua:63: in function '_on_pulse’
stonehearth/data/buffs/scripts/aura_buff.lua:19: in function 'on_buff_added’
stonehearth/components/buffs/buff.lua:298: in function '_create_script_controller’
stonehearth/components/buffs/buff.lua:96: in function '_create_buff’
stonehearth/components/buffs/buff.lua:78: in function 'post_activate’
radiant/modules/common.lua:542: in function ‘create_controller’

stonehearth/components/job/job_component.lua:286: in function ‘promote_to’
…arth/ai/actions/change_job_using_talisman_action.lua:24: in function '_trigger_cb’
radiant/modules/effects/trigger_effect.lua:14: in function 'fn’
radiant/controllers/nonpersistent_timer.lua:56: in function 'fire’
radiant/controllers/time_tracker_controller.lua:86: in function <radiant/controllers/time_tracker_controller.lua:86>
[C]: in function 'xpcall’
radiant/modules/common.lua:265: in function 'xpcall’
radiant/controllers/time_tracker_controller.lua:86: in function 'set_now’
radiant/modules/gamestate.lua:9: in function 'set_now’
radiant/server.lua:60: in function <radiant/server.lua:58>

I am not good at reading or writing Lua codes. So. I was hoping I didnt need to since I am making somewhat of a cleric clone.

It depends on what you did.
At the cleric description we have this:

   "level_data": {
      "1": {
         "perks": [
            {
               "type": "apply_buff",
               "name": "i18n(stonehearth:jobs.cleric.cleric_description.level_0_data.perk_000_name)",
               "id": "cleric_heal_aura_1",
               "icon": "file(images/cleric_perk_healing_aura.png)",
               "buff_name": "stonehearth:buffs:cleric:heal_aura_1",
               "description": "i18n(stonehearth:jobs.cleric.cleric_description.level_0_data.perk_000_description)",
               "level": 1,
               "demote_fn": "remove_buff"
            }
         ]
      },

Which make it so at level 1 it will apply the buff named stonehearth:buffs:cleric:heal_aura_1

I’m guessing you just replaced the cleric name for your class name, in which case it will be trying to apply a buff that does not exist.

1 Like

I made new buffs, does that mean I made a typo somewhere.
This is one of the altered buffs.

heal_aura_1
   {
       "type": "buff",
       "axis": "buff",
       "display_name": "Healing Aura",
       "description": "High Cleric's Aura",
       "icon": "file(cleric_buff_healing_aura.png)",
       "script": "stonehearth:buff_scripts:aura",
       "script_info": {
          "pulse": "15m",
          "pulse_effect": "stonehearth:effects:heal_aura_effect:aoe_effect",
          "aura_buff": "arcjobs:hcleric_buffs:add_health_medium",
          "radius": 40,
          "affect_self": true,
          "target_type": "mob"
       }
    }

Is that correct?

1 Like

yep, lol,
If it is not a lua script error, and I don’t need to write Lua, I will go back and relook at all buffs .jsons and the manifest. Maybe it was a typo. Never seen this error before tho.

Checking the error it looks like the buff in the aura_buff for the script_info is not found.

Check if your alias for the buff is correct.

1 Like

Ding ding ding. That was it. lol.
Major and Minor strings looked so alike, mismatched them.
Thanks!! I’m so lucky this community is very helpful.