Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GT_7EYES-O-MATIC #59

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
935 changes: 554 additions & 381 deletions eefixpack/files/lib/gt_7eyes.tph

Large diffs are not rendered by default.

266 changes: 189 additions & 77 deletions eefixpack/files/lib/gt_functions.tph
Original file line number Diff line number Diff line change
@@ -104,64 +104,6 @@ BEGIN
END
END

//////////////////////////////////////////////////////////
/////// TO_HEX_NUMBER (borrowed from Argent77)
//////////////////////////////////////////////////////////

/*
** Converts any decimal number into a hexadecimal number
*/

DEFINE_DIMORPHIC_FUNCTION ~TO_HEX_NUMBER~
INT_VAR
~value~ = 0 // the decimal number
~minDigits~ = 1 // min. number of digits in return value (not counting sign)
~prefix~ = 0 // whether to return number with "0x" prefix
~signed~ = 1 // whether number is treated as a signed number
~upperCase~ = 0 // whether to represent alphabetic digits in upper case
RET
~hexNumber~ // returned as string without prefix
BEGIN
ACTION_IF (~%minDigits%~ < 1) BEGIN
OUTER_SET ~minDigits~ = 1
END
ACTION_IF ("%minDigits%" > 8) BEGIN
OUTER_SET ~minDigits~ = 8
END
OUTER_TEXT_SPRINT ~hexNumber~ ~~
ACTION_DEFINE_ARRAY ~digit~ BEGIN ~0~ ~1~ ~2~ ~3~ ~4~ ~5~ ~6~ ~7~ ~8~ ~9~ ~a~ ~b~ ~c~ ~d~ ~e~ ~f~ END

ACTION_IF ("%signed%" && "%value%" < 0) BEGIN
OUTER_SET ~isSigned~ = 1
OUTER_SET ~value~ = 0 - "%value%"
END ELSE BEGIN
OUTER_SET ~isSigned~ = 0
END

OUTER_WHILE ("%value%" != 0) BEGIN
OUTER_SET ~curDigit~ = "%value%" BAND 0xf
OUTER_SET ~value~ = "%value%" BLSR 4
OUTER_TEXT_SPRINT ~hexDigit~ $~digit~(~%curDigit%~)
OUTER_TEXT_SPRINT ~hexNumber~ ~%hexDigit%%hexNumber%~
END

OUTER_WHILE (STRING_LENGTH ~%hexNumber%~ < "%minDigits%") BEGIN
OUTER_TEXT_SPRINT ~hexNumber~ ~0%hexNumber%~
END

ACTION_IF ("%upperCase%") BEGIN
ACTION_TO_UPPER ~hexNumber~
END

ACTION_IF ("%prefix%") BEGIN
OUTER_TEXT_SPRINT ~hexNumber~ ~0x%hexNumber%~
END

ACTION_IF ("%isSigned%") BEGIN
OUTER_TEXT_SPRINT ~hexNumber~ ~-%hexNumber%~
END
END

//////////////////////////////////////////////////////////
/////// ADD_SPLPROT_ENTRY (borrowed from Argent77)
//////////////////////////////////////////////////////////
@@ -191,12 +133,8 @@ BEGIN
OUTER_SET "index" = "-1"
// Main
ACTION_IF ("%stat%" >= 0) BEGIN
LAF "TO_HEX_NUMBER"
INT_VAR
"value" = "%stat%"
"prefix" = 1
RET
"valueHex" = "hexNumber"
OUTER_PATCH "" BEGIN
SPRINTF "valueHex" "%x" ("%stat%")
END
ACTION_IF (~%value%~ STRING_EQUAL ~~) BEGIN
OUTER_TEXT_SPRINT "value" ~*~
@@ -317,13 +255,10 @@ BEGIN
// Adding new entry
ACTION_IF ("%value%" != "-1") BEGIN
ACTION_IF ("%hexadecimal%") BEGIN
LAF "TO_HEX_NUMBER"
INT_VAR
"value"
RET
"hexNumber"
OUTER_PATCH "" BEGIN
SPRINTF "idsValue" "%x" ("%value%")
TO_UPPER "idsValue"
END
OUTER_TEXT_SPRINT ~idsValue~ ~0x%hexNumber%~
END ELSE BEGIN
OUTER_TEXT_SPRINT ~idsValue~ ~%value%~
END
@@ -420,17 +355,17 @@ BEGIN
// Initialize
OUTER_TEXT_SPRINT "list_out" "%list_in%"
// Find the first instance of "%separator%"
OUTER_SET "x" = INDEX (CASE_INSENSITIVE EXACT_MATCH "%separator%" "%list_in%")
ACTION_IF ("%x%" == "-1") BEGIN
OUTER_SET "found" = INDEX (CASE_INSENSITIVE EXACT_MATCH "%separator%" "%list_in%")
ACTION_IF ("%found%" == "-1") BEGIN
// If it can't find "%separator%", then this is the last entry => Find end of string
OUTER_SET "x" = INDEX (CASE_INSENSITIVE EVALUATE_REGEXP "$" "%list_in%")
OUTER_SET "found" = INDEX (CASE_INSENSITIVE EVALUATE_REGEXP "$" "%list_in%")
OUTER_TEXT_SPRINT "list_out" ""
END
OUTER_SET "y" = STRING_LENGTH "%list_in%"
OUTER_SET "string_length" = STRING_LENGTH "%list_in%"
// Return the first entry
LAF "SUBSTRING"
INT_VAR
"length" = "%x%"
"length" = "%found%"
STR_VAR
"string" = "%list_in%"
RET
@@ -440,8 +375,8 @@ BEGIN
ACTION_IF ("%list_out%" STRING_COMPARE_CASE "") BEGIN
LAF "SUBSTRING"
INT_VAR
"start" = "%x%" + STRING_LENGTH "%separator%" // we need to take into account the length of "%separator%"
"length" = "%y%" - ("%x%" + STRING_LENGTH "%separator%") // we need to take into account the length of "%separator%"
"start" = "%found%" + STRING_LENGTH "%separator%" // we need to take into account the length of "%separator%"
"length" = "%string_length%" - ("%found%" + STRING_LENGTH "%separator%") // we need to take into account the length of "%separator%"
STR_VAR
"string" = "%list_in%"
RET
@@ -450,6 +385,46 @@ BEGIN
END
END

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////// Return the number of times ~%element%~ appears in ~%list%~ (matching is case-insensitive)
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

DEFINE_DIMORPHIC_FUNCTION "COUNT_ELEMENT_INSTANCES"
STR_VAR
"list_in" = ""
"element" = ""
"separator" = " "
RET
"count"
"list_out"
BEGIN
// Initialize
OUTER_SET "count" = 0
OUTER_TEXT_SPRINT "list_out" ""
// Main
OUTER_WHILE ("%list_in%" STRING_COMPARE_CASE "") BEGIN
LAF "RETURN_FIRST_ENTRY"
STR_VAR
"list_in"
"separator"
RET
"list_in" = "list_out"
"entry"
END
ACTION_IF ("%entry%" STRING_EQUAL_CASE "%element%") BEGIN
OUTER_SET "count" += 1
END ELSE BEGIN
OUTER_TEXT_SPRINT "list_out" "%list_out%%separator%%entry%"
END
END
// Remove leading ~%separator%~
OUTER_PATCH_SAVE "list_out" "%list_out%" BEGIN
REPLACE_TEXTUALLY CASE_SENSITIVE EVALUATE_REGEXP "^%separator%" ""
END
END

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////// As a patch or action, turns a list into a (simple) array
@@ -481,4 +456,141 @@ BEGIN
END
OUTER_SET "count" += 1
END
END

/////////////////////////////////////////////////////////////////////////////////////////////////////////////
/*

De-localized (i.e., not language dependant) function to get the string corresponding to index #"%strref%"

*/
/////////////////////////////////////////////////////////////////////////////////////////////////////////////

DEFINE_DIMORPHIC_FUNCTION "GT_GET_STRING"
INT_VAR
"strref" = 0
RET
"string"
BEGIN
OUTER_TEXT_SPRINT "string" ""
COPY - "lang\en_us\dialog.tlk" "override"
READ_LONG 0xE "base_off" // Offset to base data
READ_LONG (0x12 + 0x12 + ("%strref%" * 0x1A)) "off" // Relative offset of this string
READ_LONG (0x12 + 0x16 + ("%strref%" * 0x1A)) "length" // Length of this string
READ_ASCII ("%base_off%" + "%off%") "string" ("%length%")
BUT_ONLY_IF_IT_CHANGES
END

/////////////////////////////////////////////////////////////////////////////////////////////////////////////
/*

De-localized (i.e., not language dependant) function to get the index number string corresponding to string "%string%"

*/
/////////////////////////////////////////////////////////////////////////////////////////////////////////////

DEFINE_DIMORPHIC_FUNCTION "GT_GET_STRREF"
INT_VAR
"match_case" = 0 // Default: case insensitive
STR_VAR
"string" = ""
RET
"strref"
BEGIN
// Initialize
OUTER_SET "strref" = "-1"
// Main
COPY - "lang\en_us\dialog.tlk" "override"
READ_LONG 0xE "base_off" // Offset to base data
FOR ("i" = 0 ; "%i%" < NEXT_STRREF ; "i" += 1) BEGIN
READ_LONG (0x12 + 0x12 + ("%i%" * 0x1A)) "off" // Relative offset of this string
READ_LONG (0x12 + 0x16 + ("%i%" * 0x1A)) "length" // Length of this string
READ_ASCII ("%base_off%" + "%off%") "current_string" ("%length%")
PATCH_IF "%match_case%" BEGIN
PATCH_IF ("%current_string%" STRING_EQUAL "%string%") BEGIN
SET "strref" = "%i%"
SET "i" = NEXT_STRREF // kill FOR-loop
END
END ELSE BEGIN
PATCH_IF ("%current_string%" STRING_EQUAL_CASE "%string%") BEGIN
SET "strref" = "%i%"
SET "i" = NEXT_STRREF // kill FOR-loop
END
END
END
BUT_ONLY_IF_IT_CHANGES
END

////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////

DEFINE_PATCH_FUNCTION ~ADD_SPELL_ABILITY~
INT_VAR
~type~ = 1 // Melee (should be irrelevant for `spl` files...)
~location~ = 4 // Ability (F13 button)
~target~ = 1 // Living actor
~#_targets~ = 0
~range~ = 30 // Default visual range
~minimum_level~ = 1
~casting_speed~ = 0
~projectile~ = IDS_OF_SYMBOL ("MISSILE" "None")
//
~copy_header~ = 0
~insert_point~ = ~-1~ // insert last
STR_VAR
~icon~ = ~~
RET
~insert_point~
BEGIN
//LPF ~FJ_SPL_ITM_REINDEX~ END
~hs~ = 0x28

READ_LONG 0x64 ~ho~
READ_SHORT 0x68 ~hc~
READ_LONG 0x6a ~eo~
~insert_point~ = ("%insert_point%" > "%hc%" || "%insert_point%" < 0) ? "%hc%" : "%insert_point%"
~copy_header~ = ("%copy_header%" < 0) ? 0 : "%copy_header%"

PATCH_IF "%copy_header%" > "%hc%" BEGIN
PATCH_WARN ~Unable to copy %copy_header%th header, "%DEST_FILE%" contains only %hc% headers!~
END ELSE BEGIN
INSERT_BYTES ("%ho%" + "%insert_point%" * "%hs%") "%hs%"
"hc" += 1
"eo" += "%hs%"
PATCH_IF "%copy_header%" BEGIN
READ_SHORT ("%ho%" + ("%copy_header%" - 1) * "%hs%" + 0x1e) "ec"
READ_SHORT ("%ho%" + ("%copy_header%" - 1) * "%hs%" + 0x20) "ei"
READ_ASCII ("%eo%" + "%ei%" * 0x30) "effs" ("%ec%" * 0x30)
READ_ASCII ("%ho%" + ("%copy_header%" - 1) * "%hs%") "copy" ("%hs%")
WRITE_ASCII ("%ho%" + "%insert_point%" * "%hs%") ~%copy%~ ("%hs%")
END
WRITE_SHORT 0x68 "%hc%"
WRITE_LONG 0x6a "%eo%"

READ_SHORT 0x70 "ei" // technically, it is a counter
FOR ("i" = "%ho%" ; "%i%" < "%ho%" + "%hc%" * "%hs%" ; "i" += "%hs%") BEGIN
READ_SHORT "%i%" + 0x1e "ec"
WRITE_SHORT "%i%" + 0x20 "%ei%"
"ei" += "%ec%"
END

