Jump to content

Search the Community

Showing results for tags 'Scripting'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • Obsidian Community
    • Obsidian General
    • Computer and Console
    • Developers' Corner
    • Pen-and-Paper Gaming
    • Skeeter's Junkyard
    • Way Off-Topic
  • Pentiment
    • Pentiment: Announcements & News
    • Pentiment: General Discussion (NO SPOILERS)
    • Pentiment: Stories (Spoiler Warning!)
    • Pentiment: Technical Support (Spoiler Warning!)
  • The Outer Worlds 2
    • The Outer Worlds 2 Speculation
  • Avowed
    • Avowed Speculation
  • Grounded
    • Grounded: Announcements & News
    • Grounded: General Discussion (NO SPOILERS)
    • Grounded: Stories (Spoiler Warning!)
    • Grounded: Technical Support (Spoiler Warning!)
  • The Outer Worlds
    • The Outer Worlds: Announcements & News
    • The Outer Worlds: General Discussion (NO SPOILERS)
    • The Outer Worlds: Stories (Spoiler Warning!)
    • The Outer Worlds: Character Builds & Strategies (Spoiler Warning!)
    • The Outer Worlds: Technical Support (Spoiler Warning!)
  • Pillars of Eternity II: Deadfire
    • Pillars of Eternity II: Deadfire Announcements & News
    • Pillars of Eternity II: Deadfire General Discussion (NO SPOILERS)
    • Pillars of Eternity II: Deadfire Stories (Spoiler Warning!)
    • Pillars of Eternity II: Deadfire Characters Builds, Strategies & the Unity Engine (Spoiler Warning!)
    • Pillars of Eternity II: Deadfire Technical Support (Spoiler Warning!)
  • Pathfinder
    • Pathfinder Adventures: Announcements & News
    • Pathfinder Adventures: General Discussion (No Spoilers!)
    • Pathfinder Adventures: Characters Builds & Strategies (Spoiler Warning!)
    • Pathfinder Adventures: Technical Support (Spoiler Warning!)
  • Pillars of Eternity
    • Pillars of Eternity: Announcements & News
    • Pillars of Eternity: General Discussion (NO SPOILERS)
    • Pillars of Eternity: Stories (Spoiler Warning!)
    • Pillars of Eternity: Characters Builds, Strategies & the Unity Engine (Spoiler Warning!)
    • Pillars of Eternity: Technical Support (Spoiler Warning!)
    • Pillars of Eternity: Backer Beta
  • Pillars of Eternity: Lords of the Eastern Reach
    • Lords of the Eastern Reach: Announcements & News
    • Lords of the Eastern Reach: Speculation & Discussion
    • Lords of the Eastern Reach: Kickstarter Q&A
  • Legacy (General Discussion)
    • Alpha Protocol
    • Dungeon Siege III
    • Neverwinter Nights 2
    • South Park
    • Star Wars Knights of the Old Republic II: The Sith Lords
  • Legacy (Archives)
    • Alpha Protocol
    • Armored Warfare
    • Dungeon Siege III
    • Fallout: New Vegas
    • Neverwinter Nights 2
    • South Park
    • Tyranny


  • Chris Avellone's Blog
  • Neverwinter Nights 2 Blog
  • Joshin' Around!
  • Adam Brennecke's Blog
  • Chapmania
  • Pillars of Eternity Backer Site Blog
  • Pillars of Eternity Support Blog
  • Pathfinder Adventures Dev Blogs
  • Obsidian Marketing and Market Research Blog
  • The Community Blog

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start







Website URL


Xbox Gamertag

PSN Online ID



