Jump to content

EET v13.4 released


Recommended Posts

Some of the BG1 areas are unattainable without losing the thief guild due to time constraints. Shouldn't there be a way to tell renal "yo i'm going on vacation"?

what is the time limit for thieves guild? Is there similar functionality in other strongholds? Didn't think about that.

 

btw. since you're already in SoA - do not go back to SoD areas. As mentioned in this post they are not ready yet for returning parties and I've just noticed that one of the links still connects them with rest of the world. Once you travel there you won't be able to go back. This will be fixed soon.

Edited by K4thos
Link to comment

 

Some of the BG1 areas are unattainable without losing the thief guild due to time constraints. Shouldn't there be a way to tell renal "yo i'm going on vacation"?

what is the time limit for thieves guild? Is there similar functionality in other strongholds? Didn't think about that.

 

btw. since you're already in SoA - do not go back to SoD areas. As mentioned in this post they are not ready yet for returning parties and I've just noticed that one of the links still connects them with rest of the world. Once you travel there you won't be able to go back. This will be fixed soon.

 

It is six days - controlled via Baldur.bcs (actually up to 11, after 5 you get a reminder and have the time to return before you loose the guild)

 

IF

GlobalTimerExpired("JosterReturn","GLOBAL")

Global("JosterLeave","GLOBAL",1)

!Global("Chapter","GLOBAL",16)

!Global("Chapter","GLOBAL",17)

!Global("Chapter","GLOBAL",19)

THEN

RESPONSE #100

SetGlobal("JosterLeave","GLOBAL",2)

SetGlobalTimer("JosterReturn","GLOBAL",SIX_DAYS)

SetGlobalTimer("JosterPaid","GLOBAL",FIVE_DAYS)

DisplayStringHead(Player1,62081) // The quartermaster awaits you in the guild for Renal's due.

END

 

And some other blocks around this one

Joster is SHTH05 with dialog of same name.

 

This is the only stronghold with such a function - you have to pay regular tribute to the shadow thieves to keep the guild.

 

PS - you can see that this is disabled already for the chapters when you are in Spellhold and Underdark and thus unable to return frequently to the Docks.

Edited by Roxanne
Link to comment

Yep, I noticed it during SoD too. You can escape from the campaign and be unable to return. I didn't report it since you said you were still working on it.

 

The time limit is 11 days for the thief stronghold. (6 until the quarter master shows up, 5 to pay)

 

I think other strongholds have non periodic time limit. I'm not entirely sure how it works but I think if you don't help imnesvale in a timely fashion during the paladin quest, you get demoted.

No other stronghold has a "you must be here every X days" though.

 

 

Edit: While we talk about SoD's integration to the map. All of the SoD maps currently use the same image and it gets ugly quite faste. If you haven't changed it yet, I suggest giving them more normal animations.

 

MAkBtT3.jpg

Edited by GrimLefourbe
Link to comment
Edit: While we talk about SoD's integration to the map. All of the SoD maps currently use the same image and it gets ugly quite faste. If you haven't changed it yet, I suggest giving them more normal animations.

 

you didn't install the patch that replaces BP-BGT Worldmap BAM file, right? Download it from GitHub and reinstall worldmap.

 

This is the only stronghold with such a function - you have to pay regular tribute to the shadow thieves to keep the guild.

 

PS - you can see that this is disabled already for the chapters when you are in Spellhold and Underdark and thus unable to return frequently to the Docks.

 

than it's a matter of adding additional trigger:

!AreaType(BG1AREA)

Will be ready for next RC, thanks for report. Finally that additional flag added to all imported areas is useful for something :p

Edited by K4thos
Link to comment

 

Edit: While we talk about SoD's integration to the map. All of the SoD maps currently use the same image and it gets ugly quite faste. If you haven't changed it yet, I suggest giving them more normal animations.

 

you didn't install the patch that replaces BP-BGT Worldmap BAM file, right? Download it from GitHub and reinstall worldmap.

Oops. My bad... I'm not smart. Thanks.

 

Edit : The map looks much better :D

Edited by GrimLefourbe
Link to comment
This is the only stronghold with such a function - you have to pay regular tribute to the shadow thieves to keep the guild.

 

than it's a matter of adding additional trigger:

!AreaType(BG1AREA)

Will be ready for next RC, thanks for report. Finally that additional flag added to all imported areas is useful for something :p

 