PATCH_IF "%copy_header%" BEGIN
READ_SHORT ("%ho%" + "%insert_point%" * "%hs%" + 0x1e) "ec"
READ_SHORT ("%ho%" + "%insert_point%" * "%hs%" + 0x20) "ei"
INSERT_BYTES ("%eo%" + "%ei%" * 0x30) ("%ec%" * 0x30)
WRITE_ASCII ("%eo%" + "%ei%" * 0x30) ~%effs%~ ("%ec%" * 0x30)
END ELSE BEGIN
"off" = "%ho%" + "%insert_point%" * "%hs%"
WRITE_BYTE "%off%" "%type%"
WRITE_SHORT ("%off%" + 0x2) "%location%"
WRITE_ASCII ("%off%" + 0x4) ~%icon%~ #8
WRITE_BYTE ("%off%" + 0xc) "%target%"
WRITE_BYTE ("%off%" + 0xd) "%#_targets%"
WRITE_SHORT ("%off%" + 0xe) "%range%"
WRITE_SHORT ("%off%" + 0x10) "%minimum_level%"
WRITE_SHORT ("%off%" + 0x12) "%casting_speed%"
WRITE_SHORT ("%off%" + 0x26) "%projectile%"
END
END
END
1 change: 1 addition & 0 deletions eefixpack/files/tph/6037_iwdee_probabilities.tph
Original file line number Diff line number Diff line change
@@ -96,6 +96,7 @@ COPY_EXISTING ~amaunat.itm~ ~override~ // amaunator's legacy: 5% beltyn's burni
~sbowebu.itm~ ~override~ // short bow of ebullience: 25% fire damage
~serrate.itm~ ~override~ // serrated bone blade: 20% cold damage
~sflail.itm~ ~override~ // conrnugon: 50% bleed, 25% stun
~sflailst.spl~ ~override~ // conrnugon: 25% stun
~shax4d4c.itm~ ~override~ // shadowed orc weapon: 40% cold damage
~shaxe2c.itm~ ~override~ // shadowed orc weapon: 40% cold damage
~shmblr.itm~ ~override~ // shambler weapon: 5% entangle
258 changes: 251 additions & 7 deletions eefixpack/files/tph/bg2ee.tph
Original file line number Diff line number Diff line change
@@ -129,6 +129,15 @@ WITH_SCOPE BEGIN
END
END

/*
luke
"7eyes.2da" vs. SPL/ITM files
*/
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/7eyes.tph"
LAUNCH_ACTION_FUNCTION "7EYESification" END
END

/*
luke
**Wing Buffet vs. MR**
@@ -503,7 +512,8 @@ COPY_EXISTING ~magiconf.itm~ ~override~ // Ghoul hand - causes confusion - unkno
// tbd, cam
// uses 'intoxication' icon for a confusion effect
COPY_EXISTING ~misc3m.itm~ ~override~ // Harp of Discord - causes confusion - plays animation SPCONFUS - portrait icon 5 - plays sound EFF_P05
LPF ALTER_EFFECT INT_VAR match_opcode = 142 match_parameter2 = 5 parameter2 = 3 END
//LPF ALTER_EFFECT INT_VAR match_opcode = 142 match_parameter2 = 5 parameter2 = 3 END
LPF DELETE_EFFECT INT_VAR match_opcode = 142 match_parameter2 = 5 END // move to subspell

// immune to hold, but missing spmindat immunity
COPY_EXISTING ~ohbetrai.itm~ ~override~ // <invalid strref -1> - immune to stun - immune to hold
@@ -683,6 +693,28 @@ WITH_SCOPE BEGIN
END
END

/*
luke
**Wand of Glitterdust**
- Make sure all effects are dispellable/do not bypass Magic Resistance (so as to match the corresponding spell)
*/
WITH_SCOPE BEGIN
COPY_EXISTING "ohdwand1.itm" "override"
LPF "ALTER_EFFECT" INT_VAR "check_globals" = 0 "resist_dispel" = BIT0 END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**Kuo-toan Bolt**
- Make sure it ignores Magic Resistance
*/
WITH_SCOPE BEGIN
COPY_EXISTING "kuobolt3.itm" "override"
LPF "ALTER_EFFECT" INT_VAR "check_globals" = 0 "resist_dispel" = 0 END
BUT_ONLY_IF_IT_CHANGES
END

// tbd, cam
// fixing paperdoll animations
ACTION_DEFINE_ASSOCIATIVE_ARRAY cd_paperdoll_animations BEGIN
@@ -775,8 +807,25 @@ COPY_EXISTING ~spin804.spl~ ~override~ // psychic drain - plays spmindat

// tbd, cam
// wrong duration for portrait icon
COPY_EXISTING ~spin807.spl~ ~override~ // Slayer Fear - causes fear - portrait icon 36
LPF ALTER_EFFECT INT_VAR match_duration = 120 duration = 12 END
WITH_SCOPE BEGIN
COPY_EXISTING - ~spin807.spl~ ~override~ // Slayer Fear - causes fear - portrait icon 36
GET_OFFSET_ARRAY ab_arr SPL_V10_HEADERS
PHP_EACH ab_arr AS ab_ind => ab_off BEGIN
GET_OFFSET_ARRAY2 fx_arr ab_off SPL_V10_HEAD_EFFECTS
PHP_EACH fx_arr AS fx_ind => fx_off BEGIN
PATCH_MATCH SHORT_AT fx_off WITH
326 WHEN SLONG_AT (fx_off + 0x4) = IDS_OF_SYMBOL ("splstate" "PANIC_IMMUNITY") AND LONG_AT (fx_off + 0x8) = 111 BEGIN
READ_ASCII (fx_off + 0x14) "subspell"
END
DEFAULT
END
END
END
BUT_ONLY
COPY_EXISTING "%subspell%.spl" "override"
LPF ALTER_EFFECT INT_VAR match_duration = 120 duration = 12 END
BUT_ONLY
END

//tbd, cam
// should be setting ex str, not incrementing
@@ -1449,11 +1498,23 @@ WITH_SCOPE BEGIN
/* Extended Header */
LPF "ALTER_SPELL_HEADER" INT_VAR "projectile" = IDS_OF_SYMBOL ("MISSILE" "Chain_Insect") END
PATCH_WITH_SCOPE BEGIN
SET "parameter2" = IDS_OF_SYMBOL ("STATS" "CLERIC_INSECT_PLAGUE")
GET_OFFSET_ARRAY "ab_array" SPL_V10_HEADERS
PHP_EACH "ab_array" AS "hdr" => "ab_off" BEGIN
LPF "COUNT_V10_HEAD_EFFECTS" STR_VAR "opcode" = "233" "parameter2" RET "count" END
LPF ~DELETE_EFFECT~ INT_VAR ~match_opcode~ = 233 ~check_globals~ = 0 ~check_headers~ = (~%count%~ <= 1 ? 0 : 1) ~multi_match~ = (~%count%~ - 1) ~header~ = ~%hdr%~ ~match_parameter2~ = IDS_OF_SYMBOL ("STATS" "CLERIC_INSECT_PLAGUE") END
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
SET "found" = 0
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" SPL_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
233 WHEN (LONG_AT ("%fx_off%" + 0x8) == IDS_OF_SYMBOL ("STATS" "CLERIC_INSECT_PLAGUE")) BEGIN
PATCH_IF !("%found%") BEGIN
SET "found" = 1
END ELSE BEGIN
WRITE_SHORT "%fx_off%" 999 // mark it for later deletion
END
END
DEFAULT
END
END
LPF ~DELETE_EFFECT~ INT_VAR ~match_opcode~ = 999 ~check_globals~ = 0 ~header~ = ~%ab_ind%~ END
END
END
BUT_ONLY_IF_IT_CHANGES
@@ -1526,6 +1587,189 @@ WITH_SCOPE BEGIN
LAF ~NISHRUU_HAKEASHAR~ END
END

/*
luke
**Wand of Glitterdust**
- Make sure all effects are dispellable/do not bypass Magic Resistance (so as to match the corresponding spell)
*/
WITH_SCOPE BEGIN
COPY_EXISTING - "ohdwand1.itm" "override"
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "BLIND_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
BUT_ONLY_IF_IT_CHANGES
COPY_EXISTING "%subspell%.spl" "override"
LPF "ALTER_EFFECT" INT_VAR "check_globals" = 0 "resist_dispel" = BIT0 BOR BIT1 END // MR already checked on the parent file
END
END

/*
luke
**The Captive Audience**
- Make sure duration is 12 hours (so as to match item description)
*/
WITH_SCOPE BEGIN
COPY_EXISTING - "misc2p.itm" "override"
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "CHARM_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
BUT_ONLY_IF_IT_CHANGES
COPY_EXISTING "%subspell%.spl" "override"
LPF "ALTER_EFFECT" INT_VAR "match_duration" = 120 "duration" = 3600 END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**Harp of Discord**
- Make sure it uses the Confused icon
- this is a "eefixpack\files\tph\luke\7eyes\7eyes.tph" follow-up
*/
WITH_SCOPE BEGIN
COPY_EXISTING - "misc3m.itm" "override"
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "CONFUSION_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
BUT_ONLY
COPY_EXISTING "%subspell%.spl" "override"
LPF "CLONE_EFFECT" INT_VAR "match_opcode" = 128 "opcode" = 142 "parameter1" = 0 "parameter2" = 3 "special" = 0 STR_VAR "resource" = "" "insert" = "below" END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**Kuo-toan Bolt**
- Make sure it ignores Magic Resistance
- It is supposed to cause paralysis, not web
*/
WITH_SCOPE BEGIN
COPY_EXISTING - "kuobolt3.itm" "override"
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "PARALYZE_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
BUT_ONLY
COPY_EXISTING "%subspell%.spl" "override"
LPF "DELETE_EFFECT" INT_VAR "check_globals" = 0 "match_opcode" = 157 END // web overlay
LPF "ALTER_EFFECT" INT_VAR "check_globals" = 0 "resist_dispel" = 0 END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**Horn of Silence**
- Make sure all effects are dispellable / bypass Magic Resistance (so as to match the corresponding spell)
*/
WITH_SCOPE BEGIN
COPY_EXISTING - "misc3l.itm" "override"
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "SILENCE_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
BUT_ONLY
COPY_EXISTING "%subspell%.spl" "override"
LPF "ALTER_EFFECT" INT_VAR "check_globals" = 0 "resist_dispel" = BIT0 BOR BIT1 END // MR already checked on the parent file
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**False Dawn**
- make sure it properly affects undead (undead are normally immune to confusion, so this spell is not working as expected...)
- if EEex is not installed, abuse op182 to bypass/ignore op101 ("https://www.gibberlings3.net/forums/topic/35616-effect-immunities-on-the-ee-engine-aka-taking-full-advantage-of-the-ee-fixpack/page/2/#comment-313805")
*/
WITH_SCOPE BEGIN
INCLUDE "eefixpack\files\tph\luke\false_dawn.tph"
//LAF "CLERIC_FALSE_DAWN" END
END

/*
luke
**Oil of Speed (cursed)**
- should display the feeblemind icon
*/
WITH_SCOPE BEGIN
COPY_EXISTING "potn23.itm" "override"
LPF "DELETE_EFFECT" INT_VAR "match_opcode" = 142 "match_parameter2" = 3 END // Icon: Confused
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "FEEBLEMIND_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
INNER_ACTION BEGIN
COPY_EXISTING "%subspell%.spl" "override"
LPF "CLONE_EFFECT" INT_VAR "match_opcode" = 76 "opcode" = 142 "parameter1" = 0 "parameter2" = 48 "special" = 0 STR_VAR "resource" = "" "insert" = "below" END // portrait icon
BUT_ONLY_IF_IT_CHANGES
END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**Moon Dog Howl**
- "eefixpack\files\tph\luke\7eyes\7eyes.tph" follow-up
*/
WITH_SCOPE BEGIN
COPY_EXISTING "spin891a.spl" "override" // panic subspell
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 177 "opcode" = 24 "parameter1" = 0 "parameter2" = 0 STR_VAR "match_resource" = "moondog" "resource" = "" END
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 177 "opcode" = 142 "parameter1" = 0 "parameter2" = 36 STR_VAR "match_resource" = "moond2" "resource" = "" END
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 177 "opcode" = 139 "parameter1" = 14007 "parameter2" = 0 STR_VAR "match_resource" = "moond1" "resource" = "" END
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 177 "opcode" = 215 "parameter1" = 0 "parameter2" = 1 STR_VAR "match_resource" = "moond4" "resource" = "cdhorror" END
LPF "CLONE_EFFECT" INT_VAR "match_opcode" = 24 "opcode" = 318 "parameter1" = IDS_OF_SYMBOL ("align" "MASK_EVIL") "parameter2" = 118 "timing" = 0 "duration" = 0 "special" = 0 STR_VAR "resource" = "%DEST_RES%" END
LPF "DELETE_EFFECT" INT_VAR "match_target" = 3 END
BUT_ONLY_IF_IT_CHANGES
END

// tbd, cam
// don't play berserk damage warnings on non-party memebers; see also spin117[ab].eff
INCLUDE ~eefixpack/files/tph/tbd_angry_noises.tph~
122 changes: 116 additions & 6 deletions eefixpack/files/tph/bgee.tph
Original file line number Diff line number Diff line change
@@ -218,6 +218,15 @@ WITH_SCOPE BEGIN
END
END

/*
luke
"7eyes.2da" vs. SPL/ITM files
*/
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/7eyes.tph"
LAUNCH_ACTION_FUNCTION "7EYESification" END
END

