Skip to content

Commit df9954f

Browse files
committed
removed binary patching
- hardcoded SPIN649 removal countered via BALDUR25.BCS - hardcoded DAYNITE/NITEDAY movies renamed and dummied (to avoid bugs in taverns), campaign specific movies triggered by area scripts (patching moved to EET_end)
1 parent 9095830 commit df9954f

File tree

9 files changed

+87
-172
lines changed

9 files changed

+87
-172
lines changed

EET/EET.tp2

Lines changed: 7 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1755,6 +1755,7 @@ COPY ~%MOD_FOLDER%/base/spl/SPWI123.SPL~ ~override~
17551755
~%MOD_FOLDER%/base/spl/SPCL342.SPL~ ~override~
17561756
~%MOD_FOLDER%/base/spl/K#FAMKIL.SPL~ ~override~
17571757
~%MOD_FOLDER%/base/spl/K#FAMREM.SPL~ ~override~
1758+
~%MOD_FOLDER%/base/spl/K#IN649.SPL~ ~override~
17581759
~%MOD_FOLDER%/base/spl/K#REMBHA.SPL~ ~override~
17591760
~%MOD_FOLDER%/base/spl/K#PP_ADD.SPL~ ~override~
17601761
~%MOD_FOLDER%/base/spl/K#PP_REM.SPL~ ~override~
@@ -1908,6 +1909,12 @@ ACTION_FOR_EACH dir IN ~%bgee_dir%/lang/%LANGUAGE_BG1%/movies~ ~%bgee_dir%/lang/
19081909
END
19091910
END
19101911

1912+
//disable hardcoded DAYNITE/NITEDAY playback
1913+
COPY ~movies/daynite.wbm~ ~movies/daynite_.wbm~
1914+
~movies/niteday.wbm~ ~movies/niteday_.wbm~
1915+
~.../blank.txt~ ~movies/daynite.wbm~
1916+
~.../blank.txt~ ~movies/niteday.wbm~
1917+
19111918
///// \\\\\
19121919
///// WED \\\\\
19131920
///// \\\\\
@@ -2521,45 +2528,6 @@ INCLUDE ~%MOD_FOLDER%/lib/transition.tph~
25212528

25222529
INCLUDE ~%MOD_FOLDER%/lib/bgee_fixpack.tph~
25232530

2524-
///// \\\\\
2525-
///// Exe patching \\\\\
2526-
///// \\\\\
2527-
2528-
OUTER_SET found_exe = 0
2529-
ACTION_IF ~%WEIDU_OS%~ STR_EQ ~win32~ BEGIN
2530-
ACTION_IF FILE_EXISTS ~Baldur.exe~ BEGIN
2531-
COPY ~Baldur.exe~ ~Baldur.exe~
2532-
AT_NOW ~%lua% %MOD_FOLDER%/lib/binary.lua Baldur.exe~
2533-
OUTER_SET found_exe = 1
2534-
END
2535-
END ELSE ACTION_IF ~%WEIDU_OS%~ STR_EQ ~osx~ BEGIN
2536-
ACTION_IF FILE_EXISTS ~BaldursGateIIEnhancedEdition.app/Contents/MacOS/BaldursGate-macOS~ BEGIN
2537-
OUTER_SPRINT exec ~./BaldursGateIIEnhancedEdition.app/Contents/MacOS/BaldursGate-macOS~
2538-
END ELSE ACTION_IF FILE_EXISTS ~../MacOS/BaldursGate-macOS~ BEGIN
2539-
OUTER_SPRINT exec ~../MacOS/BaldursGate-macOS~
2540-
END ELSE ACTION_IF FILE_EXISTS ~BaldursGateIIEnhancedEdition.app/Contents/MacOS/BaldursGateIIEnhancedEdition~ BEGIN
2541-
OUTER_SPRINT exec ~./BaldursGateIIEnhancedEdition.app/Contents/MacOS/BaldursGateIIEnhancedEdition~
2542-
END ELSE ACTION_IF FILE_EXISTS ~../MacOS/BaldursGateIIEnhancedEdition~ BEGIN
2543-
OUTER_SPRINT exec ~../MacOS/BaldursGateIIEnhancedEdition~
2544-
END
2545-
ACTION_IF VARIABLE_IS_SET exec BEGIN
2546-
COPY ~%exec%~ ~%exec%~
2547-
AT_NOW ~%lua% %MOD_FOLDER%/lib/binary.lua %exec%~
2548-
OUTER_SET found_exe = 1
2549-
END
2550-
END ELSE BEGIN //unix
2551-
ACTION_FOR_EACH file IN BaldursGateII BaldursGateII64 BaldursGateIIEnhancedEdition BaldursGateIIEnhancedEdition64 BEGIN
2552-
ACTION_IF FILE_EXISTS ~%file%~ BEGIN
2553-
COPY ~%file%~ ~%file%~
2554-
AT_NOW ~%lua% %MOD_FOLDER%/lib/binary.lua ./%file%~
2555-
OUTER_SET found_exe = 1
2556-
END
2557-
END
2558-
END
2559-
ACTION_IF found_exe = 0 BEGIN
2560-
FAIL ~Baldur's Gate II executable not found~
2561-
END
2562-
25632531
///// \\\\\
25642532
///// Biffing \\\\\
25652533
///// \\\\\

