Jump to content

Galactygon

Modders
  • Posts

    820
  • Joined

  • Last visited

1 Follower

About Galactygon

Profile Information

  • Gender
    Male
  • Location
    Sweden

Recent Profile Visitors

8,449 profile views

Galactygon's Achievements

  1. I can say without having ToF installed that this happens in an unmodded game due an interaction of several factors: 1. Path projectiles are hardcoded to always affect the caster as one of the targets being hit so items/spells using such projectiles try to block the caster from being affected by his/her own spell via an opcode 318 param2 = 43 (if target is source). This effect is the first effect in the effect order of the spell (applied onto each creature the projectile hits, including the caster). 2. An engine bug occours when you pause the game and the effect order of an item/spell applied just at the moment the game is paused is messed up, among other things. As such, the caster protection effect discussed above is invalidated if you happen to pause the game at the wrong moment, which I can see you did based off of the screenshot. The red/pink projectile and trailing smoke do look pretty.
  2. You can change the specific.ids of the caster temporarily during time stop (i.e. DW_TIME_STOP) since that has no consequence (caster doesn't die nor interact with allies during a time stop) and then cast a helper MYSPELL.spl onto a creature with opcode 100 (protection from IDS entry) just after the Imprisonment is cast i.e. Spell(Target,WIZARD_IMPRISONMENT) ReallyForceSpellRES("MYSPELL",Target) to prevent the target from being targeted while the caster is inside a time stop.
  3. Could you use WeiDU to patch the palette entries based on the alpha entry to make it a sliding scale of icon color <--> black/gray without resorting to photoshop?
  4. I know I'm being slightly pedantic here, but changing the spelling of her name to "Korlaj" would at the same time preserve pronounciation of the existing name and be a nod to Semaj if he'd be replaced by her in BG1. Speaking of which, I wonder if an Imoen-be-gone mod would be possible, both in SoD and BG2. Especially if we can account for the scenario where Imoen dies prematurely (i.e. BG1 or even Chateau Irenicus) or falls out with charname. Then, some of the plot railroading can be avoided or shrouded in alternative and very plausible explanations. i.e. if Imoen doesn't exist then charname is accidentally freed by a collateral explosion during the Irenicus-Shadow Thieves battle. There is a mod that I forgot the name of which allows the player to attempt to leave Amn but ends up in Brynnlaw with a very compelling plot explanation which in this case could be recycled. In that case, the survival of Imoen is no longer plot-critical so she no longer needs that MINHP belt in Chateau Irenicus.
  5. These unpronounceable names not identifiable with any real-world language are a bit different as they give a sense of how powerful these creatures are, disconnected from our world.
  6. It's more of a matter of consistency imho. Original games went with fantasy names that are easy for an English speaker to pronounce/decipher which are consistent with the canon material which often times played up to real-world stereotypes i.e. arabic sounding names for genies. I guess if there's a subgroup in Faerun that uses Polish names it makes sense to give those characters such names? Polish names are a bit hard to decipher for a non-Polish speaker due to how many consonants can build up a single "sound" like the "sz". Speaking of which I think I got the pronounciation of the Polish "sz" wrong again. Now I'm not sure if it's pronounced as "Korlash" or "Korlage"?
  7. Tamoko is from Kara-Tur, so an exotic-sounding name feels like a good fit, especially since it sounds somewhat Japanese. Khalid/Jaheira are also somewhat exotic actors but an english speaker wouldn't have trouble guessing the pronounciation. Korlasz is different because of the "sz" sound and now I see that have misspelt the name in the above post as "Korlazs" (since in Hungarian the same sound is "zs" rather than "sz"). Unless you know that in Polish "sz" is pronounced as "ge" in english (i.e. Garage) you'd have trouble reading that name.
  8. With all things considered, the BG series has absolutely benefitted from the SoD expansion imho. I'm also not without criticism either on the plot as others have already mentioned but then again it's the nature of capitalism to skimp on some corners to fulfill a budget/deadline, with Beamdog not being a particularly large company like Microsoft (i.e. Age of Empires 2) who can sacrifice incredible amount of resources for a devoted fanbase. The low-interest rate environment that was prevalent throughout the 2010s has evaporated and hit the gaming industry as well which means the future of IE development isn't certain going forward. Hopefully, BG3 will pique interest in the older games as well and give us a "third life" so to speak. But the Bhaalspawn plot is already quite saturated/complete so I can't think of any more expansion possibilities unless it's some standalone adventure that takes place in SoA/ToB or possibly a more fleshed-out ToB. Something that slightly bugged me (and hasn't been really mentioned so far) were the names often were non-Germanic/Latin i.e. Korlazs which is clearly a Polish name. Most of the names in the original series were Germanic/Latin-derived fantasy names. I'm an ethnic Hungarian for the record, and I have no personal beef against central/east europeans but a Hungarian name in the BG series for the sake of inclusivity would feel off unless there's a good contextual reason in the plot.
  9. Cloning spells should become much less laden with bugs with this suggestion., especially when it comes to interacting with other (creature- and spell-granted) immunities. Only the self-referencing 318s/324s would need to be updated.
  10. I think @Sam. already recombined all the area animations, including the PST:EE ones.
  11. It's a moot point to discuss any changes in detail until we agree on splitting up/reorganizing creature immunity items and whether or not we should use additional splstates. Until that happens, I won't comment on the individual changes for now. Immunity items are a much more practical way to manage groups of creatures with identical immunities than effects directly carried by the .cre. If/once we do agree, the existing immunities will need to be drawn up and then reviewed case-by-case to see what/if any changes go into the Fixpack and what doesn't. We also need to agree how to handle SPLPROT checks in BG2 in a standardized matter. Ever since the initial IWD:EE release, effects using the new opcodes made their debut in SoD and by now a handful of spells in the BGEE games use IWD-style protection feedback. Do we want to keep IWD-style protection feedback and propagate it to other spells? Or do we change it to silent/no feedback (opcode 318)? When talking about "other spells" I am referring to SPLPROT checks that would check for those new IMMUNITY splstates should we decide to implement them. IWD:EE would still keep their existing immunity checks of creature parameters (size, race, class, etc.) while BGEEs would still have opcode protection effects via immunity items. The thinking is that these SPLSTATEs would simply complement both systems and remove the need to list all spells of a certain category when applying a particular immunity. Additional GENERAL/RACE/CLASS/etc. entries are a different discussion altogether.
  12. This is quite a broad topic and we're discussing many things at the same time. Let's break it down. Regrouped immunity items according to creature type: regardless of whether we make any changes to immunities or not, completely different categories of creatures (i.e. undead and shamblers) shouldn't share the same immunity ring. Agreeing to a set of standard immunity rings with no changes to creature immunities (i.e. just making carbon copies is enough) is uncontroversial and is a prerequisite to untying the Gordian knot of creature immunities in BG2:EE if the need for changes arises. It's also a convenient way for mods such as SCS to piggyback and make any systematic changes to groups of creatures. I would even argue for introducing the same immunity rings in IWD:EE and leaving them empty so mods affecting both BG12 and IWD can same patch the same items. If you agree with establishing a commonly agreed upon set of immunity items @CamDawg then this should be the first priority imho. Note that some creatures (i.e. Death Tyrants) have a venn diagram of overlapping immunities and need multiple rings. However, they also wear IMMUNE1.itm (nonmagical weapon immunity). So a set of weapon immunity amulets, say IMMUAM1.itm need to be created to allow for those creatures to wear an extra ring. Using a set of agreed-upon SPLSTATES to use for immunity items: again, an uncontroversial change that creates a future-proof infrastructure. This will require numerous spells to be patched to either use opcode 318 (no feedback) or 324 (IWD-style feedback) so those SPLSTATEs completely block the entire spell. Note that in today's engine, you cannot block many secondary effects such as color glow or lightning effects (not play .bam/.vvc). Protecting against particular spells inside immunity rings like it's done right now is a hard-to-maintain system and prone to bugs/oversights. So again, an uncontroversial and much needed change imho. Fix certain creatures' GENERAL/RACE/CLASS entries if they were missing in oBG2 but have been added during the EEs: this is something that can be done on a case-by case basis and isn't necessarily tied to the immunity system. IDS files should be identical between BG1:EE, SoD, and BG2:EE but not IWD:EE (though it's convenient they are). Propose changes to creature immunities: In order to make any proposals, the immunity rings need to be assigned to groups of similar creatures first, and then a list of existing and proposed immunities should be created so changes can be discussed on a case-by-case basis. Even if no changes are agreed upon, mods can conveniently introduce them without having to worry about reassigning immunity rings. Some proposals would more likely reach agreement (i.e. remove level drain immunity from Wyverns) than others. Then there's a question of how we make the BG-style immunity system seperate from the IWD-style immunity system: since SoD, numerous spells and abilities have already gotten an IWD-style immunity treatment i.e. they display the IWD-style "Unaffected by ..." text in the combat log. Do we roll those changes back @CamDawg or do we make them into feedbackless text (opcode 318)? Or did you refer to specific immunities for specific creatures? The biggest difference between the BG2 and IWD systems is the use of immunity rings in BG2 whereas IWD almost completely lacks them and uses creatures' IDS entries. The proposed SPLSTATE system is somewhat of a reconciliation between the two systems and could be applied to both IWD:EE and BG2:EE even if those SPLSTATES aren't set by immunity rings in IWD:EE. It's a great way to streamline and future-proof for future mods.
  13. We have a mishmash system of combat feedback when it comes to immunities in BG1/2:EE, whereas IWD:EE is quite consistent in placing immunity checks in spells rather than equippable immunity rings. You won't glean as much info looking at creature files and immunity rings in IWD:EE. Spells in BG1/2:EE in general should adopt the use of opcode 324 more often, even when it seems unnecessary so we get more consistent feedback in the combat log. i.e. Charm Person should check for nonhumanoids and those who carry the immune_charm SPLSTATE. Immunity rings that already block the charm opcode with the associated effects should carry a SPLSTATE effect immune_charm. Immunity against particular resource values should be removed from those rings, since the spells themselves would have IWD-style SPLPROT checks instead. Poison/Disease immunity is done by a SPLPROT RESISTPOISON>=100 check that was extended to all such spells in BG1/2EE in the recent patches. Elementals and elemental-kin (i.e. Salamanders, Water Weirds) should have their RESISTPOISON set to 100 if not already. Backstab, Entangle, Web, Grease, and Petrification immunity make sense for elementals (make a new immunity ring just for them?). These checks should be added (opcode 324) to the relevant spells as well so they display the immunity message. IWD:EE blocks large creatures from being affected by these spells which includes elementals. It would make sense to also specifically block elementals and elemental-kin (Water Weirds, Salamanders, but not Genies) in IWD:EE and large creatures in BG1/2:EE. Salamanders are immune to sleep (not knockdown), charm, hold, and paralysis according to this source. In IWD:EE they're vulnerable to everything, while in BG2:EE they have RING95.itm which gives them immunities they shouldn't be immune to (Death, Level Drain, Morale, etc.). They're unaffected by Charm anyways, since they're not humanoid (Charm Monster isn't an available spell here). AD&D makes a distinction between Charm and Domination, where immunity to Domination is far less common. Should we make this distinction in the IE? I'm more for it, given that Domination is an underwhelming spell. Genies aren't really elemental-kin or elementals. They lack general immunities according to this source and they don't wear get immunity rings either ingame. They're fine as they are. Blindness and Polymorph immunity is a borderline case. I can see the argument for elementals, but not for others. Berserk, Confusion, Deafness, Fear, Panic, Polymorph, Silence, Stun aren't listed among the immunities in the source material and they're not immune to these effects either as of 2.6. We can leave these vulnerabilities as they are (Salamanders become vulnerable to these if RING95 is taken away from them). RING95.itm is used for more than just undead: a quick NI search shows that Shambling Mounds, Jellies, Salamanders, Golems, Bone Fiends, and Puddings all use this ring which is a bit sloppy. There are other such examples of multiple seemingly unrelated groups of creatures sharing immunity items. That's why it's so important (imho) to map the current immunities somewhere like an excel before we try to make any changes. Many of the non-boss dragons have RING97.itm equipped instead of DRAGRING.itm, so removing Paralysis, Hold, Slow, Level Drain immunity from RING97.itm will remove those immunities from some dragons. DRAGRING currently grants immunity to Charm, Silence, Sleep, Stun, Hold, Entangle, Web, and Grease RING97 currently grants immunity to Slow, Hold, Entangle, Web, Grease, and Level Drain I suggest removing immunity to Slow and Level Drain from RING97.itm and granting immunity to wing buffett. The only non-boss dragon who should be immune to level drain is DRAGSHAD.cre (source), so maybe clone their hand-to-hand as DRAGSHAD.itm and put level drain immunity there? Immunity to Hold I and II for dragons makes sense since they're huge creatures, while Otiluke's Resilient Sphere (that uses Hold III) should be patched to fail when cast onto large creatures (like Entangle). Then RING97.itm can become a generic dragon immunity item. I think we need a new immunity ring for medium-sized flyers (Wyverns, Beholders, etc.) that only protects against Entangle, Web, and Grease. Even smaller flyers like Gauths and Imps can get yet another new immunity ring that only protects against Grease and Entangle and not Web. BDPLANT.itm is a much better alternative to the undead immunity ring RING95.itm which Shamblers currently have. Immunity to Backstab, Petrification, Poison/Disease, Polymorph (plants are a different kingdom compared to creatures), and Stun all make sense. They're semi-intelligent species so they're not immune to Sleep, Charm, Hold, Paralysis, Confusion, etc. in the source material. Myconids are also plant creatures but they should be vulnerable to everything except Poison/Disease, Petrification, and Polymorph. They currently share a hand-to-hand attack with Umber Hulks (UMBER01.itm) which for some reason also grants immunity to Confusion. Imho it should protect against Umber Hulk Confusion specifically (i.e. when reflected by Spell Turning) rather than all forms of Confusion. Umber Hulks don't have this immunity in IWD:EE. All plant creatures (incl Jellies, Slimes) should use the already existing GENERAL.ids entry 7-plant which can then be used to do an IWD-style check in Polymorph Other / Sphere of Chaos. Shamblers shouldn't be classed as (earth) elementals but use the already existing RACE.ids entry 176-shambling_mound. For slimes and jellies, the source material is inconsistent when discussing those immunities. Gelatinous Cubes are immune to "electricity, fear, holds, paralyzation, polymorph, and sleep-based attacks" while other forms of slimes/jellies have minimal info on their immunities apart from certain types of damage. Entangle, web, grease, hold, paralyzation, poison, petrification, and polymorph immunities all make sense for jellies and slimes accross the board. I guess confusion, charm, fear, sleep, and stun can be included as well. Protection against level drain is the only one that doesn't make any sense. So jellies and slimes need their own immunity ring. The description for SPWI496.spl (Shapeshift: Mustard Jelly) will need to be updated to account for any changes. Fiends/Demonic creatures are a topic within itself with lots of creatures and many types of immunities. We need more information before I can form an opinion. As mentioned above, RING95.itm seems to be the go-to item for "unnatural creatures". Constructs and Undead have similar opcode immunities but others (i.e. Shamblers) don't as mentioned above. Extraplanar immunity isn't applicable in the BG series, but I'm guessing the swath of immunities granted to fiends and celestials are supposed to represent this sort of immunity. (Half-)elfish immunities to Charm and Sleep have been implemented awhile ago in oBGFixpack that the EEs inherited. Yes, I think troll immunities can be completely removed now as their original purpose was quite obvious. Yes, we still need opcode 101 and its accompanying effects to not break any mods. There are few spells that use feeblemind or sleep, so they can be blocked one-by-one in addition to using immunity SPLSTATEs.
  14. Bumping this thread, which is an very easy fix. All instances of opcode 232 (.spl, .itm, .eff) should be patched so BIT2 for the "special" field is set. It's a very nifty setting which will supresses lingering floating casting glows plus sounds and makes the launched spell completely silent. Even if casting glows/sounds are left blank by the launched spell, the engine will abruptly clip any ongoing (casting only?) sounds. It doesn't happen with this flag set. Unfortunately, the contingency opcodes don't set this flag by default, so the casting graphics of the stored spells will play and linger simultaneously when the contingency is triggered.
  15. A bit late to notice this thread, but imo very important and thanks for raising this. I generally agree with standardizing immunities for creature-spell interactions and something I was unwilling to deal with this unilaterally, since this would be quite a systematic change that needs to be discussed openly and planned out methodically. There is also an element of contextuality to that requires a bit of digging into some of the files in oBG2 or even oBG1 to see what developer intent was. For example, RING97.itm in oBG1 granted immunity to just the opcodes entangle, paralyze, web, grease, and slow that has since evolved into granting immunity to level drain text but not the level drain opcode in BG2EE. All of this needs to be cleaned and there's some amount that can be automated with WeiDU (i.e. checking if there are matching text and opcode immunities). This part would be noncontroversial in an EEFixpack. Then there are a series of immunities that make sense i.e. immunity to grease can be done with a standardized list of SPLSTATE entries. Do we want to clear the explicit "protection from spell" entries? That would make sense if we patch the spells themselves. Can we group entangle and grease immunity into one SPLSTATE (i.e. immunity_flying) if there's (almost?) 100% overlap between two types of creatures? This needs a bit of analysis. Do we want to clear the opcode immunities? I think that can be done in some cases where an opcode might be reused for different categories of spells i.e. the feeblemind opcode is reused in different types of spells (would also make sense for IWD EHopelessness to use this instead of Stun). In these cases, it would be preferrable to remove those immunities accross the board and outsource to via SPLSTATEs i.e. immune_feeblemind, immune_hopelessness, etc. How many SPLSTATE entries would we need then? Is there enough to have some amount remaining for mods? It's worth to have an open discussion imo. On the other hand, the straightforward Hold opcodes can remain as they are. Do we also want to clear the immunity to display texts, status icons, and .bams? I think this needs to be discussed and agreed upon as well. My general hunch is that with some exceptions, we shouldn't resort to immunity to particular spells but rather do it in a more systematic way (like SPLSTATEs), but that general opcode immunities should remain as they are with some exceptions (i.e. feeblemind). It would also be nice to have the same set of immunities of the same creature types between IWDEE and BG(2)EE unless there's a plot or design intent reason not to (i.e. extraplanar creatures for Cure Wounds spells).
×
×
  • Create New...