/*
luke
**Wing Buffet vs. MR**
@@ -987,6 +996,29 @@ WITH_SCOPE BEGIN
END
END

/*
luke
**Wand of Cursing**
- add missing Deafness effect (as per item description)
*/
WITH_SCOPE BEGIN
COPY_EXISTING "wand19.itm" "override"
LPF "CLONE_EFFECT" INT_VAR "match_opcode" = 326 "multi_match" = 1 "match_parameter2" = 111 "parameter1" = IDS_OF_SYMBOL ("splstate" "DEAFNESS_IMMUNITY") STR_VAR "resource" = "wand19df" END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**MAGIWEB**
- Should cause Web, not Paralysis
- "eefixpack\files\tph\luke\7eyes\7eyes.tph" follow-up
*/
WITH_SCOPE BEGIN
COPY_EXISTING "magiweb.itm" "override"
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 326 "match_parameter1" = IDS_OF_SYMBOL ("splstate" "PARALYZE_IMMUNITY") "match_parameter2" = 111 "parameter1" = IDS_OF_SYMBOL ("splstate" "WEB_IMMUNITY") END
BUT_ONLY_IF_IT_CHANGES
END

///// \\\\\
///// spell fixes \\\\\
///// \\\\\
@@ -1234,10 +1266,13 @@ WITH_SCOPE BEGIN
BUT_ONLY_IF_IT_CHANGES
END

// luke
// Stinking Cloud
// 1) op39 can automatically display a portrait icon, there's no need to apply a separate op142 effect
// 2) remove the "Bypass Mirror Image" flag (it's only relevant for opcode #12 and opcode #25)
/*
luke
**Stinking Cloud**
- op39 can automatically display a portrait icon, there's no need to apply a separate op142 effect
- remove the "Bypass Mirror Image" flag (it's only relevant for opcode #12 and opcode #25)
- op324 resource field should not be empty
*/
WITH_SCOPE BEGIN
COPY_EXISTING "%WIZARD_STINKING_CLOUD%.spl" "override" // spwi213
PATCH_WITH_SCOPE BEGIN
@@ -1251,6 +1286,7 @@ WITH_SCOPE BEGIN
END
LAUNCH_PATCH_FUNCTION ~DELETE_EFFECT~ INT_VAR ~match_opcode~ = 142 END
LAUNCH_PATCH_FUNCTION ~ALTER_EFFECT~ INT_VAR ~match_opcode~ = 39 ~special~ = 126 END
LPF ~ALTER_EFFECT~ INT_VAR ~match_opcode~ = 324 ~match_parameter2~ = 55 STR_VAR ~resource~ = "%DEST_RES%" END
BUT_ONLY_IF_IT_CHANGES
END

@@ -1850,6 +1886,81 @@ WITH_SCOPE BEGIN
LAF ~NISHRUU_HAKEASHAR~ END
END

/*
luke
**Wand of Cursing**
- add missing Deafness effect (as per item description)
*/
WITH_SCOPE BEGIN
COPY_EXISTING - "wand19.itm" "override"
GET_OFFSET_ARRAY "ab_array" ITM_V10_HEADERS
PHP_EACH "ab_array" AS "ab_ind" => "ab_off" BEGIN
GET_OFFSET_ARRAY2 "fx_array" "%ab_off%" ITM_V10_HEAD_EFFECTS
PHP_EACH "fx_array" AS "fx_ind" => "fx_off" BEGIN
PATCH_MATCH SHORT_AT "%fx_off%" WITH
326 WHEN SLONG_AT (0x4 + "%fx_off%") == IDS_OF_SYMBOL ("splstate" "SILENCE_IMMUNITY") AND LONG_AT (0x8 + "%fx_off%") == 111 BEGIN
READ_ASCII (0x14 + "%fx_off%") "subspell"
END
DEFAULT
END
END
END
BUT_ONLY_IF_IT_CHANGES
COPY_EXISTING "%subspell%.spl" "override\wand19df.spl"
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 38 "opcode" = 80 "parameter1" = 0 "parameter2" = 0 "special" = 0 STR_VAR "resource" = "" END // deafness
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 142 "parameter1" = 0 "parameter2" = 112 "special" = 0 STR_VAR "resource" = "" END // portrait icon
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 139 "parameter1" = 31791 "parameter2" = 0 "special" = 0 STR_VAR "resource" = "" END // feedback string
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**Tail Constriction**
- Should display the Webbed icon (instead of the Entangled icon)
*/
WITH_SCOPE BEGIN
COPY_EXISTING "bdwyrmt.spl" "override"
LPF "DELETE_EFFECT" INT_VAR "match_opcode" = 142 END // portrait icon -- move to subspell
BUT_ONLY_IF_IT_CHANGES IF_EXISTS
END

/*
luke
**MAGIWEB, Tail Constriction**
- Should display the Webbed icon (instead of the Held/Entangled icon)
*/
WITH_SCOPE BEGIN
COPY_EXISTING "magiweb.spl" "override"
"bdwyrmtw.spl" "override"
LPF "CLONE_EFFECT" INT_VAR "match_opcode" = 157 "opcode" = 142 "parameter1" = 0 "parameter2" = 129 "special" = 0 STR_VAR "resource" = "" "insert" = "below" END // portrait icon
BUT_ONLY_IF_IT_CHANGES IF_EXISTS
END

/*
luke
**Power Word, Stun - Power Word, Kill**
- fix incorrect op318/op324 resource field
*/
WITH_SCOPE BEGIN
COPY_EXISTING "%CUTSCENE_POWERWORD_STUN%.spl" "override"
"%POWERWORD_STUN%.spl" "override"
"%POWERWORD_KILL%.spl" "override"
LPF "ALTER_EFFECT" INT_VAR "match_opcode" = 324 "special" = 0 STR_VAR "resource" = "%DEST_RES%" END
LPF "ALTER_EFFECT" INT_VAR "silent" = 1 "match_opcode" = 318 "special" = 0 STR_VAR "resource" = "%DEST_RES%" END
BUT_ONLY_IF_IT_CHANGES
END

/*
luke
**False Dawn**
- make sure it affects undead (undead are normally immune to confusion, so this spell is not working as expected...)
- if EEex is not installed, abuse op182 to bypass/ignore op101 ("https://www.gibberlings3.net/forums/topic/35616-effect-immunities-on-the-ee-engine-aka-taking-full-advantage-of-the-ee-fixpack/page/2/#comment-313805")
*/
WITH_SCOPE BEGIN
INCLUDE "eefixpack\files\tph\luke\false_dawn.tph"
//LAF "CLERIC_FALSE_DAWN" END
END

///// \\\\\
///// projectile fixes \\\\\
///// \\\\\
@@ -1923,5 +2034,4 @@ END

INCLUDE ~eefixpack/files/lib/cd_effect_batches_functions.tpa~ // function for effect batches
INCLUDE ~eefixpack/files/lib/cd_effect_batches_arrays_bg_bg2_iwd.tpa~ // array definitions for effect batches
INCLUDE ~eefixpack/files/tph/tbd_vfx_removal_bg.tph~ // use effect batches to remove vfx from effects which have been removed

INCLUDE ~eefixpack/files/tph/tbd_vfx_removal_bg.tph~ // use effect batches to remove vfx from effects which have been removed
63 changes: 46 additions & 17 deletions eefixpack/files/tph/dw/holy_unholy.tph
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
This function moves Holy Smite and Unholy Blight so as to use 324 magic rather than a big block of 101s.
This function moves Holy Smite and Unholy Blight so as to use 324 magic rather than a big block of 177s.
In the process it also handles EE save-for-half functionality.
*/

@@ -11,17 +11,46 @@ DEFINE_ACTION_FUNCTION holy_unholy BEGIN
ACTION_IF GAME_IS "bgee bg2ee" BEGIN // rebuild to use 324s instead of horrific pile of EFFs

COPY_EXISTING "SPPR313.spl" override
// patch subspell [luke]
GET_OFFSET_ARRAY ab_arr SPL_V10_HEADERS
PHP_EACH ab_arr AS ab_ind=>ab_off BEGIN
GET_OFFSET_ARRAY2 fx_arr ab_off SPL_V10_HEAD_EFFECTS
PHP_EACH fx_arr AS fx_ind=>fx_off BEGIN
PATCH_MATCH SHORT_AT fx_off WITH
326 WHEN SLONG_AT (0x4+fx_off) = IDS_OF_SYMBOL ("splstate" "BLIND_IMMUNITY") && LONG_AT (0x8+fx_off) = 111 BEGIN
READ_ASCII (0x14+fx_off) subspell
END
DEFAULT
END
END
END
//
INNER_ACTION BEGIN
COPY_EXISTING "%subspell%.spl" override
GET_OFFSET_ARRAY ab_arr SPL_V10_HEADERS
PHP_EACH ab_arr AS ab_ind=>ab_off BEGIN
PATCH_IF SHORT_AT (0x10+ab_off) > 1 BEGIN
WRITE_BYTE ab_off 0xff
END
END
LPF DELETE_SPELL_HEADER INT_VAR header_type=0xff END // subspell is not supposed to scale with level
LPF DELETE_EFFECT END
LPF ADD_SPELL_EFFECT INT_VAR opcode=74 resist_dispel=BIT0+BIT1 target=2 duration=6 END // blindness
LPF ADD_SPELL_EFFECT INT_VAR opcode=139 resist_dispel=BIT0+BIT1 target=2 timing=1 parameter1=14674 END // 'blinded' string
BUT_ONLY
END
LPF DELETE_EFFECT END
// level-independent effects
splprot_param="%SOURCE_RES%" STR_EQ sppr313 ? 38 : 36
LPF ADD_SPELL_EFFECT INT_VAR opcode=324 target=2 parameter2=splprot_param STR_VAR resource="%SOURCE_RES%" END // block non-evil/non-good
LPF ADD_SPELL_EFFECT INT_VAR opcode=141 resist_dispel = 1 target=2 parameter2=26 END // lighting effect
LPF ADD_SPELL_EFFECT INT_VAR opcode=174 resist_dispel = 1 target=2 timing=1 STR_VAR resource=EFF_P85 END // sound
LPF ADD_SPELL_EFFECT INT_VAR opcode=74 resist_dispel = 1 target=2 duration=8 savingthrow=BIT0 END // blindness
LPF ADD_SPELL_EFFECT INT_VAR opcode=324 power=3 target=2 parameter2=splprot_param STR_VAR resource="%SOURCE_RES%" END // block non-evil/non-good
LPF ADD_SPELL_EFFECT INT_VAR opcode=141 power=3 resist_dispel=1 target=2 parameter2=26 END // lighting effect
LPF ADD_SPELL_EFFECT INT_VAR opcode=174 power=3 resist_dispel=1 target=2 timing=1 STR_VAR resource=EFF_P85 END // sound
LPF ADD_SPELL_EFFECT INT_VAR opcode=326 power=3 resist_dispel=1 target=2 timing=1 savingthrow=BIT0 parameter1=IDS_OF_SYMBOL(splstate blind_immunity) parameter2=111 STR_VAR resource="%subspell%" END // blindness, 'blinded' string
/*LPF ADD_SPELL_EFFECT INT_VAR opcode=74 resist_dispel = 1 target=2 duration=8 savingthrow=BIT0 END // blindness
LPF ADD_SPELL_EFFECT INT_VAR opcode=139 resist_dispel = 1 target=2 timing=1 parameter1=14674 savingthrow=BIT0 END // 'blinded' string
LPF ADD_SPELL_EFFECT INT_VAR opcode=142 resist_dispel = 1 target=2 duration=8 parameter2=8 savingthrow=BIT0 END // 'blind' icon
LPF ADD_SPELL_EFFECT INT_VAR opcode=142 resist_dispel = 1 target=2 duration=8 parameter2=8 savingthrow=BIT0 END // 'blind' icon*/
// level-dependent blocks
LPF ADD_SPELL_EFFECT INT_VAR opcode=12 target=2 parameter2=64*0x10000 dicesize=4 savingthrow=BIT0+BIT24 special=BIT8 END
LPF ADD_SPELL_EFFECT INT_VAR opcode=12 power=3 resist_dispel=1 target=2 parameter2=64*0x10000 dicesize=4 savingthrow=BIT0+BIT24 special=BIT8 END
GET_OFFSET_ARRAY ab_arr SPL_V10_HEADERS
PHP_EACH ab_arr AS ab_ind=>ab_off BEGIN
level=SHORT_AT (0x10+ab_off)
@@ -34,14 +63,14 @@ DEFINE_ACTION_FUNCTION holy_unholy BEGIN
LPF DELETE_EFFECT END
// level-independent effects
splprot_param="%SOURCE_RES%" STR_EQ sppr313 ? 38 : 36
LPF ADD_SPELL_EFFECT INT_VAR opcode=324 target=2 parameter2=splprot_param STR_VAR resource="%SOURCE_RES%" END // block non-evil/non-good
LPF ADD_SPELL_EFFECT INT_VAR opcode=141 resist_dispel = 1 target=2 parameter2=26 END // lighting effect
LPF ADD_SPELL_EFFECT INT_VAR opcode=174 resist_dispel = 1 target=2 timing=1 STR_VAR resource=EFF_P85 END // sound
LPF ADD_SPELL_EFFECT INT_VAR opcode=325 resist_dispel = 1 target=2 duration=24 parameter1="-2" parameter2=2 savingthrow=BIT0 END // save penalty
LPF ADD_SPELL_EFFECT INT_VAR opcode=54 resist_dispel = 1 target=2 parameter1="-2" duration=24 savingthrow=BIT0 END // THAC0 penalty
LPF ADD_SPELL_EFFECT INT_VAR opcode=142 resist_dispel = 1 target=2 duration=24 parameter2=unholy savingthrow=BIT0 END // 'unholy blight' icon
LPF ADD_SPELL_EFFECT INT_VAR opcode=324 power=3 target=2 parameter2=splprot_param STR_VAR resource="%SOURCE_RES%" END // block non-evil/non-good
LPF ADD_SPELL_EFFECT INT_VAR opcode=141 power=3 resist_dispel=1 target=2 parameter2=26 END // lighting effect
LPF ADD_SPELL_EFFECT INT_VAR opcode=174 power=3 resist_dispel=1 target=2 timing=1 STR_VAR resource=EFF_P85 END // sound
LPF ADD_SPELL_EFFECT INT_VAR opcode=325 power=3 resist_dispel=1 target=2 duration=24 parameter1="-2" parameter2=2 savingthrow=BIT0 END // save penalty
LPF ADD_SPELL_EFFECT INT_VAR opcode=54 power=3 resist_dispel=1 target=2 parameter1="-2" duration=24 savingthrow=BIT0 END // THAC0 penalty
LPF ADD_SPELL_EFFECT INT_VAR opcode=142 power=3 resist_dispel=1 target=2 duration=24 parameter2=unholy savingthrow=BIT0 END // 'unholy blight' icon
// level-dependent blocks
LPF ADD_SPELL_EFFECT INT_VAR opcode=12 target=2 parameter2=64*0x10000 dicesize=4 savingthrow=BIT0+BIT24 special=BIT8 END
LPF ADD_SPELL_EFFECT INT_VAR opcode=12 power=3 resist_dispel=1 target=2 parameter2=64*0x10000 dicesize=4 savingthrow=BIT0+BIT24 special=BIT8 END
GET_OFFSET_ARRAY ab_arr SPL_V10_HEADERS
PHP_EACH ab_arr AS ab_ind=>ab_off BEGIN
level=SHORT_AT (0x10+ab_off)
@@ -50,15 +79,15 @@ DEFINE_ACTION_FUNCTION holy_unholy BEGIN
END
BUT_ONLY

