Help - Search - Members - Calendar
Full Version: The dreaded G3 Fixpack
The Black Wyrm's Lair - Forums > Released mods - Baldur's Gate II > Improved Anvil
Arkain
Hi.

Well, to make a long story short: why is it not recommended? I'm curious why this fixpack seems to be the reason for many bugs or other problems. Because it's poorly modded? Because of the methods used to actually "fix" things? Something else?
Magnus_025
I don't know the whole bunch of reasons because of which the Fixpack is not compatible with IA, but from different threads I remember that some incopatibilities come from the fact that the G3 Fixpack make all used keys to disappear and you need the Simbol of Amaunator (considered a key) to forge an item. I know there are more incompatibilities for sure, but I don't recall more right know. I just know that the Fixpack is not compatible, as the readme says. I think that there are a few threads about that, just search in different pages in this subforum.

You can use safely the Baldurdas fix pack, and for the upcoming versions of IA, Sikret and Co. are making a list of bugs in the original game to create their own fixpack to install altogether with IA, so if you are interested on playing IA, with the actual version (which has lots of fixes) and the upcoming versions (which will surely include loads more) you will have your problems solved.

But if you only want to know the reason because of which IA and the Fixpack are incompatible, I'm sure that more people will soon answer. Bye!
jastey
I would recommend also posing this question in the G3 BGII fixpack forum, to get answer from the original authors. Some BWL mods (modders) not working with the fixpack but recommending Baldurdash, stating BGII fixpack is buggy is something I see happening here frequently. But I am curious to a sincere answer, one that gives facts, not prejudice.
Arkain
@Magus_025
I'm asking out of curiosity, not because I intend to use the fixpack.

@jastey
Well, exactly because of this - BWL modders like Sikret stating it's buggy or whatever - I posted the question in this forum. As BWL users write such statements I'm sure they have their reasons for it smile.gif
cmorgan
Regardless of reason, if a modder states he is designing his mod for use with a particular set of requirements, please follow the modders directions as best you can, and let the dudes who work behind the scenes scrap it out over philosophy of code fix vs tweak vs inclusion vs best practices vs usage -

Silkret expects and recommends a specific fixpack. He wrote his mod based on that particular platform, and needs to be able to help you troubleshoot any potential problems based on what he is comfortable with. If he asks folks to use Baldurdash, then the safest thing to do is use Baldurdash, and save the BG2 Fixpack for other installs.

A search of every single forum in the IE community is filled with answers to this question from both points of view smile.gif
Baronius
We have our reasons, indeed. I really don't know exactly what to write. I'll try to be as comprehensive as possible, but then some advanced knowledge in certain fields of software technology might be required to understand certain parts. Of course, I'll bring up concrete examples and points that can be understood easily, but the most important point (interfaces) requires some additional knowledge.