Found 8 results

  1. --------------------------------------------------------------------------------------------------------------------------------- *** WORK IN PROGRESS *** WHAT THIS IS NOW <-------------------------- in comparison to:- -----------------------------> WHAT IIT COULD BECOME ------------------------------------------------------------------------------------------------------------------------------ < WHAT THIS IS NOW > 1) INFORMATION: (TY@thelee) - Lots: From Simple Facts to Deep Theory 2) ORGANIZATION: (Not so much {yet}) - Area For Improvement - It's one long discussion - A Linked Table of Contents will solve 3) TECHNOLOGY RESOURCES: (new & few) *** WORKING *** - Mods n' Things (for Download): - {Target} in [Ranged] range: custom conditional. (TY@Noqn) - CUSTOM AI SCRIPTS (for Download): - Single-class Lifegiver Druid 4) LEARNING AIDS: (new & few)} - Visual Aids: I started making a few, like: - Self-Only Spells & Target Type - Conditionals & Sequences: Two Distinct Procedural Strategies 5) MISC. - Even a Short Story! (which illustrates the self-only scripting dilema) * Glitch In the Matrix: A Tale of TWO IMMYS ---------------------------------------------------- TOP OF ORIGINAL POST ------------------------------------------------- Hi all, I'm loving this game so far (lvl 18 on my first playthrough on veteran/full party), and I'm loving the AI scripting also. To me it's like a game within the game. I've been having great success with it in a variety of contexts, but there are a few more advanced things I'm not having luck with. Can anyone let me know, how do you approach the following issues? If there is no direct setting for these things, do any of you clever scripters have work-arounds? Although some of these can be solved with mods I'm sure, some are procedural so would also be an issue with any mod as well (2 & 3 in particular). In general, I'm still getting achievements, so I'm scared to use mods. However, I'd also be interested to know how to set an AI mod up so it won't disable achievements (if possible), and if so, what you guys recommend in that regard. Thanks in advance, Virtual_Swayy P.S. I'd like to be able to ask additional scripting questions without making a new post. If you are into AI scripting, please feel free to follow this post even if you don't have a comment on these particular issues (I'm sure I'll have more questions to add as I advance my knowledge; it's guaranteed LOL). [EDIT: Scroll down a few comments and there are ADDITIONAL QUESTIONS POSTED FARTHER DOWN IN THE THREAD} ---------------------------- AI QUESTIONS: 1) Distance: Can i prioritize farthest, but in (ranged weapon) range? - (ex. arquebus shot to the farthest target that can be shot without moving) 2) In a block with multiple target types how does it interpret {target} conditional - (ex. target health {not} < 50% in a block with [1) smoke/invis > 2) shoot arquebus]) - Step one should be Smoke/SELF if > SELF {not} < 50,% but how does it (if at all) interpret the next command? * Will step two be shoot ENEMY if > ENEMY {not} below 50%? Or... * Will step two be shoot ENEMY if > SELF {not} below 50%? - e.g. Does each step in the block "RE-interpret" the conditional (or does step 1 set conditions for the entire block?) 3) Red hand's 2 shot before reload: (For the purposes of the AI "attack" command)Is it one attack or two? - (ex. If I do 1) atk > 2) atk, with red hand in a single block, will it: * (1)Shoot/(2)Shoot > End of Block > RELOAD or... * (1)Shoot/Shoot > RELOAD > (2) Shoot/Shoot > End of Block [EDIT: after reading/testing the comments below, I've realized 2) & 3) above are based on my incorrect assumption that blocks execute sequentially. That being said... two things: A) @thelee's analysis below reveals that question 2) is still relevant and can lead to some unexpected behavior, even when a block only chooses one action to execute in a multiple target type block (rather than executing actions sequentially) and B) The issue with Red Hand in question 3) is still relevant, although "end of block" in my example doesn't make sense, because each action would (should) be in its own block.] 4) Can I force a target change with no other changes? Meaning the same trigger conditions excluding current target? - (ex. to spread a fortitude debuff to one target per swing) * e.g. I was thinking something like (Sworn Enemy > prioritize {not) sworn enemy) [but I can't {negate} priorities can I?] 5) Movement/positioning in general seems a bit clumsy (at least at my current level of knowledge). Any ideas here would be appreciated. - (ex. moving into <2m range for an arquebus backstab/assassination without using a melee attack) Also, curious about how to deal with ascended casting, but I already posted that question here:
  2. Hello, Ever since the release of the game, you had updated the scripting to add different conditionals and outputs, such as allowing us to turn on modals and other capabilities not originally present in release. However, we are still missing a critical condition that would be extremely helpful for managing ciphers. Can we PLEASE get a conditional for the ascendant self buff? The ideal is, for Ciphers, to allow the AI to define that spells will only be cast if the ascendant buff is active.
  3. Letting the players essentially craft their own AI via this interface is great, but I feel it's missing some crucial options: 1. Include items such as potions instead of just abilities. This would reduce the burden of item micromanagement. Example: If [self: Health < 30%], [Consume: Potion Of Moderate Healing] or [self: Threatened by Multiple Enemies], [Consume: Potion Of Ultimate Badassery] 2. Allow the switching of weapon sets. Example: [self: Enemies in Melee Range > 1], [switch to Weapon Set 1]. This is for the purpose of switching between ranged and melee automatically, and why not for other purposes such as switching between different melee weapons as well. 3. Make an automated auto-attack behavior type that makes a character attempt to keep their distance from enemies, i.e a ranged character fleeing from melee enemies—also maybe one that makes ranged characters attack targets but not move automatically. 4. Add an [Enemies Clustered, At Least #], so that AoE spells don't get wasted on single targets. 5. Include modal abilities. 6. Add some sort of way to distinguish enemy ranks/challenge ratings so that the player is able to specify that they want a certain spell/ability to be used only against strong or weak enemies. For example: [Enemy: Rank is Normal/Veteran/Elite/Boss] 7. Make a search function or find a better way to sort the different functions. As of now, it's too cumbersome to always scroll through the massive list of conditions. Maybe introduce filter tabs. 8. Instead of having fixed [Less Than 50% Health], let us type the exact value we want. 9. Allow more debuffs as conditions. Example: I want my Paladin to attack the enemy he's cast Sworn Enemy on. However, I can't specify "If:Sworn Enemy - Then X" (Some of these ideas are copied from other people's posts who contributed to the thread. Thanks to them.) Most of this—and much more—was possible in Dragon Age: Origins, which this system was inspired by. With the Even More Advanced Tactics mod, by carefully designing the AI behavior, it was possible to finish the entire game on the hardest difficulty without ever manually commanding anyone, and I did that. It became by far my favorite way to play the game; it became its own game within the game, a very unique experience.
  4. Hi Guys, Wasn't this feature already in the original Pillars of Eternity ? If not, it was in Tyranny right ? Where you could tell any of your 3 companions (Verse, Lantry, KIS, for ex.), how to react in combat in certain circumstances. (Like : Protect, Full Aggro, etc) If not... what is this Player AI Scripting for Companions ? What does it bring to Obsidian for Pillars II ? Thank you
  5. I have encountered a major plot progression issue regarding getting an invitation for the DUC from the Knights of the Crucible. I have a save before that and 1 showing it, but you only need the one showing it I think Where as far as I can see, there is no way to complete this quest and thus progress the main plot in this save state. (But if you find a work-around, please tell me.. though I will simply throw this save away and reload) This can happen when you have these 2 quests active (with exactly these states) at the same time... Winds of Steel - Research Given to Courier, Courier dead during fight - Quest not reported to Commander Clyver Invitation Quest -> Only "good standing" with crucible knights -> But Dialog with Clyver loops infinitely and the dialog choices are not going to next quest step because his "directive" (Winds of Steel) is not completed Save (Standing right in front of him with the infinite looping and very very weird dialog a click away) http://www.mediafire.com/download/t84jjmhpo7v6jha/e6f43dbc06824c1c981e0bc38ad015b9_13516728_CrucibleKeep.zip Also worth noting, before I went to the crucible knights, but after getting the invitation quest, there was 1 hostile Metal Knight Automata and 3 dead bodies in front of the keep. With nobody even acknowledging this after battle. So yeah... I have a save around 15 minutes before getting the invitation quest thankfully so I am not entirely stuck, but someone else might not be so lucky. So I hope this is the right way to report this kind of bug.
  6. Rich Taylor brings us another look at what's happening on his end: Here's a list many of the scripting changes made in 1.06 so far. Most of them come from the 1.67 and 1.68 updates of NWN1. ActionRest() - The bIgnoreNoRestFlag wasn't actually doing anything. It will now force rest even if the area is flagged NoRest or there are monsters nearby. If the character is still in combat, it will not force rest. CreateItemOnObject() - Added new string parameter to provide the newly created object a new tag. EffectHeal() now works on doors and placeables. GetAbilityScore() now takes a 'nBaseAttribute' parameter to allow querying just the base attribute. OnClick event for placeables that fires whether or not the player can actually path to them. SpeakConversationOneLiner() now takes a parameter to determine if the spoken line should have whisper, talk, or shout volume. Added: CreateTrapAtLocation() CreateTrapOnObject() GetAreaSize() GetInfiniteFlag() GetKeyRequiredFeedback() GetPickpocketableFlag() GetPlaceableLastClickedBy() GetTrapActive() - (Now works on doors and placeables too) GetTrapRecoverable() SetFortitudeSavingThrow() SetReflexSavingThrow() SetWillSavingThrow() SetHardness SetInfiniteFlag() SetKeyRequiredFeedback() SetLockKeyRequired() SetLockKeyTag() SetLockLockable() SetLockLockDC() SetLockUnlockDC() SetModuleXPScale() SetPickpocketableFlag() SetTrapDetectable() SetTrapDetectDC() SetTrapDisarmable() SetTrapDisarmDC() SetTrapKeyTag() SetTrapOneShot() SetTrapRecoverable() SetUseableFlag() I also added a couple console commands to help with GUI debugging openuiscreen [] closeuiscreen unloaduiscreen Also added a console command: guidebug [MOUSEINPUT] [MOUSEOVER] [CALLBACKS] This brings up an extra 'chat' window and will provide engine-level debugging info about mouse-overs, mouseinput, or callback execution. This feature isn't really finished as of this post, but I hope to spend some more time polishing it up for 1.06. There are some new toolset features and bug fixes. The bug with seams showing up between tiles has been fixed as well as issues with Specular lighting not looking right. There is also now 5-level terrain undo for grass, water, and terrain adjustment and some improvements to some of the brushes. There's some other things as well, but this is a pretty good sampling of the new things that will be in 1.06. Also, be prepared for more 1.06 information in the near future. - Rob
  7. By: Rich Taylor This is just a quick note to mention that I've added: object IntToObject( int nInt ); and int ObjectToInt( object oObj ); scripting functions for 1.06.
  8. Q: How long can a variable name be? How long can a string be? A: While the runtime virtual machine doesn't have any limits that we could find, the compiler will reject tokens that are longer than 512 characters. So that would probably be the de facto limits of variable or hard coded string length. Q: What effect information do different values for the Idx parameter give back for GetEffectInteger()? There doesn't appear to be many comments on this function that I can find. A: The problem is that the Idx values will return different information for every single different kind of effect. While it would be nice if we could document all of that, doing so is outside the scope of answering just this question. If there is a specific spell we need to look into, let us know. Q: Are the values for SetEffectSpellID limited to valid SpellID values only? I tried setting a high order value (maxinteger value - 500 or so) and failed to read back what I set. I was hoping to use this a a unique Efffect Identifier for effects applied outside spell scripts, so that I could unquely ID and remove that effect at a later point. A: I couldn't find any limits to the SetEffectSpellID parameter. I also looked for areas where maybe the value would be stored as something that wouldn't accommodate a large number (such as a WORD), but couldn't find anything like that in the code either. I would recommend trying this with a smaller number than something near MAXINT to see if you get the results you expect.
  • Create New...