END ELSE BEGIN // iwdee
END ELSE BEGIN // iwdee

COPY_EXISTING ~sppr314.spl~ ~override~
LPF CLONE_EFFECT INT_VAR match_opcode = 0 opcode = 142 parameter1 = 0 parameter2 = unholy END // add icon for unholy blight
LPF CLONE_EFFECT INT_VAR match_opcode = 0 opcode = 286 END
LPF ALTER_EFFECT INT_VAR match_opcode = 0 opcode = 285 END

END

END
2 changes: 1 addition & 1 deletion eefixpack/files/tph/dw/paralyzation_fixes.tph
Original file line number Diff line number Diff line change
@@ -386,7 +386,7 @@ ACTION_IF GAME_IS "bg2ee iwdee" BEGIN //bgee already uses 185
BEGIN
COPY_EXISTING "%hand_spell%.spl" override
LPF ALTER_EFFECT INT_VAR match_opcode=39 opcode=185 parameter2=2 parameter1=0 END
LPF ALTER_EFFECT INT_VAR silent=1 match_opcode=337 match_parameter1=39 parameter1=185 END
LPF DELETE_EFFECT INT_VAR silent=1 match_opcode=337 match_parameter1=39 match_parameter2=101 END // [luke] -- delete pathological op337
END
END

4 changes: 2 additions & 2 deletions eefixpack/files/tph/dw_fixes.tph
Original file line number Diff line number Diff line change
@@ -25,8 +25,8 @@ LAF declutter INT_VAR write END
// Rearrange various orderings of effects; extract various effect blocks to subspells
// (Prepares for other changes, notably immunities_via_324)

INCLUDE "%library_path%/rearrange_itm_spl.tph"
LAF rearrange_itm_spl END
//INCLUDE "%library_path%/rearrange_itm_spl.tph"
//LAF rearrange_itm_spl END

// Sort out the various issues with 109/175/185 (this is the conservative bit)

343 changes: 334 additions & 9 deletions eefixpack/files/tph/iwdee.tph

Large diffs are not rendered by default.

129 changes: 70 additions & 59 deletions eefixpack/files/tph/luke/7eyes/7eyes.tph
Original file line number Diff line number Diff line change
@@ -1,66 +1,77 @@
DEFINE_ACTION_FUNCTION "7EYES"
DEFINE_ACTION_FUNCTION "7EYESification"
BEGIN
// Include function library
INCLUDE "eefixpack/files/lib/gt_7eyes.tph"
// Main
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/berserk.tph"
LAF "BERSERK" END
//
ACTION_MATCH 1 WITH
GAME_IS "bgee" BEGIN
OUTER_TEXT_SPRINT "game_folder" "bg1"
END
GAME_IS "bg2ee eet" BEGIN
OUTER_TEXT_SPRINT "game_folder" "bg2"
END
GAME_IS "iwdee" BEGIN
OUTER_TEXT_SPRINT "game_folder" "iwd"
END
DEFAULT
FAIL "Game not supported (should not happen)"
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/charm_creature.tph"
LAF "CHARM_CREATURE" END
ACTION_DEFINE_ASSOCIATIVE_ARRAY "7eyes-o-matic" BEGIN
// effectID , damageType , splState , opcodeExtra , feedbackString , feedbackIcon , feedbackVfx => 2daFile
3 , "null" , "BERSERK_IMMUNITY" , "" , "Berserk, Berzerk" , "4" , "" => "berserk.2da"
5 , "null" , "CHARM_IMMUNITY" , "" , "Charmed, Dire Charmed, Dominated, Turned" , "0 1 43" , "" => "charm.2da"
12 , "fire" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "fireh firel" => "damage_fire.2da"
12 , "cold" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "coldh coldl" => "damage_cold.2da"
12 , "electricity" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "electrh electrl" => "damage_electricity.2da"
12 , "acid" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "acidh" => "damage_acid.2da"
12 , "missile" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "" => "damage_missile.2da"
12 , "crushing" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "" => "damage_crushing.2da"
12 , "slashing" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "" => "damage_slashing.2da"
12 , "piercing" , "" , "" , "Bleeding, Suffers Bleeding Wound, Bleeding Wound, Deathbringer Assault" , "102 137" , "" => "damage_piercing.2da"
13 , "null" , "DEATH_IMMUNITY" , "" , "Death, Vorpal Hit" , "51" , "" => "kill.2da"
16 , "null" , "HASTE_IMMUNITY" , "93 126 206 318" , "Haste, Hasted" , "38 110" , "" => "haste.2da"
24 , "null" , "PANIC_IMMUNITY" , "23 54 106" , "Panic, Morale Failure: Panic, *flees in terror*" , "36" , "cdhorror spmindat ohrmind" => "panic.2da"
38 , "null" , "SILENCE_IMMUNITY" , "" , "Silence, Silenced, Bard Song Silenced" , "34" , "" => "silence.2da"
39 , "null" , "" , "" , "Sleep, Unconscious" , "" , "" => "sleep.2da"
40 , "null" , "SLOW_IMMUNITY" , "0 54 240" , "Slow, Slowed" , "41" , "" => "slow.2da"
45 , "null" , "STUN_IMMUNITY" , "" , "Stun, Stunned" , "55" , "cdstun spflayer spmindat" => "stun.2da"
55 , "null" , "DEATH_IMMUNITY" , "" , "Death, Vorpal Hit" , "51" , "" => "slay.2da"
74 , "null" , "BLIND_IMMUNITY" , "54" , "Blind, Blinded, Blindness" , "8" , "" => "blind.2da"
76 , "null" , "FEEBLEMIND_IMMUNITY" , "" , "Feeblemind, Feebleminded, Feeblemindedness, Mind Locked Away" , "48" , "cdfeeble spmindat" => "feeblemind.2da"
78 , "null" , "DISEASE_IMMUNITY" , "" , "Gibberslug Infection, Diseased, Stricken by a foul disease" , "7" , "" => "disease.2da"
80 , "null" , "DEAF_IMMUNITY" , "" , "Deaf, Deafened, Deafness" , "112" , "" => "deaf.2da"
109 , "null" , "PARALYZE_IMMUNITY" , "157" , "Paralyzed, Paralysed, Held" , "13" , "" => "paralyze.2da"
128 , "null" , "CONFUSION_IMMUNITY" , "" , "Confused, Rigid Thinking, Chaos" , "2 3 47" , "spconfus" => "confusion.2da"
134 , "null" , "PETRIFY_IMMUNITY" , "" , "Petrification, Petrified" , "171" , "" => "petrify.2da"
142 , "null" , "" , "" , "" , "" , "" => "special.2da"
154 , "null" , "ENTANGLE_IMMUNITY" , "0 126" , "Entangle, Entangled" , "144" , "spentaci entangc" => "entangle.2da"
157 , "null" , "WEB_IMMUNITY" , "109" , "Webbed, Held" , "129" , "webentd webc" => "web.2da"
158 , "null" , "GREASE_IMMUNITY" , "126" , "Grease, Greased" , "145" , "greased greaseb" => "grease.2da"
175 , "null" , "HOLD_IMMUNITY" , "" , "Held" , "13" , "spmindat ohnwand1" => "hold.2da"
209 , "null" , "DEATH_IMMUNITY" , "" , "Death, Vorpal Hit" , "51" , "" => "power_word_kill.2da"
210 , "null" , "STUN_IMMUNITY" , "" , "Stun, Stunned" , "55" , "cdstun" => "power_word_stun.2da"
238 , "null" , "DEATH_IMMUNITY" , "" , "Death, Vorpal Hit" , "51" , "" => "disintegrate.2da"
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/damage.tph"
LAF "DAMAGE" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/panic.tph"
LAF "PANIC" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/poison.tph"
LAF "POISON" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/silence.tph"
LAF "SILENCE" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/stun.tph"
LAF "STUN" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/blindness.tph"
LAF "BLINDNESS" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/feeblemindedness.tph"
LAF "FEEBLEMINDEDNESS" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/deafness.tph"
LAF "DEAFNESS" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/paralyze.tph"
LAF "PARALYZE" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/confusion.tph"
LAF "CONFUSION" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/petrification.tph"
LAF "PETRIFICATION" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/hold_creature.tph"
LAF "HOLD_CREATURE" END
END
WITH_SCOPE BEGIN
INCLUDE "eefixpack/files/tph/luke/7eyes/power_word_stun.tph"
LAF "POWER_WORD_STUN" END
//
ACTION_PHP_EACH "7eyes-o-matic" AS "key" => "2daFile" BEGIN
ACTION_IF ("%key_2%" STRING_COMPARE_CASE "") BEGIN
LAF "ADD_IDS_ENTRY" STR_VAR "idsFile" = "splstate" "identifier" = "%key_2%" RET "value" END
END ELSE BEGIN
OUTER_SET "value" = "-1"
END
//
LAF "7EYES-O-MATIC"
INT_VAR
"splstate" = "%value%"
"effectID" = "%key_0%"
"damage_type" = IDS_OF_SYMBOL ("dmgtype" "%key_1%")
STR_VAR
"opcode_extra" = "%key_3%"
"feedback_string" = "%key_4%"
"feedback_icon" = "%key_5%"
"feedback_vfx" = "%key_6%"
//
"2da_filespec" = "eefixpack\files\tph\luke\7eyes\%game_folder%\%2daFile%"
END
END
END
149 changes: 0 additions & 149 deletions eefixpack/files/tph/luke/7eyes/berserk.tph

This file was deleted.

