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

New Component: NWN-ish Disarm #110

Merged
merged 34 commits into from
Jan 23, 2025
Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
2fe497f
Knockdown
4Luke4 Sep 4, 2024
ff8cc14
Update knockdown.lua
4Luke4 Sep 4, 2024
ab88ec4
Misc tweaks
4Luke4 Sep 5, 2024
d351190
Update knockdown.lua
4Luke4 Sep 6, 2024
14d435f
Update knockdown.tph
4Luke4 Sep 6, 2024
08af72f
Update knockdown.tph
4Luke4 Sep 6, 2024
e4a7878
Update knockdown.lua
4Luke4 Sep 6, 2024
acadb21
Disarm
4Luke4 Sep 30, 2024
5fe699b
Add missing bam files
4Luke4 Oct 1, 2024
d79e727
Update readme-cdtweaks.html
4Luke4 Oct 1, 2024
afbd0ce
Update disarm.tph
4Luke4 Oct 1, 2024
21cc411
Delete comp_2840.tpa
4Luke4 Oct 2, 2024
ee5345f
Create comp_6000.tpa
4Luke4 Oct 2, 2024
c50eb10
Update setup-cdtweaks.tp2
4Luke4 Oct 2, 2024
2bfc806
Slightly tweak implementation
4Luke4 Oct 18, 2024
db2645c
Update disarm.lua
4Luke4 Oct 18, 2024
13ddb86
Update disarm.tph
4Luke4 Oct 18, 2024
f86dd1e
Update disarm.lua
4Luke4 Oct 20, 2024
8e0788e
Better feedback
4Luke4 Oct 24, 2024
aa2b07d
Update disarm.tph
4Luke4 Oct 24, 2024
5545725
Update disarm.lua
4Luke4 Oct 24, 2024
24b849a
Update disarm.lua
4Luke4 Oct 24, 2024
5303c86
Yet another implementation
4Luke4 Dec 18, 2024
c8b3bbe
Misc tweaks
4Luke4 Jan 10, 2025
a2de5bb
Delete gtprone.bam
4Luke4 Jan 17, 2025
ad5e76a
Delete portrait_icon.bam
4Luke4 Jan 17, 2025
a4d622c
Delete spl_icon.bam
4Luke4 Jan 17, 2025
5499106
Update m_gttbls.lua
4Luke4 Jan 17, 2025
0310f19
Update misc.tph
4Luke4 Jan 17, 2025
b3823d9
Update misc.tph
4Luke4 Jan 17, 2025
a82c955
Update misc.tph
4Luke4 Jan 17, 2025
afd1229
Update weidu.tra
4Luke4 Jan 17, 2025
7e10c52
Update weidu.tra
4Luke4 Jan 17, 2025
308fd68
Merge branch 'master' into disarm
CamDawg Jan 23, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions cdtweaks/languages/english/disarm.tra
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
@0 = "Disarm"

@1 = "Disarm

The character can attempt to disarm an opponent in melee combat. Attempting a disarm applies a -6 penalty to the character's attack roll, and the combatant with the larger weapon gains a +2 bonus per size category of difference. A successful hit deals normal damage, and if the opponent fails a Save vs. Breath, then the weapon flies from the opponent's hands."

@100 = "The selected target is out of range"
@101 = "Disarm Canceled: Inventory full"
@102 = "Disarm: Resisted"
@103 = "Disarm: Hit"
@104 = "This feat cannot be used while wielding a ranged weapon"
@105 = "The character cannot perform more than one action per round"
@106 = "Unaffected by effects from Disarm"
11 changes: 11 additions & 0 deletions cdtweaks/languages/english/weidu.tra
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
@27 = ~DLC Merger is required before mods can be installed on this game. Check the readme for more information and a link to download DLC Merger.~
@28 = ~There are not enough free spell state or secondary type slots available to install this component.~
@29 = "Requires EEex (https://github.com/Bubb13/EEex)."
@30 = "NWN-ish feats"

@100 = ~Batch Installer -- EXPERIMENTAL, use at own risk. Check the readme.~
@101 = ~
Expand Down Expand Up @@ -802,3 +803,13 @@ Use Baldur.lua options: a7_interval_ini
@504000 = ~Allow Yeslick to Use Axes~

