Jump to content

Endurium

Members
  • Posts

    73
  • Joined

  • Last visited

Everything posted by Endurium

  1. Ah the memories; first time playing I notice "oh, Bioware decided Imoen had to be a mage because powergaming..." so I loaded her up with the scrolls and had her read them. Then we escaped. What Silverstar suggests will work if you are willing to use a tool to extract/modify the 2da. After all, it's not too hard to find a scroll vendor before leaving the city.
  2. Per the IESDP https://gibberlings3.github.io/iesdp/scripting/actions/iwd2actions.htm I suspect this action actually is specific to the creature using it; it is primarily used in cutscenes and seems to be actor-specific. Additionally, the player character can make use of it via an AI script. When used on the player character, it functions similarly to EE opcode 262 (Visual Range) but is not capped. IWD2 scripts use values of 0 (blind), 25 and 99/100. The value 25 corresponds approximately to the limit of opcode 262. Greater values work but are subject to LOS and can lead to visual fog-of-war glitches if not used in open areas (nothing blocking LOS). If the player character uses a value of 0 or 1, no other NPCs will be rendered as the fog of war will cover everything. (They can still see you, of course.) Just mentioning this because the way the description is worded I thought I wouldn't be able to use it. Naturally, I tried it anyway. Edit: just to clarify it does affect everyone, but it also affects the party (if they use it anyway) by extending the fog of war out so you can see further. Of course, the enemies benefit likewise.
  3. Interesting read to go with morning coffee, thanks. Bioware didn't have to start with nothing; thankfully SSI did D&D turn-based adventures several years earlier, and though they didn't garner a modding community there are now tools (such as Gold Box Companion) to allow the player (who can still get the games on gog dot com) to modify the games and play them with a UI add-on, among other things. I really enjoyed the turn-based combat and the tactics I could pull off with it. Initially it took me awhile to adjust to Bioware's real-time system; I recall slowing the game down to 20fps helped in that regard. I remember when TeamBG started making mod tools and we discussed modding on Black Isle's forums when they existed. Eventually the first companion mod (Tashia as I recall) was released and things exploded after that. Was also fun to contribute to Near Infinity's initial development, which I still use today in large measure. One other thing has changed in the business model for making video games, which Beamdog is using among others. Rather than letting their paid QA staff handle all the bug hunting, the community is invited to assist with the work, unpaid, by contributing to the bug database and whatnot. Playing beta-releases became more common as it was found that fans of the game would happily volunteer their time and energy to help crush game bugs. It's also a testament to the games that the community is still going strong almost 20 years after BG's first release, helped in part by the release of the Enhanced Editions.
  4. Can't hurt for her to try but I don't know if it will help because the game doesn't classify SoD or BP as DLC, but rather Campaigns From BGEE.LUA with SoD installed: Infinity_AddDLC( 'dorn', 'DLCDN', 31092, 31093, 'BGEE_IOS_DORN', 'baldursgate_android_dorn' ) Infinity_AddDLC( 'neera', 'DLCNE', 31090, 31091, 'BGEE_IOS_NEERA', 'baldursgate_android_neera' ) Infinity_AddDLC( 'manley', 'DLCP1', 31094, 31095, 'BGEE_IOS_PORTRAITPACK1', 'baldursgate_android_portraitpack1' ) Infinity_AddDLC( 'voice', 'DLCV1', 31096, 31097, 'BGEE_IOS_VOICEPACK1', 'baldursgate_android_voicepack1' ) ... START_CAMPAIGN_BG = 1, START_CAMPAIGN_BP = 2, START_CAMPAIGN_SOD = 3, Also when Sarevok dies and SoD is installed, the cutscene executes a MoveToCampaign("SoD") action referring to Campaign.2da which has all the necessary map/resource switches. All uses of HasDLC() in script refer to the BeamDog companions.
  5. Well, BG2EE 2.5 is finally out so now I'm just waiting on BGEE 2.5 so I can prepare my chronological play-through (IWDEE => IWD2 -> BGEE -> BG2EE)
  6. It's a shame Beamdog didn't add a HasCampaign trigger to go with their HasDLC trigger (which checks DLC companions) I suspected AreaCheckObject might not work but after seeing it in Baldur.bcs I figured maybe... alas. Jarno's idea works best if you're installing with WeiDU anyway. No need to override triggers if you've got a global variable you can check at any time, from any place.
  7. Better support in cutscenes for Familiars. Example: Icewind EE 2.5 refers to Familiars maybe two times (once as the Familiar object and a second time as the individual CRE files) and Familiar Summoner once (Luremaster cutscene), but the rest of the time Familiars aren't included in cutscenes involving Player1, etc.
  8. Try this: AreaCheckObject("bd0120","bdporios") Should return True if both the area "bd0120" and creature in that area "bdporios" exist; they are SoD specific (the starting area). If SoD is not installed neither of them will exist and the trigger should return False (and the script compiler may throw warnings that resources don't exist).
  9. At 0x90 there is a 128-byte field declared "unused" in IESDP. Testing in IWDEE (the game I'm busy modding) shows that there is a field here that is visible in saved game Areas. 0x90 (32 byte length) is a copy of the loaded CRE's Name1 STRREF (first 32 characters) I noticed this while browsing saved areas and decided to test it. My test character was given an 80-character Name1 (using WeiDU labels) of numeric digits and an 80-character Name2 of alpha characters (A-Z); only the first 32 characters of Name1 were copied to this field. That leaves a 96-byte unknown at 0xB0 in the Actor record.
  10. On the subject of patches, it seems 2.5 may finally be released soon http://https://steamcommunity.com/app/257350/discussions/0/2788173147740762948/
  11. It's probably set by opcode 324 Immunity to Spell and Message (and similar opcodes). See, for example, SPWI304 (Fireball) which uses this opcode with an evasion check and specifies SPWI304 as the resource. I'm guessing <RESOURCE> takes its data from the name string reference in the spell ("Fireball"). In other words, <RESOURCE> is set dynamically during combat and the strings using it would be seen in the combat log.
  12. I just played through the Beorn/Guello content in IWDEE and can confirm from that and a bit of inspection in NI that some of the Expanded Guello/Beorn Quest component of the IWD UB mod doesn't seem to be in IWDEE. The fifth wave of Umberhulks in Tarnhelm's area is in (AR8003.bcs) but Beorn still refers to a second task (protecting them from Umberhulks) that never takes place after gaining entrance to their camp..
  13. Thanks Avenger, I meant to check scrlev.ids but forgot to. Additional data pertaining to IWD2. IWD2 includes the functionality of IWDEE with a few extras. // These two critter variables allow fine control over how the spec_var variable is used as a trigger // In this case, for the trigger to spawn, spec_var's value must be "equal_to" "0" // Observed operations: equal_to, greater_than spec_var_value = 0 spec_var_operation = equal_to // This seems to allow modification of spec_var's value when a critter is spawned spec_var_inc = -1 // The required area difficulty flags for this critter to spawn // Only values of '0' are checked area_diff_1 = 0 area_diff_2 = 0
  14. Edit: This applies only to INI files which are used for ARE spawns. I found the current description of this resource a bit confusing so after observing in-game and observed script references to these files in IWDEE I wanted to add some clarification. Under [spawn_main], 'enter' and 'event' are different in that 'enter' is triggered each time the player enters the map, while 'event' may happen instead of or in addition to that. Both can be controlled by variables, both use the interval to determine a delay before/between spawning critters (with 1 meaning spawn now if possible) and both can specify multiple entry/event definitions separated by commas, as critters can. The Interval itself is Real Time Seconds * 15 AI Updates/Second. Example AR3000.INI specifies a [3_Mins] section with an Interval of 2700; 2700 / 15 = 180 seconds or three minutes Real Time. For the creature definitions: // this can specify targeting info [EA.GENERAL.RACE.CLASS.SPECIFIC] or a script name spec = [255.0.0.0.150] spec = thief_12 // When present, the observed value is always '1' spec_qty = 1 // Script assignment at time of spawn; multiple scripts can be assigned (see scrlev.ids) script_Default = gnMMgSG // The Specifics value assigned to the creature at time of spawn; ai_specifics = 150 // Specifies how many instances of this creature to spawn create_qty = 1 // Might control checking if player's viewpoint is over the creature? (0 = don't care) // Update: testing shows no change to Actor/Creature fields with this flag set to 1. check_view_port = 0 // Determines if a party member has to be in the creature's LOS? (1 = no) // Update: testing shows no change to Actor/Creature fields with this flag set to 1. ignore_can_see = 1 // Defines one or more spawn points to use for determining the creature's spawned location // Orientation is optional spawn_point = [595.583] spawn_point = [595.583:14] spawn_point = [595.583:14],[787.562:14],[859.757:14],[1204.924:14],[1353.1135:14],[1638.1260:14],[1573.1349:14],[537.492:14] // Only has meaning when multiple spawn points are listed for the creature // R = pick a random spawn point from the list for the purpose of spawning the creature point_select = R // When present, specifies the Area Actor name, which is used instead of the creature's script name // If not present or the value is blank, Area Actor name will be copied from creature's script name script_name = thief_12 // Disregard this note as per Avenger's post below. // Finally this oddity used only in AR8012.INI; not sure what 'script_area' refers to. // All static Actor references to the script (ldIdiKil.bcs) in this example are in the Actor Race script level script_area = ldIdlKil
  15. In the Skyrim community vanilla has always meant the unmodded game, so I use that for other games as well. Unmodded being the version provided by the developers/publishers.
  16. It definitely is one way to make sure the creature is rested in appropriate amounts of time. It doesn't satisfy my sense of perfection, though, where I expect the following NPC to have his spells refreshed after the party rested. Thank you for the idea nontheless! I see. Perhaps have a block on the party member's script do something like this: IF PartyRested() Global("PARTYRESTED","GLOBAL",0) THEN RESPONSE #100 SetGlobal("PARTYRESTED","GLOBAL",1) END Then have a block on the Familiar's script monitoring the variable, something like this: IF Global("PARTYRESTED","GLOBAL",1) THEN RESPONSE #100 Rest() SetGlobal("PARTYRESTED","GLOBAL",0) END This assumes PartyRested() resets to false after a script cycle, if I understood Cam's earlier post on the subject.
  17. Hmm, I use a local timer variable in a script attached to creatures such as familiars to control resting/refreshing spells/abilities outside of a player-initiated party rest. IF ActionListEmpty() GlobalTimerExpired("REST","LOCALS") THEN RESPONSE #100 Rest() SetGlobalTimer("REST","LOCALS",2400) Continue() END IF !GlobalTimerNotExpired("REST","LOCALS") THEN RESPONSE #100 SetGlobalTimer("REST","LOCALS",2400) Continue() END The ActionListEmpty() trigger prevents the animation sequence triggered by resting from interrupting the character's current action, if any. You can set the timer limit to any value desired, of course; I used 8 game hours as an example. Second block starts the timer, first block maintains it. Sorry if this isn't what you're looking for. Edit: Sadly, in IWDEE at least, when the character is merely walking from one place to another this isn't considered as an action by ActionListEmpty() so Rest() will take place anyway and halt the character in their tracks, throwing away the destination marker.
  18. As you may know, there is only the action AddFeat for working with feats in scripts. You could use it along with variables to track who has been given feat(s) in your scripts, but there is no trigger for detecting feats on creatures/characters.
  19. Just wanted to say thanks for these everyone. Gradually getting back into IE modding and want to sharpen my little-used WeiDU skills.
  20. Hi! I'm having the same issue Bob was, having re-sent authorization a time or two now. Edit: authorized now, thank you!
×
×
  • Create New...