7 changes: 7 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/berserk.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
2DA V1.0
****
FILE SUBSPELL
0 BDAX1H03.ITM ****
1 SPIN117.SPL ****
2 SW1H19.ITM ****
3 SW1P01.ITM ****
29 changes: 29 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/blind.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
2DA V1.0
****
FILE SUBSPELL
0 BDBBEAUT.SPL ****
1 BDBRAC01.SPL ****
2 BDSHLD02.SPL ****
3 BDVENOMS.SPL ****
4 CHALCY2.ITM ****
5 POTN99.ITM ****
6 SORB.ITM ****
7 SPCL239A.SPL ****
8 SPDM101.SPL ****
9 SPDR101.SPL SPDR101B
10 SPIN878.SPL ****
11 SPIN893.SPL ****
12 SPIN929.SPL ****
13 SPIN931.SPL ****
14 SPPR313.SPL ****
15 SPPR704.SPL ****
16 SPPR707.SPL ****
17 SPWI106.SPL ****
18 SPWI118.SPL SPWI118B
19 SPWI224.SPL ****
20 SPWI228.SPL ****
21 SPWI714.SPL ****
22 SPWI815.SPL ****
23 SPWI958.SPL ****
24 SPWM178.SPL ****
25 WAND19.ITM ****
36 changes: 36 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/charm.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
2DA V1.0
****
FILE SUBSPELL
0 BDHAMADC.SPL ****
1 BDNERAU2.SPL ****
2 CLCK07.ITM ****
3 CLCK08.ITM ****
4 GORWOM1.ITM ****
5 HGNYMPH.ITM ****
6 MISC2P.ITM ****
7 RING03.ITM ****
8 RING27.ITM ****
9 SPCL311.SPL ****
10 SPCL641.SPL ****
11 SPIN108.SPL ****
12 SPIN119.SPL ****
13 SPIN558.SPL ****
14 SPIN785.SPL ****
15 SPIN883.SPL ****
16 SPIN910.SPL ****
17 SPIN975.SPL ****
18 SPIN980.SPL ****
19 SPIN985.SPL ****
20 SPPR204.SPL ****
21 SPPR405.SPL ****
22 SPPR982.SPL ****
23 SPWI104.SPL ****
24 SPWI316.SPL ****
25 SPWI506.SPL ****
26 SPWI929.SPL ****
27 SPWI930.SPL ****
28 SPWI939.SPL ****
29 SPWI943.SPL ****
30 SPWI996.SPL ****
31 SPWM179.SPL ****
32 SW1P01.ITM ****
25 changes: 25 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/confusion.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
2DA V1.0
****
FILE SUBSPELL
0 BDAX1H05.SPL ****
1 BDMYCSP1.SPL ****
2 BDSHA01A.SPL ****
3 BDSHRIEK.SPL ****
4 BDSTINK.SPL ****
5 MAGICONF.ITM ****
6 SIRINE1.ITM ****
7 SPCL751A.SPL ****
8 SPDR501.SPL ****
9 SPIN502.SPL ****
10 SPIN582.SPL ****
11 SPIN674.SPL ****
12 SPIN704.SPL ****
13 SPIN839.SPL ****
14 SPIN976.SPL ****
15 SPPR311.SPL ****
16 SPPR609.SPL SPPR609B
17 SPPR709.SPL ****
18 SPPR983.SPL ****
19 SPWI401.SPL ****
20 SPWI508.SPL ****
21 SPWI711.SPL ****
22 changes: 22 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_acid.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
2DA V1.0
****
FILE SUBSPELL
0 BDCUT57A.SPL ****
1 BDDAGG05.SPL ****
2 BDMEPWAT.SPL ****
3 BDWYRMB.SPL ****
4 SHOAL.SPL ****
5 SHOAL1.SPL ****
6 SPDR101.SPL ****
7 SPIN191.SPL ****
8 SPIN691.SPL ****
9 SPIN708.SPL ****
10 SPIN715.SPL ****
11 SPIN787.SPL ****
12 SPIN792.SPL ****
13 SPIN913.SPL ****
14 SPIN917.SPL ****
15 SPIN994.SPL ****
16 SPWI118.SPL ****
17 SPWI211.SPL ****
18 SPWI614.SPL ****
10 changes: 10 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_cold.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2DA V1.0
****
FILE SUBSPELL
0 BDSW2H01.SPL ****
1 BDUNSLGU.SPL ****
2 SPIN723.SPL ****
3 SPIN787.SPL ****
4 SPIN833.SPL ****
5 SPIN936.SPL ****
6 SPPR250.SPL ****
22 changes: 22 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_crushing.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
2DA V1.0
****
FILE SUBSPELL
0 BDBLUN04.SPL ****
1 BDTR01.SPL ****
2 BDWYRMT.SPL ****
3 SPIN695.SPL ****
4 SPIN834.SPL ****
5 SPIN931.SPL ****
6 SPIN934.SPL ****
7 SPIN941.SPL ****
8 SPIN942.SPL ****
9 SPIN973.SPL ****
10 SPOGRE01.SPL ****
11 SPPR720.SPL ****
12 SPWI818.SPL ****
13 SPWI818A.SPL ****
14 SPWI918.SPL ****
15 SPWI918A.SPL ****
16 SPWI934.SPL ****
17 SPWM188.SPL ****
18 SPYANC01.SPL ****
6 changes: 6 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_electricity.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
2DA V1.0
****
FILE SUBSPELL
0 SPIN656.SPL ****
1 SPIN787.SPL ****
2 SPIN932.SPL ****
31 changes: 31 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_fire.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
2DA V1.0
****
FILE SUBSPELL
0 BDALLDIE.SPL ****
1 BDBELBLZ.SPL ****
2 BDPFLAME.SPL ****
3 BDSHLD02.SPL ****
4 SPCL236.SPL ****
5 SPCL239A.SPL ****
6 SPDD03.SPL ****
7 SPDR101.SPL ****
8 SPIMIX01.SPL ****
9 SPIN693.SPL ****
10 SPIN701.SPL ****
11 SPIN720.SPL ****
12 SPIN721.SPL ****
13 SPIN726.SPL ****
14 SPIN799.SPL ****
15 SPIN819.SPL ****
16 SPIN877.SPL ****
17 SPIN926.SPL ****
18 SPPR503.SPL ****
19 SPPR609.SPL ****
20 SPPR985.SPL ****
21 SPWI103.SPL ****
22 SPWI118.SPL ****
23 SPWI217.SPL ****
24 SPWI303.SPL ****
25 SPWI304.SPL ****
26 SPWI711.SPL ****
27 SPWI979.SPL ****
7 changes: 7 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_missile.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
2DA V1.0
****
FILE SUBSPELL
0 SPCL411.SPL ****
1 SPCL411F.SPL ****
2 SPCL415.SPL ****
3 SPWI008.SPL ****
20 changes: 20 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_piercing.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
2DA V1.0
****
FILE SUBSPELL
0 BDGASSA3.SPL ****
1 BDGSPEAR.SPL ****
2 BDHALB02.SPL ****
3 BDIMPALE.SPL ****
4 BDSW1H21.SPL ****
5 SPIN706.SPL ****
6 SPIN707.SPL ****
7 SPIN709.SPL ****
8 SPWI006.SPL ****
9 SPWI007.SPL ****
10 SPWI009.SPL ****
11 SPWI010.SPL ****
12 SPWI011.SPL ****
13 SPWI012.SPL ****
14 SPWI013.SPL ****
15 SPWI019.SPL ****
16 SPWI303.SPL ****
4 changes: 4 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/damage_slashing.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
2DA V1.0
****
FILE SUBSPELL
0 BDDCOR1A.SPL ****
10 changes: 10 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/deaf.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2DA V1.0
****
FILE SUBSPELL
0 BDBRD04.SPL ****
1 BDSHRIEK.SPL ****
2 MELICAMP.SPL ****
3 SPIN191.SPL ****
4 SPPR710.SPL ****
5 SPPR715.SPL ****
6 SPWI223.SPL ****
23 changes: 23 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/disease.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
2DA V1.0
****
FILE SUBSPELL
0 BDBELDIS.SPL ****
1 BDBONEFI.SPL ****
2 BDBOW01.SPL ****
3 BDDRAGGH.ITM ****
4 BDFESTER.SPL ****
5 BDGIBBBR.ITM ****
6 BDISEASE.SPL ****
7 BDMUMM01.ITM ****
8 BDOTYG01.ITM ****
9 BDOTYG02.ITM ****
10 BDWOLFDR.ITM ****
11 DEMOGORG.ITM ****
12 FINMEL01.ITM ****
13 MUMGREW.ITM ****
14 MUMMYW.ITM ****
15 OTYUGH.ITM ****
16 PUDDEN01.ITM ****
17 RAVAG03.ITM ****
18 SPIN784.SPL ****
19 SPWI409.SPL ****
14 changes: 14 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/disintegrate.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
2DA V1.0
****
FILE SUBSPELL
0 BLAKBLAD.ITM ****
1 SPIN542.SPL ****
2 SPIN782.SPL ****
3 SPIN793.SPL ****
4 SPIN805.SPL ****
5 SPIN982.SPL ****
6 SPWI055.SPL ****
7 SPWI056.SPL ****
8 SPWI616.SPL ****
9 SPWI711.SPL ****
10 SPWI714.SPL ****
11 changes: 11 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/entangle.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
2DA V1.0
****
FILE SUBSPELL
0 BDBOW06.SPL ****
1 BDIMPALE.SPL ****
2 BDSHAMB.SPL ****
3 HGNYA01.ITM ****
4 MOUND.ITM ****
5 SPIN688.SPL ****
6 SPPR105.SPL ****
7 SPWM111.SPL ****
11 changes: 11 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/feeblemind.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
2DA V1.0
****
FILE SUBSPELL
0 BDMYCSP2.SPL ****
1 POTN23.ITM ****
2 SCRL18.ITM ****
3 SIRINE.ITM ****
4 SIRINE1.ITM ****
5 SPPR650.SPL ****
6 SPWI509.SPL ****
7 SPWI714.SPL ****
5 changes: 5 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/grease.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
2DA V1.0
****
FILE SUBSPELL
0 SPIN914.SPL ****
1 SPWI101.SPL ****
16 changes: 16 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/haste.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
2DA V1.0
****
FILE SUBSPELL
0 BDCRIMSN.SPL ****
1 BDFLESHR.SPL ****
2 BDRUNRUN.SPL ****
3 CUTHIDE.SPL ****
4 POTN14.ITM ****
5 SPIN572.SPL ****
6 SPIN828.SPL ****
7 SPIN978.SPL ****
8 SPRA301.SPL ****
9 SPWI305.SPL ****
10 SPWI613.SPL ****
11 SPWI711.SPL ****
12 SPWM115.SPL ****
17 changes: 17 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/hold.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
2DA V1.0
****
FILE SUBSPELL
0 BDMISC07.SPL ****
1 SPCL415.SPL SPCL415H
2 SPIN503.SPL ****
3 SPIN988.SPL ****
4 SPIN990.SPL ****
5 SPIN996.SPL ****
6 SPIN999.SPL ****
7 SPPR208.SPL ****
8 SPPR305.SPL ****
9 SPPR989.SPL ****
10 SPWI306.SPL ****
11 SPWI507.SPL ****
12 SPWM122.SPL ****
13 SW1P01.ITM ****
54 changes: 54 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/kill.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
2DA V1.0
****
FILE SUBSPELL
0 ACIDOOZ4.ITM ****
1 BALOR.ITM ****
2 BDCHUNK.SPL ****
3 BDNEERA3.SPL ****
4 BDNEERA4.SPL ****
5 BDSTONEC.SPL ****
6 BDSW1H3B.SPL ****
7 BDZHADRO.SPL ****
8 DEVA.ITM ****
9 DEVAEVIL.ITM ****
10 ELEMCHAN.ITM ****
11 ELEMCRYO.ITM ****
12 ELEMHYDR.ITM ****
13 ELEMIMIX.ITM ****
14 ELEMOGRE.ITM ****
15 ELEMSUNN.ITM ****
16 ELEMYANC.ITM ****
17 ELEMZAAM.ITM ****
18 FINSOL01.ITM ****
19 FINSOL02.ITM ****
20 JELLGR1.ITM ****
21 MAGIDEAD.ITM ****
22 NEIRED.ITM ****
23 PLANETAR.ITM ****
24 POTN40.ITM ****
25 PTION2K.ITM ****
26 PTION2L.ITM ****
27 PTION2M.ITM ****
28 PTION2N.ITM ****
29 SCRL17.ITM ****
30 SCRLZY.ITM ****
31 SENSPI01.ITM ****
32 SPERMEL.ITM ****
33 SPIDVO01.ITM ****
34 SPIN770.SPL ****
35 SPIN780.SPL ****
36 SPIN781.SPL ****
37 SPIN804.SPL ****
38 SPIN813.SPL ****
39 SPIN871.SPL ****
40 SPIN877.SPL ****
41 SPIN888.SPL ****
42 SPIN951.SPL ****
43 SPIN952.SPL ****
44 SPIN953.SPL ****
45 SPIN973.SPL ****
46 SPPR303.SPL ****
47 SPPR710.SPL ****
48 SPPR715.SPL ****
49 SPWI023.SPL ****
50 SPWI998.SPL ****
43 changes: 43 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/panic.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
2DA V1.0
****
FILE SUBSPELL
0 BDAURAFE.SPL ****
1 BDDRAGG2.SPL ****
2 BDFEAR.SPL ****
3 BDFEYRWP.ITM ****
4 BDGFEAR.SPL ****
5 BDHAFEAR.SPL ****
6 BDNEOAWE.SPL ****
7 BDPANIC.SPL ****
8 BDPOTN01.ITM ****
9 BDSHA01C.SPL ****
10 BDTGAZE.SPL ****
11 BEARSPIR.ITM ****
12 MISTICE.ITM ****
13 SPBATT1.ITM ****
14 SPBATT2.ITM ****
15 SPBATT3.ITM ****
16 SPBATT4.ITM ****
17 SPBATT5.ITM ****
18 SPCL103.SPL ****
19 SPIN105.SPL ****
20 SPIN675.SPL ****
21 SPIN680.SPL ****
22 SPIN772.SPL ****
23 SPIN807.SPL SPIN807A
24 SPIN882.SPL ****
25 SPIN890.SPL ****
26 SPIN891.SPL SPIN891A
27 SPIN895.SPL ****
28 SPIN921.SPL ****
29 SPIN981.SPL ****
30 SPPR416.SPL ****
31 SPPR517.SPL ****
32 SPPR706.SPL ****
33 SPWI125.SPL ****
34 SPWI205.SPL ****
35 SPWI811.SPL ****
36 SPWI899.SPL ****
37 SPWI956.SPL ****
38 SPWM123.SPL ****
39 WAND02.ITM ****
34 changes: 34 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/paralyze.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
2DA V1.0
****
FILE SUBSPELL
0 BASILG1.ITM ****
1 BASILL1.ITM ****
2 BDBONBAT.ITM ****
3 BDCCRAW1.ITM ****
4 BDGHASTG.ITM ****
5 BDSPIDGA.SPL ****
6 BDWOLFVA.ITM ****
7 CARRIO1.ITM ****
8 DEMMAU01.ITM ****
9 GHAST1.ITM GHAST1P
10 GHOUL1.ITM ****
11 GHOULT.ITM ****
12 KALDW1.ITM ****
13 LICH02.ITM ****
14 MAGIWEB.ITM ****
15 PARABASI.ITM ****
16 REVENT1.ITM ****
17 SPDR201.SPL ****
18 SPIN683.SPL ****
19 SPIN776.SPL ****
20 SPIN863.SPL ****
21 SPIN914.SPL ****
22 SPIN960.SPL ****
23 SPWATT2.ITM ****
24 SPWATT3.ITM ****
25 SPWATT4.ITM ****
26 SPWATT5.ITM ****
27 SPWI215.SPL ****
28 SPWI711.SPL ****
29 VAMPIRE.ITM ****
30 WOLFVA1.ITM ****
20 changes: 20 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/petrify.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
2DA V1.0
****
FILE SUBSPELL
0 BASIGAZE.ITM ****
1 BASILG1.ITM ****
2 BASILL1.ITM ****
3 BDSTSNAK.ITM ****
4 EYEGOR01.ITM ****
5 PARABASI.ITM ****
6 SCRL16.ITM ****
7 SPDR101.SPL ****
8 SPIN865.SPL ****
9 SPIN889.SPL ****
10 SPIN950.SPL ****
11 SPIN984.SPL ****
12 SPWI053.SPL ****
13 SPWI118.SPL ****
14 SPWI604.SPL ****
15 SPWI714.SPL ****
16 SW1P01.ITM ****
8 changes: 8 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/power_word_kill.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
2DA V1.0
****
FILE SUBSPELL
0 SPPR719.SPL ****
1 SPWI817.SPL ****
2 SPWI897.SPL ****
3 SPWI912.SPL ****
4 SPWI960.SPL ****
6 changes: 6 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/power_word_stun.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
2DA V1.0
****
FILE SUBSPELL
0 SPIN944.SPL ****
1 SPWI715.SPL ****
2 SPWI959.SPL ****
9 changes: 9 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/silence.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
2DA V1.0
****
FILE SUBSPELL
0 SPIN692.SPL ****
1 SPIN998.SPL ****
2 SPPR211.SPL ****
3 SPPR988.SPL ****
4 SPWI612.SPL ****
5 WAND19.ITM ****
36 changes: 36 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/slay.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
2DA V1.0
****
FILE SUBSPELL
0 AROW03.ITM ****
1 BDCUT57A.SPL ****
2 BDNERKIS.SPL ****
3 BULL04.ITM ****
4 LICHEL01.ITM ****
5 SLAYLIVE.ITM ****
6 SPCL411.SPL ****
7 SPCL411F.SPL ****
8 SPDR101.SPL ****
9 SPIN673.SPL ****
10 SPIN681.SPL ****
11 SPIN723.SPL ****
12 SPIN789.SPL ****
13 SPIN820.SPL ****
14 SPIN836.SPL ****
15 SPIN864.SPL ****
16 SPIN961.SPL ****
17 SPIN991.SPL ****
18 SPPR599.SPL ****
19 SPPR704.SPL ****
20 SPPR708.SPL ****
21 SPWI006.SPL ****
22 SPWI016.SPL ****
23 SPWI054.SPL ****
24 SPWI118.SPL ****
25 SPWI502.SPL ****
26 SPWI605.SPL ****
27 SPWI713.SPL ****
28 SPWI913.SPL ****
29 SW1H99.ITM ****
30 SW1P01.ITM ****
31 TELSLAV.ITM ****
32 WAND13.ITM ****
45 changes: 45 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/sleep.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
2DA V1.0
****
FILE SUBSPELL
0 AX1H16.ITM ****
1 BDBLUN07.SPL ****
2 BDDAGG06.ITM ****
3 BDDAGG07.ITM ****
4 BDGASSA1.SPL ****
5 BDGASSA3.SPL ****
6 BDGIBBBR.ITM ****
7 BDSHA12C.SPL ****
8 BDSLEEP.SPL ****
9 BDSPIDGA.ITM ****
10 BDWYRMLI.ITM ****
11 BDXBOW01.SPL ****
12 BPGIAQKE.SPL ****
13 CDFAMPSD.ITM ****
14 DWBOLT01.ITM ****
15 DWDART01.ITM ****
16 PSDCLAW.ITM ****
17 RAVAG01.ITM ****
18 SHOAL1.SPL ****
19 SPCL751A.SPL ****
20 SPIN547.SPL ****
21 SPIN656.SPL ****
22 SPIN658.SPL ****
23 SPIN695.SPL ****
24 SPIN775.SPL ****
25 SPIN802.SPL ****
26 SPIN892.SPL ****
27 SPIN937.SPL ****
28 SPIN940.SPL ****
29 SPOGRE01.SPL ****
30 SPPR102.SPL ****
31 SPPR512.SPL ****
32 SPPR720.SPL ****
33 SPWI004.SPL ****
34 SPWI105.SPL ****
35 SPWI116.SPL ****
36 SPWI213.SPL ****
37 SPWI411.SPL ****
38 SPWI711.SPL ****
39 SPWM187.SPL ****
40 SPYANC01.SPL ****
41 WAND08.ITM ****
36 changes: 36 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/slow.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
2DA V1.0
****
FILE SUBSPELL
0 ACIDOOZ3.ITM ****
1 BDHALB03.SPL ****
2 BDSHA06B.SPL ****
3 BDSW1H02.SPL ****
4 BDSW2H01.SPL ****
5 BDTR01.SPL ****
6 BDUNSLGU.SPL ****
7 BONEDAG.ITM ****
8 DOGWAWP.ITM ****
9 HGBER01.ITM ****
10 JELLMU1.ITM ****
11 JELLMU2.ITM ****
12 PLYJELLY.ITM ****
13 POTN32.ITM ****
14 SHARSWD.ITM ****
15 SPCL123.SPL ****
16 SPCL415.SPL ****
17 SPCL422.SPL ****
18 SPCL751A.SPL ****
19 SPERMEL.ITM ****
20 SPIN575.SPL ****
21 SPIN817.SPL ****
22 SPIN818.SPL ****
23 SPIN977.SPL ****
24 SPIN983.SPL ****
25 SPPR250.SPL ****
26 SPPR610.SPL ****
27 SPPR710.SPL ****
28 SPPR715.SPL ****
29 SPWI312.SPL ****
30 SPWISH25.SPL ****
31 SPWM112.SPL ****
32 SPWM164.SPL ****
23 changes: 23 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/special.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
2DA V1.0
****
FILE SUBSPELL
0 BDAX1HGH.ITM ****
1 BDBLUNGH.ITM ****
2 BDGFEAR.SPL ****
3 BDGHOST.ITM ****
4 BDSHADGR.ITM ****
5 BDSHADOW.ITM ****
6 BDSTRDRN.SPL ****
7 BDSW1HGH.ITM ****
8 BDSW2HGH.ITM ****
9 BDSYMPAI.SPL ****
10 BDVOID.SPL ****
11 BONEFD.ITM ****
12 MAGISPWR.ITM ****
13 MINDFLAY.ITM ****
14 SHADOWWP.ITM ****
15 SHARSWD.ITM ****
16 SPIDWR1.ITM ****
17 SPIN808.SPL ****
18 SPIN901.SPL ****
19 SPPR751.SPL ****
47 changes: 47 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/stun.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
2DA V1.0
****
FILE SUBSPELL
0 BDDCOR01.SPL ****
1 BDHALB01.ITM ****
2 BDHELM17.SPL ****
3 BDSHA06A.SPL ****
4 BDSHRIEK.SPL ****
5 BLUN41.ITM ****
6 CARRIO.ITM ****
7 CORNUGON.ITM ****
8 DART03.ITM ****
9 DEMCOR01.ITM ****
10 DEVA.ITM ****
11 DWBOLT02.ITM ****
12 ELEMHYDR.ITM ****
13 GHOULC.ITM ****
14 GOLTOME4.ITM ****
15 GORSNAKE.ITM ****
16 ICETRL.ITM ICETRLST
17 PARACARR.ITM ****
18 PARAGHAS.ITM ****
19 PARAGHOU.ITM ****
20 SAHBOLT.ITM ****
21 SPCL123.SPL ****
22 SPDR101.SPL SPDR101S
23 SPERMEL.ITM ****
24 SPIN191.SPL ****
25 SPIN543.SPL ****
26 SPIN727.SPL ****
27 SPIN832.SPL ****
28 SPIN834.SPL ****
29 SPIN909.SPL ****
30 SPIN926.SPL ****
31 SPIN927.SPL ****
32 SPIN934.SPL ****
33 SPIN959.SPL ****
34 SPIN974.SPL ****
35 SPPR710.SPL ****
36 SPPR715.SPL ****
37 SPPR718.SPL ****
38 SPPR984.SPL ****
39 SPWI118.SPL SPWI118S
40 SPWI816.SPL ****
41 SPWI898.SPL ****
42 SPWM152.SPL ****
43 WAND04.ITM ****
8 changes: 8 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg1/web.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
2DA V1.0
****
FILE SUBSPELL
0 BDSPIDGA.SPL ****
1 BDWYRMT.SPL ****
2 SPDR201.SPL ****
3 SPIN683.SPL ****
4 SPWI215.SPL ****
5 changes: 5 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/berserk.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
2DA V1.0
****
FILE SUBSPELL
0 SPIN117.SPL ****
1 SW1H19.ITM ****
32 changes: 32 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/blind.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
2DA V1.0
****
FILE SUBSPELL
0 CHALCY2.ITM ****
1 GORWOM4.ITM ****
2 HALB06.ITM ****
3 OHBWFOG.SPL ****
4 OHDWAND1.ITM ****
5 OHRBLIND.SPL ****
6 OHRDARK.SPL ****
7 SORB.ITM ****
8 SPCL239A.SPL ****
9 SPDM101.SPL ****
10 SPDR101.SPL SPDR101B
11 SPIN595.SPL ****
12 SPIN613.SPL ****
13 SPIN878.SPL ****
14 SPIN893.SPL ****
15 SPIN929.SPL ****
16 SPIN931.SPL ****
17 SPPR313.SPL ****
18 SPPR704.SPL ****
19 SPPR707.SPL ****
20 SPWI106.SPL ****
21 SPWI118.SPL SPWI118B
22 SPWI224.SPL ****
23 SPWI714.SPL ****
24 SPWI815.SPL ****
25 SPWI958.SPL ****
26 SPWM178.SPL ****
27 SW1H51.ITM ****
28 WAND19.ITM ****
46 changes: 46 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/charm.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
2DA V1.0
****
FILE SUBSPELL
0 BEGUILE.SPL ****
1 CLCK07.ITM ****
2 DEMOCHM.SPL ****
3 GORWOM1.ITM ****
4 HGNYMPH.ITM ****
5 MISC2P.ITM ****
6 MISC9X.ITM ****
7 OHREYEB1.SPL ****
8 OHRMJAR.SPL ****
9 REGISAMU.ITM ****
10 RING03.ITM ****
11 RING27.ITM ****
12 RING28.ITM ****
13 RING29.ITM ****
14 RING30.ITM ****
15 SPCL311.SPL ****
16 SPCL641.SPL ****
17 SPIN108.SPL ****
18 SPIN119.SPL ****
19 SPIN553.SPL ****
20 SPIN558.SPL ****
21 SPIN614.SPL ****
22 SPIN785.SPL ****
23 SPIN883.SPL ****
24 SPIN910.SPL ****
25 SPIN975.SPL ****
26 SPIN980.SPL ****
27 SPIN985.SPL ****
28 SPPR204.SPL ****
29 SPPR405.SPL ****
30 SPPR982.SPL ****
31 SPWI104.SPL ****
32 SPWI316.SPL ****
33 SPWI506.SPL ****
34 SPWI929.SPL ****
35 SPWI930.SPL ****
36 SPWI939.SPL ****
37 SPWI943.SPL ****
38 SPWI996.SPL ****
39 SPWM179.SPL ****
40 STAF09.ITM ****
41 STAF14.ITM ****
42 URGEKILL.SPL ****
26 changes: 26 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/confusion.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
2DA V1.0
****
FILE SUBSPELL
0 BDSHA01A.SPL ****
1 INSANITY.SPL ****
2 MAGICONF.ITM ****
3 MISC3M.ITM ****
4 OHBJOKE1.SPL ****
5 SIRINE1.ITM ****
6 SPCL751A.SPL ****
7 SPDR501.SPL ****
8 SPIN582.SPL ****
9 SPIN612.SPL ****
10 SPIN674.SPL ****
11 SPIN704.SPL ****
12 SPIN839.SPL ****
13 SPIN976.SPL ****
14 SPPR311.SPL ****
15 SPPR609.SPL SPPR609B
16 SPPR709.SPL ****
17 SPPR983.SPL ****
18 SPWI401.SPL ****
19 SPWI508.SPL ****
20 SPWI711.SPL ****
21 WA2HARP.ITM ****
22 WAS2H.ITM ****
19 changes: 19 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_acid.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
2DA V1.0
****
FILE SUBSPELL
0 OHDMASK.SPL ****
1 OHRGROG.SPL ****
2 SPDR101.SPL ****
3 SPIN596.SPL ****
4 SPIN691.SPL ****
5 SPIN708.SPL ****
6 SPIN715.SPL ****
7 SPIN787.SPL ****
8 SPIN792.SPL ****
9 SPIN913.SPL ****
10 SPIN917.SPL ****
11 SPIN994.SPL ****
12 SPIN996.SPL ****
13 SPWI118.SPL ****
14 SPWI211.SPL ****
15 SPWI614.SPL ****
12 changes: 12 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_cold.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
2DA V1.0
****
FILE SUBSPELL
0 BDSW2H01.SPL ****
1 OHBICEW.SPL ****
2 OHDDIVRT.SPL ****
3 SPIN562.SPL ****
4 SPIN723.SPL ****
5 SPIN787.SPL ****
6 SPIN833.SPL ****
7 SPIN936.SPL ****
8 SPPR250.SPL ****
27 changes: 27 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_crushing.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
2DA V1.0
****
FILE SUBSPELL
0 ABZAWAY.SPL ****
1 BALTH01.SPL ****
2 BALTH09.SPL ****
3 CH3AWAY.SPL ****
4 JWWHIRL.SPL ****
5 OHBQUAKE.SPL ****
6 OHBWHIRL.SPL ****
7 SPIN695.SPL ****
8 SPIN834.SPL ****
9 SPIN931.SPL ****
10 SPIN934.SPL ****
11 SPIN941.SPL ****
12 SPIN942.SPL ****
13 SPIN973.SPL ****
14 SPOGRE01.SPL ****
15 SPPR720.SPL ****
16 SPWI818.SPL ****
17 SPWI818A.SPL ****
18 SPWI918.SPL ****
19 SPWI918A.SPL ****
20 SPWI934.SPL ****
21 SPWISH27.SPL ****
22 SPWM188.SPL ****
23 SPYANC01.SPL ****
10 changes: 10 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_electricity.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2DA V1.0
****
FILE SUBSPELL
0 CDSTAF12.SPL ****
1 OHBWI308.SPL ****
2 SPIN531.SPL ****
3 SPIN579.SPL ****
4 SPIN656.SPL ****
5 SPIN787.SPL ****
6 SPIN932.SPL ****
40 changes: 40 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_fire.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
2DA V1.0
****
FILE SUBSPELL
0 BALTH01.SPL ****
1 JWSIEGE.SPL ****
2 OHBEFLAM.SPL ****
3 SPAURU.SPL ****
4 SPCL236.SPL ****
5 SPCL239A.SPL ****
6 SPCL911B.SPL ****
7 SPDD03.SPL ****
8 SPDR101.SPL ****
9 SPIMIX01.SPL ****
10 SPIN539.SPL ****
11 SPIN560.SPL ****
12 SPIN561.SPL ****
13 SPIN567.SPL ****
14 SPIN636.SPL ****
15 SPIN693.SPL ****
16 SPIN701.SPL ****
17 SPIN720.SPL ****
18 SPIN721.SPL ****
19 SPIN726.SPL ****
20 SPIN799.SPL ****
21 SPIN819.SPL ****
22 SPIN877.SPL ****
23 SPIN926.SPL ****
24 SPPR503.SPL ****
25 SPPR609.SPL ****
26 SPPR722.SPL ****
27 SPPR728.SPL ****
28 SPPR985.SPL ****
29 SPWI103.SPL ****
30 SPWI118.SPL ****
31 SPWI217.SPL ****
32 SPWI303.SPL ****
33 SPWI304.SPL ****
34 SPWI711.SPL ****
35 SPWI922.SPL ****
36 SPWI925.SPL ****
10 changes: 10 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_missile.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2DA V1.0
****
FILE SUBSPELL
0 EYEEGLM3.SPL ****
1 EYEEGLM4.SPL ****
2 EYEEGLM7.SPL ****
3 SPCL411.SPL ****
4 SPCL411F.SPL ****
5 SPCL415.SPL ****
6 SPWI008.SPL ****
17 changes: 17 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_piercing.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
2DA V1.0
****
FILE SUBSPELL
0 OHBBLEED.SPL ****
1 SPIN595.SPL ****
2 SPIN706.SPL ****
3 SPIN707.SPL ****
4 SPIN709.SPL ****
5 SPWI006.SPL ****
6 SPWI007.SPL ****
7 SPWI009.SPL ****
8 SPWI010.SPL ****
9 SPWI011.SPL ****
10 SPWI012.SPL ****
11 SPWI013.SPL ****
12 SPWI019.SPL ****
13 SPWI303.SPL ****
5 changes: 5 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/damage_slashing.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
2DA V1.0
****
FILE SUBSPELL
0 MELIS01.SPL ****
1 SAREVEFF.SPL ****
8 changes: 8 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/deaf.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
2DA V1.0
****
FILE SUBSPELL
0 OHNCOLL.ITM ****
1 SPPR710.SPL ****
2 SPPR715.SPL ****
3 SPWI223.SPL ****
4 WAND19.ITM ****
22 changes: 22 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/disease.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
2DA V1.0
****
FILE SUBSPELL
0 DARTMEL.ITM ****
1 DEMOGORG.ITM ****
2 GHOULLOR.ITM ****
3 IOTYUGH.ITM ****
4 LACEDO.ITM ****
5 LACEDO02.ITM ****
6 MUMGREW.ITM ****
7 MUMMYW.ITM ****
8 OHBCDIS.SPL ****
9 OHBJOKE2.SPL ****
10 OHBJOKE3.SPL ****
11 OHHGMUM1.ITM ****
12 OHRSLNG1.ITM ****
13 P1-2P.ITM ****
14 PUDDEN01.ITM ****
15 SAHZOM01.ITM ****
16 SPIN784.SPL ****
17 SPWI409.SPL ****
18 ZOMSEA.ITM ****
16 changes: 16 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/disintegrate.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
2DA V1.0
****
FILE SUBSPELL
0 BLAKBLAD.ITM ****
1 SPIN542.SPL ****
2 SPIN552.SPL ****
3 SPIN624.SPL ****
4 SPIN782.SPL ****
5 SPIN793.SPL ****
6 SPIN805.SPL ****
7 SPIN982.SPL ****
8 SPWI055.SPL ****
9 SPWI056.SPL ****
10 SPWI616.SPL ****
11 SPWI711.SPL ****
12 SPWI714.SPL ****
10 changes: 10 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/entangle.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2DA V1.0
****
FILE SUBSPELL
0 HGNYA01.ITM ****
1 MOUND.ITM ****
2 SPIN688.SPL ****
3 SPPR105.SPL ****
4 SPWM111.SPL ****
5 SW1H58.ITM ****
6 SW1H59.ITM ****
10 changes: 10 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/feeblemind.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2DA V1.0
****
FILE SUBSPELL
0 INSANITY.SPL ****
1 POTN23.ITM ****
2 SCRL18.ITM ****
3 SIRINE.ITM ****
4 SPPR650.SPL ****
5 SPWI509.SPL ****
6 SPWI714.SPL ****
6 changes: 6 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/grease.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
2DA V1.0
****
FILE SUBSPELL
0 KUOSPER.ITM ****
1 SPIN914.SPL ****
2 SPWI101.SPL ****
23 changes: 23 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/haste.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
2DA V1.0
****
FILE SUBSPELL
0 BRAC16.ITM ****
1 MISCBC.ITM ****
2 POTN14.ITM ****
3 RING39.ITM ****
4 RUNRUN.SPL ****
5 SPIN572.SPL ****
6 SPIN584.SPL ****
7 SPIN655.SPL ****
8 SPIN828.SPL ****
9 SPIN978.SPL ****
10 SPRA301.SPL ****
11 SPWI305.SPL ****
12 SPWI613.SPL ****
13 SPWI711.SPL ****
14 SPWISH36.SPL ****
15 SPWISH37.SPL ****
16 SPWISH40.SPL ****
17 SPWM115.SPL ****
18 SW1H27.ITM ****
19 WAND12.ITM ****
19 changes: 19 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/hold.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
2DA V1.0
****
FILE SUBSPELL
0 OHNWAND1.SPL ****
1 OHREYEB2.SPL ****
2 SPCL415.SPL SPCL415H
3 SPIN648.SPL ****
4 SPIN988.SPL ****
5 SPIN990.SPL ****
6 SPIN996.SPL ****
7 SPIN999.SPL ****
8 SPPR208.SPL ****
9 SPPR305.SPL ****
10 SPPR728.SPL ****
11 SPPR989.SPL ****
12 SPWI306.SPL ****
13 SPWI507.SPL ****
14 SPWM114.SPL ****
15 SPWM122.SPL ****
69 changes: 69 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/kill.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
2DA V1.0
****
FILE SUBSPELL
0 ACIDOOZ4.ITM ****
1 AX1H10.ITM ****
2 AX1H15.ITM ****
3 BALOR.ITM ****
4 BLUN12.ITM ****
5 BLUN25.ITM ****
6 DEVA.ITM ****
7 DEVAEVIL.ITM ****
8 ELEMCHAN.ITM ****
9 ELEMCRYO.ITM ****
10 ELEMHYDR.ITM ****
11 ELEMIMIX.ITM ****
12 ELEMOGRE.ITM ****
13 ELEMSUNN.ITM ****
14 ELEMYANC.ITM ****
15 ELEMZAAM.ITM ****
16 FINSOL01.ITM ****
17 FINSOL02.ITM ****
18 GITH.ITM ****
19 HALB09.ITM ****
20 HALB11.ITM ****
21 HAMM10.ITM ****
22 HAMM11.ITM ****
23 JELLGR1.ITM ****
24 JWDEATH.SPL ****
25 JWWHIRL.SPL ****
26 MAGIDEAD.ITM ****
27 NEIRED.ITM ****
28 OHBDEVA.ITM ****
29 OHBPTN03.ITM ****
30 OHBPTN05.ITM ****
31 OHBPTN06.ITM ****
32 OHBPTN07.ITM ****
33 OHBPTN10.ITM ****
34 OHBWHIRL.SPL ****
35 OHBWING.ITM ****
36 OHHFROST.SPL ****
37 OHNKILL.SPL ****
38 PLANETAR.ITM ****
39 POTN40.ITM ****
40 PTION41.ITM ****
41 SCRL17.ITM ****
42 SCRLZY.ITM ****
43 SENSPI01.ITM ****
44 SPCTMD02.SPL ****
45 SPERMEL.ITM ****
46 SPIDVO01.ITM ****
47 SPIN627.SPL ****
48 SPIN770.SPL ****
49 SPIN780.SPL ****
50 SPIN781.SPL ****
51 SPIN804.SPL ****
52 SPIN813.SPL ****
53 SPIN871.SPL ****
54 SPIN877.SPL ****
55 SPIN888.SPL ****
56 SPIN951.SPL ****
57 SPIN952.SPL ****
58 SPIN953.SPL ****
59 SPIN973.SPL ****
60 SPPR303.SPL ****
61 SPPR710.SPL ****
62 SPPR715.SPL ****
63 SPWI023.SPL ****
64 SPWI998.SPL ****
65 SW2H15.ITM ****
48 changes: 48 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/panic.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
2DA V1.0
****
FILE SUBSPELL
0 B1-12M4.ITM ****
1 BDSHA01C.SPL ****
2 BEARSPIR.ITM ****
3 FLPR717A.SPL ****
4 HELM32.ITM ****
5 MISTHO.ITM ****
6 MISTICE.ITM ****
7 OHBDFA1.SPL ****
8 OHBDRAG2.SPL ****
9 OHBTGAZE.SPL ****
10 OHREYEB3.SPL ****
11 OHRFEAR.SPL ****
12 RODMACE.ITM ****
13 RODS05.ITM ****
14 SPBATT1.ITM ****
15 SPBATT2.ITM ****
16 SPBATT3.ITM ****
17 SPBATT4.ITM ****
18 SPBATT5.ITM ****
19 SPCL103.SPL ****
20 SPCL908.SPL ****
21 SPIN105.SPL ****
22 SPIN203.SPL ****
23 SPIN536.SPL ****
24 SPIN559.SPL ****
25 SPIN675.SPL ****
26 SPIN680.SPL ****
27 SPIN772.SPL ****
28 SPIN807.SPL SPIN807A
29 SPIN882.SPL ****
30 SPIN890.SPL ****
31 SPIN891.SPL SPIN891A
32 SPIN895.SPL ****
33 SPIN921.SPL ****
34 SPIN981.SPL ****
35 SPPR416.SPL ****
36 SPPR517.SPL ****
37 SPPR706.SPL ****
38 SPWI125.SPL ****
39 SPWI205.SPL ****
40 SPWI811.SPL ****
41 SPWI899.SPL ****
42 SPWI956.SPL ****
43 SPWM123.SPL ****
44 WAND02.ITM ****
39 changes: 39 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/paralyze.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
2DA V1.0
****
FILE SUBSPELL
0 BASILG1.ITM ****
1 BASILL1.ITM ****
2 CARRIO1.ITM ****
3 DAGG17.ITM ****
4 DEMMAU01.ITM ****
5 GHAST1.ITM GHAST1P
6 GHOUL1.ITM ****
7 GHOULLOR.ITM GHOULLOP
8 GHOULT.ITM ****
9 KALDW1.ITM ****
10 KUOBOLT3.ITM ****
11 LACEDO.ITM GHAST1P
12 LACEDO02.ITM GHAST1P
13 LICH02.ITM ****
14 MAGIWEB.ITM ****
15 OHBDAGG1.ITM ****
16 OHBENVLP.SPL ****
17 PARABASI.ITM ****
18 REVENT1.ITM ****
19 RODSWORD.ITM ****
20 SPDR201.SPL ****
21 SPIN566.SPL ****
22 SPIN683.SPL ****
23 SPIN776.SPL ****
24 SPIN863.SPL ****
25 SPIN914.SPL ****
26 SPIN960.SPL ****
27 SPWATT2.ITM ****
28 SPWATT3.ITM ****
29 SPWATT4.ITM ****
30 SPWATT5.ITM ****
31 SPWI215.SPL ****
32 SPWI711.SPL ****
33 VAMPIRE.ITM ****
34 WAND14.ITM ****
35 WOLFVA1.ITM ****
21 changes: 21 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/petrify.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
2DA V1.0
****
FILE SUBSPELL
0 BASIGAZE.ITM ****
1 BASILG1.ITM ****
2 BASILL1.ITM ****
3 CDSW2H07.ITM ****
4 EYEGOR01.ITM ****
5 PARABASI.ITM ****
6 PLYBASS.ITM ****
7 SCRL16.ITM ****
8 SPDR101.SPL ****
9 SPIN865.SPL ****
10 SPIN889.SPL ****
11 SPIN950.SPL ****
12 SPIN984.SPL ****
13 SPWI053.SPL ****
14 SPWI118.SPL ****
15 SPWI604.SPL ****
16 SPWI714.SPL ****
17 WAND12.ITM ****
8 changes: 8 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/power_word_kill.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
2DA V1.0
****
FILE SUBSPELL
0 SPPR719.SPL ****
1 SPWI817.SPL ****
2 SPWI897.SPL ****
3 SPWI912.SPL ****
4 SPWI960.SPL ****
6 changes: 6 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/power_word_stun.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
2DA V1.0
****
FILE SUBSPELL
0 SPIN944.SPL ****
1 SPWI715.SPL ****
2 SPWI959.SPL ****
13 changes: 13 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/silence.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
2DA V1.0
****
FILE SUBSPELL
0 MISC3L.ITM ****
1 SPIN634.SPL ****
2 SPIN692.SPL ****
3 SPIN998.SPL ****
4 SPPR211.SPL ****
5 SPPR988.SPL ****
6 SPWI612.SPL ****
7 SPWISH35.SPL ****
8 SW1H36.ITM ****
9 WAND19.ITM ****
46 changes: 46 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/slay.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
2DA V1.0
****
FILE SUBSPELL
0 AROW03.ITM ****
1 BOLT08.ITM ****
2 BULL04.ITM ****
3 HAMM09.ITM ****
4 LICHEL01.ITM ****
5 OHBCSFD.SPL ****
6 OHBDEMI2.SPL ****
7 OHBDEVA1.ITM ****
8 OHBDROWN.SPL ****
9 RODS04.ITM ****
10 SLAYLIVE.ITM ****
11 SPCL411.SPL ****
12 SPCL411F.SPL ****
13 SPDR101.SPL ****
14 SPIN673.SPL ****
15 SPIN681.SPL ****
16 SPIN723.SPL ****
17 SPIN789.SPL ****
18 SPIN820.SPL ****
19 SPIN836.SPL ****
20 SPIN864.SPL ****
21 SPIN961.SPL ****
22 SPIN991.SPL ****
23 SPPR599.SPL ****
24 SPPR704.SPL ****
25 SPPR708.SPL ****
26 SPPR722.SPL ****
27 SPWI006.SPL ****
28 SPWI016.SPL ****
29 SPWI054.SPL ****
30 SPWI118.SPL ****
31 SPWI502.SPL ****
32 SPWI605.SPL ****
33 SPWI713.SPL ****
34 SPWI913.SPL ****
35 STAF15.ITM ****
36 STAF16.ITM ****
37 STAF17.ITM ****
38 STDEATH.ITM ****
39 SW1H50.ITM ****
40 SW1H99.ITM ****
41 TELSLAV.ITM ****
42 WAND13.ITM ****
61 changes: 61 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/sleep.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
2DA V1.0
****
FILE SUBSPELL
0 ABZAWAY.SPL ****
1 AURSTAF.ITM ****
2 AX1H16.ITM ****
3 BALTH01.SPL ****
4 BALTH09.SPL ****
5 BDSHA12C.SPL ****
6 BLUN16.ITM ****
7 CDFAMPSD.ITM ****
8 CH3AWAY.SPL ****
9 CH3DRAIN.SPL ****
10 DAGG13.ITM ****
11 DGWHIRL.SPL ****
12 DWBOLT01.ITM ****
13 JWFALL.SPL ****
14 JWSIEGE.SPL ****
15 JWSLEEP.SPL ****
16 JWWHIRL.SPL ****
17 OHBBCLT0.SPL ****
18 OHBBRVGR.ITM ****
19 OHBQUAKE.SPL ****
20 OHDDIVRT.SPL ****
21 OHDMASK.SPL ****
22 OHRGROG.SPL ****
23 PSDCLAW.ITM ****
24 RAVAG01.ITM ****
25 SPCL751A.SPL ****
26 SPCL911B.SPL ****
27 SPER12.ITM ****
28 SPIN547.SPL ****
29 SPIN600.SPL ****
30 SPIN643.SPL ****
31 SPIN656.SPL ****
32 SPIN658.SPL ****
33 SPIN695.SPL ****
34 SPIN775.SPL ****
35 SPIN802.SPL ****
36 SPIN892.SPL ****
37 SPIN937.SPL ****
38 SPIN940.SPL ****
39 SPOGRE01.SPL ****
40 SPPR102.SPL ****
41 SPPR512.SPL ****
42 SPPR720.SPL ****
43 SPWI004.SPL ****
44 SPWI105.SPL ****
45 SPWI116.SPL ****
46 SPWI213.SPL ****
47 SPWI411.SPL ****
48 SPWI711.SPL ****
49 SPWI922.SPL ****
50 SPWI925.SPL ****
51 SPWISH27.SPL ****
52 SPWM187.SPL ****
53 SPYANC01.SPL ****
54 STAF15.ITM ****
55 STAF21.ITM ****
56 STAF22.ITM ****
57 WAND08.ITM ****
57 changes: 57 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/slow.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
2DA V1.0
****
FILE SUBSPELL
0 ACIDOOZ3.ITM ****
1 AURSTAF.ITM ****
2 BALTH07.SPL ****
3 BDSHA06B.SPL ****
4 BDSW2H01.SPL ****
5 BHAAL2B.SPL ****
6 BLUN14.ITM ****
7 BLUN20.ITM ****
8 BLUN30.ITM ****
9 BLUN30C.ITM ****
10 BLUN30D.ITM ****
11 BONEDAG.ITM ****
12 CH3DRAIN.SPL ****
13 CH3FLASH.SPL ****
14 CH3WEAK.SPL ****
15 DOGWAWP.ITM ****
16 DWWHIP.ITM ****
17 DWWHIP01.ITM ****
18 GORWOM4.ITM ****
19 HGBER01.ITM ****
20 JELLMU1.ITM ****
21 JELLMU2.ITM ****
22 KUOSPER.ITM ****
23 MELIS01.SPL ****
24 OHBDGELU.ITM ****
25 OHBEWWSL.SPL ****
26 OHHPHREY.ITM ****
27 OHNPOTN1.ITM ****
28 PLYJELLO.ITM ****
29 PLYJELLY.ITM ****
30 POTN32.ITM ****
31 SENDAI.ITM ****
32 SHARSWD.ITM ****
33 SPCL123.SPL ****
34 SPCL415.SPL ****
35 SPCL422.SPL ****
36 SPCL751A.SPL ****
37 SPERMEL.ITM ****
38 SPIN575.SPL ****
39 SPIN628.SPL ****
40 SPIN635.SPL ****
41 SPIN817.SPL ****
42 SPIN818.SPL ****
43 SPIN977.SPL ****
44 SPIN983.SPL ****
45 SPPR250.SPL ****
46 SPPR610.SPL ****
47 SPPR710.SPL ****
48 SPPR715.SPL ****
49 SPWI312.SPL ****
50 SPWISH25.SPL ****
51 SPWM112.SPL ****
52 SPWM164.SPL ****
53 TROLLTOR.ITM ****
21 changes: 21 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/special.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
2DA V1.0
****
FILE SUBSPELL
0 BDVOID.SPL ****
1 BONEFD.ITM ****
2 CDMINDFL.ITM ****
3 GORCAMB.ITM ****
4 MAGISPWR.ITM ****
5 MINDFLAY.ITM ****
6 NPSW06.ITM ****
7 OHBDRAG1.SPL ****
8 OHRCLCK3.ITM ****
9 SHADOWWP.ITM ****
10 SHARSWD.ITM ****
11 SPIDWR1.ITM ****
12 SPIN808.SPL ****
13 SPIN901.SPL ****
14 SPPR751.SPL ****
15 TROLLSPI.ITM ****
16 TROLLTOR.ITM ****
17 WAWAK.ITM ****
59 changes: 59 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/stun.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
2DA V1.0
****
FILE SUBSPELL
0 BDSHA06A.SPL ****
1 BOLT07.ITM ****
2 CARRIO.ITM ****
3 CDSTAF12.SPL ****
4 CORNUGON.ITM ****
5 DART03.ITM ****
6 DARTMEL.ITM ****
7 DEMCOR01.ITM ****
8 DEVA.ITM ****
9 DWBOLT02.ITM ****
10 ELEMHYDR.ITM ****
11 FAMPSDAT.ITM ****
12 GHOULC.ITM ****
13 GOLTOME4.ITM ****
14 GORCAMB.ITM ****
15 GORSNAKE.ITM ****
16 ICETRL.ITM ICETRLST
17 KUOBOLT.ITM ****
18 KUOBOLT2.ITM ****
19 MEPSAL.ITM ****
20 MISC3H.ITM ****
21 MISTWA.ITM ****
22 OHBDCORN.SPL ****
23 OHBDEVA.ITM ****
24 OHHDAG01.ITM ****
25 PARACARR.ITM ****
26 PARAGHAS.ITM ****
27 PARAGHOU.ITM ****
28 RAVAG02.ITM ****
29 SAHBOLT.ITM ****
30 SAREVEFF.SPL ****
31 SLNG06.ITM ****
32 SPCL123.SPL ****
33 SPDR101.SPL SPDR101S
34 SPERMEL.ITM ****
35 SPIN543.SPL ****
36 SPIN727.SPL ****
37 SPIN832.SPL ****
38 SPIN834.SPL ****
39 SPIN909.SPL ****
40 SPIN926.SPL ****
41 SPIN927.SPL ****
42 SPIN934.SPL ****
43 SPIN959.SPL ****
44 SPIN974.SPL ****
45 SPPR710.SPL ****
46 SPPR715.SPL ****
47 SPPR718.SPL ****
48 SPPR984.SPL ****
49 SPWI118.SPL SPWI118S
50 SPWI816.SPL ****
51 SPWI898.SPL ****
52 SPWM152.SPL ****
53 STAF13.ITM ****
54 SW1H51.ITM ****
55 WAND04.ITM ****
7 changes: 7 additions & 0 deletions eefixpack/files/tph/luke/7eyes/bg2/web.2da
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
2DA V1.0
****
FILE SUBSPELL
0 SPDR201.SPL ****
1 SPIN566.SPL ****
2 SPIN683.SPL ****
3 SPWI215.SPL ****
178 changes: 0 additions & 178 deletions eefixpack/files/tph/luke/7eyes/blindness.tph

This file was deleted.

177 changes: 0 additions & 177 deletions eefixpack/files/tph/luke/7eyes/charm_creature.tph

This file was deleted.

Loading