Jump to content

Grape_You_In_The_Mouth

Members
  • Posts

    225
  • Joined

  • Last visited

Posts posted by Grape_You_In_The_Mouth

  1. - You don't have a thumb.png (I'm pretty sure it's required).  Take one from another mod and copy the file.

    - You have a red dot at the end of your code (on the right side, in the scrollbar) meaning at that location there is an error.  Probably an extra comma or not enough ] and } to close every [ and {.  The error should have a red squiggly underline under it, wherever it is in the code.

    - You don't have any enchantment code that I can see.  You have the item code but no enchantments attached to it.  I made a tutorial on item-making:

    Item-->ItemMod-->StatusEffect/Ability

    If you want to do it the easy way, just find the guid of a status effect you like that is also on a piece of armor and add that to the new ItemModGameData's

    StatusEffectsOnEquipIDs
  2. Here's some introductory basics that I just messaged to a guy:

    Instructions for Changing Pallegina's Wrath of the Five Suns

    -------------------------------------------------

    You too man you can change that easily by the way.  Just find 

    DebugName": "Wrath_of_the_Five_Suns

    In the abilities.gamedatabundle of the exported folder and change the 

    "PenetrationAdjustment": 0

    to 1 or w/e you want.

    If you want to just override the code, save it. If you want to make a mod, save that piece of code the same way everyone saves their code.  That piece of code starts from

    {
            "$type": "Game.GameData.GenericAbilityGameData, Assembly-CSharp",

    and ends with

                 "$type": "Game.GameData.ProgressionUnlockableComponent, Assembly-CSharp"
                 }
             ]
        }, <----remove this comma if that's the only piece of code you're using.  Comma is for multiple pieces in same lane.

    Every whole code file has to begin with (if it's a .gamedatabundle file)

    {
    "GameDataObjects": [

    and ends with

          ]
    }

    This is to cancel out the [ and ( that have already been written at the beginning of the code.

     

    Visual Studio Code is used to look at the code but NotePad++ is easier to install and can do it ok too.  But use Visual Studio Code so you catch mistakes.  You format the code to JSON format so you can read it easier.

  3. Wishing for :

    - Being able to decrement a stacked effect.  This would be incredibly game-opening. You could even make hacked formulas that way.

    - DynamicValue--->Stat--->Attribute (Dex, Con, etc.) would be amazing as well.  Bonuses based on self/enemy attributes could do so much!

    - True Duration Multiplier.  The only way to do this is +Intellect right now.

  4. Would you be able to make a Wwise project file or tutorial that would allow us to make a custom soundtrack, replacing the original?  I have a bunch of classical music that I'd prefer to play as each scene changes rather than just have a dumb playlist going.  Spending at least 10 hours learning Wwise doesn't seem worth it to me, because then it's probably another 10 hours to make sure my changes work---but maybe this would be easy for you to explain?  It would be awesomely appreciated.

     

    It's also cool that you figured out how to do this.  I think it could have a big long-term impact and people will do fun things with it like they did in BG2.

  5. I just released my Improved Ranger pack at https://www.nexusmods.com/pillarsofeternity2/mods/350 and you guys might be able to use it as a base for some other cool abilities.  There are 8 active abilities and 11 passive abilities, and I put on a focus on trying to change the gameplay as much as possible for a Ranger class.  Expanding how the hero uses Full Attack and moves across the battlefield are good examples.  Also because it's a Ranger, I created a lot of passives around the dynamics of giving and receiving attacks at a distance.  Unfortunately there were a couple good ideas that I couldn't get to work, but 19 abilities ain't bad at all, either.

     

    Cheers mates,

    • Like 1
  6. A pretty simple mod with big gameplay effects.  If you think I'm all wrong here I'd love to know why.  I also toned down the Brilliant inspiration--anyone know if that's unwarranted?  It seems crazy to me at a 6 second rate.

     

    https://www.nexusmods.com/pillarsofeternity2/mods/349/

     

    New Affliction/Inspiration
    ----------------------------
    Sickened    -5 Constitution, -25% Healing done
    Weakened    -7 Constitution, -50% Healing done
    Enfeebled    -10 Constitution, +50% Hostile Effect duration, -100% Healing done
    -------
    Fit        +5 Constitution
    Hardy        +10 Constitution, +2 Armor
    Robust        +15 Constitution, +2 Armor, regenerate Health periodically


    Hobbled        -5 Dexterity, Cannot run
    Immobilized    -10 Dexterity, Cannot move
    Paralyzed    -15 Dexterity, 25% Incoming Hits converted to Crits, Paralyzed, Cannot be interrupted
    Petrified    Same as Paralyzed, but with a different visual
    --------
    Quick        +5 Dexterity
    Nimble        +10 Dexterity, +100% Stride
    Swift        +15 Dexterity, +100% Stride, immune to Engagement


    Staggered    -5 Might, Cannot engage
    Dazed        -10 Might, Cannot engage, -4 Penetration
    Stunned        -10 Might, -4 Penetration, Stunned (Can't take actions), -10 Deflection
    --------
    Strong        +5 Might
    Tenacious    +10 Might, +2 Penetration
    Energized    +15 Might, +2 Penetration, interrupt enemies on Crit


    Confused    -5 Intellect, Abilities and attacks target both friend and foe
    Charmed        -5 Intellect, Controlled, Cannot cast abilities
    Dominated    -5 Intellect, Controlled, Alliance flipped
    ---------
    Smart        +5 Intellect
    Acute        +10 Intellect, +1 all Power Levels
    Brilliant    +15 Intellect, +1 All Power Levels, +1 of All Class Resources per >>12.0<< sec.

    Distracted    -5 Perception, Flanked
    Disoriented    -5 Perception, +50% Recovery Time, Flanked, +50% Initiative (only in Turn-based mode)
    Blinded        -5 Perception, +50% Recovery Time, Flanked, +50% Initiative (only in Turn-based mode), -10 Accuracy, -50% Attack range, Immune
    to Gaze attacks, Cannot use Gaze attacks
    ----------
    Insightful    +5 Perception
    Aware        +5 Perception, 50% Graze-to-Hit
    Intuitive    +5 Perception, 50% Graze-to-Hit, 25% Hit-to-Crit


    Shaken        -10 Resolve, -3 All Power Levels
    Frightened    -10 Resolve, -3 All Power Levels, Cannot use Hostile abilities
    Terrified    -10 Resolve, -3 All Power Levels, Can take no action other than to flee
    ---------
    Steadfast    +5 Resolve
    Resolute    +10 Resolve, gain Concentration periodically
    Courageous    +15 Resolve, immune to Interrupt

  7. I just added two of my skills successfully.  I don't think you gave me enough info.  Your debug name might be the same as your ability's, which will cause a conflict.  I think that's your problem actually...it looks like you're using the ability's name and ID at the top and the middle of the code here.  The top should be a new ID for this instance of BaseProgressionTableAppendData.  The top part of this code is a new thing starting something else, just like the top of the code for your ability in GenericAbilityGameData is the start of your ability.

    The short version of this format is:

    BaseProgressionTableAppendData

    "append_CorpseMaker"

    New ID

    ...............Class Table ID

    ......................................CorpseMaker ID

    .......................................................Prerequisites: Class ID

     

    Here's what mine looks like:

    {
        "GameDataObjects": [
            {
                "$type": "Game.GameData.BaseProgressionTableAppendGameData, Assembly-CSharp",
                "DebugName": "append_druid_improved_wavewake", <----I'm going to add WaveWake ability to the druid table
                "ID": "251a66a5-25e5-4bb8-b1d1-2c9bb2833501", <----new ID
                "Components": [
                    {
                        "$type": "Game.GameData.BaseProgressionTableAppendComponent, Assembly-CSharp",
                        "BaseTableID": "879d3662-bdf7-4585-99e4-0af2df117c50", <-----------Druid table
                        "AbilityUnlocks": [
                            {
                                "Note": "",
                                "Category": "General",
                                "UnlockStyle": "Unlock",
                                "ActivationObject": "Self",
                                "AddAbilityID": "a6422e6c-3e34-4c11-9a80-d614e3bc02a5", <-----WaveWake ability ID
                                "RemoveAbilityID": "00000000-0000-0000-0000-000000000000",
                                "Prerequisites": {
                                    "MinimumCharacterLevel": 3,
                                    "PowerLevelRequirement": {
                                        "ClassID": "568f1c26-1398-4e67-8b81-0f6a60e6cdde", <-----Druid class ID
                                        "MinimumPowerLevel": 3
                                    },
                                    "RequiresAbilityID": "00000000-0000-0000-0000-000000000000",
                                    "Conditional": {
                                        "Operator": 0,
                                        "Components": []
                                    },
                                    "VisibilityConditional": {
                                        "Operator": 0,
                                        "Components": []
                                    },
                                    "IsMutuallyExclusiveUpgrade": "true"
                                }
                            }
                        ]
                    }
                ]
            }
        ]
    }
  8. Hi gangsters,

    I was wondering if you could share any info you have about bouncing attacks.  If you were raised in the streets, you would know that when a Glock-9 is fired, those bullets bounce off of hard things, like metal.  I'm trying to make a Ranger essentially have that Glock-9.  There are some easy bad options and some interesting questions, when looking at the game data, and I will use this opportunity to discuss everything about multiple attacks and bounces and similar game abilities.

     

    ***Here's What I've Learned***

    MultiHit - If you make a FullAttack ability for a ranged attack, the IsMultiHit enables it to be a beam like the Heart Seeker skill

    ........Limitations: It's a beam in one attack.  Can't attenuate damage as it flies through opponents.

    Bounces via PowerLevelScaling in Abilities (BounceCountAdjustment)

    ........Doesn't seem to work.  Not used in the code at all.

    Bounces via the attack data

    ........Used for Minoletta's bounding missiles like below:

    "BounceData": {
    "Bounces": 2,
    "Multiplier": 1.2,
    "Range": 2,
    "InRangeOrder": "false",
    "NoRepeatTargets": "false",
    "AlwaysBounceAtEnemies": "true",
    "Delay": 0,
    "NeverBounce": "false"
    },

    ........Limitations: This must be a specific, created attack.  Can't inherit weapon damage.

    More Projectiles via PowerLevelScaling in Abilities (ProjectileCountAdjustment)

    ........Doesn't seem to work.  It's always 0. 

    Make a Custom Attack with Extra Attacks or Bounces

    ........Limitations: Can't inherit the damage from your weapon

    Make Extra Attacks via ProjectileCountMult and ExtraStraightBounces

    ........Limitations: ExtraStraightBounces is limited to only hitting directly behind the target.

    Make Extra Ranged Projectile Attacks via ProjectileCount (AttackRangedComponent) in Attacks

    ........This one is easy and it works great, but it's not the bouncing I want for my specific situation above.

    Extra Attacks via AttackOverrideValue "Primary" in StatusEffects

    ........Unfortunately, it probably doesn't work to make a StatusEffect AOE attack that then targets multiple people for a StatuseEffect that triggers a Primary attack on each person affected.  But this is worth trying.

     

    Why does scaling never change? 

    Probably because there is DefaultMultiProjectileScaling and other default scaling values in the Global game data.  Also, there is no definable scaling type other than "Default", as you can see here.

     

    What I Know I Don't Know

    - Why MultiHits are limitless for Heart Seeker but are limited for others

    - Why Storm of Seven Bolts has 4 bounces and 7 projectiles with no maximum number of hits but it seems to act completely differently in the game.  I don't see 4 bounces or limitless MaxHits.

     

    That's all I know.  If you know anything else or can think of any other examples that may be different, say it loud.

  9. I finished this skill a while back so here's my post-mortem:

    The stunned effect graphics show up but the rest is just the weird default green smoke when the attack hits.

     

    Also, if anyone is curious, another deficiency here is: This is a full attack and there is no projectile prefab defined.  This would be the big beam or if it was the Heart Seeker skill, it would be the green arrow streak.

    >>>WeaponAttackAbilityComponent
    ---FullAttack
    "ProjectilePrefab": ""

     

  10. Pro-Tip:

    If your ability is giving you a hard time and it's not even reacting to the ApplyStatusEffectOnEvent effects you made, well if you just need to clear the effect, then you can simply use the Trigger section.  Make it TriggerOnEvent for the event you want, then give it a max trigger of 1 and clear the effect when the trigger occurs.

     

    "TriggerOnEvent": "OnPostAttackRollCalculated"
    ...
    "ValidateWithAttackFilter": "true",
    ...
    "MaxTriggerCount": 1,
    ...
    "RemoveEffectAtMax": "true",

     

    The above is the only way I know to get my ranged attack bonus to remove after putting on a OneHitUse status effect.  The problem started when I couldn't use OneHitUse in combination with a FullAttack ability component.  Why?  Because I needed to slow the attack itself, which should work but does not.  I know, I know that there are many FullAttack abilities that use OneHitUse status effects without any issue.  I made a bow attack with a slow attack speed and let me tell you that there were problems in every possible way you could imagine.  Maybe it's because it's ranged, who knows.

     

    CDlZvlCUgAAHg6a.jpg

    • Like 1
×
×
  • Create New...