somebody_else24 Posted December 24, 2024 Posted December 24, 2024 @yorname Very helpful info! Really appreciate the detailed answer. So you think Ancient is definitely the way to go over say shifter or fury, even with late game summons not necessarily being worth it versus spells like great maelstrom? A follow-up question then, you say Priest is slightly more essential for a party, but both Xoti and Tekehu are good as single class Priest and Druid respectively, and I would probably use one or the other or both from time to time - which class fits in better with more parties and is ok to maybe overlap? I guess I should mention I like flexibility but I probably do lean toward wanting to do damage. Again, appreciate your input.
yorname Posted December 24, 2024 Posted December 24, 2024 (edited) 1 hour ago, somebody_else24 said: @yorname Very helpful info! Really appreciate the detailed answer. So you think Ancient is definitely the way to go over say shifter or fury, even with late game summons not necessarily being worth it versus spells like great maelstrom? A follow-up question then, you say Priest is slightly more essential for a party, but both Xoti and Tekehu are good as single class Priest and Druid respectively, and I would probably use one or the other or both from time to time - which class fits in better with more parties and is ok to maybe overlap? I guess I should mention I like flexibility but I probably do lean toward wanting to do damage. Again, appreciate your input. The only downside of Ancient is needing a lot of ability points. We don't really need both stag and aspect. I personally would use Xoti as multiclass priest, because her symbol is also fire damage (you always get Storm of Holy Fire), and her extra spells are not great. Tekehu is unique however you play him, but imo SC druid is not as interesting as the other 2 choices. Other than unique summons, the only extra spell that matters for him is Chill Fog, which multiclass watershaper can get. He also has low PER and can't use head gear, so his accuracy will be much lower than a customized druid. Overall I think the offensive potential of a SC druid is kind of wasted on him. For casters, an optimized character with high MIG, PER and INT is very different from companions, so even if you use them as SC priest/druid, a customized priest or druid is still worth playing. I really think you can play as either. But if you want to do good damage from the start, then definitely go with druid. Priest will have to be a buffbot for a long time. Before tier-7 most of their offensive spells can't compete with buffing spells. Edited December 24, 2024 by yorname
somebody_else24 Posted December 24, 2024 Posted December 24, 2024 7 hours ago, yorname said: The only downside of Ancient is needing a lot of ability points. We don't really need both stag and aspect. I personally would use Xoti as multiclass priest, because her symbol is also fire damage (you always get Storm of Holy Fire), and her extra spells are not great. Tekehu is unique however you play him, but imo SC druid is not as interesting as the other 2 choices. Other than unique summons, the only extra spell that matters for him is Chill Fog, which multiclass watershaper can get. He also has low PER and can't use head gear, so his accuracy will be much lower than a customized druid. Overall I think the offensive potential of a SC druid is kind of wasted on him. For casters, an optimized character with high MIG, PER and INT is very different from companions, so even if you use them as SC priest/druid, a customized priest or druid is still worth playing. I really think you can play as either. But if you want to do good damage from the start, then definitely go with druid. Priest will have to be a buffbot for a long time. Before tier-7 most of their offensive spells can't compete with buffing spells. Thank you again. I guess while I have you here and you have insights on how the game works with BPM I'll ask another question or two. If I'm asking too much or my questions are annoying obviously feel free to ignore me, haha! So, while I'm leaning druid I guess I'm also curious about Chanter, maybe cipher and monk (though I've played it before without BPM). I'd like to do a rather full playthrough of the game without too much other modding, using only story companions and sidekicks. Among those classes I've mentioned what would you think fits in best in a party that I will probably be relatively often changing in and out with the different story companions and sidekicks (to get their full stories and dialogue etc.)? I imagine that's probably somewhat difficult to answer and has a lot do to preference, but I'm just curious. I generally lean towards wanting to go single-class with whatever I pick. Is sc chanter or cipher engaging enough to bother with?
yorname Posted December 24, 2024 Posted December 24, 2024 @somebody_else24 TBH, it's really hard to tell, because for every class there's at least one subclass that's worth a whole playthrough, that you can't get the experience from companions and sidekicks, not even close. For chanter or monk, because their subclasses are all unique and somewhat viable, I can't even think of recommendations. For example, as a monk you can go with Nalpazca to get extra wounds and make bosses stay in the sky forever, or be an unkillable Forbidden Fist that steadily punches people to death one by one. Neither of that can be done with Xoti's subclass. For cipher, I think Ascendant really stands out as single class, because of their ability to end non-boss fights in seconds. Other subclasses are more or less similar to the base class experience, and imo the exception, Psion is more interesting as multiclass. Because the subclasses are really unique in this game (unlike DND games where each character can only do one or two things, and subclasses are just re-combinations of a few traits), the answer is always "take your time and try them all". Even more so with BPM because less subclasses are game-breakingly better than others.
somebody_else24 Posted December 24, 2024 Posted December 24, 2024 13 minutes ago, yorname said: @somebody_else24 TBH, it's really hard to tell, because for every class there's at least one subclass that's worth a whole playthrough, that you can't get the experience from companions and sidekicks, not even close. For chanter or monk, because their subclasses are all unique and somewhat viable, I can't even think of recommendations. For example, as a monk you can go with Nalpazca to get extra wounds and make bosses stay in the sky forever, or be an unkillable Forbidden Fist that steadily punches people to death one by one. Neither of that can be done with Xoti's subclass. For cipher, I think Ascendant really stands out as single class, because of their ability to end non-boss fights in seconds. Other subclasses are more or less similar to the base class experience, and imo the exception, Psion is more interesting as multiclass. Because the subclasses are really unique in this game (unlike DND games where each character can only do one or two things, and subclasses are just re-combinations of a few traits), the answer is always "take your time and try them all". Even more so with BPM because less subclasses are game-breakingly better than others. Fair enough. I don't have a tonne of time to try all of them any time soon. What about chanters do you think they're engaging and fun as single class or better as multi? Anyways. Thanks for the info! Â
yorname Posted December 24, 2024 Posted December 24, 2024 19 minutes ago, somebody_else24 said: Fair enough. I don't have a tonne of time to try all of them any time soon. What about chanters do you think they're engaging and fun as single class or better as multi? Anyways. Thanks for the info! Â I think multi. BPM buffed high tier chants and summons, but single class chanter feels kind of empty for me, you cast a big spell, then just auto attack and provide chants to the party, wait for half a minute. They're not weak, just not the most fun style for my taste. I think there's no need to worry too much about class choice even if you only have time to play it once in a long while, there might be a line of "I shouldn't pick this if I want a character to do XYZ", but that line is pretty low and you can't really go wrong with any choices.
Grape_You_In_The_Mouth Posted yesterday at 01:04 PM Posted yesterday at 01:04 PM (edited) I just fixed Wounding Shot to allow stacking for dual-wielding hits and thought you may want the code. They didn't want to figure out how to avoid an infinite damage loop so they had to cancel any further applications of Wounding Shot after the first damage. Giving the first effect "Source": "Weapon" takes care of that but with stacking damage over time effects, you run into another infinite damage loop when you mix "ApplicationBehavior": "StackIfAlreadyApplied"and "ApplicationType": "ApplyOnTick" because the initial "deal damage on damage" effect is still active for the quick second it starts. Instead I used WillApplyStatusEffectWithParentValueOnEvent to carry the dynamic damage value but apply it with "EventValue": "OnInterval" which uses the tick rate. You'll have to change that duration to "UseDurationUnadjusted" to fit your preferences, and you'll want to clean up the bleed keywords I added but those won't do anything if they stay in there and are unrecognized GUIDs.  { "GameDataObjects": [ { "$type": "Game.GameData.StatusEffectGameData, Assembly-CSharp", "DebugName": "Wounding_Shot_SE_ApplyByDamageDealt", "ID": "cd3aeb00-0c84-46a1-bc73-0ed387f58a96", "Components": [ { "$type": "Game.GameData.StatusEffectComponent, Assembly-CSharp", "StatusEffectType": "ApplyStatusEffectToEnemyByDamageDealt", "OverrideDescriptionString": -1, "OverrideDescriptionStringTactical": -1, "UseStatusEffectValueAs": "None", "BaseValue": 0.1, "DynamicValue": { "Stat": "None", "SkillDataID": "00000000-0000-0000-0000-000000000000", "ClassID": "00000000-0000-0000-0000-000000000000", "MultiplyBy": 1, "Operator": "Add" }, "KeywordsIDs": [ "b1eed000-64f6-426b-b4c2-773621c8b949", "b1eed333-64f6-426b-b4c2-773621c8b949" ], "DurationType": "UseDurationTimeUnadjusted", "Duration": 1, "MaxStackQuantity": 0, "ApplicationBehavior": "UseLongerDurationIfAlreadyApplied", "ApplicationType": "ApplyOnStart", "IntervalRateID": "00000000-0000-0000-0000-000000000000", "StackedChildrenApplyEffects": "false", "InclusionConditions": { "Operator": 0, "Components": [] }, "ApplicationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "TriggerAdjustment": { "TriggerOnEvent": "None", "TriggerOffEvent": "None", "ValidateWithAttackFilter": "false", "ParamValue": 0, "ValueAdjustment": 0, "DurationAdjustment": 0, "ResetTriggerOnEffectTimeout": "false", "MaxTriggerCount": 0, "IgnoreMaxTriggerCount": "false", "RemoveEffectAtMax": "false", "ChanceToTrigger": 1 }, "PowerLevelScaling": { "UseCharacterLevel": "false", "BaseLevel": 0, "LevelIncrement": 1, "MaxLevel": 0, "ValueAdjustment": 0, "DurationAdjustment": 0 }, "IsHostile": "false", "ClearOnCombatEnd": "false", "ClearOnRest": "false", "ClearOnFoodRest": "false", "ClearWhenAttacks": "false", "ClearOnDeath": "false", "HideFromCombatTooltip": "true", "HideFromCombatLog": "false", "HideFromUI": "false", "HideIfNoValue": "false", "VisualEffects": [], "MaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Range": "None", "ClassTypeID": "00000000-0000-0000-0000-000000000000", "Source": "Weapon", "DefendedBy": "None", "Empowered": "false", "Disengagement": "false", "Stealthed": "false", "UseStealthLinger": "false", "PowerLevel": 0, "PowerLevelOperator": "EqualTo", "ChanceToApply": 1, "AttackHostility": "Default", "TargetType": "None" }, "AttackTargetFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Distance": 0, "DistanceOperator": "EqualTo", "HasDOT": "false", "IsMarked": "false", "TargetHostility": "Default" }, "ExtraValue": 0, "OverridePenetration": 0, "DamageTypeValue": "All", "KeywordValueID": "00000000-0000-0000-0000-000000000000", "RaceValue": "None", "StatusEffectTypeValue": "None", "ItemValueID": "00000000-0000-0000-0000-000000000000", "AfflictionTypeValueID": "00000000-0000-0000-0000-000000000000", "StatusEffectsValueIDs": [ "e0cf27ed-6502-4e71-89e7-4656bc076dc8" ], "AttackValueID": "00000000-0000-0000-0000-000000000000", "AttackOverrideValue": "None", "EventValue": "OnApply", "ClassValueID": "00000000-0000-0000-0000-000000000000", "WeaponTypeValue": "None", "AttackHitType": "None", "SkillValueID": "00000000-0000-0000-0000-000000000000", "AudioEventListID": "00000000-0000-0000-0000-000000000000", "BedRestDaysMinimum": 0, "BedRestDaysMaximum": 0 } ] }, { "$type": "Game.GameData.StatusEffectGameData, Assembly-CSharp", "DebugName": "Wounding_Shot_SE_WillApplyRawDamage", "ID": "e0cf27ed-6502-4e71-89e7-4656bc076dc8", "Components": [ { "$type": "Game.GameData.StatusEffectComponent, Assembly-CSharp", "StatusEffectType": "WillApplyStatusEffectWithParentValueOnEvent", "OverrideDescriptionString": 114, "OverrideDescriptionStringTactical": -1, "UseStatusEffectValueAs": "None", "BaseValue": 0, "DynamicValue": { "Stat": "None", "SkillDataID": "00000000-0000-0000-0000-000000000000", "ClassID": "00000000-0000-0000-0000-000000000000", "MultiplyBy": 1, "Operator": "Add" }, "KeywordsIDs": [ "b1eed000-64f6-426b-b4c2-773621c8b949", "b1eed333-64f6-426b-b4c2-773621c8b949" ], "DurationType": "UseDurationTime", "Duration": 9, "MaxStackQuantity": 0, "ApplicationBehavior": "StackIfAlreadyApplied", "ApplicationType": "ApplyOnStart", "IntervalRateID": "25acc41f-26a4-4ef7-9b7d-0f1bf0ddfe9f", "StackedChildrenApplyEffects": "false", "InclusionConditions": { "Operator": 0, "Components": [] }, "ApplicationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "TriggerAdjustment": { "TriggerOnEvent": "None", "TriggerOffEvent": "None", "ValidateWithAttackFilter": "false", "ParamValue": 0, "ValueAdjustment": 0, "DurationAdjustment": 0, "ResetTriggerOnEffectTimeout": "false", "MaxTriggerCount": 0, "IgnoreMaxTriggerCount": "false", "RemoveEffectAtMax": "false", "ChanceToTrigger": 1 }, "PowerLevelScaling": { "UseCharacterLevel": "false", "BaseLevel": 0, "LevelIncrement": 1, "MaxLevel": 0, "ValueAdjustment": 0, "DurationAdjustment": 0 }, "IsHostile": "true", "ClearOnCombatEnd": "false", "ClearOnRest": "false", "ClearOnFoodRest": "false", "ClearWhenAttacks": "false", "ClearOnDeath": "false", "HideFromCombatTooltip": "false", "HideFromCombatLog": "false", "HideFromUI": "false", "HideIfNoValue": "false", "VisualEffects": [], "MaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Range": "None", "ClassTypeID": "00000000-0000-0000-0000-000000000000", "Source": "None", "DefendedBy": "None", "Empowered": "false", "Disengagement": "false", "Stealthed": "false", "UseStealthLinger": "false", "PowerLevel": 0, "PowerLevelOperator": "EqualTo", "ChanceToApply": 1, "AttackHostility": "Default", "TargetType": "None" }, "AttackTargetFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Distance": 0, "DistanceOperator": "EqualTo", "HasDOT": "false", "IsMarked": "false", "TargetHostility": "Default" }, "ExtraValue": 0.1, "OverridePenetration": 0, "DamageTypeValue": "Raw", "KeywordValueID": "00000000-0000-0000-0000-000000000000", "RaceValue": "None", "StatusEffectTypeValue": "None", "ItemValueID": "00000000-0000-0000-0000-000000000000", "AfflictionTypeValueID": "00000000-0000-0000-0000-000000000000", "StatusEffectsValueIDs": [ "2abf3fae-21ea-4ce5-b83f-ccee8cdc4412" ], "AttackValueID": "00000000-0000-0000-0000-000000000000", "AttackOverrideValue": "None", "EventValue": "OnInterval", "ClassValueID": "00000000-0000-0000-0000-000000000000", "WeaponTypeValue": "None", "AttackHitType": "None", "SkillValueID": "00000000-0000-0000-0000-000000000000", "AudioEventListID": "00000000-0000-0000-0000-000000000000", "BedRestDaysMinimum": 0, "BedRestDaysMaximum": 0 } ] }, { "$type": "Game.GameData.StatusEffectGameData, Assembly-CSharp", "DebugName": "Wounding_Shot_SE_RawDamage", "ID": "2abf3fae-21ea-4ce5-b83f-ccee8cdc4412", "Components": [ { "$type": "Game.GameData.StatusEffectComponent, Assembly-CSharp", "StatusEffectType": "Damage", "OverrideDescriptionString": -1, "OverrideDescriptionStringTactical": -1, "UseStatusEffectValueAs": "None", "BaseValue": 0, "DynamicValue": { "Stat": "None", "SkillDataID": "00000000-0000-0000-0000-000000000000", "ClassID": "00000000-0000-0000-0000-000000000000", "MultiplyBy": 1, "Operator": "Add" }, "KeywordsIDs": [ "b1eed000-64f6-426b-b4c2-773621c8b949", "b1eed333-64f6-426b-b4c2-773621c8b949" ], "DurationType": "Instant", "Duration": 0, "MaxStackQuantity": 0, "ApplicationBehavior": "UseLongerDurationIfAlreadyApplied", "ApplicationType": "ApplyOnStart", "IntervalRateID": "00000000-0000-0000-0000-000000000000", "StackedChildrenApplyEffects": "false", "InclusionConditions": { "Operator": 0, "Components": [] }, "ApplicationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "TriggerAdjustment": { "TriggerOnEvent": "None", "TriggerOffEvent": "None", "ValidateWithAttackFilter": "false", "ParamValue": 0, "ValueAdjustment": 0, "DurationAdjustment": 0, "ResetTriggerOnEffectTimeout": "false", "MaxTriggerCount": 0, "IgnoreMaxTriggerCount": "false", "RemoveEffectAtMax": "false", "ChanceToTrigger": 1 }, "PowerLevelScaling": { "UseCharacterLevel": "false", "BaseLevel": 0, "LevelIncrement": 1, "MaxLevel": 0, "ValueAdjustment": 0, "DurationAdjustment": 0 }, "IsHostile": "true", "ClearOnCombatEnd": "false", "ClearOnRest": "false", "ClearOnFoodRest": "false", "ClearWhenAttacks": "false", "ClearOnDeath": "false", "HideFromCombatTooltip": "false", "HideFromCombatLog": "false", "HideFromUI": "false", "HideIfNoValue": "false", "VisualEffects": [], "MaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Range": "None", "ClassTypeID": "00000000-0000-0000-0000-000000000000", "Source": "None", "DefendedBy": "None", "Empowered": "false", "Disengagement": "false", "Stealthed": "false", "UseStealthLinger": "false", "PowerLevel": 0, "PowerLevelOperator": "EqualTo", "ChanceToApply": 1, "AttackHostility": "Default", "TargetType": "None" }, "AttackTargetFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Distance": 0, "DistanceOperator": "EqualTo", "HasDOT": "false", "IsMarked": "false", "TargetHostility": "Default" }, "ExtraValue": 0, "OverridePenetration": 0, "DamageTypeValue": "Raw", "KeywordValueID": "00000000-0000-0000-0000-000000000000", "RaceValue": "None", "StatusEffectTypeValue": "None", "ItemValueID": "00000000-0000-0000-0000-000000000000", "AfflictionTypeValueID": "00000000-0000-0000-0000-000000000000", "StatusEffectsValueIDs": [], "AttackValueID": "00000000-0000-0000-0000-000000000000", "AttackOverrideValue": "None", "EventValue": "OnApply", "ClassValueID": "00000000-0000-0000-0000-000000000000", "WeaponTypeValue": "None", "AttackHitType": "None", "SkillValueID": "00000000-0000-0000-0000-000000000000", "AudioEventListID": "00000000-0000-0000-0000-000000000000", "BedRestDaysMinimum": 0, "BedRestDaysMaximum": 0 } ] } Edited 17 hours ago by Grape_You_In_The_Mouth 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now