Is this really the better choice? I understand the need to be as close to the original but going to SpellHold is something done alongside the Shadow Thieves so it makes sense for them not to punish you for it. However I think it'd be pretty confusing if spending 6 days in Firkraag's dungeon can lose your guild and it isn't the same when going to far areas.

 

It'd be a bit of a modification but I think adding a line to tell Renal that you're going to be away for a while would preserve the story telling in a better manner.

 

I haven't reached ToB yet but how are the Strongholds handled in ToB? Story wise there's no reason to lose them all.

 

Imo, another option would be to make "common" the use of teleportation and make it easily accessible to the player, everyone but Charname seems to teleport all the time and I think this could be part of EET's job, the game has previously only been made for smaller maps with lower travel time.

Link to comment

 

Adjust FPS and fix audio skipping in cutscenes

this one will be greatly improved at some point to take into account DisplayStringWait action that is heavely used by Beamdog content (I will run each referenced WAV file with a tool that analyses the length of track and than add exactly as many SmallWait() ticks needed to not abort sounds triggered by this action). This is why the current tweak is not effective in SoD and other Beamdog's cutscenes. Although you can keep it installed for now since it will help with many vanilla BG2 cutscenes.

That's not necessarily the case. DSW() waits for the sound to finish playing (it's supposed to, anyway), then proceeds to the next action. So I'd expect no difference between various FPS settings or languages when it's used. The problem would arise when cutscene does not use DSW().

 

SoD (and some BG2EE) scenes differ from vanilla BG2 by having more action occurring while the sound still plays, i.e. the Wait() delay not always matches the sound length.

And sometimes it's not even there at all, e.g. BDCUT15.BCS:

IF
  !TimeOfDay(NIGHT)
THEN
  RESPONSE #100
    CutsceneID(Player1)
    ClearAllActions()
    DisplayStringHead("bdhepher",34556) // Curse you, Jayvis! Do you know what your cowardice has cost us this day?
END

IF
  TimeOfDay(NIGHT)
THEN
  RESPONSE #100
    CutsceneID(Player1)
    ClearAllActions()
    DisplayStringHead("bdhepher",35793) // Curse you, Jayvis! Do you know what your cowardice has cost us this night?
END

IF
  True()
THEN
  RESPONSE #100
    CutsceneID(Player1)
    ClearAllActions()
    SmallWait(10)
    ActionOverride("bdhepher",SetSequence(SEQ_ATTACK_SLASH))
    ...
Edited by Ardanis
Link to comment

New RC up on GitHub. Thanks to all of the awesome feedback from you guys the mod should feel much more polished now.

 

Version 1.0 Release Candidate 5

- Fixed MAJOR regression regarding NPC SoA continuity system caused by engine changes in patch 2.x
- Fixed problem with not working NPC Override scripts after SoD->SoA transition (damn DisableAI command, wasted too much time before finding the obvious cause)
- Fixed random tables item quirks (mod now uses old 2da files and the same names as BGT)
- Added new function that can be used by modders to easily patch BG1 random tables dummy item names. Supported platforms: BG1, BG:EE, Tutu, BGT, EET
- Fixed water layers via argent77's code (this time for sure)
- Day/Night movies no longer shows up in interiors
- Kicked NPCs won't try to initiate post dialogue after spawned again
- Fixed regression in EET_modConverter 'Chapter_patcher.tph', also added support for commands written with whitespace between commas
- Fixed support for 'Story mode' (needs testing)
- Fixed vanilla BG:EE bug - duplicating Rasaad GAM entries
- Fixed problem with spawning Rasaad too early in Trademeet
- Changed vanilla code that for whatever reason sets Aerie's BeenInParty flag even if she wasn't in party at all
- Implemented auto biography GUI feature depending on the chosen campaign (workaround for the vanilla system that doesn't work when engine_mode = 1)
- SoD GUI now supports High Level Abilities selection
- added scrollbar to SoD GUI kits selection menu
- Removed SCRL1V importation - Dimension Door scroll no longer exists in vanilla BG:EE. EET now copies version of this file from patch 1.3 to Override in case some mods still use it
- Updated 'EET_functions.tph' - also included in updated BG2:EE NPC compatibility patches (no other changes in those patches)
- Resolved compatibility problem with mods that use Player initiated dialogues system
- Resolved compatibility issue with Margarita NPC - please re-install setup-EET_end finalise component if you have it installed
- All vanilla BG1 and BG2 areas added to console menu (if there is a reference for BG:EE and BG2:EE areas than let me know)
- Added XP adjustment after spawning NPC in ToB
- Thieves Guild time limit disabled when you return to old areas
- EET no longer uses HANDLE_CHARSETS - all TRA files have been converted to UTF-8 without boom to solve the issue with M_EET.LUA file (if the game crashed on you with non-English language than this will fix it).

 

Known problems:
- Fate Spirit in ToB don't acknowledge Dynaheir, Khalid and Yoshimo death if they have not been really killed during game. The dialogue checks for STATE_REALLY_DEAD - what is the best way to give them this state? The easiest way would be using Kill("DV") but this action triggers the death scream even if they are outside party in completely different area...
- auto biography GUI feature doesn't work with multi-class characters yet
- HLA menu in SoD GUI uses BG2:EE GUI art. As far as I know SoD variant of the art doesn't exist. Looking for help regarding this task

- and yeah, those SoD links still didn't make it. Soon...

Edited by K4thos
Link to comment

 

- HLA menu in SoD GUI uses BG2:EE GUI art. As far as I know SoD variant of the art doesn't exist. Looking for help regarding this task

 

Can you "make" it from bits of other GUIs in game? I looked quickly in game, it looks like the + - buttons of BG2 HLA UI are the same as the buttons of memorised spells on character creation and the scrolling bar is the same as the known spell selection one.

Link to comment

Adjust FPS and fix audio skipping in cutscenes

this one will be greatly improved at some point to take into account DisplayStringWait action that is heavely used by Beamdog content (I will run each referenced WAV file with a tool that analyses the length of track and than add exactly as many SmallWait() ticks needed to not abort sounds triggered by this action). This is why the current tweak is not effective in SoD and other Beamdog's cutscenes. Although you can keep it installed for now since it will help with many vanilla BG2 cutscenes.

That's not necessarily the case. DSW() waits for the sound to finish playing (it's supposed to, anyway), then proceeds to the next action. So I'd expect no difference between various FPS settings or languages when it's used. The problem would arise when cutscene does not use DSW().

 

