-
Posts
495 -
Joined
-
Last visited
-
Days Won
2
Content Type
Profiles
Forums
Blogs
Everything posted by Noqn
-
I feel like I've gotten as far as I can without consulting you guys for the next step in regards to design. Starting Point I honetly LOVE that it was possible to spawn (and trap ) the player in the area from the get-go. Unless you guys disagree I'd like to keep it like this. However, there's still the question of exactly which point in the quest it's best to start the campaign... As if the player just entered the Temple of Toamowhai for the first time. (Forcing the Tyrant of Decay fight.) As if the player just completed the Tyrant of Decay fight, starting the conversation with the apologizing guard. (2), but skipping the conversation with the apologizing guard. The first thing you would do is talk with Humaire. Spawn the player as though they've defeated the Tyrant of Decay and had the introduction dialogue with Humaire. I think 1 would feel the best from a story perspective... the remaining dialogue in 2-3 would miss some context, or feel weird as an introduction dialogue (with 2 being by far the most akward I believe). However, in 1 you'd have to face a hard fight before having a chance to recruit adventurers (or recruiting them through not-very-seamless scripting). 4. Brings you imediately to being able to start the encounters, but might feel akward regarding dialogue/quests? Starting Level & Experience gain I agree with @Elric Galad here: Another argument in favor of this is that SSS quests are Lv16 to begin with Though I can see a case for starting level of 19-20. Equipment / Money What gear goes to merchants, what is given to the player by default, what goes as rewards? Also, how much starting money - enough to get the build going but not maxed out? A couple 100k? Soulbounds Some conditionals for non-SSS Soulbounds cannot be fulfilled, such as sailing into a thunderstorm with Lord Darryn's Voulge. We could either... Skip the impossible conditionals. Set all non-SSS Soulbounds to max level when they're collected. ____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ I think there are two ways we can go with this mod in general. Either we treat this as a real campaign, in the sense that you gradually gain levels and better equipment... or we let the player start with max level, gear, etc and just let them go wild. Two suggestions based on this: Start at Lv16, starting gear is one of each Armor & Weapon type of Superior quality (all uniques are sold by merchants/encounter rewards), Soulbounds will auto-unlock only impossible upgrades. Start at Lv20, with all (non-SSS) unique items, (non-SSS) Soulbounds will auto-unlock all stages. What are your feelings on this, everyone? @Elric Galad@house2fly@Kvellen@Hoo Btw, should I make a thread for taking feedback in the general/strategy forums as well? I have a hunch people over there might be interested as well.
-
All Grater Lay on Hands variants shared Greater_Lay_On_Hands_SE_Robust so it was enought to edit that, but Hands of Light all had their own variation of Hands_of_Light_SE_Courageous so I had to edit all of them. Oh ****, I didn't know about that parameter. I got curious and looked at the decompiled source code and it seems that it causes the upgrade to use its base ability's PL in combat calculations, which is incredibly useful! In that case it might be best to remove the "AbilityLevel: 1" lines from abilities.gamedatabundle and utilize UpgradedFromID instead...
-
Honestly I can relate so much, Deadfire modding is rough getting into... Ooh I didn't realize that, perceptive. I think I know the reason why... Basically, the Greater Lay on Hands/Hands of Light "unlockables" that you see in the tree are still the same as vanilla and won't actually replace Lay on Hands... but when you pick them, a corresponding hidden unlockable (which I added with BaseProgressionTableAppendGameData) will now have its conditional fulfilled and be auto-granted to the character. This unlockable doesn't add any new abilities, instead it removes the Lay on Hands variant the upgrade relates to. This way I didn't have to edit the Paladin Table directly, which is much preferable for compatability reasons among other things The downside of using BaseProgressionTableAppend is that you can't edit the unlockables already present by the original Table, but in this case it worked out!
-
If you delete the "Blood_Sacrifice_SE_NoHealing" object, its ID "74c5cfc3-31f3-4e9d-a158-1faa8879eb87" would still be referenced by the StatusEffectsIDs array in "Blood_Sacrifice". You want to remove that reference. (You could even keep the "Blood_Sacrifice_SE_NoHealing" object afterwards, since it would no long be referenced by anything.) Change this part in Blood_Sacrifice from... "StatusEffectsIDs": ["ff9d484e-abc4-4b18-88f9-49efbb654a9f","74c5cfc3-31f3-4e9d-a158-1faa8879eb87"] To... "StatusEffectsIDs": ["ff9d484e-abc4-4b18-88f9-49efbb654a9f"]
-
This should cover everything! Download: Lay on Hands Tweak.zip Picking Upgrades will remove Lay on Hands Upgrades set to PL 1 Upgrades cost 1 Zeal Upgrades now grant Tier 2 Insiprations instead of Tier 3 (with updated english descriptions) Covers all variations (Darcozzi/Shieldbearer) Implemented with BaseProgressionTableAppendGameData, so will not conflict with other mods' edits to progression tables!
-
Some observations/thoughts: It is actually not possible to enter the Rebūtara Pass from behind, so you are effectively stranded on the island for the playthrough! (imo a feature, not a bug!) Opening the Legacy History menu cannot be done in the same sequence of scripts as character creation, one will take precedence. Maybe this can be set with the "script-coin" as well? Currently you have to fight the Tyrant of Decay straight away. Before having access to stores/hirelings. This is a bit brutal to fight solo so I'm thinking one of two options: Instead of initializing the quest to where it is atm, push it all the way to stage "Speak with Humaire", thus skipping Tyrant of Decay. Add new script-coins that instead fire the OpenCharacterCreationNewCompanion script. Maybe the initial coin could also spawn a "hireling menu"-coin in the weapon rack after picked up, which in turn would spawn another "hireling menu"-coin, and so on. This way you'd get up to a whole party for the fight. But it does not sound very seamless, tbh.
-
Bump! Turns out you can actually set which specific scene to play when starting a new game Secondly, I made a script hook for triggering the necessary stuff: Conditionals IsInScene Player AR_LAX01_0002_Arena_Lobby IsGlobalValue b_Character_Creation_Complete EqualTo 0 ('b_Character_Creation_Complete' is ordinarily set to 1 in the prologue, now we know that this is not a vanilla playthrough!) Scripts GiveItemsToObject [weapon rack] s_ItemTrigger_S4_Armoire GiveItems LAX01_Trinket_Muatus_Head 1 CallGlobalScript s4_QuestInitialization OpenCharacterCreation s4_QuestInitialization is basically a global script that sets up the necessary quest variables so that the SSS quest chain can proceed correctly, and is also required for the arena guard cutscene to actually trigger... StartQuest [The Proving] SetGlobalValue LAX1_n_talked_to_steward 2 SetGlobalValue LAX1_n_Main_Quest_01_Stage 1 SetGlobalValue LAX1_n_Main_Quest_01_Stage 2 ActivateObject [The lever that opens the door] 1 s_ItemTrigger_S4_Armoire is an item masquerading as a simple coin, except it triggers a script when it is picked up! (It also disposes of itself instantly since it has "IsCurrency: True") Currently though it only triggers a global script which I've set to increase the Player level to 16. This has to be done separately from the scripthook which triggers Character Creation, since finalizing a new character annoyingly sets the Lv to 1 and Experience to 0... The whole "coin in a weapon rack" is the the smoothest solution I've got so far...
-
Adding new enemies to existing encounters is fairly quick and painless, at least random encounters. Within worldmap.gamedatabundle, look for WorldMapEncounterGameData -> WorldMapEncounterComponent -> CreatureSpawns Here I have edited the Rock-Stoper Rodul encounter so that he has no crewmates, by removing all other entries in the CreatureSpawns array { "GameDataObjects": [ { "$type": "Game.GameData.WorldMapEncounterGameData, Assembly-CSharp", "DebugName": "RE_SD_Rodul", "ID": "f4049eab-742e-4df5-845b-d262ece1502b", "Components": [ { "$type": "Game.GameData.WorldMapEncounterComponent, Assembly-CSharp", "CreatureSpawns": [ { "SpawnPrefab": "prefabs/characters/poe2_npcs/random_encounters/vtc_encounters/npc_re_captain_rodul.prefab", "SpawnType": "Boss", "AppearsInDifficulty": "15", "EmergeIndex": 0, "AlternateSpawnPrefab": "", "CrewKilled": 0 } ] } ] } ] } Here, I additionally added Hauani O Whe: { "GameDataObjects": [ { "$type": "Game.GameData.WorldMapEncounterGameData, Assembly-CSharp", "DebugName": "RE_SD_Rodul", "ID": "f4049eab-742e-4df5-845b-d262ece1502b", "Components": [ { "$type": "Game.GameData.WorldMapEncounterComponent, Assembly-CSharp", "CreatureSpawns": [ { "SpawnPrefab": "prefabs/characters/poe2_npcs/random_encounters/vtc_encounters/npc_re_captain_rodul.prefab", "SpawnType": "Boss", "AppearsInDifficulty": "15", "EmergeIndex": 0, "AlternateSpawnPrefab": "", "CrewKilled": 0 }, { "SpawnPrefab": "prefabs/characters/poe2_creatures/cre_ooze_black_mountainous.prefab", "SpawnType": "Any", "AppearsInDifficulty": "15", "EmergeIndex": 0, "AlternateSpawnPrefab": "", "CrewKilled": 1 } ] } ] } ] }
-
Agh, noticed one thing. Strengthened Bond (but not Defensive Bond) seems to already apply correctly to NPCs in vanilla (it only checks for Defensive Bond & Character LV). We could add only Defensive_Bond_Pet without its Strengthened_Bond_Pet counterpart, but then Defensive_Bond_Pet wouldn't be removed by the vanilla table... I'll test a version which adds Defensive_Bond_Pet, and a corresponding table entry which removes Defensive_Bond_Pet without adding a new ability.
-
Hi @Elric Galad, I finally got around tackling this issue... Download: Animal Companion Ability Fixes.zip Instead of editing the Progression Tables directly, I made a BaseProgressionTableAppend object for the Ranger table, as well one for each of the CharacterProgressionTable objects that included any of the abilities (apart from PT_Maia & PT_Maia_Ranger which actually had working conditionals...) With this implementation, I think you should be able to remove the "Highest Load Priority" package altogether and instead include these fixes in the base package Here are the specific abilities appended to the character progression tables: lv8 DefensiveBond lv11 Strengthened Bond lv15 Survival of the Fittest lv17 Superior Camouflage PT_NPC_Ranger_BeastmasterMelee_Antelope PT_NPC_Ranger_BeastmasterMelee_Bear PT_NPC_Ranger_BeastmasterMelee_Boar PT_NPC_Ranger_BeastmasterMelee_Gunhawk PT_NPC_Ranger_BeastmasterMelee_Lion lv8 DefensiveBond lv11 Strengthened Bond lv14 Survival of the Fittest lv17 Superior Camouflage PT_NPC_Ranger_BeastmasterMelee_Stag PT_NPC_Ranger_BeastmasterMelee_Wolf lv15 Survival of the Fittest lv17 Superior Camouflage PT_NPC_Ranger_Balanced_Antelope PT_NPC_Ranger_Balanced_Bear PT_NPC_Ranger_Balanced_Boar PT_NPC_Ranger_Balanced_Gunhawk PT_NPC_Ranger_Balanced_Lion PT_NPC_Ranger_Balanced_Stag PT_NPC_Ranger_Balanced_Wolf PT_NPC_Ranger_Offensive_Stag PT_NPC_Ranger_Offensive_Wolf LAX01_PT_NPC_Ranger_Balanced_Bear_Trinket lv15 Defensive Bond PT_NPC_Ranger_Barbarian_Wolf LAX02_PT_NPC_Ranger_Barbarian_Polar_Bear
-
I think you could utilize ActivationPrerequisites and DeactivationPrerequisites properties of the GenericAbilityComponent to implement this, together with the IsClassPowerPoolCount conditional. Using Brute Force as a passive ability example, something like this? [825817d4-1fb0-4e5c-bf84-473743ad98de] = Barbarian Class ID
-
You want to extract the folder ('Blessings Stuff') contained in the .zip archive to your override directory. (This is where you place all of your mod folders.) Since you have the game on Steam this should be ...\steamapps\common\Pillars of Eternity II Deadfire\PillarsOfEternityII_Data\override You might have to create the 'override' folder if it does not already exist in 'PillarsOfEternityII_Data'. The Steam copy of Deadfire sometimes shows false warnings about mod version incompatability, but you can ignore these. Also just to clarify, having mods won't prevent you from getting achievements!
-
This is a cool idea tbh, would probably have made grimoire selection + ability selection more interesting, though I guess something would have to be done with grimoire switching mid-combat. And no, you've not misunderstood grimores, it's as you describe that each cast take one resource from that level, regardless of which spell was cast.
-
I was thinking kinda like how the Burned Book of Law does it: "InspectOnUseButton": [ { "DisplayConditional": { "Operator": 0, "Components": [] }, "DisplayString": 5249, "Script": { "Conditional": { "Operator": 0, "Components": [] }, "Scripts": [ { "Data": { "FullName": "Void StartConversation(Guid, Guid, Int32)", "Parameters": [ "b1a8e901-0000-0000-0000-000000000000", "408c88c5-9239-4268-92a9-b5548abec032", "0" ] }, "Conditional": { "Operator": 0, "Components": [] } } ] } } ], Like this the script will run whenever you press the item's talk/interact button, I think you can even rename the button.
-
"Scripts" is not a valid parameter (see the ScriptCallData structure) and should be removed. I think I see what you want to do, sadly the "Conditionals" property of the ShipCaptainComponent is a ConditionalExpression, and there's no way to call Scripts from here. Maybe you could run a ScriptHook which checks for IsInCombatEncounter (which conveniently is used exclusively for Ship Duels), and if so set DG_Global_Ship_Sunk to true?
-
Cool idea, I had similar thoughts before. Sadly ScriptHooks only trigger when you load a scene or open a new map, though I think it's possible to utilize the InspectOnUseButton property of an ItemComponent to trigger a script. IIRC that's how Modwyr opens conversations. As for Inns, try "6f88c8c2-e6b7-4429-9407-5ae6c011d4fd" - the ID of Port Maje's crew shop which is globally available and should allow you to edit the party.
-
I'm in love with this idea! I just did some small experiments with teleporting (and stranding) the player on SSS Island™ right after character creation by inserting scripts into the initial conversation with Eder, I thought that would be cool as well. My head is pretty slow now that my vacation is over though, so I can't promise fast results but as I said I love this idea, I woud definitely like to finalize it.