Character creation has a mind of it's own

Users who are viewing this thread

I am having a major issue with character creation at the moment and I am at a loss as to the cause. If anyone can help me solve this I will be extremely grateful.

I have created a character creation tree for each of the factions in the mod rather than one for all and the problem is that the starting stats which come up when you get to choose your skills are way too high, equivalent to a level 30+ character and that is without adding any more in. This is for all choices.

I experimented by removing nearly all of the skill raises from the code for the options I am testing with. In fact the only raises which should happen making the selections I have is strength +3, agility +1 charisma +1 and small raises to firearms, crossbow and one handed weapons in proficiencies. There are no skill raises at all for the options chosen yet this is the starting skills screen:


That is insane, especially as you can still add more to it. Even if all the skill raises were left in it would not equal nearly that much.

Does anyone have any idea what could be causing this? I cannot see anything in the game menus.py which is doing this, it all looks legit and I have tested in so many ways. The final way I just tried suggests it is something else entirely. Any thoughts appreciated.
 
Did you remove the Native mechanism where all the stats are added? Is your code being called more than twice? Does your player troop (first one in module_troops) have suspiciously high base stats?
 
Somebody said:
Did you remove the Native mechanism where all the stats are added? Is your code being called more than twice? Does your player troop (first one in module_troops) have suspiciously high base stats?


All the stats are raised under "choose_skill" like native. Here is an example section:

(try_begin),
        (eq,"$background_answer_27",cb27_ferryman),
        (troop_raise_attribute, "trp_player",ca_intelligence,1),
        (troop_raise_attribute, "trp_player",ca_strength,1),
        (troop_raise_skill, "trp_player","skl_trade",1),
        (troop_raise_skill, "trp_player","skl_spotting",1),
        (troop_raise_skill, "trp_player","skl_pathfinding",1),
        (troop_raise_skill, "trp_player","skl_power_strike",1),
        (troop_add_gold, "trp_player", 35),
        (troop_raise_proficiency, "trp_player",wpt_polearm,30),
    (else_try),
        (eq,"$background_answer_27",cb27_pickpocket),
        (troop_raise_attribute, "trp_player",ca_agility,1),
(troop_raise_attribute, "trp_player",ca_intelligence,1),
        (troop_raise_skill, "trp_player","skl_looting",2),
        (troop_raise_skill, "trp_player","skl_tracking",1),
        (troop_raise_skill, "trp_player","skl_inventory_management",1),
        (troop_raise_proficiency, "trp_player",wpt_polearm,15),
        (troop_add_gold, "trp_player", 100),
    (else_try),
        (eq,"$background_answer_27",cb27_scout),
        (troop_raise_attribute, "trp_player",ca_agility,1),
        (troop_raise_attribute, "trp_player",ca_intelligence,1),
        (troop_raise_skill, "trp_player","skl_riding",2),
        (troop_raise_skill, "trp_player","skl_spotting",1),
        (troop_raise_skill, "trp_player","skl_pathfinding",1),
(troop_raise_proficiency, "trp_player",wpt_one_handed_weapon,25),
        (troop_add_gold, "trp_player", 30),
      (else_try),
        (eq,"$background_answer_27",cb27_stable),
        (troop_raise_attribute, "trp_player",ca_agility,2), 
        (troop_raise_skill, "trp_player","skl_riding",2),
        (troop_raise_skill, "trp_player","skl_inventory_management",2),
        (troop_add_gold, "trp_player", 150),
    (else_try),
        (eq,"$background_answer_27",cb27_hunter),
        (troop_raise_attribute, "trp_player",ca_strength,1),
(troop_raise_attribute, "trp_player",ca_intelligence,1),
        (troop_raise_skill, "trp_player","skl_power_draw",1),
        (troop_raise_skill, "trp_player","skl_spotting",1),
        (troop_raise_skill, "trp_player","skl_tracking",2),
        (troop_add_gold, "trp_player", 30),
        (troop_raise_proficiency, "trp_player",wpt_archery,50),
(else_try),
        (eq,"$background_answer_27",cb27_armourer),
        (troop_raise_attribute, "trp_player",ca_charisma,1),
        (troop_raise_attribute, "trp_player",ca_intelligence,1), 
        (troop_raise_skill, "trp_player","skl_trade",2),
        (troop_raise_skill, "trp_player","skl_inventory_management",2),
        (troop_add_gold, "trp_player", 120),
        (troop_raise_proficiency, "trp_player",wpt_polearm,20),
    (try_end),

I thought the code was only called once. I believe it is only called the same as normal. Everything looks the same except I have 36 sections instead of 4. This bug seems to affect the strength and agility based skills more than the charisma and intelligence ones.

The player troop is this which is normal

["player","Player","Player",tf_hero|tf_unmoveable_in_party_window,no_scene,reserved,fac_player_faction,[],str_4|agi_4|int_4|cha_4,wp(0),0,0x000000018000000136db6db6db6db6db00000000001db6db0000000000000000],



I don't know whether it is related or not but we also have an issue where if you choose the 5th option in the second group of options then you get taken to the choose banner screen at the end (this is for all factions) even though there is nothing at the end of those choices to trigger that. At the end of the choose skills bit we have kept this

          (try_begin),
            (eq, "$background_type", cb_noble),
            (jump_to_menu, "mnu_auto_return"),
#normal_banner_begin
            (start_presentation, "prsnt_banner_selection"),
#custom_banner_begin
#            (start_presentation, "prsnt_custom_banner"),
          (else_try),
            (change_screen_return, 0),
          (try_end),
          (set_show_messages, 1),
        ]),
      ("go_back_dot",[],"Go back.",[
        (jump_to_menu,"mnu_start_character_4"),
        ]),
    ]
  ),

which is the same as in native. It suggests that the banner option should be presented to the player when they are assigned cb_noble and that is it. cb_noble is not even something that can be assigned to the player any more either. It is very strange.
 
Thank you so much somebody. Once again your expert advice comes through.

I had given each of the sets of answers the values 1-6 just like native but I did not consider that each menu section needed to be taken into consideration meaning I needed 4 sets of numbers and not 36.

All is fixed now.
 
Back
Top Bottom