Jump to content
View in the app

A better way to browse. Learn more.

Obsidian Forum Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Hello! I'm working on my first ever mod for Deadfire, something I've always aspired to do.
It's going great. I followed tutorials here on the forums (all very helpful!), but I've hit a snag. The abilities that I created, like a Druid version of Mark Prey, and added to the PT_Druid table don't work while the druid is spiritshifted.

Any advice would be greatly appreciated. I've seen other mods like Dragonblood and Druid Evolution add new abilities shapeshifted players can cast, but after combing the code I don't see anything that explains the differences.

P.S. Druid spells, and other core game class spells all work while the player is spiritshifted. I added a druid spell under a different name and GUID, and that seems to work. I'm pretty baffled.

Here's the ability's code.

Spoiler
{
            "$type""Game.GameData.GenericAbilityGameData, Assembly-CSharp",
            "DebugName""Spider_Marked_Prey",
            "ID""c1a15dac-f884-11eb-9a03-0242ac130003",
            "Components": [
                {
                    "$type""Game.GameData.GenericAbilityComponent, Assembly-CSharp",
                    "KeywordsIDs": [],
                    "DisplayName"49,
                    "Description"908,
                    "DescriptionTactical"-1,
                    "UpgradeDescriptions": [],
                    "UpgradedFromID""00000000-0000-0000-0000-000000000000",
                    "Vocalization""NoVocalization",
                    "Icon""gui/icons/abilities/ranger/marked_prey.png",
                    "UsageType""Spell",
                    "UsageValue"1,
                    "AbilityClassID""568f1c26-1398-4e67-8b81-0f6a60e6cdde",
                    "AbilityLevel"1,
                    "IsPassive""false",
                    "StackingRuleOverride""Default",
                    "TriggerOnHit""false",
                    "IsModal""false",
                    "ModalGroupID""00000000-0000-0000-0000-000000000000",
                    "IsCombatOnly""false",
                    "IsNonCombatOnly""false",
                    "HideFromUI""false",
                    "ShowStatusEffects""false",
                    "HideFromCombatLog""false",
                    "UniqueSet""None",
                    "NoiseLevelID""15743f94-1026-40b0-8e13-a667b3f66f63",
                    "DurationOverride"0,
                    "OverrideEmpower""CannotEmpower",
                    "ClearsOnMovement""false",
                    "CannotActivateWhileInStealth""false",
                    "CannotActivateWhileInvisible""false",
                    "ActivationPrerequisites": {
                        "Conditional": {
                            "Operator"0,
                            "Components": []
                        }
                    },
                    "ApplicationPrerequisites": {
                        "Conditional": {
                            "Operator"0,
                            "Components": []
                        }
                    },
                    "DeactivationPrerequisites": {
                        "Conditional": {
                            "Operator"0,
                            "Components": []
                        }
                    },
                    "PowerLevelScaling": {
                        "ScalingType""Default",
                        "BaseLevel"0,
                        "LevelIncrement"1,
                        "MaxLevel"0,
                        "DamageAdjustment"1,
                        "DurationAdjustment"1,
                        "BounceCountAdjustment"0,
                        "ProjectileCountAdjustment"0,
                        "AccuracyAdjustment"0,
                        "PenetrationAdjustment"0
                    },
                    "StatusEffectKeywordsIDs": [],
                    "StatusEffectsIDs": [],
                    "RandomizeStatusEffect""false",
                    "VisualEffects": [],
                    "SelfMaterialReplacementID""00000000-0000-0000-0000-000000000000",
                    "AttackID""8113b005-43bf-4eca-b662-08835ca3fa11",
                    "AITargetingConditional": {
                        "Conditional": {
                            "Operator"0,
                            "Components": []
                        },
                        "Scripts": []
                    },
                    "AudioEventListID""592d1e7d-6f0a-453e-9b18-3502d8ac0c65",
                    "GrantedViaScript""false"
                },
                {
                    "$type""Game.GameData.ProgressionUnlockableComponent, Assembly-CSharp"
                }
            ]
        }

And here's the code for the progression table.

Spoiler
{
                            "Note""PL 1 Unlock - Spider Marked Prey",
                            "Category""General",
                            "UnlockStyle""AutoGrant",
                            "ActivationObject""Self",
                            "AddAbilityID""c1a15dac-f884-11eb-9a03-0242ac130003",
                            "RemoveAbilityID""00000000-0000-0000-0000-000000000000",
                            "Prerequisites": {
                                "MinimumCharacterLevel"1,
                                "PowerLevelRequirement": {
                                    "ClassID""568f1c26-1398-4e67-8b81-0f6a60e6cdde",
                                    "MinimumPowerLevel"1
                                },
                                "RequiresAbilityID""00000000-0000-0000-0000-000000000000",
                                "Conditional": {
                                    "Operator"0,
                                    "Components": [
                                        {
                                            "$type""OEIFormats.FlowCharts.ConditionalCall, OEIFormats",
                                            "Data": {
                                                "FullName""Boolean ProgressionTableIsSubclass(Guid)",
                                                "Parameters": [
                                                    "563cb7d0-f7e6-11eb-9a03-0242ac130003"
                                                ],
                                                "Flags""",
                                                "UnrealCall""",
                                                "FunctionHash"0,
                                                "ParameterHash"0
                                            },
                                            "Not"false,
                                            "Operator"0
                                        }
                                    ]
                                },
                                "VisibilityConditional": {
                                    "Operator"0,
                                    "Components": [
                                        {
                                            "$type""OEIFormats.FlowCharts.ConditionalCall, OEIFormats",
                                            "Data": {
                                                "FullName""Boolean ProgressionTableIsSubclass(Guid)",
                                                "Parameters": [
                                                    "563cb7d0-f7e6-11eb-9a03-0242ac130003"
                                                ],
                                                "Flags""",
                                                "UnrealCall""",
                                                "FunctionHash"0,
                                                "ParameterHash"0
                                            },
                                            "Not"false,
                                            "Operator"0
                                        }
                                    ]
                                },
                                "IsMutuallyExclusiveUpgrade""true"
                            }
                        }


 

Edited by Socratespanda

Create an account or sign in to comment

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.