@505000 = ~Ensure Shar-Teel Doesn't Die in the Original Challenge~

/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
///// \\\\\
///// NWN-ish feats collection \\\\\
///// \\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\

@600000 = "Disarm class feat for Rogues [Luke]"
13 changes: 13 additions & 0 deletions cdtweaks/languages/italian/disarm.tra
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
@0 = "Disarmare"

@1 = "Disarmare

Il personaggio può tentare di disarmare un avversario durante un combattimento in mischia. Il tentativo di disarmare applica una penalità di -6 al tiro per colpire del personaggio, e il combattente con l'arma più grande ottiene un bonus di +2 per ogni categoria di taglia di differenza. Un colpo andato a segno infligge danni normalmente e, se l'avversario fallisce un tiro-salvezza contro Soffio, l'arma gli vola via dalle mani."

@100 = "Il bersaglio selezionato è fuori portata"
@101 = "Disarmare Annullato: Inventario pieno"
@102 = "Disarmare: Resistito"
@103 = "Disarmare: Colpito"
@104 = "Questa abilità non può essere usata mentre si brandisce un'arma a distanza"
@105 = "Il personaggio non può compiere più di un'azione per round"
@106 = "Non soggetto agli effetti di Disarmare"
11 changes: 11 additions & 0 deletions cdtweaks/languages/italian/weidu.tra
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ o rimpiazzata da - un'altra facente parte di uno dei mods installati.~
@27 = ~E' necessario utilizzare Modmerge prima che i mod possano essere installati su questo gioco. Controllare il readme per ulteriori informazioni e per un link per scaricare Modmerge.~
@28 = ~Non sono disponibili abbastanza slot per lo stato dell'incantesimo o di tipo secondario per installare questo componente.~
@29 = "Questo componente richiede EEex (https://github.com/Bubb13/EEex)."
@30 = "Talenti in stile NWN"

// questo componente non è pronto, puoi saltare la traduzione di questo blocco
//@100 = ~Programma di installazione automatizzato~
Expand Down Expand Up @@ -718,3 +719,13 @@ Usa opzioni di Baldur.lua: a7_interval_ini
@504000 = ~Permettere a Yeslick di usare le asce~

@505000 = ~Assicura che Shar-Teel non muoia nella sfida iniziale~

/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
///// \\\\\
///// Raccolta di talenti in stile NWN \\\\\
///// \\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\

@600000 = "Aggiungi talento di classe Disarmare per i Ladri [Luke]"
17 changes: 17 additions & 0 deletions cdtweaks/lib/comp_6000.tpa
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
///// \\\\\
///// Disarm class feat for Rogues \\\\\
///// \\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\

