Jump to content

K4thos

Modders
  • Posts

    1,420
  • Joined

  • Last visited

Posts posted by K4thos

  1. 8 minutes ago, Ser Elryk said:

    But currently not the IWD1 base campaign (into the Bhaalspawn saga, I mean)?

    I don't understand this question. How base IWD1 campaign is implemented currently has been described in this topic

  2. WARNING: THIS POST CONTAINS SIEGE OF DRAGONSPEAR AND IWD1 SPOILERS (obviously also spoilers regarding the mod itself)

    Regarding content availability:

    - separate campaigns

    You can start any of the campaigns using EET campaign system, selecting them from main menu:

    sRUEIRD.png

    Playing IWD1, HoW or IWD2 like this means that you're making a new party and play the game normally, without ties to the Bhaalspawn saga.

    - IWD2, HoW, TotLM as part of Bhaalsaga

    IWD2 content can be started at any point during the game (BG1BG2, even ToB). There is a captain in Ulgoth's Beard that can sale you there as part of the mercenary expedition to help rescue Ten Towns from goblinoids hordes in exchange for promised wealth and fame (see IWD2 intro). So it's just another quest in a game. Once there, you can either progress through the IWD2 story or travel to IWD1 expansions areas (Heart of Winter and Tales of the Luremaster content).

    - IWD1 base as part of Bhaalsaga

    There is a direct conflict between IWD1 story and SoD villain, as well as some characters and even different iterations of the same locations showing up in both IWD1 and IWD2 story. Due to these reasons it has been decided that IWD1 can't co-exist alongside SoD and IWD2 content in the current timeline. Doing so would require major story overhaul, which is not planned. Currently the exact implementation is not yet 100% finalised, there are a few ramifications, regardless of the outcome, though:

    - there are NPC interjections ready for all vanilla NPCs in BG saga, which means the content should be available at any point during the game (BG1BG2, even ToB),

    - the story should take place in the past in order to avoid conflict with SoD (where we fight Belhifet, the final boss of IWD1, who is banished to Baator at the end) and IWD2 story (which takes place some years after IWD1 events, featuring some returning characters and locations),

    - the IWD1 story should be tied to the Bhaalspawn saga in a way that requires as little changes to the IWD2 script as possible (ideally without need to re-write characters like voice acted Oswald Fiddlebender, who doesn't recognize the party in IWD2). In order to achieve this, alternate timeline concept is preferable to reactive timeline. If the party goes back in time, changes the past and returns to the "present", they may find things not as they remember. The characters know a different history to the people inhabiting the timeline they're in.

    There have been few ideas how to implement it while still fulfilling these goals:

    1. IWD1 story as part of the  twisted Wish outcome - old D&D trope (well, ok, not only D&D[1][2])

    Here is description of the Wish spell from D&D 5th Edition Compendium:

    Quote

    You might be able to achieve something beyond the scope of the above examples. State your wish to the DM as precisely as possible. The DM has great latitude in ruling what occurs in such an instance, the greater the wish, the greater the likelihood that something goes wrong. This spell might simply fail, the effect you desire might only be partly achieved, or you might suffer some unforeseen consequence as a result of how you worded the wish. For example, wishing that a villain were dead might propel you forward in time to a period when that villain is no longer alive, effectively removing you from the game. Similarly, wishing for a legendary magic item or artifact might instantly transport you to the presence of the item's current owner.

    You get the idea, it’s a matter of coming up with a wish that can be twisted in a way to allow the party experience IWD1 story at any point of the game. Considering final IWD1 boss is also one of the main villains of the Bhaalspawn it should be doable, without feeling totally off (although the exact wish has not been thought up yet - feel free to suggest one).

    2. Belhifet's book used as a framing device

    You know the one, present in all IWD1 cinematic, where Belhifet himself, as a narrator (see IWD1 ending), tells the IWD1 story. It's another popular trope in which after opening a book we fade to see the story itself being played out, just as if it came from the book itself. Implementing it like this would be a matter of leaving this mysterious book somewhere in a BG world.

    3. Yxunomei's vendetta against Belhifet

    Currently travel to base IWD1 has been implemented as an optional quest from Yxunomei (disguised as a mysterious hooded woman) that tricks the party into this adventure via misleading pact ("I cannot lead you to him, or speak plainly his identity. It is not yet time for you to know. But I can show you their nature, reveal their past, and in doing so provide you a means to strike first. Context is the gift I offer you and with it knowledge that is greater than any sword. Will you accept this gift?"). After coming back her dialogue hints that it was part of an ages-old vendetta between her and Belhifet, although how exactly your actions in the past lead towards achieving her goals and the exact nature of it is left vague.

    This quest, for obvious  reasons, can be initiated only before Belhifet is killed in SoD, so either option 1 or 2 should be also enabled once this way of travel there is no longer available.

    --------------------------

    Initially the concept of this mod was to have IWD1 story in the current timeline and some of the IWD2 content alongside it. As you can see, after SoD release, this has been changed - now IWD2 story is the core of the mod, alongside HoW and TotLM (IWD1 expansions), which can be also visited in the current timeline.

    Feel free to leave your feedback.

    --------------------------

    Regarding difficulity, scalling, XP etc.:

    When it comes to game balance of course we can't provide the same amount of challenge for level 1 party and level 20 party, but there will be an optional level scaling feature toggable in options. Here is a quote from my older message where I explained how it works:

    Quote

    you can do whole IWD2 content whenever you like (via quest that sends you north to fight goblinoids invasion, as mentioned in IWD2 intro). Technically the content should be doable even on level 1, but realistically if you're installing IWD-in-EET you're expected to decrease XP gains in whole game to at least 50% or more, so if you're going on low level you will likely not level up fast enough. When it comes monsters difficulty I've come up with following system:
    - all IWD2 creatures are converted to 2nd ed rules,
    - each area will have area scope variable set with value = average party level the content is aimed for
    - each IWD2 creature file triggers Lua code that handles level scaling based on the creature level in comparison to party level
    Level scaling is not some arbitrary stats buffing but actual hit dice and size increments. No workarounds, all calculations are done via Lua code and use actual dnd tables storing bonuses for each level/hit dice and class.

    Example: if creature is a Fighter level 2 and the new level should be 7, following bonuses are granted:
    - Level + 5
    - DEATH st +2
    - WANDS st +2
    - SPELL st +2
    - HP +5d10 (if humanoid, up to level 10, later just +3 per level) or +5d8 (if monster, 1d8 per level) (actual dice rolls, not some arbitrary value)
    - THAC0 +4
    - +1/2 attack per round
    - Melee damage +5 (1 additional point per hit dice)
    - while spell selection won't be adjusted CRE level affects damage dealt with spells like fireball, magic missile etc.

    Here is how the new level is calculated. Let's say that:
    1. Creature level = 6
    2. Area difficulty level (party level expected by the content) = 10
    3. Average party level = 18
    In such case the level scaling kicks in giving that creature 5 additional levels (6 * 18 / 10). Considering you're fighting lot's of them at once this makes quite a difference.

    In other words even if you visit the content in ToB it shouldn't really feel like something designed for low levels (with such level disparity the level scaling will turn the content into something more like a Legacy of Bhaal mode, even if you don't use it). I know that level scaling is not a popular feature, but as mentioned, this content should be enjoyable for all parties, not at some particular point of the game (and this feature is optional anyway).

    edit: added links explaining framing device trope mentioned by Istfemer.

    edit2: added more context for Yxunomei's quest.

  3. 2 hours ago, Ser Elryk said:

    @K4thos Thank you for the update! I think this was answered some time ago, but I can't remember, and don't know how much has changed since then. But just out of curiosity, how much of IWD2's content will be included in this mod (especially campaign-wise)?

    all of it

  4. Progress:

    Item conversion code and item description generation code is finished (well, you know, first iteration, further adjustments and bug fixes are likely). Here are some examples:

    IWD2:

    Quote

    STATISTICS:

    Damage:  1d6 + 1
    Attack Bonus: +1 
    Enchantment:  +1
    Damage Type:  Piercing
    Special:
      Spell Power: Can cast the spell Sanctuary 1/day
      Stunning: 25% chance target is stunned for 1/2 round (Fortitude save to resist)
    Weight:  3 lb.
    Feat Requirement:  Simple Weapon, Small Blade
    Type:  One-handed

    EE style automatically generated description (based on automatically converted item)

    Quote

    STATISTICS:

    Combat abilities:
    – 25% chance hit target is stunned for 3 seconds (Save vs. Paralysis at -8 negates)

    Charge abilities:
    – Sanctuary once per day
      Duration: 1 turn
      Area of Effect: The user

    THAC0: +1
    Damage: 1d6+1 (piercing)
    Speed Factor: 2
    Proficiency Type: Short Sword
    Type: One-handed
    Requires:
     5 Strength

    Weight: 3

    ----------------

    Now an example that showcases how base parameters are automatically handled to follow AD&D/BG stats of the items.

    IWD2:

    Quote

    STATISTICS:

    Medium Armor
    Armor Bonus: +4
    Max Dex Bonus:  +4
    Armor Check Penalty:  -2
    Arcane Spell Failure:  20%
    Special:
      Damage reduction 10/+2
    Regeneration: User Regenerates 1 hit point ever 10 combat rounds
    Weight: 15 lb.

    EE (notice additional Hide Armor theif skill penalties and AD&D AC armor bonuses on top of base AC.

    Quote

    STATISTICS:

    Equipped abilities:
    – Regenerate 1 Hit Point per turn
    – Physical Damage Resistance: +10%
    – Open Locks: -10%
    – Find Traps: -10%
    – Pick Pockets: -10%
    – Move Silently: -20%

    Armor Class: 5 (7 vs. piercing and missile)
    Requires:
     6 Strength

    Weight: 24

    ----------------

    In order to find flaws in the item conversion and descripion generation code I will probably prepare comparision in HTML format between all IWD2 items descriptions on the left side and EE style on the right for easier reviewing and upload it here. I'm going to also explain rules used for item conversion in a separate topic to gather some feedback on it.

    ----------------

    edit: btw. this was the last task when it comes to vanilla IWD2 resources conversion. All that is left are tasks related to Lua code and EEex features. And of course lots of internal testing before I feel the mod is ready for public testing. @Grimo is also writing vanilla NPC interjections for IWD2 content, so that's another work in progress.

    While waiting for further EEex development (there are some features still missing in it, that are needed for this mod - Bubb is aware about them) I will most likely convert IWD2 GUI to work on EE in the meantime. IWD2 GUI will be handy for showcasing 3rd style feats, multi-class support, subraces, new skills, class based spell selection etc. (implementing these features in existing EE GUIs would require some new art, so it's something that will need external help in future since I'm not an artist)

    ----------------

    edit2: automatic item description generation code has been designed to support English and Polish languages (thanks to @Cahir's efforts to make Polish BG:EE and BG2:EE item descriptions follow closely English formatting). Other languages likely won't be generated automtically (or will be only partially) since there are too many differences in them compared to English descriptions formatting (in most cases lack of separation between Combat, Equipped, Charge abilities and other style differences).

  5. @Azoth, thanks for the report. This was a regression introduced in RC12, not related to other mods. It's fixed in RC12.1.

    ----------

    • fixed regression introduced in RC12 - rest interruption text in ARE file format
    • Czech translation by Vicq
    • updated French translation by Chevalier Noir
    • updated links in the readme file
    • EET_end.tp2 and EET_gui.tp2 now exists in dedicated folders before installation (requested by AL|EN for Project Infinity)

    ----------

    No point in re-installing, unless you can't stand missing rest interruption strings in BG1 areas.

  6. @Istfemer, that's a lot of good suggestions. Would you like to implement these changes yourself? I can send you weidu code that installs the map and adds dummy locations on it using X, Y coordinates from the text file. After editing the file you could review the changes in Near Infinity and adjust icons placement until you think they are all in good places.

    As for the map colours, keep in mind that in the map I've posted I used "Clothify" gimp filter. The default colour without filters looks like this. I'm sure someone who actually knows something about graphic programs could edit the colours to something that looks more like BG2 map (less vivid) or BG:EE (brown).

    Quote

     

    EDIT: The only aspect I dislike a bit, just a bit, is the fact that it doesn't show up trading routes/roads, as other maps do. But that's a minor point.

     

    I actually have roads available as separate layer in PSD file, but decided to remove them since they are not properly connected after disabling"locations" layer (city icons that you can see in the original map on devaintart). So to keep the roads someone would have to edit them a little.

  7. you can re-install just fine

    Although consider making backup of the whole installation just in case weidu decides to screw up.

    Quote

    *Try removing the WeiDU log first and see if it works, if EETtweaks has some check for EET installation that relies on the WeiDU log you'll have to put it back and remove the EETtweak lines from the file instead.

    don't do it, if you want the CRE XP component to calculate correct values (it has to restore original resources first during un/re-installation). Overall I wouldn't recommend ever manually tricking weidu to do something, at least no without backups.

  8. there was a minor  compatibility issue  with SCS up until recently, but from what I see latest SCS contains a code to read all PDIALOG.2DA data from CAMPAIGN.2DA, so it's already resolved.

    Let's see what EET_end does:

    - merge NPC separate JOIN dialog files if present (updating all references in game, state numbers, automatic PID patched if not properly filtered yet. All of it is done after other mods are already installed, so those mods don't have to worry about different state numbers etc. during installation.)

    - ensures that all 2DA files referenced in CAMPAIGN.2DA have all entries (so that entries from campaign files imported from BG1 are appended to BG2 ones)

    - generates lua code biography tables, depending on which campaign is selected (used as a replacement for hardcoded biography in EE engine)

    - generates SoA item importation code (done at the end, so that other mods can add items valid for importation - see documentation)

    - prepares files needed for optional save updating that can be done on completely new EET installation (exports TLK files and starting string number that will be used for save patching)

    ----------------

    I can't see how any of these changes could conflict with other mods, if those mods are installed earlier. The only known potential conflict is the fact that BG1/SoD PDIALOG.2DA entries are not appended up until EET_end is installed and some mods read this file to get the NPC data. But the same is true for vanilla SoD and the conflict is already resolved by SCS and is not present in subtledoctor’s mods (since he is using variant of this function). I will check if this is the case for Tweaks Anthology and send a pull request if needed.

    ----------------

    The general rule of installation is following:

    1. Install EET
    2. Install all mods
    3. Install EET_end

    While nothing wrong should happen if you install SCS after EET_end (since SCS doesn't reference JOIN dialogue state numbers or append to these files, also I don't think it adds strings referenced in save files), this should not be the recommended install order (in faqs, etc.) considering nothing wrong will happen if you install them the other way around – so there is no basis for changing the general EET installation rule for SCS. The more exceptions of the rules the more confusing the installation process.

    ----------------

    Keep in mind that IWD-in-EET mod will optionally append code to EET_end that will be responsible for converting all game resources to support IWD2 style multi-classing system (and some other minor stuff that should be installed after other mods in order to make them fully compatible), and that code will definitely have to be installed after SCS and any other tweak mod. See discussion regarding ClassMask and EEex_MatchObject here for more info.

  9. I'm not familiar with this ring, so I assume it's added by some mod. I could help you only if I knew the item name and mod that adds it (so that I can try to reproduce it). You can check the item name in Near Infinity (by loading a save and checking particular character items) and then find out the mod name by running this batch code:

    WeiDU.exe --change-log nameOfTheItem.ITM
    pause

    edit: it's vanilla RING47.ITM. I can't reproduce this bug, so it's some mod that broke the item in your game. Please run this batch file and post what is printed:

    https://www.dropbox.com/s/lebt4ch80yi0e50/changelog.zip?dl=1

    you can also just copy the vanilla ring to override to fix the problem: https://www.dropbox.com/s/wyxv27i7vi5wt0y/RING47.ITM?dl=1

    but it's still worth reporting the issue to mod that author that is responsible for breaking it.

  10. I've just noticed missing Continue() in the sixth block, which is actually the one that hangs BALDUR.BCS processing in my game and is likely responsible for your problem. Here is a file with this block fixed: https://www.dropbox.com/s/gm6pt5nnstg53sf/BALDUR.BCS?dl=1

    Still please run the batch file, so we know who should be informed about this bug (it's not related to EET).

     

  11. yep, the problem lays in BALDUR.BCS. This code appended top by some other mod blocks further script progressing (at least if the mod that adds it is not installed)

    IF
      !CheckSpellState(Player1,236)
    THEN
      RESPONSE #100
        ReallyForceSpellRES("MEALT01",Player1)
        Continue()
    END
    
    IF
      !CheckSpellState(Player2,236)
    THEN
      RESPONSE #100
        ReallyForceSpellRES("MEALT01",Player2)
        Continue()
    END
    
    IF
      !CheckSpellState(Player3,236)
    THEN
      RESPONSE #100
        ReallyForceSpellRES("MEALT01",Player3)
        Continue()
    END
    
    IF
      !CheckSpellState(Player4,236)
    THEN
      RESPONSE #100
        ReallyForceSpellRES("MEALT01",Player4)
        Continue()
    END
    
    IF
      !CheckSpellState(Player5,236)
    THEN
      RESPONSE #100
        ReallyForceSpellRES("MEALT01",Player5)
        Continue()
    END
    
    IF
      !CheckSpellState(Player6,236)
    THEN
      RESPONSE #100
        ReallyForceSpellRES("MEALT01",Player6)
    END

    the code itself may be fine, but I can't test it further without actually having this mod in my game. Please run this batch code in main directory - it should print which mod added MEALT01 spell: https://www.dropbox.com/s/etcw0txus7waie9/changelog.zip?dl=1

    Please post here the mod name.

  12. @rainlit I've loaded your save and the transition to chapter 4 works as expected on latest EET. If you're using old EET version from 2018 that had this bug the hotfix should work. If it doesn't, I suspect some other mod breaks it - probably by blocking BALDUR.BCS global script that contains the transition to chapter 4 code (which hotfix appends at the bottom of the global script). If that’s the case it should be reported to that mod author.

    Please upload BALDUR.BCS located in your override directory – I will take a look.

  13. 8 hours ago, Vicq said:

    for K4thos:

    I have finished translation of EET (v1.0 RC 12) and EET Tweaks (v1.9) into Czech language. I mostly used "official" sentences from the original game (by Christof and Edvin) and added the rest. Since Edvin is just finishing translations of BG2:EE and SoD, some of the texts may change over time, but at the moment, something is better than nothing.

    It's just the texts themselves, the movies remain in English.

    EET_CZ.zip

    EET_Tweaks_CZ.zip

    thanks, translations will be added in the next version. When it comes to movies, if you can send me Czech version of BEREGOST, INTRO, NASHKELL and WYVERN MVE files, I can handle the audio splitting myself (audio track is merged with movie during EET installation).

    btw. I envy you that Edvin guy. I don't think SoD will ever receive Polish version 😢

  14. On 7/2/2019 at 12:30 PM, The_Rock said:

    Any way we can donate so this effort unfolds a little faster?

    nope. Accepting donations is not a thing in IE modding community. Also there are more people working on this mod (AWizardDidIt and Grimo write NPC dialogue content, Bubb indirectly makes it all possible with EEex, Ulb contributed worldmap icons, bob_veng helped with unifying IWD2 item names to follow BG convention).  So who is the money for, on what base it should be split, etc.? On top of it the project is created as a hobby and (like any other mod) is meant to be treated as a fair use/transformative work (or whatever the right term is), so I think no money should be involved by default.

    In other words it's just not worth opening this can of worms, imo.

  15. 1 hour ago, StefanO said:

    A user can simply buy "IWD2 Complete" for 8.99€ on GOG. That should solve his license problem. But perhaps the distributor -- @K4thos is this case -- still has a problem.

    I'm aware that the game is available on GOG.

    The mod is meant to be installable on Linux and Mac OS down the road (even though it currently doesn't work on those platforms since EEex is not available for these systems yet), so register checks for automatic game detection is not good enough and the game is not even available for linux. Additional prompt where you need to point to IWD2 location would make the installation annoying considering you already have to type IWD:EE directory. And all of this is useless either way considering all IWD2 resources will be included in the mod package (even area resources, which weight the most, can't be copied on the fly due to different file format - converting TIS to PVRZ would extend the installation time for an hour or more). Not really sure if mod distributed this way can be legally treated as transformative use of a work/fair use or whatever - we will see if it results in issuing a cease-and-desist letter (doubt it, considering NEJ mod offered similar approach for years).

    To summarise: IWD2 check is currently not planned for this mod unless copyright holder will force such change, or enhanced edition of this game is released (I have no idea if it's planned). IWD:EE is required to be installed on computer and all its resourced are converted "on the fly". The mod currently works only on Windows but will support other operating systems once EEex is available there.

     

×
×
  • Create New...