Bug fixes:
here're some other bugs I actually came up with fixes for if you haven't already yourself
1) New hybrid (pureblood) bonuses were not applying to starting servant or MC properly. The below fixes the MC, for the starting slave I just zero'd out the str_mod and other attributes in expansionsetup.gd func setRaceBonus() after the var declarations near the beginning:
[person.gd] func playercleartraits(): spec = null while !traits.empty(): trait_remove(traits.back()) for i in ['str_base','agi_base', 'maf_base', 'end_base']: stats[i] = 0 for i in ['str_mod','agi_mod','maf_mod','end_mod']: stats[i] = 0 skillpoints = 2 level = 1 xp = 0 [mainmenu.gd] #Connect virgin option get_node("TextureFrame/newgame/stage6/virgin").connect("pressed", self, '_virgin_press') #Initialize newgame variables player = globals.newslave(playerDefaults.race, playerDefaults.age, playerDefaults.sex, playerDefaults.origins) #Prefer to use a constructor/builder #ralph #player.cleartraits() player.playercleartraits() #/ralph ... if stage >= 6: #If backtracking after reaching player specialization stage var spec = player.spec #ralph #player.cleartraits() player.playercleartraits() #/ralph ... func regenerateplayer(): var imageportait = player.imageportait player = globals.newslave(player.race, player.age, player.sex, 'slave') globals.player = player #ralph #player.cleartraits() player.playercleartraits() #/ralph
2) Nereid was missing and Dragonkin was duplicated (fixed below)
[constructor.gd] func set_baby_type(person): if person.race == 'Dragonkin' || person.race == 'Nereid' || person.race == 'Lamia' || person.race == 'Harpy' || person.race == 'Arachna' || person.race == 'Scylla':
3) changed order so correct race bonuses are subtracted before slime race bonuses are added later in the if statement
[globals.gd] if rand_range(0,100) + conversionstrength > strongestgenes: expansionsetup.setRaceBonus(baby, false) baby.race = 'Slime' baby.race_type == 4