That would be awasome but it seems to work differently for me. Let's take a look at CH1CUT01.BCS (Gorion cutscene)

IF
    True()
THEN
    RESPONSE #100
        CutSceneId("Gorion")
        SetGlobal("TalkedToGorion","GLOBAL",1)
        CreateCreature("POGHMA5",[4260.2424],SW) // Priest of Oghma
        SetAreaScript("cutskip1",OVERRIDE)
        SetGlobal("BD_CUTSCENE_BREAKABLE","GLOBAL",1)
        SetCutSceneBreakable(TRUE)
        MoveToPoint([2745.1816])
        JumpToPoint([3941.2456])
        MoveToPoint([4202.2495])
        Face(N)
        DisplayStringWait(Myself,31483) // Listen carefully! If we ever become separated, it is imperative that you make your way to the Friendly Arm Inn.
        DisplayStringWait(Myself,31484) // There, you will meet Khalid and Jaheira. They have long been my friends, and you can trust them.
END

IF
    True()
THEN
    RESPONSE #100
        CutSceneId(Player1)
        Wait(1)
        MoveViewPoint([4250.2440],INSTANT)
        JumpToPoint([3879.2431])
        MoveToPoint([4206.2446])
        Face(S)
        Wait(12)
        ActionOverride("POGHMA5",ForceSpell(Player1,CLERIC_CURE_LIGHT_WOUNDS)) // SPPR103.SPL (Cure Light Wounds)
        Wait(4)
        ActionOverride("POGHMA5",MoveToPoint([4009.2435]))
        ActionOverride("GORION",MoveToPoint([4314.2510]))
        ActionOverride("GORION",DestroySelf())
        ActionOverride("POGHMA5",DestroySelf())
        MoveToPoint([4314.2510])
        SetCutSceneBreakable(FALSE)
        SetGlobal("BD_CUTSCENE_BREAKABLE","GLOBAL",0)
        SetAreaScript("",OVERRIDE)
        FadeToColor([20.0],0)
        Wait(1)
        ClearAllActions()
        DayNight(MIDNIGHT)
        LeaveAreaLUAPanic("AR2700","TRGORION",[2350.1523],E)
        LeaveAreaLUA("AR2700","TRGORION",[2350.1523],E)
        ActionOverride(Player2,LeaveAreaLUA("AR2700","TRGORION",[3522.3712],E))
        ActionOverride(Player3,LeaveAreaLUA("AR2700","TRGORION",[3522.3712],E))
        ActionOverride(Player4,LeaveAreaLUA("AR2700","TRGORION",[3522.3712],E))
        ActionOverride(Player5,LeaveAreaLUA("AR2700","TRGORION",[3522.3712],E))
        ActionOverride(Player6,LeaveAreaLUA("AR2700","TRGORION",[3522.3712],E))
        Weather(RAIN)
        MultiPlayerSync()
        CreateCreature("GORION",[2597.1458],S) // Gorion
        MultiPlayerSync()
        FadeFromColor([20.0],0)
        StartCutScene("Ch1cut02")