EET/base/spl/K#IN649.SPL

250 Bytes
Binary file not shown.

EET/docs/Modder's Notes.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -466,13 +466,13 @@ <h3>Adding AreaType to BG1 ARE files</h3>
466466
<p>You can patch area files with WeiDU code during your mod installation. First retrieve the BIT number associated with BG1AREA from AREATYPE.IDS using this action command:</p>
467467
<div class="code">
468468
<pre>
469-
ADD_AREA_TYPE BG1AREA
469+
OUTER_SET BG1AREA = IDS_OF_SYMBOL (AREATYPE BG1AREA)
470470
</pre>
471471
</div>
472472
<p>And than patch area files with this code:</p>
473473
<div class="code">
474474
<pre>
475-
WRITE_SHORT 0x48 THIS | (1 << BG1AREA)
475+
WRITE_SHORT 0x48 THIS BOR BG1AREA
476476
</pre>
477477
</div>
478478

EET/lib/bg1_BCS.tph

Lines changed: 0 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,3 @@
1-
///// \\\\\
2-
///// BGSUNRIS/BGSUNSET movies \\\\\
3-
///// \\\\\
4-
5-
<<<<<<<< .../BGSUNRIS_BGSUNSET-eb.baf
6-
IF
7-
Time(DUSK_END)
8-
!GlobalTimerNotExpired("K#TimerSunset","GLOBAL")
9-
OR(6)
10-
AreaCheckObject("%BASH_FOR_RES%",Player1)
11-
AreaCheckObject("%BASH_FOR_RES%",Player2)
12-
AreaCheckObject("%BASH_FOR_RES%",Player3)
13-
AreaCheckObject("%BASH_FOR_RES%",Player4)
14-
AreaCheckObject("%BASH_FOR_RES%",Player5)
15-
AreaCheckObject("%BASH_FOR_RES%",Player6)
16-
THEN
17-
RESPONSE #100
18-
StartMovie("BGSUNSET")
19-
SetGlobalTimer("K#TimerSunset","GLOBAL",ONE_HOUR)
20-
END
21-
22-
IF
23-
Time(DAWN_END)
24-
!GlobalTimerNotExpired("K#TimerSunrise","GLOBAL")
25-
OR(6)
26-
AreaCheckObject("%BASH_FOR_RES%",Player1)
27-
AreaCheckObject("%BASH_FOR_RES%",Player2)
28-
AreaCheckObject("%BASH_FOR_RES%",Player3)
29-
AreaCheckObject("%BASH_FOR_RES%",Player4)
30-
AreaCheckObject("%BASH_FOR_RES%",Player5)
31-
AreaCheckObject("%BASH_FOR_RES%",Player6)
32-
THEN
33-
RESPONSE #100
34-
StartMovie("BGSUNRIS")
35-
SetGlobalTimer("K#TimerSunrise","GLOBAL",ONE_HOUR)
36-
END
37-
>>>>>>>>
38-
39-
COPY + ~%patch_dir%/are/BG2626.ARE~ ~%patch_dir%/are~ //Candlekeep
40-
READ_BYTE 0x48 flags
41-
PATCH_IF (~%flags%~ BAND BIT3) BEGIN
42-
SET flags = flags - BIT3
43-
WRITE_BYTE 0x48 "flags"
44-
END
45-
BUT_ONLY
46-
47-
ACTION_BASH_FOR ~%patch_dir%/are~ ~^.+\.are$~ BEGIN
48-
COPY + ~%BASH_FOR_FILESPEC%~ ~%BASH_FOR_FILESPEC%~
49-
READ_BYTE 0x48 flags
50-
PATCH_IF (flags BAND BIT0) AND (flags BAND BIT1) AND (flags BAND BIT3) AND (flags BAND BIT6) BEGIN
51-
INNER_ACTION BEGIN
52-
EXTEND_BOTTOM ~%BASH_FOR_RES%.BCS~ ~.../BGSUNRIS_BGSUNSET-eb.baf~ EVALUATE_BUFFER
53-
PRINT ~BGSUNRIS/BGSUNSET movies added to %BASH_FOR_RES%.BCS~
54-
END
55-
END
56-
END
57-
581
///// \\\\\
592
///// workaround for engine differences \\\\\
603
///// \\\\\