WITH_SCOPE BEGIN
INCLUDE "cdtweaks\luke\misc.tph"
INCLUDE "cdtweaks\ardanis\functions.tph"
//
INCLUDE "cdtweaks\lib\disarm.tph"
WITH_TRA "cdtweaks\languages\english\disarm.tra" "cdtweaks\languages\%LANGUAGE%\disarm.tra" BEGIN
LAF "DISARM" END
END
END
73 changes: 73 additions & 0 deletions cdtweaks/lib/disarm.tph
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
DEFINE_ACTION_FUNCTION "DISARM"
BEGIN
LAF "GT_ADD_SPELL"
INT_VAR
"level" = 4
"preferredSlot" = 44
"type" = 4
STR_VAR
"idsName" = "ROGUE_DISARM"
RET
"ROGUE_DISARM" = "resName"
END
//
LAF "ADD_EXTENDED_STAT" INT_VAR "max" = 25 STR_VAR "identifier" = "GT_IGNORE_ACTION_ADD_SPRITE_STARTED_ACTION_LISTENER" END
//
WITH_SCOPE BEGIN
ACTION_TO_LOWER "ROGUE_DISARM"
// Disarm (main spl file)
CREATE "spl" "%ROGUE_DISARM%"
COPY_EXISTING "%ROGUE_DISARM%.spl" "override"
WRITE_LONG NAME1 RESOLVE_STR_REF (@0)
WRITE_LONG NAME2 "-1"
WRITE_LONG UNIDENTIFIED_DESC RESOLVE_STR_REF (@1)
WRITE_LONG DESC "-1"
WRITE_LONG 0x18 (BIT14 BOR BIT25) // ignore dead/wild magic, castable when silenced
WRITE_SHORT 0x1C 4 // innate
WRITE_LONG 0x34 1 // level
WRITE_ASCII 0x3A "%DEST_RES%B" #8 // icon
//
LPF "ADD_SPELL_HEADER" INT_VAR "range" = 30 STR_VAR "icon" = "%DEST_RES%B" END
//
LPF "ADD_SPELL_EFFECT" INT_VAR "opcode" = 138 "target" = 1 "parameter2" = 7 END // SEQ_READY
LPF "ADD_SPELL_EFFECT" INT_VAR "opcode" = 321 "target" = 1 STR_VAR "resource" = "%DEST_RES%" END // Remove effects by resource
LPF "ADD_SPELL_EFFECT" INT_VAR "opcode" = 402 "target" = 2 STR_VAR "resource" = "%DEST_RES%" END // Invoke lua
BUT_ONLY
// EFF
CREATE "eff" "%ROGUE_DISARM%b"
COPY_EXISTING "%ROGUE_DISARM%b.eff" "override"
WRITE_LONG 0x10 402 // Invoke Lua
WRITE_LONG 0x14 2 // Projectile target
WRITE_LONG 0x1C 1 // p1
WRITE_SHORT 0x2C 100 // prob1
WRITE_ASCII 0x30 "%ROGUE_DISARM%" #8 // Lua function
BUT_ONLY
// icon
COPY "cdtweaks\luke\bam\class\disarm\spl_icon.bam" "override\%ROGUE_DISARM%b.bam"
END
// lua
WITH_SCOPE BEGIN
OUTER_SET "feedback_strref_outOfRange" = RESOLVE_STR_REF (@100)
OUTER_SET "feedback_strref_inventoryFull" = RESOLVE_STR_REF (@101)
OUTER_SET "feedback_strref_resisted" = RESOLVE_STR_REF (@102)
OUTER_SET "feedback_strref_hit" = RESOLVE_STR_REF (@103)
OUTER_SET "feedback_strref_meleeOnly" = RESOLVE_STR_REF (@104)
OUTER_SET "feedback_strref_auraFree" = RESOLVE_STR_REF (@105)
OUTER_SET "feedback_strref_immune" = RESOLVE_STR_REF (@106)
//
LAF "ADD_STATDESC_ENTRY" INT_VAR "description" = RESOLVE_STR_REF (@0) STR_VAR "bam_file" = "%ROGUE_DISARM%D" RET "feedback_icon_canDisarm" = "index" END
WITH_SCOPE BEGIN
ACTION_TO_LOWER "ROGUE_DISARM"
COPY "cdtweaks\luke\bam\class\disarm\portrait_icon.bam" "override\%ROGUE_DISARM%d.bam"
END
//
LAF "APPEND_LUA_FUNCTION" STR_VAR "description" = "Class/Kit Abilities" "sourceFileSpec" = "cdtweaks\luke\lua\class\disarm.lua" "destRes" = "m_gtspcl" END
END
//
LAF "APPEND_LUA_FUNCTION" STR_VAR "description" = "Lua Tools" "sourceFileSpec" = "cdtweaks\luke\lua\tools\key_exists.lua" "destRes" = "m_gttool" END
LAF "APPEND_LUA_FUNCTION" STR_VAR "description" = "Utility Functions / Listeners" "sourceFileSpec" = "cdtweaks\luke\lua\utility\effect_check.lua" "destRes" = "m_gtutil" END
//
ACTION_IF !(FILE_EXISTS_IN_GAME "m_gttbls.lua") BEGIN
COPY "cdtweaks\luke\lua\m_gttbls.lua" "override"
END
END
Binary file added cdtweaks/luke/bam/class/disarm/portrait_icon.bam
Binary file not shown.
Binary file added cdtweaks/luke/bam/class/disarm/spl_icon.bam
Binary file not shown.
Binary file added cdtweaks/luke/bam/gtprone.bam
Binary file not shown.
Binary file added cdtweaks/luke/bam/innate/knockdown/portrait_icon.bam
Binary file not shown.
Binary file added cdtweaks/luke/bam/innate/knockdown/spl_icon.bam
Binary file not shown.
Loading