END

this part indeed waits for the voice to be finished before going to next action:

DisplayStringWait(Myself,31483) // Listen carefully! If we ever become separated, it is imperative that you make your way to the Friendly Arm Inn.

but next line:

DisplayStringWait(Myself,31484) // There, you will meet Khalid and Jaheira. They have long been my friends, and you can trust them.

doesn't wait for anything at all (I've also tried adding some action right after it - doesn't change anything). On 60 FPS whole next script block is finished while the sound is still playing, so it doesn't wait before moving to the next action / script loop. In this case sound is aborted somewhere in the middle.

 

Due to this I thought that the command only works as intended on 30 FPS and on 60 FPS would need additional SmallWait lasting as long as the track, but after checking this cutscene I'm no longer sure what's up. Should it be reported to Beamdog or does it work as intended?

Edited by K4thos
Link to comment

New RC up on GitHub. Thanks to all of the awesome feedback from you guys the mod should feel much more polished now.

 

Version 1.0 Release Candidate 5

- Fixed MAJOR regression regarding NPC SoA continuity system caused by engine changes in patch 2.x

- Fixed problem with not working NPC Override scripts after SoD->SoA transition (damn DisableAI command, wasted too much time before finding the obvious cause)

- Fixed random tables item quirks (mod now uses old 2da files and the same names as BGT)

- Added new function that can be used by modders to easily patch BG1 random tables dummy item names. Supported platforms: BG1, BG:EE, Tutu, BGT, EET

- Fixed water layers via argent77's code (this time for sure)

- Day/Night movies no longer shows up in interiors

- Kicked NPCs won't try to initiate post dialogue after spawned again

- Fixed regression in EET_modConverter 'Chapter_patcher.tph', also added support for commands written with whitespace between commas

- Fixed support for 'Story mode' (needs testing)

- Fixed vanilla BG:EE bug - duplicating Rasaad GAM entries

- Fixed problem with spawning Rasaad too early in Trademeet

- Changed vanilla code that for whatever reason sets Aerie's BeenInParty flag even if she wasn't in party at all

- Implemented auto biography GUI feature depending on the chosen campaign (workaround for the vanilla system that doesn't work when engine_mode = 1)

- SoD GUI now supports High Level Abilities selection

- added scrollbar to SoD GUI kits selection menu

- Removed SCRL1V importation - Dimension Door scroll no longer exists in vanilla BG:EE. EET now copies version of this file from patch 1.3 to Override in case some mods still use it

- Updated 'EET_functions.tph' - also included in updated BG2:EE NPC compatibility patches (no other changes)

- Resolved compatibility problem with mods that use Player initiated dialogues system

- Resolved compatibility issue with Margarita NPC - please re-install setup-EET_end finalise component if you have it installed

- All vanilla BG1 and BG2 areas added to console menu (if there is a reference for BG:EE and BG2:EE areas than let me know)

- Added XP adjustment after spawning NPC in ToB

- Thieves Guild time limit disabled when you return to old areas

- EET no longer uses HANDLE_CHARSETS - all TRA files have been converted to UTF-8 without boom to solve the issue with M_EET.LUA file (if the game crashed on you with non-English language than this will fix it).

 

Known problems:

- Fate Spirit in ToB don't acknowledge Dynaheir, Khalid and Yoshimo death if they have not been really killed during game. The dialogue checks for STATE_REALLY_DEAD - what is the best way to give them this state? The easiest way would be using Kill("DV") but this action triggers the death scream even if they are outside party in completely different area...

- auto biography GUI feature doesn't work with multi-class characters yet

- HLA menu in SoD GUI uses BG2:EE GUI art. As far as I know SoD variant of the art doesn't exist. Looking for help regarding this task

- and yeah, those SoD links still didn't make it. Soon...

No update pack for those with RC4 + all intermediate patches (understandable when looking at contents of RC5)

Does it still make sense to report issues on RC4 + PidFix + Hotfix + some local fixes for NPC spawning issues (given that the issue is not on the RC5 list) or is it better to do a new install?

Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...