EET/lib/bg2_2DA.tph

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -811,6 +811,8 @@ ACTION_DEFINE_ASSOCIATIVE_ARRAY table_2DA_moviedesc BEGIN
811811
END
812812
COPY_EXISTING ~MOVIDESC.2DA~ ~override~
813813
PRETTY_PRINT_2DA
814+
REPLACE_TEXTUALLY ~^NITEDAY ~ ~NITEDAY_~
815+
REPLACE_TEXTUALLY ~^DAYNITE ~ ~DAYNITE_~
814816
READ_2DA_ENTRIES_NOW movidesc 2
815817
FOR (index = 1; index < movidesc; ++index) BEGIN
816818
READ_2DA_ENTRY_FORMER movidesc index 0 movie

EET/lib/bg2_BCS.tph

Lines changed: 13 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -167,63 +167,6 @@ ACTION_FOR_EACH file IN AR0514 AR2001 BEGIN
167167
BUT_ONLY
168168
END
169169

170-
///// \\\\\
171-
///// DAYNITE/NITEDAY movies \\\\\
172-
///// \\\\\
173-
174-
<<<<<<<< .../DAYNITE_NITEDAY-eb.baf
175-
IF
176-
Time(DUSK_END)
177-
!GlobalTimerNotExpired("K#TimerSunset","GLOBAL")
178-
OR(6)
179-
AreaCheckObject("%SOURCE_RES%",Player1)
180-
AreaCheckObject("%SOURCE_RES%",Player2)
181-
AreaCheckObject("%SOURCE_RES%",Player3)
182-
AreaCheckObject("%SOURCE_RES%",Player4)
183-
AreaCheckObject("%SOURCE_RES%",Player5)
184-
AreaCheckObject("%SOURCE_RES%",Player6)
185-
THEN
186-
RESPONSE #100
187-
StartMovie("DAYNITE")
188-
SetGlobalTimer("K#TimerSunset","GLOBAL",ONE_HOUR)
189-
END
190-
191-
IF
192-
Time(DAWN_END)
193-
!GlobalTimerNotExpired("K#TimerSunrise","GLOBAL")
194-
OR(6)
195-
AreaCheckObject("%SOURCE_RES%",Player1)
196-
AreaCheckObject("%SOURCE_RES%",Player2)
197-
AreaCheckObject("%SOURCE_RES%",Player3)
198-
AreaCheckObject("%SOURCE_RES%",Player4)
199-
AreaCheckObject("%SOURCE_RES%",Player5)
200-
AreaCheckObject("%SOURCE_RES%",Player6)
201-
THEN
202-
RESPONSE #100
203-
StartMovie("NITEDAY")
204-
SetGlobalTimer("K#TimerSunrise","GLOBAL",ONE_HOUR)
205-
END
206-
>>>>>>>>
207-
208-
/*COPY_EXISTING ~AR2000.ARE~ ~override~ //Trademeet
209-
~AR2800.ARE~ ~override~ //Suldanesselar
210-
READ_BYTE 0x48 flags
211-
PATCH_IF (~%flags%~ BAND BIT3) BEGIN
212-
SET flags = flags - BIT3
213-
WRITE_BYTE 0x48 "flags"
214-
END
215-
BUT_ONLY*/
216-
217-
COPY_EXISTING_REGEXP GLOB ~.*\.are~ ~override~
218-
READ_BYTE 0x48 flags
219-
PATCH_IF (flags BAND BIT0) AND (flags BAND BIT1) AND (flags BAND BIT3) AND (flags BAND BIT6) BEGIN
220-
INNER_ACTION BEGIN
221-
EXTEND_BOTTOM ~%SOURCE_RES%.BCS~ ~.../DAYNITE_NITEDAY-eb.baf~ EVALUATE_BUFFER
222-
PRINT ~DAYNITE/NITEDAY movies added to %SOURCE_RES%.BCS~
223-
END
224-
END
225-
BUT_ONLY
226-
227170
///// \\\\\
228171
///// ACHIEVEM.BCS \\\\\
229172
///// \\\\\
@@ -1432,8 +1375,21 @@ THEN
14321375
END
14331376
>>>>>>>>
14341377