I've just finished it, and it took a few hours. (I guess certain parts even could be used as a theoretical guide for IE modders.) It's very long, but if you read it, you will understand a few things (unless you've already known them, of course). It's no more than reading the daily newspaper (unless you only check the sports page or read online news wink.gif ). I welcome any questions, I've spent much time with this so I'll answer if something is not clear.

There are four main problems with G3 Fixpack:
  • Its major developers seem to have very strange notions. It results in some sort of urge, which forces them to search for more and more (minor) things to be fixed. This wouldn't be bad, but last time I read about it, it seemed to be at such a level which isn't purely beneficial any more. I will detail the reasons later.
  • While they promote it as a community project, actually they are just expecting ideas for things that can be "fixed" in some way. Again, this wouldn't be bad either, but unfortunately they don't really accept criticism/suggestions if it's contradictory to their standards and notions about fixes. I'll also detail this point later.
  • As a direct consequence of the first problem (above), changes are often implemented quickly and sometimes with inadequate care, unthoughtfully. Most of us here at BWL core team are in favour of "proactive" development, and not "reactive". The latter one is also unavoidable and required, of course. (Bug reports, fixing, testing etc.) But its significance and realization greatly matters. G3 Fixpack developers often argue with things such "every mod has some bugs" when G3 Fixpack is criticized to be buggy in its every release. It is true, but it could have less or less severe bugs, if certain guidelines were followed. Further explanation can be found in a later part of my post.
  • All those above would be more or less okay, but they call it "BG2 Fixpack", and consider it and spread it as the (new) standard fixpack for BG2. While most players won't notice the problems introduced by the G3 fixpack, it means severe risk to many types of present and future mods. I'll clarify this too.
All in all, the apparent desire to make the mod bigger with new "fixes" has unpleasant consequences: severe bugs in each release (perhaps only revealed after much time), unnecessary changes on the original game content (that may break certain parts of other mods or force them to "fix" a fixpack!), and mandatory changes not agreed by every player (I'll show an example). Problems for modders and players. More detailed explanations can be read below.



I TRIED IT

There are more problems. The questionable "fixes" is only a part of it, but an important part. I suggested an optional component for questionable, subjective fixes -- which they refused. It's OK that they reject bigger suggestions that are contradictory to their guidelines, but then they shouldn't defend themselves all the time with this "community project" disguise -- implying that the community participates on such a level that would seriously influence their major changes and decisions. In a certain respect, every mod is a community project which has a forum for feedback. On the other hand, none of the mods even with a public forum are clearly "community projects", because they are not like wikipedia with free access and certain rules. This applies to G3 Fixpack as well. Anyone is free to contribute? Anyone is free to tell his or her opinion? Yeah, but they even won't consider it if it's against their notions. Still, suggestions of many community members are being implemented? Those suggestions which the main developers agree with. Those players and modders who don't agree their basic guidelines even don't visit the forum to suggest anything. This is similar to the debate of two politicians in the TV, where the viewers can vote for one of them by phone (SMS) during the talk. None of the experts consider it representative statistics (i.e. reflecting what people think about the politicians), because the voters are from a certain group -- those who are interested in that particular program on TV channel -- which isn't independent of their political view. (E.g., fellow-travellers of the right wing aren't interested in that topic, so they don't watch the program, and thus do not vote at all.) Similarly, those who agree with the methodology and principles of G3 FP developers often visit their forum and offer their suggestions. I can't say "please implement this particular change" or "please remove this", or I would be forced to list all e.g. all Alignment "Corrections" to be moved to their "optional but cool" counterpart. (And the answer would be: "please give concrete examples to each one you want to be moved; why shouldn't they be in the core component?". Why are they in the mandatory, core component at all -- in the same component which includes the very crucial game fixes?) When I tried to start the introduction of my point about theory and problems of general nature, none of them was interested. As you will see below, questionable fixes and optional components are not the main problem.



THE NOTION, ITS CONSEQUENCES, AND EXAMPLES

This is how the G3 Fixpack is being promoted:

QUOTE
All the fixes of Baldurdash, plus a few hundred more. Now available, with more fixes being added in every release.

Of course, it would be the smallest problem (in fact, not a problem at all) how someone promotes a mod. Unfortunately, G3 Fixpack exactly seems to reflect what they write. (While it's not my main point, I decided to write down some criticism in the next lines.) First of all, a "few hundred" fixes more? 90% or more of the important, common bugs have already been fixed by Baldurdash. So I wouldn't emphasize "hundreds of fixes" unless I wanted to convince players to use the mod in any way. "With more fixes being added in every release". Are we so sure that there will be more fixes? "More changes being added in every release", "more refinements being added in every release", ... -- this would be different, and acceptable. I remember one of the G3 Fixpack developers saying (not sure whether on IRC or forums) something similar to the following: "BG2 contains many bugs, and we decided to find all and correct every -- even the smallest -- bug.". This is a very nice approach and goal, but as I've said, the urge it seems to cause hasn't become beneficial, eventually. (The quotation might be slightly inaccurate, the wording might have been different. Nonetheless, even if no one had said this, it wouldn't change anything on my point.)

Sometimes I get comments such as BWL (more accurately, 3-4 people from here) is the only one who has objections with G3 FP all the time. It is not true. A good example is Blucher, one of the authors of BG1NPC project, who also had a similar opinion about the effects of what I've called "urge" above:

QUOTE
I think if you guys are really wanting this to be the new standard in unofficial patches, then it should place an emphasis on significant bugs and errors. The main question should be "what can the Fix Pack leave out?" rather than "what can it include?"

Note: You can find the source here. I do NOT state that Blucher shares the same or even similar objections as we, except for that one particular point that he has told in the aforementioned post. I do not know anything about what he thinks about other matters raised by me.

Every mod contains errors. "Deprecated fixes" at the beginning of this page shows such an issue. It was deprecated after a discussion that followed my post, and was ended here. I'm not sure if the "urge" was responsible for making this mistake, but I believe it had some partial role. (The sentence "BG2 is buggy, I must identify the bugs" might have been dominating the thoughts of the person who found the problem.) This is the smallest problem, though. Everyone makes mistakes, it's totally OK. You will understand my real doubts later in this post.

G3 Fixpack developers always say something like "please offer concrete examples" (occassionally: "more concrete examples, please") after criticism. Examples are obviously required, but they have never understood that my problem is of general nature -- which obviously affects the future of G3 Fixpack as well. I offered concrete examples as well, but that is not the main point. It's important to note, although this post is mostly general, specific examples will be provided as well.

So let's examine what is "fixed", how and why. First of all, it contains tweaks as well, many of them in different components prefixed with "Optional But Cool". It also includes other components, including one (if I remember correctly) for modders as well. These are OK. So let's restrict our view to those components which are supposed to deal with fixes.

The definition of "fix". In a discussion with one of their major developers, I offered a definition to them. After repeatedly asking why I got no reaction, I received the answer "it's not practical enough". Many of us at BWL believe that a fix should be interpreted strictly. That is, correcting a broken item is a pure fix, but implementing changes on a creature's alignment because "we think it's somewhat more logical" is not. Implementing significant changes "because we believe the developers' intention was this", also not a fix. (Though, no one has said Baldurdash, Baldurdash-WeiDU or any other works would be perfect & seamless in this respect. But this doesn't justify the many questioned changes of G3 Fixpack and the approach of its developers; on a side note, there is many more of such changes in G3FP than in BD.)

On the other hand, no one has said that that it's incorrect to implement cool things that can be (more or less) called "fixes"! Such quasi-fixes, tweaks and modifications are good -- if they are put to the correct component, with proper descriptions. No need to put them to a component called "Quasi-fixes" or "Tweaks" (or possibly "Optional But Cool"), it's enough if a "Subjective Fixes" component is made, with the note that its content reflects the opinion of developers and contributors AND that it may possible cause incompatibilities with other mods. It can be said that almost everything can be questioned, but can you question a sword which proficiency is set to Morning Star? It is really something to be fixed. To sum up, those fixes that are seriously subjective (and possibly questioned by more players) could be put to a "Subjective Fixes" component. So changing the price of a good item with an incorrect price of 1gp to a reasonable, logical value could be considered as a (strict) fix (provided we only have two, and not three components to collect fixes) -- if players have no objections. (For example, I wouldn't have any objection. And the proper price could be discussed publicly.) On the other hand, e.g. changing alignments of creatures is a more sensitive question. All such changes are strongly recommended not to be strict fixes. Is it a game bug that a member of smugglers is neutral and not evil because he attacks you after his business has just been revealed by a bunch of armed people (you)? Is this a BUG that requires a FIX (to be in the mandatory, core mod component)? Should such "fixes" be accepted to increase the total count so the mod adds "few hundred more fixes than Baldurdash"? Perhaps the guy started smuggling because he couldn't feed his 10 kids... probably better counter-arguments could also be told, but this doesn't change on the fact that such things are judged differently by every player, and should not be considered as pure bugs. Meanwhile this one might have been moved to an Optional But Cool component (estabilished after I and others told their doubts on a forum), but it doesn't change on anything. There are surely many other "fix" collections such as alignment changes; and even in case of Alignment Corrections, most of them (hundreds of aligment changes) remained in the Core component! Just look at the section "Creature Alignment Corrections" on this page page.

I can recommend reading the topic that also includes Blucher's aforementioned post. Doors not consuming keys. Maybe annoying to players, but did any of us have horrible dreams because we had to carry 4 keys sometimes when not having a Bag of Holding, or had to store some items in a chest of an Athkatla inn? On the other hand, how can modders design their work if they have to read every bit of G3 Fixpack's documentation searching for such dangerous changes? How can a modder involve an existing game item that he tested if it's possibly removed by the core component of a standard Fixpack? Install Fixpack and accept its changes without condition?! (On a side note, this also leads to a more theoretical field which I'll detail later.) One of the "consumed keys" used to break one of Improved Anvil's upgrades.

Quoting Blucher again:

QUOTE
Keeping the "odd" keys would be a good idea imo, for two reasons. (1) Some mods use these items, and (2) from a roleplaying perspective, it's nice to keep those items as little mementos of your previous adventures. In these games I always keep the notes, bounty notices, and other little odds and ends you can collect throughout the course of the game. Granted I usually only do this the first few times I play game when it's all still new and wonderful, but still...

And another player, Anomaly:

QUOTE
I really hate to have some keys consumed and not others, this is clearly a glitch in the original game. I hate to have a door opened because I have a key in my inventory without knowing it (e.g. without the famous SFX "key used" jcompton was talking about). I hate to have a set of keys without any means to know if one key have been used and can be discarded or not.

Two different viewpoints. So what to do? Different component! Fix too small/short? Then to the "Subjective fixes" (or whatever we call it). Anomaly can still install it, while people like me don't have to when choosing Core Fixes. What about "re-patching" it again by those mods which require a particular key? (Note: something very similar was mentioned in the topic I've quoted from.) Not too elegant. In fact, horrible. Making a mod (which is -- on top of it all -- supposed to be a fixpack) to fix the game, then in another mod fixing the changes made by the first mod (the fixpack)! Wouldn't it be better to put all problematic or questioned changes to that "subjective" component or to an "optional but cool" component in advance? Justification from the modder's view: let's avoid unnecessary changes that can affect other mods. Justification from player's view: as the opinion of Blucher and Anomaly reflects, every player is different; every player prefers other things. Justification from implementation view: optional component, or part of an optional component; harmless.

Later, they removed that particular key (the one which broke the Improved Anvil upgrade) as well as another key from their fixes after Rabain brought up some good arguments. However, all other consumed keys remained in the core component. (Please don't forget that when I refer to something in FP, it applies to the latest released version, unless I specify otherwise.) If this is how they imagine it (i.e. adding fixes and then removing/altering them if there is a demand), it's not good. It's reactive, and may cause much risk or worse: it won't be revealed until it breaks something in a mod (like it did with IA). It's not good to build on principles such as "we will add it to core fixes, and later we can change on it if it causes problems or some acceptable counter-arguments are received". Those who need a specific change (I don't call it fix) can install an optional component, and those who don't need it (or it would break another non-fixpack mod) would not be forced to install it as a part of the core component (which also includes the important fixes, which are otherwise highly recommended, required). If they handled it in this way, it's possible that Improved Anvil could list the "Subjective fixes" (or even only particular components) of G3 FP in the list of mods that are strongly not recommended; instead of doing the same with the whole G3 FP itself. So what I've always tried to explain to G3 FP developers is that their general approach requires a change. Concrete examples? There are 6 concrete examples today, there will be 15 tomorrow. No one knows. The problem is the root of the tree, not the leaves, unfortunately. For example, while the key consuming problem was sorted out, it seems that the aforementioned Creature Alignment "Corrections" may break clerics' scripts in Improved Anvil. They are in core component, remember. Improved Anvil is sometimes criticized by modders that it forces players to install everything in one component, and that it "restricts players" by using anti-cheat techniques. No one is forced to play IA. On the other hand, people who are misled by the statement about Fixpack introducing hundreds of fixes more than BD (which implies that there are hundreds of bugs in the game exclusively fixed by G3 Fixpack), those who believe this is the standard -- do they have a choice not to install mod-breaking "fixes" together with the other major and important fixes of the Core component? If they want the fundemantal fixes, they have no choice (or Baldurdash or BD-WeiDU, but "those are deprecated, you're advised to use BG2 Fixpack instead").

Arguments of G3 Fixpack developers are usually the following: (1) They find the changes logical, they can be considered a fix. As I've said, this is completely OK, but subjective or dangerous fixes should be in an optional component with all necessary warnings OR in a different mod. (2) Trying to follow assumed developer intent (i.e. what the original developers of BG2 tried to do, or would do), especially when a reasonable, logical solution can't be found or would be totally arbitrary. The problem with this is the same: how can you guess what the developers meant? Subjective, again. Additionally, there is an apparent self-contradiction (making mods to improve the game by changing what the developers did vs. guessing and realizing what they wanted). It's subjective, and uncertain. You can't be too sure your guess will be correct. Blucher's comments about the alignment "corrections" and guessed developer intent:

QUOTE(Blucher)
Also a wholesale change to NPC alignments to conform to some standard is another one of these changes that detracts from the game. Having, for instance, a Lawful Evil Majordomo (and others with surprising alignments) adds texture to the game world. We don't know what lies in the heart and soul of the Majordomo; he appears decent enough but that doesn't mean he is necessarily good. Seeing such a character show up as evil with a casting of Detect Evil makes one take notice and perhaps spurs the imagination. Regardless of these roleplaying considerations, can anyone really discern the designer's intent in these cases? It's possible that the character was based on a lawful evil Majordomo from one of their P&P campaigns. Who can really say that this character (and others) weren't meant to have alignments they have in the standard game?

On a side note, while I understand that implementing resistance to "devour brain" may be much work, would it be much more work than checking hundreds of creatures to examine if their alignment can be changed? (It's another matter that I might also not agree with the justification "it doesn't follow PnP in BG2 anyway", but I am aware of the fact that BG/BG2 can't precisely follow PnP in every detail.)

There is a BETA component of G3 Fixpack, but it's rather for untested changes, so mainly for technical purposes. The "Subjective fixes" (or any equivalent component with a different name, but same principle) has never been added.



A LITTLE THEORY, WITH EXAMPLES AGAIN

Unfortunately, even putting the subjective parts to a different component is only a partial solution. Most players install such components as well; i.e. install optional but cool components -- it's Cool after all! The phenomenon (consequence of the approach of main developers) what I call "urge" is responsible for it, most likely. G3 Fixpack includes one or more serious errors (e.g. the one which may cause IA's cleric scripts to malfunction), and previous releases also included serious errors. A part of these errors are of technical nature (such as crash), which occur in every mod. However, if the "urge" was smaller, such errors might be made less often. Hopefully, the BETA fixes component improves this. On the other hand, the rest of the errors are due to unnecessarily modified content. Modified content which even isn't in an optional component (though, as I've said, this wouldn't help because most players install "optional but cool" components), but in the core component instead, together with the crucial fixes. A good example was the particular key that broke IA's upgrade, but there are still many removed keys in the core component! What if another mod would like to use one of them?

Now a more abstract view. Generally, a mod that affects the game in any way uses some method to connect to the game. To apply its change. This is called interface, entry point. Old TBG/IAP archives affected the game on file level (interface: the file itself, read by the running game), TP2 scripts modify it on data (content) level. (Of course, much more detailed classification could be made; no need for it here.) If you add a script block to a script file via WeiDU (e.g. EXTEND_TOP), your interface is the area script file. Your mod might add many quests, perhaps some of them can be started by talking to the NPC added by this script. The related quests are new content -- and if you use completely new areas, creatures and other objects, it's possible that the only connection point (interface) of these quests will be the modified area script! Other content is brand-new.

Why are interfaces interesting? Well, more mods may use the same interface. The effect can either be destructive, or non-destructive. Think of IAP files. What entities are affected? Entire files! If an IAP mod overwrites the file of Arbane's Sword, it "monopolized" the interface, because the whole ITM file is taken! A next IAP mod just overwrites Arbane's Sword, breaking the previous mod's changes. Now the ITM file is the "possession" of this mod! What's the fundamental difference between TP2 and IAP in terms of applying the changes? As we know, WeiDU allows the changes to be made inside the file. The philosophy (and method) often referred to as "patching" is simply minimizing the subject (data) of the change to the least possible size, when "occupying" the interface. Obviously, since "patching" can affect the smallest possible data unit required for the interface, it doesn't offer solution to problems such as two mods changing the same attribute of an object. Just imagine that they both change the price of Arbane's Sword. They need the same interface of the game. Such things are also often referred to as "conceptual incompatibilities", because there is a conceptual contradiction: "I also want to change the price in my mod, as well as you." That is, in this case the effect is always destructive. (What happens if one of the modders wants to change the price, while the other would like to decrease the enchantment? Is it destructive with IAP? What about TP2? Assume that the modder decreases the enchantment and some other features because he wants to make the sword less powerful; the other modder increases the price and other features -- not affected by the other mod -- to make it stronger. It is non-destructive, isn't it? However, one of them makes the sword stronger, while the other wants to make it weaker. Conceptual incompatibility? Depends who interprets it and how!)

The first example, the extended script is a perfect example of a non-destructive effect. An item can't have two prices (it will always have one interface), but a script can have multiple blocks, right? Adding another block won't be destructive in data level. (Note: interaction and thus incompatibility is still possible, but on a higher level, and not on data level.) Again, the interface was the script (or -- depending on the interpretation -- the script block), and the change was non-destructive.

Now a few words about dependencies. Notice that the interfaces used by a mod are dependencies. The mod depends on them. If Arbane's Sword is removed for some reason (Total Conversion?), the mod that changes it can't be installed -- or it can be installed (if the ITM is allowed as a missing file), but this feature obviously won't work. This may not be so horrible if the mod adds 40 other improvements that can be installed seamlessly, but imagine what happens if the script file is removed which adds the starting creature (with the starting dialogue) of your mod. Your mod won't work, because the interface was removed. Now you could ask: nice, but how can a script be removed (or why would a mod remove it) if it isn't a Total Conversion? It's possible, very possible! It's enough if all references to it are removed from the game! Arbane's Sword. If it can be found nowhere in the game (no creature inventory, no container, no script CreateItem etc.), the sword will end up as a miserable freebie in the BIFF or Override! You will see an example below.

Unfinished Business v15, which is the latest version at the moment. (I haven't played it as a mod in my game, so I have no opinion. In no way I would like to introduce it in negative light as a mod; it's just an example of how interfaces are removed.)

CODE
COPY_EXISTING ~ar0021.are~ ~override/ar0021.are~  /* Associates correct area script */
WRITE_ASCII   ~0x94~       ~AR0021~               /* Corrected Crooked Crane, Level One */


The code above can be found on its TP2. It belongs to the "Restored Crooked Crane Inn" component. The original game had a different script name assigned to it (so not ar0021). It's a nice cosmetic change, but very dangerous. Dangerous because UB even isn't a fixpack, and breaks all mods that use this area script as an interface. (Of course even a fixpack also shouldn't do such a thing without serious justification.) (UB broke Tower of Deception v1 with this, and would still break v2 if Valiant didn't implement a change. Again, new fix to fix the other mod's fix?) Authors who create mods that use this interface might not have UB installed. In fact, many mod authors use an un-modded game (perhaps only with a fixpack), a fresh installation, so they will definitely use the original Crooked Crane script if they want to add something. The script reference which will be missing from all games that have UB installed.

Sometimes we (who have problems with the G3 Fixpack) get accusations such as "you simply do not like the fixpack, so you call your mods incompatible with it". As you can see, this is not true, and there are severe arguments. Including the interface problem. Unthoughtful "fixing" can be risky, because you may remove original game interfaces. I know that fixes are often required, and I know it well that complete, perfect solution is very hard or does not exist sometimes, but if we follow certain guidelines, the probability of problems can be decreased a lot. Again, one of those guidelines is not making unnecessary, cosmetic changes ("fixes") that may affect original game interfaces. In other words, changed alignments make Detect Evil spells work correctly (provided the alignment change is reasonable, logical), but may break mods that depend on their original game versions. Yes, even an alignment (or any attribute, even an area flag i.e. one bit!) can be used by a mod, i.e. a mod may depend on it! So changing anything in the original game must be considered very carefully. Making that key (Symbol of Amaunator) to be "consumed" was a very spectacular and typical example of a destructive change. Improved Anvil used it (and still uses it) for an upgrade, but since the interface was removed by the G3 Fixpack (in the game), that release of the fixpack broke IA's upgrade. The issue was addressed, but this is the case when we say: reactive solutions are inadequate. This is when I can't offer concrete examples to G3 FP developers; this is what I referred to as "theory" during a discussion with them. Because it's theory, it's an approach. You overwrite an interface, and if any other (possibly future) mod uses it, you remove the "fix" or ask that mod to fix your "fix"? You change something, and based on the feedback, you revert it in the next release of the G3 Fixpack? Because you got reports of concrete problems. Isn't it easier to follow certain guidelines (i.e. not manipulating original game interfaces unless really crucial), i.e. theoretical (= general) considerations?

Even if we follow certain guidelines, sometimes incompatibility is unavoidable. Conceptual or technical, sometimes it's unavoidable. (It also depends on how we interpret these words. When the same interface is used -- e.g. price of an item -- to apply changes, it is often considered as a conceptual incompatibility. Indeed, an item can't have two prices. On the other hand, it's also technical because the same interface is used twice. In this case, the technical problem follows from the concept itself, though. In case of mods that want to change the script name of an area to different references, it is a technical incompatibility -- at least, I wouldn't call it conceptual. On a side note, the statement "technical incompatibilities can always be solved" is very problematic. Maybe they can always be solved, but at what price? How far does the modder have to go? If the inventory of a creature gets full due to a mod or two, is it possible to add items by another mod? Not really. And it's not really a question of concept. Yes, it's given that a creature can carry no more than a certain number of items, but this is a relatively high number, so it's not surprising that a modder might want to add another item. Of course, you can probably solve such problems via script or something like that, but then you have to prepare your mod for it. So it's a serious matter of technical compatibility. (Fortunately, mods usually don't add lots of items to the inventories of existing creatures.) It's also important to note that solving technical incompatibilities is a reactive process, and requires time as well as information. If your mod is not prepared for it, you will be afraid forever that future mods will affect it, and you need to find a solution together for each mod.)

Compatibility is not easy. As you can see, it is more than just COPY, EXTEND_TOP and WRITE_BYTE. Do you understand why authors of big mods say that their mod should be installed alone, or with one or two specified mods? It's a lot of time, and guarantees absolutely nothing if you implement changes to make it compatible with 37 other mods. Big mods that add much content and have many dependencies on the original game (they use many interfaces) are sensitive even to the least change. If any of the 37 mods (which were made compatible in the installer of the big mod) adds a new change in its next release, it's possible that the compatibility will disappear. G3 Fixpack is recommended by its developers as the standard fixpack, a part of every BG2 install. If it overwrites interfaces, it's a potential risk to many mods. (And as we've seen, it does overwrite/remove game interfaces.) This is why it's crucial to follow certain guidelines when developing it. You might say that all this is nice, but you haven't encountered anything horrible in your game yet, even when using many mods. This leads to the question of how "compatibility" is interpreted.



A FEW WORDS ABOUT COMPATIBILITY

It's very important that players and modders have a different approach about compatibility. Even modders have different interpretations (as we know). Let's try to approach it and "define" it from the viewpoint of IE modding, but using a different version for different groups (players, modders, other modders etc.).

Most players want to play as many mods as possible during the same BG2 game. Free time is limited. Many of them doesn't mind if not all mods' features are available exactly in their original form. As long as the game is enjoyable, it's not a problem if there are insignificant collisions among certain mods' features -- the large amount of total content compensates them for these minor problems. So usually, it's true that players consider two mods compatible as long as they can be played "at the same time", during the same BG2 game, without fatal, spectacular or irritating problems (such as game crashes or broken quests). Often, even they tolerate more severe bugs as well (such as a broken subquest or a corrupt item) if the game can be continued normally and other parts of the mod work fine.

The above interpretation (written in bold) seems to be preferred by very many people (including modders), because it's practical and more or less describes the reality. On the other hand, in certain cases, it might be very misleading as well. Those who're familiar a little bit with computer science know it very well that even one bit of difference in a software can be "fatal" sometimes. This is true to Infinity Engine game mods as well. Just because it doesn't cause a spectacular error, it's still present as a latent bug or influences the game in a hardly noticeable way. For example, a modified game script or a corrupted undroppable item (by ModA) can greatly change on the battles of ModB -- without the player noticing anything except that the battle is ridiculously easy or that the enemies behaviour is strange, predictible etc. Which he will believe to be the normal functionality of ModB, considering he knows that the encounter belongs to that mod -- and will judge ModB according to this. If the developer(s) of ModB didn't test it with ModA or didn't examine ModA, no one will learn that the problem exists. (Now do you understand why Sikret refuses comments from players with unsupported mod installations? He does not want to spend 5 hours or more just to find out that the particular battle is seamless, and an unsupported mod caused the problem.)

It's justified to believe that some authors might not be happy with the aforementioned approach of compatibility (especially creators of big and/or complex mods). They want to make sure that the player will experience what they actually created. As I've explained earlier, it isn't just about "damage changed to 1d6 from my 1d8!" sort of incompatibilities (overwritten interfaces): broken quests and dialogues, unreachable areas etc. are also possible. Basically, "anything" is possible.

While a small mod can easily be understood and "patched" to be made compatible with other mods, it's not true to big and/or complex mods. It takes a lot of time, and as I've said, it guarantees nothing.

Can we expect a modder to use the "definition" of compatibility preferred by players? "They should work, I tested it". "Except for minor flaws, they worked without problems." These are perfect for players (and we don't want to take it from them!), but what about a modder who spends 2 hours (design, impl., tests etc.) on a single item upgrade? Can he take the responsibility for his or her mod when giving it to players if he/she can't guarantee that some upgrades will work with certain other mods? This shouldn't be interpreted as something extreme. Of course, certain incompatibilities can always arise, and several incompatibilities can still be fixed in a reactive way. Everything depends on the severity and complexity of the issue, and on the size and complexity of the mod. In no way I want to question the skills of the G3 FixPack modders, but sometimes it is disappointing to see that someone (mostly people with no or little modding skills, so not the FP modders themselves) questions the benevolence of authors such as Vlad or Sikret -- relying on what they heard from "TP2 ninjas" and other good, skilled modders. I can advise to these people (i.e. those who unconditionally accept the word of skilled modders) to reconsider their viewpoint. No modder is unfallible, we're humans and any of us can be wrong occassionally. Before making a (possibly not too polite) judgement on modders who seem to be different from you or your favoured ones, please think a bit. "Am I surely right?" Freedom of speech is nice, but should be practised along with tact and respect. (If anyone is interested in the "good wishes" we received, the second half of this post includes a collection.)

So while a modder who has experience with small and medium-sized mods probably has an compatibility approach similar to players, another one with different type of mods might prefer a stricter interpretation. The latter group will use "partial compatibility" ("partial incompatibility") less often than the first group of modders. As you can see, it's not for annoying players and deliberately breaking others' mods.

"They were tested together in practice, so they are compatible with each other." This is often stated after someone installs two mods, plays them and doesn't experience/encounter crash, invalid/corrupted item, spell, BAM or other object, broken quest or dialogue, or any other spectacular problem. Usually, the installed mods of the player who tested it are also listed. This is very important. Tests can be misleading. Others might have other, additional mods installed, and the two mods won't work for him/her. When an author (such as Sikret) says he knows better his own mod than anyone else, it should be taken seriously. Usual tests aren't 100% reliable enough, while theoretical (and thus precise and general) knowledge about a mod helps to avoid bugs before they would be encountered. (But this doesn't mean tests are not needed. Typical, well-defined tests are required.)


Again, compatibility is not as easy as certain people think. Since IE modding has no real standards (of course, de facto standards -- it would make no sense to speak about de jure ones), and WeiDU doesn't offer high-level functions (i.e. functions with high abstraction), it takes a lot of time to ensure compatibility between mods. (On a side note, for those who're interested about interfaces, dependencies etc.: software interfaces are very similar to hardware ones. There is probably a perfect analogy -- it would be strange it there wasn't. Just imagine if every mouse manufacturer used an own "interface", so they would use no such thing as "USB". Chaos! But it's needless to speak about the importance of standards, most readers know it very well anyway. Who hasn't heard the name ISO or ANSI yet?)



CONCLUSION

G3 Fixpack developers and contributors has invested a lot of time and energy to find and fix bugs. I'm sure the community appreciates their efforts. (Including myself. I've never said they should stop doing what they do. I just say: lead developers/coordinators, please do it in a different way.) I also don't doubt that they've found bugs which correction is really beneficial to increase the gaming experience. I just don't agree with certain parts of the methodology, and I don't think that the "urge" I mentioned is always beneficial. Modding is one of the hobbies, so it can't be done with complete perfection and professionalism. (I wish I had professional skills so my Grey Clan and Herbs mods contained less problems!) I'm sure they do their best. If they don't listen to us at all, it's because they are very confident and/or they believe we're just there to annoy them or to get advantage to our mods by discouraging the use of their works. Confidence is a nice thing, but limitless confidence isn't beneficial. Everyone can be wrong. Additionally, sometimes not everything is unambigious or obvious:

QUOTE
If you're talking about the Improved Anvil mod, then yes, you'll find a lot of undocumented (and IMO very unwelcome) changes such as SoA creatures with HLAs and other silliness to make the game harder.


Why is only the "very unwelcome" prefixed with "IMO"? Its lack (and the overall style of the statement) reflects much confidence, as if it was obvious that HLAs exclusively belong to Throne of Bhaal. Is it silliness? OK, it is an opinion. But it isn't a general truth. How can it be stated so confidently, so certainly? However, I don't want to tell others how to speak. This example just illustrates that certain modders (including some of the key developers of G3 FP) are very confident, perhaps too confident. They expect very very precise arguments, and it seems they can defend their viewpoint for a very long time. It wouldn't be a problem, but the type of arguments they seem to acknowledge and accept is restricted. For example, if my arguments haven't been "concrete examples", they were ignored. (Now I spent much time to write this post, and its key thought is still theoretical. Sorry.) Why were these suggestions ignored? Because these remarks didn't meet their standards, the standards that they defend to the end. They accept arguments, but they are so confident in their viewpoint that the question of "Can I be wrong?" never appears for them. They expect others to convince them, and never try to find the problem in their own considerations (because they're totally sure their basic considerations are correct).

To sum up the problems:
  • Unless the "urge" decreases and the approach changes (Blucher: "what can it leave out", rather than "what can it include?"), it has a very high risk that every release affects some original interfaces in a negative way. It endangers current and future mods, and forces mod authors to read the complete documentation of G3 fixpack, and check the changes when a new G3FP version is released. If new changes are implemented crazily, and more and more elements are tried to be identified as "bugs" to be "fixed", it has a big chance that even more interfaces will be overwritten. I can't support G3 FP as long as this isn't admitted and addressed by their key developers/contributors.
  • "Subjective fixes". Alignment fixes (and all changes that affect original interfaces) should be in a different component (one different component or more OBC components, it's just a detail) OR to a different mod, and a warning must be included. (Remember, even alignment changes may break content in other mods'.) The alignment changes directly affect original game interfaces, which are otherwise not buggy. (Of course, basically every change on the game made by mods affects potential interfaces of other mods -- this is why only the really crucial changes should be implemented by fixpacks, especially on popular interfaces such as area script references.) Things which are undoubtedly buggy in the original game (many of them are interfaces) can be fixed -- other mods can't use things that are broken... (The area script reference "fixed" by UB is not a such a bug. It may be a bug, but it's harmless because AR0021.BCS doesn't exist in the original game, and the original script name must be considered a popular interface.)
  • Due to the promotion it got, most players install the BG2 Fixpack, they are happy because they have the "latest standard fixpack", and they are happy because they believe their game now runs more seamlessly, with "hundreds of bugs fixed" which Baldurdash and other fixpacks don't include. As you can see, G3 Fixpack requires serious changes. First of all, "plus a few hundred more" is misleading, it should be changed to something more accurate (even if it makes the slogan longer). Then, G3 Fixpack -- all new "fixes" -- should be re-examined (it requires 7-10 hours, so can be done in a week -- many people spend much more than 2 hours on forums per day!), and moved to different components with warnings, or -- which is easier -- to a different mod. (So "BG2 Fixpack" would only contain FIXES. Sounds good.)
  • Communication. I ask G3 FP key developers not to ignore even criticism of such nature that is apparently contradictory to their very well-estabilished, basic guidelines. Guys, keep your confidence, but sometimes really examine your own methodology and principles as well! You are one the best modders, be even better!
As you can see, I requested all novelties of the G3 Fixpack to be re-examined, and marked with a warning if needed (usually, if it affects interfaces) or to be added to a different file (different mod). If "BG2 Fixpack" contained just the more important, crucial fixes, there wouldn't be such problem. Especially because the fundemantel fixes correct actual, obvious bugs, and those don't really endanger potentional mod interfaces (a mod rarely uses or refers to incorrect elements of the original game). So G3 FP's "hundreds of" new changes has a price, if its developers want it to be good and safe. Finally, again, smaller speed (urge) please. No need to examine the poor beggar of Athkatla twice to find a bug in his colour, one examination is enough.

For me, perfection would be a core component in a mod (Baldurdash plus other new G3 FP fixes), and all other risky stuff (i.e. parts which may affect dependencies/interfaces) collected in a different mod, including the "modder pack" (super-happy-fun-lucky pack, IIRC). I haven't examined the game text update, it is probably okay to be in the core mod (and has no fundemental, conceptual problems, so if it has any flaws, those will simply be fixed!).

So, Arkain, G3 Fixpack isn't badly coded, in fact it's a very good code. Its coders are experienced in the TP2 scripting language, and know BG2 pretty well. (On a side note, all the compatibility and interface problems I was talking about could be handled very well with an improved distribution system, possibly an improved WeiDU. TP2 script commands offer a very good low-level interface to the game -- you can manipulate bits & bytes, insert bytes etc. -- but it lacks abstraction. ADD_CRE_ITEM and similar commands are good examples of higher-level functions. They are more abstract, because they disguise the implementation from the user, who doesn't need to know so much and also has no chance to make mistakes. Additionally, even a very high percent of compatibility issues could be detected during the installation of a mod, because WeiDU would know what interfaces were changed by other mods. It would require many parts of WeiDU to be improved, but much source code is freely available already, and it would allow less experienced modders as well to make bug-free TP2 and mods!)

Any questions are welcome.
Sikret
QUOTE(Arkain @ Jul 28 2007, 10:52 PM) *
Hi.

Well, to make a long story short: why is it not recommended? I'm curious why this fixpack seems to be the reason for many bugs or other problems. Because it's poorly modded? Because of the methods used to actually "fix" things? Something else?

We have two questions here:

1- Why is it not recommended?

2- Why is it source of bugs?

A third question is: Is it incompatible with IA?

The answers:
QUOTE

Why is it source of bugs?
Mistaking players for testers!

There are two viewpoints here: Do you test your mod thoroughly before releasing it or do you release your mod first and then wait for players to test it and send reports to you?

I follow the first philosophy in Improved Anvil (hence you see absolutely no critical bug reports in IA's forum); they follow the second philosophy.

QUOTE

Why is it not recommended?


First, because it is bugged.

Second, because it confuses between "fix" and "tweak".

QUOTE
Is it incompatible with IA?


Upto IA v4.2, it was not listed as "strictly incompatible", it was just listed as "Not recommended". But once IA v4.3 is released, it will be listed as "incompatible", because of its changes to alignments which can break some of IA's scripts.
jastey
Sikret, your post is exactly what I meant with "prejudice", or call it rumour, or attitude. It is the same level as "IA breaks Cromwell's upgrade dialogue", a statement without any examples or proof.
Baronius, your post is more what I was hoping for, although it is so long I am not sure when I will be able to read it thoroughly.
Sikret
QUOTE(jastey @ Jul 29 2007, 04:11 PM) *
Sikret, your post is exactly what I meant with "prejudice", or call it rumour, or attitude. It is the same level as "IA breaks Cromwell's upgrade dialogue", a statement without any examples or proof.


Examples are plenty for those who want to see:

If you seek examples for bugs in BG2 Fixpack, lots of them can be found in different forums (the bug with wish spell in its previous version, the bug with "Friends" spell in its recent version are just two of them). If you seek examples for something else (other than bugs), then I'm not sure what you are looking for.

Just note that I agree that it's natural for any mod to have bugs. What I'm talking about is the attitude of "mistaking players for testers". Once someone (who is one of the main members of BG2 fixpack team) told me that he doesn't need to test anything in practice, because just by looking to a code, he can say whether it will work fine or not! This arrogant attitude is the source of bugs which could have been otherwise detected before release.
Baronius
QUOTE
Sikret, your post is exactly what I meant with "prejudice", or call it rumour, or attitude. It is the same level as "IA breaks Cromwell's upgrade dialogue", a statement without any examples or proof.
Baronius, your post is more what I was hoping for, although it is so long I am not sure when I will be able to read it thoroughly.


I'm sorry about that jastey, but if you understood my post, you would understand Sikret's viewpoint as well. You can't handle them differently. My post provides the complete justification of refusing G3 Fixpack in its current state and methodology. A justification why mods which use many original game interfaces will never be in safety (unless G3 FP is properly altered, of course).

Sometimes certain things cannot be explained in 20 sentences. A mod is a software, and very many aspects of it can be examined from such a view. If certain modders (not you, because you said it's time problem, not approach) believe everything is simple, then they will be disappointed. Jastey, I strongly recommend you to read my post, because otherwise it's exactly you who has prejudice. When you don't understand something even in theory, how can you make a judgement? Expecting Sikret spend even more time to detail his post (which is quite clear already), instead of understanding my post. I said it would not be easy, but I'm sure it's not beyond the knowledge of most modders. Any questions are welcome, as I've said. I'm sure you will have time sooner or later -- if you really want it. If you don't understand anything, just ask.

Short, truncated, incomplete explanation (please read my previous post for the complete): Symbol of Amaunator broke Improved Anvil's upgrade, because it was automatically removed by G3 FP (when used in the game). Symbol of Amaunator was a dependency (but we could call it interface as well), a dependency of Improved Anvil. All other original game keys that are now consumed due to BG FP are all potential dependencies of other upcoming and future mods! How many symbols of amaunator are possible? What if a mod wants use to another consumed key? How can a mod author contemplate if he can't be sure that an alignment of a bug-free creature might be changed to the next version? These are all dependencies! Possible interfaces! These are not core FIXES, there are removed interfaces. They should be in a different component, with warnings! (And the problem is, if the approach doesn't change, more and more interfaces will be monopolized. A standard fixpack, especially in its core component, mustn't monopolize interfaces. It may break mods.)

P.S.: and yes, Improved Anvil removes or monopolizes many original game interfaces. Because this is a natural consequence of its goal. It's a mod which improves and refines. It's a complex mod, which changes very many aspects and parts of the game. Do you understand? This is why the same battle improved by IA can't be technically improved by another mod as well! Conceptual incompatibility -- yes, and it would have weird result. Actually, the broken or strange battle would be the consequence of technical reasons! (Both mods want the same interfaces: scripts, creature inventory slots and weapons, creature HP! Many of these are destructive interfaces. Scripts are different, they cause incompatibility on higher level, not on the level of data.)

Why Tower of Deception and Grey Clan Ep1 aren't known to be sensitive mods in case of compatibility? They use very few interfaces, they have few dependencies on the original game! (Still, as you can see, UB could break ToD by removing the reference to ToD's primary interface. Coincidences often happen.) On a side note, again for those who are more interested in software-related theories: one of the most important principles in Object Oriented Design is to minimize the "connection" (so-called: coupling) between different objects, and maximize the "connections" (so-called cohesion) inside an object (for each object). According to this, the best mod from this aspect uses exactly as many interfaces to the game as needed (it can't use less, or some of the mod's features won't work; if it uses more, the compatibility risk gets higher). (What are the objects now? The game and the mods. Of course, I simplified it a bit so it can easily be understood, but it reflects the point very well.)
lroumen
The problem is that many mods are just aging, whereas the bg2fixpack is rewritten anew every few months. The fixes (sometimes arguably more like tweaks) address many files which were always thought to be okay by other mods. That in itself is asking for trouble. It's nice that bg2fixpack tries to correct all flaws in SoA/ToB, no matter how tiny... but these can have quite some implications on older mods which are not updated every few months.
Can we always expect bg2fixpack to be full-proof in swatting bugs considering that they will be "ahead" of other mods? Maybe the constant upgrade of these fixes/tweaks only worstens its behaviour/compatibility with other mods (alignment, class and spell changes effecting mod scripts, etc.), since they also need to be updated to allow compatibility with bg2fixpack. Sikret above says it's a "players-are-testers" mentality, but I do not believe that to be (fully) the case (may still be, I don't know). I'm more inclined to think that it is a cause of what I mentioned before.

If they had just kept it "1 big fixpack with fixes direly needed" + "1 big fixpack with tweaks direly requested", I'm guessing it would have been received a lot better.



I am hardly surprised that some modders just use baldurdash as the startingpoint. The good thing is that it fixes the dire game-breaking bugs and that that part is static. It's been around for years. People know by now what has been fixed by it and if there are still flaws they probably fix it in their own mods anyway (seen as Anvil swats some bugs/inconsistencies not fixed by baldurdash). If players want features they use a tweakpack (ease-of-use, bg2tweakpack, ...).
Some modders are prepared to keep up to date with bg2fixpack, others just go with baldurdash and make their own environment, and some modders just don't upgrade anymore. I think that there is something to be said for both worlds (bg2fixpack vs baldurdash). The most important thing is that this is all fair game, as long as the actual player does not suffer as a consequence.



BG2fixpack and baldurdash aside.... The main problem between mod A and mod B is still the following:
How can a player tell that two mods may clash (let alone how can you tell that fixpack A + mod B == crash)? When you have read all the readmes and cannot find any note of incompatibility of 2 mods, can you really say that you have assessed both mods enough to say that they are truly compatible? I think the case of Unfinished Business and Tower of Deception is the classic example. You can rarely tell.



Concluding: No need to bicker, just keep your own mods tested and compatibility notes in your readmes as clear as possible.


If Sikret says in his readme and compatibility notes that bg2fixpack is not supported by Anvil, simply don't use it.
Baronius
QUOTE
Can we always expect bg2fixpack to be full-proof in swatting bugs considering that they will be "ahead" of other mods? Maybe the constant upgrade of these fixes/tweaks only worstens its behaviour/compatibility with other mods (alignment, class and spell changes effecting mod scripts, etc.), since they also need to be updated to allow compatibility with bg2fixpack.
Iroumen, you got the point. What you listed are direct practical consequences of the theory I told in my long post. (In other words, I explained the roots of potential problems caused by G3 FP.) Those who have no time to read the last three parts of my long post thoroughly, should definitely focus on Iroumen's post. (And it's a very understandable and nice practical summary anyway.)

Symbol of Amaunator is no longer a problem? It still is, but only if the optional component is installed. (A warning would be needed. A list of the affected interfaces.) With each release, there will be more and more Symbols of Amaunator (but not with this name, and perhaps even they won't be items). So I repeat to all those who still don't get it: if you modify non-buggy original game elements (interfaces/possible dependencies -- doesn't matter how we call them), such as script references, scripts, alignments, items, spells, prices etc., you will cause a potential danger to all mods that might want to use the original game versions of these elements. And using G3 FP when creating a mod isn't a solution either, because mod authors might not agree with the ambigious fixes included in the core component. (Remember Symbol of Amaunator. Isn't it a part of a nice upgrade in IA? If G3 FP was used in the base install of modders, they would be forced to forget such items forever. And so on.)


QUOTE
If they had just kept it "1 big fixpack with fixes direly needed" + "1 big fixpack with tweaks direly requested", I'm guessing it would have been received a lot better.

Would be (more or less) perfect! Mods such as IA could require/allow the standard "1 big fixpack with fixes direly needed", and could make conditions (maybe full incompatibility, maybe just certain parts) for the "1 big fixpack with tweaks direly requested". Developers of G3 FP often support components and freedom of choice in their statements. Optional components are not complete solution, most players install them without thinking. So either two different files (two mods), and/or a complete database of affected interfaces. I see no other solution.
Baronius
On a side note:

http://forums.gibberlings3.net/index.php?showtopic=7890

Although that time G3 FP was in BETA stage, the initial posts themselves reveal much about the general approach (and, of course, nothing has changed, beta or not -- the methodology and approach is the problem, as we know).

IMHO the initial posts are slightly self-important and disrespectful to modders. Offensive or not, their content is even more unacceptable. Telling how to negate the unwanted changes of a FIXPACK? And not with two clicks: with long long WeiDU codes and TP2 edits. And the favourite, that short "FAQ" (one Q/A pair):

Q:
QUOTE
"I'm not a programmer, don't ask me to be one." [..]
A:
QUOTE
Well, that's okay too. You can play Baldur's Gate 2 without even the official patch if you want to to - the game will crash more, and lag more, and have more chances to muck up, but if you're getting by without it, then go have fun.


Will crash? Craaash? Do we remember the good old' times, playing without any fixpacks (even without the official) and seeing the game crash? Did it crash very often? It's obvious brainwashing. Brainwashing. "The standard BG2 Fixpack", "Fixes of Baldurdash plus a few hundred more", "your game will crash without this fixpack".

Perhaps it's just me, but this cynical, self-important approach rejects me. I don't say this is how all FP key developers act, but they seem to agree silently with the content of the posts I linked to. Modding should be about fun. Isn't a fixpack be meant to make the life of players and modders easier? And not harder! As someone said in that topic:

QUOTE
What is a fixpack fixpack? It's a fixpack written to fix things that a fixpack breaks, of course.

Now I believe all problems can be summarized in two points:
  • Problems with the methodology and guidelines ("fixes" of non-bugs in core component; and the most important: removed or monopolized interfaces, original game elements)
  • Unacceptable attitude: even if only a few G3FP members show such a behaviour, they still represent the whole project. Once I got the answer from a lead coordinator of G3FP "I can't do anything with it, it's not my posts" (the question wasn't about the topic I linked to; it was just a similar case of arrogance). Really? Nothing to do about it?
I told the theoretical and technical background, and now it was needed to mention other problems as well. Not sure about others, but *I* strongly expect an attitude change, and less self-importance than what can be seen here.
lroumen
QUOTE(Baronius @ Jul 29 2007, 07:37 PM) *
(Remember Symbol of Amaunator. Isn't it a part of a nice upgrade in IA? If G3 FP was used in the base install of modders, they would be forced to forget such items forever. And so on.)
The Symbol of Amaunator is also an upgrade component for Item Upgrade Mod at weidu.org wink.gif
Baronius
Thanks for pointing out. I'll use this opportunity to give more details to those who're interested in the theory (though I guess it's already clear to most readers):

Symbol of Amaunator is a game element. It's a dependency of Item Upgrade and Improved Anvil. Since it got consumed, this caused incompatibility: it's one item, can't be used twice. So IA and IU are incompatible. It's natural, because they are two mods, of the same type. A standard fixpack can not allow such a luxury. If it removes this item*, the dependency of IU and IA will have its well-known consequences, as we know.

*as G3FP did in its earlier version -- and the reason of its remove even wasn't the dependency problem !


Again, though I told it many times already, but I want everyone to understand it: it's possible to include a fix in IU and IA. (Assuming IU is supported, which isn't entirely true to my knowledge. Let's ignore this fact.) However, there will be more and more symbols of amaunators, and no one should expect 77 other modders to read the fixpack readme thoroughly and fix fixpack's fixes, or release a mod which quality they cannot guarantee. (It's not about just one upgrade. Whole mods can be broken. Remember ToD and UB.)
Baronius
By the way, the latest daily news, the (non-beta!) Fixpack breaking the Sheena NPC as well. Seems to cause memory leak. Poor Red Knight (the modder) would have been forced to spend hours trying to locate the problem -- if the player (the player!) didn't browse forums and report it that the fixpack breaks the modder's mod! Sikret's "prejudice" that things are not tested well is proved again. I understand that in such a size, it's hard to test everything, and they are trying to make it modular, but this isn't enough. (See my previous posts for suggestions.) And more testing is also needed (beside the things I proposed), as Sikret has said. Typical, well-defined tests. (And not such as: "I played the game twice with G3 FP and it worked fine" -- "OK, then let's move those components from the BETA group".)

P.S.: to some people, this thread might look as a massive attack against G3 FP creators. Well, problems have been gathering for a long time, and they didn't listen to us. Since Arkain asked it, and jastey accused us of prejudice, it was time to make things clear. I still appreciate the work of G3 FP developers (including the efforts of the head developers/coordinators), but now they can see that their concept isn't as seamless as they believed.

I'll gladly give them advice if they ask. First of all, my long post should be more or less understood (well, mainly the last parts, so the general theory), so everyone will know how dependencies influence compatibility between mods. (These things are obviously known by most modders, implicitly. The more abstract theory has the advantage that you can generalize, so you can avoid a big percent of bugs even before they would be created.)

When there are a lot of bugs, it would be time to ask "Why are these bugs?". To examine the methodology and guidelines. Instead of saying "This is normal. Every mod release has bugs". Instead of teaching people in a thread (especially in such a style) how to edit out the fixes of the G3 Fixpack in order to prevent G3 Fixpack from breaking their mods.

If they will refuse to consider the advice I already offered to them, it will just be pride. I believe we're all educated people here. The ability of a person to imagine and work with more abstract concepts gets improved at a young age. Ignoring my general advice or pretending to be unable to understand it (while demanding concrete examples) leads nowhere. If the machines in a factory malfunction, will you collect and fix the broken products forever?

[EDIT] The thread was moderated meanwhile due to the high number of off-topic posts, and some similar posts of mine were merged. Caedwyr's post (below) applies to what I said about the consumed keys. (Of course, it's obviously just a specific problem which doesn't help on our big main problem at all.)
luan
I didn't know there was so much drama behind the scenes! None of this directly relates to me, but this has been a very educational Sunday morning and a good read! We have to realize that all this revolves around a hobby (clearly very passionate for some) where the point is to enhance a game to make it more fun. Sheesh!

I greatly appreciate the efforts of all modders regardless of modding community or clique. As long as we carefully take notice of the readme's and respect author's compatibility list choices, all should be well. It's unfortunate that some feel it necessary to slander others simply for these choices. It's silly! We aren't in highschool anymore. Well... maybe some of us are.
Caedwyr
I definately have to second Baronius here. I'd suggest reading through the entire http://forums.gibberlings3.net/index.php?showtopic=7125 thread for a better understanding of the issues. Thanks for the link.
Sikret
QUOTE(lroumen @ Jul 29 2007, 11:34 PM) *
The problem is that many mods are just aging, whereas the bg2fixpack is rewritten anew every few months. The fixes (sometimes arguably more like tweaks) address many files which were always thought to be okay by other mods. That in itself is asking for trouble. It's nice that bg2fixpack tries to correct all flaws in SoA/ToB, no matter how tiny... but these can have quite some implications on older mods which are not updated every few months.
Can we always expect bg2fixpack to be full-proof in swatting bugs considering that they will be "ahead" of other mods? Maybe the constant upgrade of these fixes/tweaks only worstens its behaviour/compatibility with other mods (alignment, class and spell changes effecting mod scripts, etc.), since they also need to be updated to allow compatibility with bg2fixpack. Sikret above says it's a "players-are-testers" mentality, but I do not believe that to be (fully) the case (may still be, I don't know). I'm more inclined to think that it is a cause of what I mentioned before.


As explained before, the main problems with BG2 fixpack are two things:

First, they don't test their mod before releasing it. They just put the codes together and release the new version and then wait for the poor player to test it for them. I say this, because some of the bugs in BG2 Fixpack have been so easy-to-detect that if they had just bothered to load the game and test the changes for only one single time, they could have detected the bugs. Yet, the bugs existed in their released version which shows that they didn't bother to even test them in practice for one single time. This is that "Players are testers" mentality and "we don't need to test" attitude which I refered to.

The point is that testing BG2 Fixpack is much easier than testing a mod such as Improved Anvil. A bugged spell (in BG2 fixpack) could have been easily detected by casting that spell only once. Whereas, testing IA requires testing long quests and difficult battles. Sometimes we (testers and myelf) had to test a single quest several times to make sure that none of the options would lead to bugs. Yet, we did the difficult testing for IA and they didn't do the easy testing for BG2 fixpack before releasing it.

Now, if you think that BG2 fixpack is ok, Iroumen, then just tell me to release IA v4.3 right now before completing its testing procedure and then sit in my armchair to receive your bug reports. smile.gif (No, I was not serious; my methods are different than theirs.)

The second problem is that they make arbitrary tweaks and then call them "fixes".
Caedwyr
Sikret:

As a slightly offtopicness, but does the alignment changing aspect of the fixpack and oversight, and a couple of other mods most likely affect spells that are targetted/affect certain alignments and not others? If the effect of alignments is significant enough to make a mod that changes as one of the components (possibly among others) them incompatible, then wouldn't it be better to manually set the alignments of the NPCs that you want to be set a certain way, and then you won't have to worry about the scripts not working correctly? As I understand it, IA is supposed to be installed last, so it should be fairly simple to make a list and patch them to your preference.

Otherwise, you end up with a situation where Holy Smite doesn't work on Irenicus in the final battle, because he's still using the Elminster template and is a chaotic good human.
Baronius
Caedwyr:

Of course the question was directed to Sikret, I don't want to answer instead of him. I can only answer from my viewpoint: it's a quick treatment of the symptoms, to make the alignments re-fixed in IA. Although it's a lot of alignments to check and change (even if we keep the "reasonable" ones), let's assume Sikret does it. But what about the many other similar things? As you see, all other changed content (such as the consumed keys case where you agree with me) may cause unpredictible effects for other mods, due to the possible dependencies. Or are Consumed Keys and Alignment Changes the only "fixes" that affect non-buggy elements, and thus may break future mods? (Additional question: if the approach doesn't change, who guarantees that G3FP main developers don't add more such components as Consumed Keys? These directly remove elements that may be used by other mods! How can the G3 FP be supported if we are unsure about future? More accurately, quite sure, unfortunately. The more removed interfaces and changed original elements, the higher risk to break mods.)

The point is, Irenicus as a Chaotic Good may look weird, but as we can see, other changes are not so unambigious. The conclusion is, a modder who fixes a game in a standard fixpack should add problematic cases to optional components, because it's not his/her right to decide who should have what alignment. (Optional components are still inadequate though, especially without proper warnings. A different file is needed.) The Irenicus case may be reasonable, but what about the others? "Reasonable" means something slightly different for everyone, in each particular case. (See Blucher's thoughts with the Majordomo.) A person who fixes can fix a broken item, a buggy 0gp price, but it may not apply quasi-fixes in CORE components!
Caedwyr
You misunderstand me. From what Sikret wrote, I take it that certain scripts rely on certain NPCs having a specific alignment, and that if any of them are changed it will cause the scripts to perform suboptimally. I've seen at least 4 mods that change alignments, and I can see future modders also making alignment changes. Hence, if you want to ensure your mod won't run into problems, just be sure to make the necessary fixes. If you want to look at the list that Fixpack specifically changes and the reasoning behind each of the changes, then http://forums.gibberlings3.net/index.php?showtopic=8485 is the place to start. However, if you are worried about specific NPCs, then just be sure to set each NPC to the alignment you need to make the scripts function as best as possible.

QUOTE
The conclusion is, a modder who fixes a game in a standard fixpack should add problematic cases to optional components, because it's not his/her right to decide who should have what alignment


Done: Iffy alignment changes added to and optional but cool component see - http://www.gibberlings3.net/bg2fixpack/docs_obc.php for more details

And as always further discussion on components and decisions is appreciated. http://forums.gibberlings3.net/index.php?showtopic=8485 is where to start for any discussion on alignment changes.

And, if you don't like a particular component you can always not install it by following the instructions in the I *HATE* this fix!, and what I can do about it. thread. This is very similar to Baldurdash's option to install each fix separately rather than as the entire package, though updated for a weidu installer. The code is well commented and should be easy to find and comment out the component you don't want.

As for the keys being consumed, you've got a decent point in that these should be in an optional-but-cool component, from my perspective. Perhaps we can have further rational discussion on this matter.


And for a bit of humor, I still think that Irenicus shouldn't have an ogre sound-set in the final SoA battle. "Me crush you to goo!" isn't exactly what I was expecting as a taunt from Jon at the climax of the game. wink.gif
berelinde
I was just about to post the I *HATE* this fix!, but you beat me to it. Had it typed anyway, so take two, they're small.
Baronius
QUOTE
Done: Iffy alignment changes added to and optional but cool component
You still don't get it. ALL such changes should be a in a different component. If a modder requires their original version, why is he or she forced to change them on his/her own? If someone develops a big mod, is he/she forced to install FP and check its docs, or add 222 commands to revert original game versions?

There are no such things as "iffy" changes! Because a change is iffy to somebody, and not iffy to someone else, and vice versa in case of another change. Is everyone who would like to use the original game version forced to come to the fixpack forum, and tell his or her justifications?

QUOTE
I *HATE* this fix!

No thanks. As I've said, I refuse to accept a thread which spreads false information and tries to wash modders brain by implying that the lack of G3 fixpack would cause serious crashes; a thread which expects modders to edit out the fixes of the CORE component of a FIXPACK and if they have no possibility or ability to get familiar with programming, they're cynically asked to buggeroff.
luan
It is reasonable to expect modders to ensure compatibility with the original game. It is unreasonable to expect modders to ensure compatibility with every other mod out there. Especially if other said mods subjectively alter the original game(regardless of good intent), it is reasonable to expect cohesion to be lost.
Baronius
QUOTE
It is reasonable to expect modders to ensure compatibility with the original game.

Exactly. FP creators could say: but fixpack's core component fixes BUGS, so the modder doesn't have to, and a more seamless "surface" awaits his/her mod. Really nice, but this applies to bugs such as broken items & spells and explicitly incorrect things, and not to changes on (otherwise non-buggy) elements such as consumed items, replaced alignments etc. Here is the problem: some of the ambigious novelties (such as alignment changes) are judged differently by each modder and player. Expecting all modders to come to the fixpack forum to tell their doubts (without the guarantee of any change) OR expecting them to read the thousands of lines of the FP core component documentation and THEN *learning* how to negate those with their mod, is this fair? Remember, we're talking of the mandatory core component.

Luan's very good post inspired me to write a nice very short summary: G3FP main developers who decide what goes to the core component go too far by overriding such original game elements that are not explicit, harmful bugs, and add them to the mandatory core component. In other words, based on what luan said: they override the compatibility of the original game, dictating *new* conditions to modders. Overriding the *original* conditions dictated/offered by the *original* game. What if 75% of players agree with a subjective FP change? The other 25 does not. As a general guideline in many areas of life: let's respect the minority, if the result is indifferent, neutral for the majority.
Sikret
QUOTE(Caedwyr @ Jul 30 2007, 09:32 PM) *
If the effect of alignments is significant enough to make a mod that changes as one of the components (possibly among others) them incompatible, then wouldn't it be better to manually set the alignments of the NPCs that you want to be set a certain way, and then you won't have to worry about the scripts not working correctly?

No, it's not reasonable. As I have said before, I don't presume that players have installed a mod which has changed things in a bad way; and hence, I won't code to make my mod compatible with such mods. If a creature has alignment x in the vanilla game, why should I add an unnecessary command (consequently an unnecessary and redundant file in the players' override folder) to assigning the very same alignment (i.e. alignment x) to that creature again? (also read luan's post.)

Moreover, they are many creatures. It's absurd to expect me to add hundreds of lines to my mod just to make it compatible with another mod which has other problems as well. Not to mentione that I'm sure that all of the serious and true players of IA (i.e. those who actually play the mod rather than just spending time in the forum) do install Baldurdash fixpack and avoid BG2 fixpack and they don't need any such compatibility measurements with a mod which they never install.
QUOTE
Otherwise, you end up with a situation where Holy Smite doesn't work on Irenicus in the final battle, because he's still using the Elminster template and is a chaotic good human.
Not necessarily. I have changed some people's alignment to "evil" in IA. IA is not a fixpack and can tweak creatures' alignments for its needs. The Holy Smite thing on Irenicus is of course pointless here as Irenicus is improved by IA and is so powerful that Holy Smite is a joke for him regardless of his alignment.
QUOTE

And for a bit of humor, I still think that Irenicus shouldn't have an ogre sound-set in the final SoA battle. "Me crush you to goo!" isn't exactly what I was expecting as a taunt from Jon at the climax of the game.

His sound-set is changed in Improved Anvil.

PS: As a side note, isn't it meaningful that all of the defenders of BG2 Fixpack here, just pretend that they don't see my posts about BG2 fixpackers not testing their mod properly before releasing it? (when something has no answer people prefer to pretend that they don't see it instead of being honest and write: "Sikret, you are right in regard to this point (at least)."
Sikret
One more point which is worth mentioning is that putting the subjective tweaks of the BG2 fixpack into one or more "optional" components will not change the fact that they are "tweaks" (rather than fixes). So, the entire discussion over having those components as optional doesn't have much significance to me. In other words, making them optional will not change tweaks to fixes; they will only turn to be optional tweaks (rather than mandatory tweaks). BG2 fixpack is actually a tweakpack (which pretends to be a fixpack) regardless of whether those tweaks are optional or not.
Januszka
Not my business, but who cares anyway? If you dont like a mod then dont play it, if you cant use a mod when you have another one installed then do a multiple install.
I do not see any need of arguing about what is a fix or a tweak or whatever. I dont think players care.
What I still dont see is why we're talkin about this here, shouldn't it be more appropiate to talk about FP in FP's forum? Maybe Im wrong since I didnt read the whole topic (too long, Im lazy and Im at work counting back hours cause Im leaving on holidays). And still, not my business Im not a modder (nor even player, I just translate).
I just don't see why anyone has to say if this mod this or this mod that. Use it, and if you don't like it, ok, just uninstall it or use another one. This goes for both parts.
Spare me smile.gif
Sikret
QUOTE(Januszka @ Jul 31 2007, 12:53 PM) *
Not my business, but who cares anyway? If you dont like a mod then dont play it, if you cant use a mod when you have another one installed then do a multiple install.


I fully agree with you, Jan!

And as I wrote before, those who truly play IA (rather than just talking in the forum) do actually follow the mod's installation instructions.

This thread began with a question from a player and I replied to him (only to him because he is a player of IA), but some other people (who mostly have never played IA and will most probably never play it in the future) just hijacked this topic.
Sikret
I opened the topic again temporarily just to make an important remark. Caedwyr wrote:

QUOTE(Caedwyr @ Jul 30 2007, 09:32 PM) *
Otherwise, you end up with a situation where Holy Smite doesn't work on Irenicus in the final battle, because he's still using the Elminster template and is a chaotic good human.


This example has been repeated by defenders of BG2 fixpack countless times (as an advantage over Baldurdash fixpack) and it seems to be their best example. The interesting thing, however, is that this example has all along been a false claim. Irenicus at tree of life battle has always been "Neutral Evil" even in a vanilla game plus BD fixpack installation!

One of Irenicus's other files is flagged as chaotic good, but you never confront that particular creature in any battle in the game.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2024 Invision Power Services, Inc.