Jump to content

grodrigues

Members
  • Posts

    235
  • Joined

  • Last visited

Everything posted by grodrigues

  1. *If* there are conflicts between Ascension and Kelsey, I would expect them to rear their head only in the final battle.
  2. It works. Only installed the components I wanted from the gameplay tweaks, but no errors or warnings. I do not have time now, so I will leave installing the rest for tomorrow and if some new problem arises I will holler. Thanks for the trouble you took and the speedy response.
  3. Sure. Below is a zip with the weidu.log and the SCS debug file. The error appears first in the Improved Shapeshift component, but is not fatal, and then explodes in the NPC customization. I should add that this is a regression as with SCS v33.4 and weidu 246 everything installed fine. log_debug.zip
  4. @DavidW Sorry to pester you, but have you seen my bug report in the previous page? It is reproducible on my install, so if you need any extra info just holler.
  5. This was timely. Was just reinstalling SCS because I borked my install doing some fixes. The component NPC customization barfs with: ERROR: Failure(" is not an integer, but one was expected") in apply_standard_function: inputs were func=parameter1, arguments=36 ERROR: [blank] -> [override/dwaulb36.SPL] Patching Failed (COPY) (Failure(" is not an integer, but one was expected")) This same error appeared earlier (I believe in the improved shapeshifting component) but the install did not stop and weidu merely signalled warnings: [./override/dw#shspi.ITM] loaded, 1130 bytes FAILURE: is not an integer, but one was expected ERROR: Failure(" is not an integer, but one was expected") in apply_standard_function: inputs were func=duration, arguments=36 ERROR: [dw#shspi.ITM] -> [override/dw#shspi.ITM] Patching Failed (COPY) (Failure(" is not an integer, but one was expected")) I can give you my weidu log as well as the debug file if you need, as there may be some other errors of this type in there -- scratch the latter, as I forgot to save the debug file when uninstalling. Stupid me. Just in case it is useful, when uninstalling I get: SUCCESSFULLY REMOVED [Improved shapeshifting] (component #4030) ERROR: No translation provided for @0 Edit: I keep forgetting things, but SCS is not installable with weidu v246. It complains about a missing file lib/lib_ini.tpa, which is looking in weidu_external instead of the mod folder. If I upgrade to weidu 247 then I get the above.
  6. Yeah, that is what I did. And btw, the components I have installed do spice up the game, so communicating the bugs is just my way of saying thank you. I will say something more when I finish bg1. I'm gonna try to get this playthrough to the end, playing SoD and Ascension for the first time. We'll see.
  7. And yet another bug, this one I do not know what's wrong exactly: the Air chamber is completely borked, it has only one invisible stalker, no Air aspect, so it is impossible to proceed to the chessboard.
  8. Right, right. I am well aware of the alpha status and that I am functioning like a guinea pig, so if I gave the impression that I am complaining, my apologies, Chalk it to English not being my primary language. Edit: and speaking of bug reports forgot to add to the previous: the same question for the non-existing cre mh#blkpd in the Undercity and the Thieves Maze. What is suppose to be? Some version of the black pudding?
  9. Another crash bug similar to what I reported earlier, this time it is the ooze elemental area in Durlag's tower (bg0510.are in EET) that references the non-existing mh#oozec. What should be the cre's I should put in the override folder? The ooze paraelementals? NI lists 3 besides the ooze paraelemental, lesser, greater, elder. Were you planning one of each or just 3 copies of the lesser?
  10. I do not know for certain if this is your fault's mod, but using the alpha I get a crash when entering Candlekeep Catacombs level 1. To proceed the game I have to Console myself to level 2 (and while I am at it, the tomes as well) and then proceed. I can give you my weidu.log if you need it and even the save just before entering the level (the crash is reproducible -- even if I move myself to level 2 and then walk backwards). My suspicions simply arise because doing a changelog on the area file (on EET on linux, using an ext4 case-insensitive partition via case-folding) it spits out: Mods affecting BG2615.ARE: 00000: /* created or unbiffed */ ~EET/EET.TP2~ 0 0 // EET core (resource importation)1.0 RC12 00001: ~MIH_EQ/SETUP-MIH_EQ.TP2~ 0 8 // Enhanced Battles: Candlekeep Catacombsv4 00002: ~ITEM_REV/ITEM_REV.TP2~ 0 0 // Item Revisions by DemivrgvsV4 Beta 10 (Revised V1.3.201) 00003: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.4 I would assume item_rev is doing wand charge patching and/or other harmless stuff, so that leaves your mod is the likely culprit, so you might want to take a look -- I could be wrong in my suspicions of course, in which case my apologies for sending you in what could be a wild goose chase. Edit: doing checks in NI, there is a cre undefined resource mh#wght4 -- whether this is enough to crash the game I do not know. Edit2: just did a simple test. Saved one of the existing wight creatures of your mod as mh#wght4 in the override folder and the game does not crash anymore when entering the area.
  11. Some suggestions for and questions about the new alpha compatibility, mostly with SCS. - Graveyard Catacombs: does it play well with SCS improved Bodhi? A suggestion: independently of compatibility concerns, separate the catacomb encounters from Bodhi. - Firkraag: how does the beef up of Firkraag play with SCS dragon enhancements? We will face something like a super Firkraag? - Underdark: SCS touches and beefs up the Illithid Lair, including adding no-rest at hardcore level, as well as the numbers in the Beholder hive. - SCS already revises several creatures on your list: spiders, golems, vampires, basilisks and probably a few more that I cannot remember right now. Expect compatibility issues?
  12. As far as the AI, took a quick look at the script and it does not even handle all the memorized spells. So as an interim solution, just deleted the blocks corresponding to no longer memorized spells; the rest will have to be managed manually, which actually accords to how I tend to play, so no major loss there. And thanks for the great, nay essential, mod. @subtledoctor Ah, thanks for the heads up, will check the mod out. Do you happen to know the ramifications if any, the possible pitfalls, etc. of just doing it at the EEKeeper level?
  13. I have made for my personal use a small variation of the Summon Planetar HLA for sorcerers to use, starting from the SR version and introducing some variations like a different cleric spellbook with more buffs and offense, make it a cleric-mage with a small contingent of wizard spells, give it a quarterstaff +3 doing extra magic damage, etc. My question is will SCS pick it up and apply the changes to celestials and also change its AI, for when the summon is left to its own devices? Is there anything I should do to let SCS do whatever it wants/needs to do? I have also two requests (is this even the right word?) for the NPC customization component, things that Level 1 NPCs could do and the component as of right now cannot. 1. Allow to give one kit to multiclasses. This is already possible by simply going to NI or EEKeeper and it seems to work just fine (my use case is making a non-gnome mage-thief an illusionist-thief), but I am not aware of all the ramifications. 2. Swap around ability scores. This is something that Level 1 NPCs could do, which opened up the way to completely revamp a character's class and still remain within the rules -- and also the power to munchkin but that has always existed and through the usual means. I do not know the difficulty of doing this (I am on the EEs btw), but if using the dialogue system something like going through all the stats and the listing the allowed values for the player to pick one. Thanks in advance.
  14. A simple question: If I set resist_dispel to 1 (dispel/not bypass mr) on a Cast Spell opcode (146 or 148) then will mr of the target block the spell casting, and thus the application of the spell opcodes? My answer would be "why yes of course", but just want to double check with the experts around here that the engine will not double cross me if I count on this behavior. If it makes any difference, you can assume the engine is BG(2) EE.
  15. The description of Faerie Fire has the line: "Those who succeed at a saving throw vs. spell are totally unaffected by the spell. The light is too dim to have any special effect on undead or dark-dwelling creatures vulnerable to light." but the first opcode Force Visible [136] has no save and there is no Use EFF to protect undead (do not know what "dark-dwelling creatures vulnerable to light" means exactly). Am I missing something or is this indeed a bug?
  16. Was editing my post at the same time you responded, yeah I misread entry 4 and fumbled the double negation. Thanks a lot anyways, it sure opens a lot of options. At this point I just wished they had made a small DSL, say a concatenative language like Forth, possibly with no looping to avoid blowing the stack, with elementary arithmetic and some other operations to handle this kind of stuff. But beggars can't be choosers and we got to work with what we got.
  17. Ok, got it. Just to check my understanding, let us take Burning Hands. If I open NI, the creature type entry reads as "Not match entries 4 and 147" I presume these are entries in splprot.2da. So if I hunt down the 4th entry it reads as "14 100 2". 14 is lower than 0x100 so it is a stat. Hunting its value in stats.ids. we have RESISTFIRE. The value 2 means less than so *not* matching entry 4 just means if critter is immune to fire, it is immune to Burning Hands. Presumably a similar reasoning can be done for not matching entry 147. Is my understanding correct? Thanks in advance.
  18. I have just bought myself the EEs from GOG and managed to install EET on my arch linux install. Installed SR and now I have some questions about the implementation -- I have zero experience with modding EEs so most likely this all boils down to sheer ignorance. (1) A spell like Mage Armor has as first opcode a Remove Effects by Resource [321] with resource the Mage Armor spell resource. If I understand how the opcode works, this not only prevents stacking but also allows refreshing the spell before it runs out. But this is inconsistent, e.g. other buffs like Shield do not work like this. Is this a case of "We have not had the time to go through every spell and work it out" or there is some underlying reason for Mage Armor receiving this treatment and other buffs like Shield do not? (2) Magic Missile, Burning Hands, etc. have as first opcode a Immunity to Resource and Message [324] with resource the corresponding spell with duration 1. Some buffs have similar opcodes to block for 1 second some other spell (e.g. Free Action for Grease, Chaotic Commands for Charm). What is this supposed to accomplish? (3) Protection from Petrification has a Modify Script State [282] opcode with state Lockpicking Bonus [20] ?? Is this something for detectable spells? But then why is not the Set Spell State [328] opcode enough? Or maybe it is enough but the implementation has not bothered to delete the spurious opcode for the EEs? Thanks in advance.
  19. In my PR with level 6 spell fixes I have this note: Pierce Magic: aux spell display portrait icon and play sound have durations 72 -> 12. Unfortunately I have not caught any SR patching or copying, so it seems this is vanilla. I suggest then to move the fix to some component of SR. Since it is not SR that introduces the problem I have not included any fix in the PR. Maybe I should have?
  20. I know -- don't use REQUIRE_PREDICATE. Instead move everything to a (action) function that checks requirements and FAIL's if they are not met. So basically, it would mean moving from such commands as REQUIRE_PREDICATE or REQUIRE_COMPONENT to using MOD_IS_INSTALLED checks inside the function that checks requirements. And the system can of course be improved, e.g. with per component restrictions, or with special messages (e.g.an extra column with tra references).
  21. I would suggest a slightly different implementation: move the data to a .2da file with columns mod_name, component_number, install_order. The first two are self-explanatory, the last takes values 0 or 1, with 0 meaning must be installed (when the mod is installed) and 1 must not be installed (when the mod is installed). pros: - weidu can read it and it is relatively easy to weidu-code to force these requirements. cons: - mod names cannot have spaces. This could be solved with an extra layer of indirection (e.g. put a tra reference instead). - do not know how PI could handle, but I am assuming it should not be too hard. I have already implemented something like this to use on my mods; the idea is to shift as much as possible from code to data. note(s): a further con: - as far as Raduziel's idea, the problem is that the requirement is a global one, not a local one, meaning it is not enough to make the check at mod install time, but rather the check must be done every time a mod is installed after the mod with such a requirement. This implies some kind of mod coordination, which while a tool like PI can probably handle, weidu has more difficulty as it would need global mod coordination.
  22. Just as an aside, this also means that a fast levelling arcane caster is the ideal candidate for casting dispel magic. There is only one fast levelling arcane caster, and that is a bard.
  23. In SR(R), the level 3 Storm Shield spell (druid/shaman only) also protects against insects.
  24. It is late, so excuse my tiredness and going for the hardest solution first. To concatenate two strings (in a patch block say), stick them in a variable and just TEXT_SPRINT new_var ~%var1%%var2%~. As for expanding a tra reference I use the following piece of black magic stolen from IR (or SR) -- so credits to their authors: DEFINE_PATCH_FUNCTION GET_STRING_FROM_TRA_REF STR_VAR ref = "" RET str BEGIN INNER_ACTION BEGIN ACTION_IF (~%ref%~ STRING_COMPARE_REGEXP ~^[@#]-?[0-9]+$~ == 0) BEGIN <<<<<<<< .../inlined/MI_FS_%ref%.tpp OUTER_SPRINT string >>>>>>>> SILENT COPY - ~.../inlined/MI_FS_%ref%.tpp~ ~.../inlined/MI_FS_%ref%.tpp~ INSERT_BYTES SOURCE_SIZE (STRING_LENGTH ~%ref%~) WRITE_ASCIIE SOURCE_SIZE ~%ref%~ VERBOSE INCLUDE ~.../inlined/MI_FS_%ref%.tpp~ END ELSE BEGIN OUTER_SPRINT string ~*~ END END END If you have the tra reference itself in a variable, in the format say @10000, send the variable to the function preceded by EVAL (unless you have AUTO_EVAL or watcha ma call it on). I confess I really do not understand this code entirely, subtledoctor's seems to be way more manageable. The regexp part is easy, but the inlining throws me off track. Oh well, it works and that is all.
  25. Wait, there is a better solution (I knew there had to be). Check the docs on SPRINTF (if you have coded in C this should be familiar) and use "%s%s" with the two variables as arguments. Do not forget to change the tra ref into text -- the code for this is in Item Revisions somewhere. If you can't find it, I have stolen it for my mods and can put it in here.
×
×
  • Create New...