1378+
<<<<<<<< .../baldur25-et.baf
1379+
//SPIN649 removal at game startup is hardcoded in executable
1380+
IF
1381+
!Global("GavePocketPlane","GLOBAL",0)
1382+
!TriggerOverride(Player1,HaveSpellRES("SPIN649"))
1383+
THEN
1384+
RESPONSE #100
1385+
ReallyForceSpellRES("K#IN649",Player1)
1386+
Continue()
1387+
END
1388+
>>>>>>>>
1389+
14351390
EXTEND_TOP ~BALDUR.BCS~ ~.../timers-et.baf~
14361391
EXTEND_TOP ~BALDUR25.BCS~ ~.../timers-et.baf~
1392+
EXTEND_TOP ~BALDUR25.BCS~ ~.../baldur25-et.baf~
14371393
EXTEND_TOP ~BDBALDUR.BCS~ ~.../timers-et.baf~
14381394

14391395
///// \\\\\

EET/lib/binary.lua

Lines changed: 0 additions & 16 deletions
This file was deleted.

EET/tbl/compatibility.tbl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ BWS-URL 0 //dummy entry from Big World Setup
44
DLCMERGER 0 //DLC Merger
55
BGEETEXTPACK 0 //RUS BG1
66
SODRUS 0 //RUS SOD
7+
78
BG1AERIE 1 //Aerie for BG:EE
89
BG1NPC 1 //The BG1 NPC Project
910
BG1NPCMUSIC 0 //The BG1 NPC Project Music Pack
@@ -13,7 +14,6 @@ DRAKE 0 //Drake NPC Mod for BG:EE
1314
DRIZZTSAGA 1 //Drizzt Saga (BP-BGT Worldmap version)
1415
GARRICK-TT 1 //Garrick : Tales of a troubadour
1516
MARGARITA 0 //Margarita for Baldur's Gate: Enhanced Edition
16-
NEERA 0 //Neera Expansion
1717
K9ROUGHWORLD 0 //Rough World
1818
SARADAS_MAGIC 0 //saradas_magic
1919
K9SHARTEELNPC 0 //Sharteel NPC mod for SoD

EET_end/EET_end.tp2

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,67 @@ ACTION_PHP_EACH table_append_dlg AS file => var BEGIN
230230
END
231231
END
232232

233+
///// \\\\\
234+
///// DAYNITE/NITEDAY movies \\\\\
235+
///// \\\\\
236+
237+
ACTION_DEFINE_ASSOCIATIVE_ARRAY remapped_mve BEGIN
238+
~DAYNITE~ => ~DAYNITE_~
239+
~NITEDAY~ => ~NITEDAY_~
240+
END
241+
242+
<<<<<<<< .../DAYNITE_NITEDAY-eb.baf
243+
IF
244+
Time(DUSK_END)
245+
!GlobalTimerNotExpired("K#TimerSunset","GLOBAL")
246+
OR(6)
247+
AreaCheckObject("%SOURCE_RES%",Player1)
248+
AreaCheckObject("%SOURCE_RES%",Player2)
249+
AreaCheckObject("%SOURCE_RES%",Player3)
250+
AreaCheckObject("%SOURCE_RES%",Player4)
251+
AreaCheckObject("%SOURCE_RES%",Player5)
252+
AreaCheckObject("%SOURCE_RES%",Player6)
253+
THEN
254+
RESPONSE #100
255+
StartMovie("%DAYNITE%")
256+
SetGlobalTimer("K#TimerSunset","GLOBAL",ONE_HOUR)
257+
END
258+
259+
IF
260+
Time(DAWN_END)
261+
!GlobalTimerNotExpired("K#TimerSunrise","GLOBAL")
262+
OR(6)
263+
AreaCheckObject("%SOURCE_RES%",Player1)
264+
AreaCheckObject("%SOURCE_RES%",Player2)
265+
AreaCheckObject("%SOURCE_RES%",Player3)
266+
AreaCheckObject("%SOURCE_RES%",Player4)
267+
AreaCheckObject("%SOURCE_RES%",Player5)
268+
AreaCheckObject("%SOURCE_RES%",Player6)
269+
THEN
270+
RESPONSE #100
271+
StartMovie("%NITEDAY%")
272+
SetGlobalTimer("K#TimerSunrise","GLOBAL",ONE_HOUR)
273+
END
274+
>>>>>>>>
275+
276+
OUTER_SET BG1AREA = IDS_OF_SYMBOL (AREATYPE BG1AREA)
277+
COPY_EXISTING_REGEXP GLOB ~.*\.ARE~ ~override~
278+
READ_SHORT 0x48 flags
279+
PATCH_IF (flags BAND BIT0) AND (flags BAND BIT1) AND (flags BAND BIT3) AND (flags BAND BIT6) BEGIN
280+
PATCH_IF (flags BAND BG1AREA) != 0 BEGIN
281+
SPRINT ~DAYNITE~ ~BGSUNSET~
282+
SPRINT ~NITEDAY~ ~BGSUNRIS~
283+
END ELSE BEGIN
284+
SPRINT ~DAYNITE~ ~DAYNITE_~
285+
SPRINT ~NITEDAY~ ~NITEDAY_~
286+
END
287+
INNER_ACTION BEGIN
288+
EXTEND_BOTTOM ~%SOURCE_RES%.BCS~ ~.../DAYNITE_NITEDAY-eb.baf~ EVALUATE_BUFFER
289+
PRINT ~%DAYNITE%/%NITEDAY% movies added to %SOURCE_RES%.BCS~
290+
END
291+
END
292+
BUT_ONLY
293+
233294
///// \\\\\
234295
///// Patch files \\\\\
235296
///// \\\\\
@@ -238,6 +299,7 @@ OUTER_SPRINT remappedPrefix ~remapped~
238299
OUTER_SET strrefAdd = 0
239300
OUTER_SET ddsClonning = 0
240301
OUTER_SET traifyDLG = 0
302+
OUTER_SET skipTpBafD = 0
241303
INCLUDE ~EET/lib/macros.tph~
242304

243305
COPY_EXISTING_REGEXP GLOB ~.+\.DLG$~ ~override~

0 commit comments

Comments
 (0)