PDA

View Full Version : [FF2] [Subplugin] War3 Ability Pack


Otokiru
06-22-2012, 01:58
FF2 War3 Ability Pack. (Latest Version: v1.1)
Original idea & credits, War3Source Team (http://war3source.com/). Teleport particle effects credits, FuncommandsX. (http://forums.alliedmods.net/showthread.php?t=75520) Re-coded by Otokiru.

YouTube Preview:
http://i.imgur.com/r4GtF.png (http://www.youtube.com/watch?v=47SKey9JeFo)

Installation:

ff2_otokiru_wc3.ff2 -> addons/sourcemod/plugins/freaks/
ff2_otokiru_wc3.sp -> addons/sourcemod/scripting/
ALL sound files -> sound/war3source/
bZip sound files -> Your downloadURL server (Optional)


Ability Pack consist of:
<rage_name> <preferred hale class>
<ability details; where X = configurable>
Charge_OnWeightDown_Fix (Any)
Required if using this Ability Pack. More details below.
Entangle_Config (Any)
Gives hale X no. of Entangle Skills which allows the Hale to Entangle a player where he aiming at. Entangled players cannot move for X no. of seconds.
Entangle_Activator (Any)
Required if using the Entangle Skill.
Teleport_Config (Any)
Gives hale X no. of Teleport Skills which allows the Hale to Teleport itself to the location he aiming at within X distance.
Teleport_Activator (Any)
Required if using the Teleport Skill.
ChainLightning_Config (Any)
Gives hale X no. of ChainLightning Skills which allows the Hale to cast ChainLightning at the player he aiming for X amount of damage and within X UNKNOWN distance. ChainLightning will continue to bounce on any nearby players.
ChainLightning_Activator (Any)
Required if using the ChainLightning Skill.
More coming, if I got the time. Sorry! > w <

Charge_OnWeightDown_Fix

Incase you did not notice, Demopan cannot use Weightdown because he have another "custom" button ability which is the Charge ability.
So this re-code is to allow multiple "custom" button executed on hale.
Improve WeightDown so hale will drop down faster.
Remove annoying Used WeightDown chat message.
Remove cooldown. So weightdown can be instantly used as long as the hale is above ground.


CFG Configs:
Replace ? with your last ability number. DUH!

Charge_OnWeightDown_Fix "ability?" //Make sure you remove the previous weightdown ability.
{
"name" "charge_weightdown_fix"
"arg0" "3" // Do not Change! (Activate when button is pressed.)
"plugin_name" "ff2_otokiru_wc3"
}
Entangle_Config "ability?"
{
"name" "entangle_config"
"arg1" "3" // ActivationKey (1 = LeftClick. 2 = RightClick. 3 = ReloadButton.)
"arg2" "3" // No. of Skills (No. of skill to be given per rage. Will reset to this amount on every rage.)
"arg3" "5.0" // Entangle Time (No. of seconds that will Entangle the entangled player.)
"plugin_name" "ff2_otokiru_wc3"
}
Entangle_Activator "ability?"
{
"name" "entangle_activator"
"arg0" "3" // Do not Change! (Activate when button is pressed.)
"buttonmode" "2" // Do not Change! (Custom button is being used.)
"plugin_name" "ff2_otokiru_wc3"
}
Teleport_Config "ability?"
{
"name" "teleport_config"
"arg1" "3" // ActivationKey (1 = LeftClick. 2 = RightClick. 3 = ReloadButton.)
"arg2" "5" // No. of Skills (No. of skill to be given per rage. Will reset to this amount on every rage.)
"arg3" "9999.0" // Teleport Distance (No. of max distance that the hale can teleport to.)
"plugin_name" "ff2_otokiru_wc3"
}
Teleport_Activator "ability?"
{
"name" "teleport_activator"
"arg0" "3" // Do not Change! (Activate when button is pressed.)
"buttonmode" "2" // Do not Change! (Custom button is being used.)
"plugin_name" "ff2_otokiru_wc3"
}
ChainLightning_Config "ability?"
{
"name" "chainlightning_config"
"arg1" "3" // ActivationKey (1 = LeftClick. 2 = RightClick. 3 = ReloadButton.)
"arg2" "1" // No. of Skills (No. of skill to be given per rage. Will reset to this amount on every rage.)
"arg3" "9999.0" // UNKNOWN Distance (No. of max UNKNOWN distance that either the hale can cast or the lightning can be bounce.)
"arg4" "100" // No. of damage that will be dealt on players. Damage is UNSTABLE, if you set 100, it could damage user around 50~150 and sometimes instant-kill. LOL!)
"plugin_name" "ff2_otokiru_wc3"
}
ChainLightning_Activator "ability?"
{
"name" "chainlightning_activator"
"arg0" "3" // Do not Change! (Activate when button is pressed.)
"buttonmode" "2" // Do not Change! (Custom button is being used.)
"plugin_name" "ff2_otokiru_wc3"
}
Notes:


You don't have to declare any sound files in your cfg file as this plugin will automatically do it for you.


ChangeLog:

v1.1:

Fix Soundfiles not downloading.
No other major changes. Replace .ff2 will do in this update.

v1.0:

Initial Release.



Tell me if there's any problem. Enjoy! :3

Research
11-10-2012, 12:25
any updates?
I expect your new ability pack

friagram
11-10-2012, 22:57
I modified this some while ago.
- All abilities used shared variable for buttons, had to make more so that bosses could have multiple abilities.
- Point hurt was destroying players, used sdkhooks instead for predictable damage. If you get engine time you can calculate death by ability and assign a weapon death string and damage icon.
- Abilities were too spammy, had to add cooldown timer so players wouldn't use all their abilities in 1 second.
- Chain lightning var was counting hits in the loop. Can change this or add another var so that chain lightening has max targets it can hit per cast, and also grant the players X skills to cast.
- Vars can also be passed for CL range and damage falloff (say .6 and .3) for 60% range and 30% damage per hit, or whatever.

93SHADoW
08-19-2015, 11:14
REQUIRES ff2_ams.inc (https://forums.alliedmods.net/showpost.php?p=2384363&postcount=17) TO COMPILE!

v1.3:
Rewritten in modern syntax

v1.2.4:
AMS-enabled abilities now use autodetection.

v1.2.3:
Added arg to determine if entangle also blocks victim's weapon from firing
Allowed entangle beam color to be customized

Older:

v1.2.2:
Fixed AMS errors (thanks sarysa)

v1.2.1:
Hopefully fixed frogs (https://www.youtube.com/watch?v=JUBbigtfCWs) errors related to initializing AMS_InitSubAbility()

v1.2:
Just a long overdue update, which allows the hale to have more than 1 type of skill, allows multiple bosses to use any of the abilities, and added support for using it with the Ability Management System. Also has a neater HUD to show how many skills left, and to allow skill stacking.

To use it with the Ability Management System, it requires Epic Scout's subplugin (https://forums.alliedmods.net/showthread.php?t=267291):

"abilityX"
{
"name" "ability_management_system"
"arg1" "0" // activation key. 0=E, 1=R, 2=MIDDLE MOUSE, 3=USE(not bound by default)
"arg2" "1" // selection key. 0=not usable, 1=R, 2=MIDDLE MOUSE, 3=USE(not bound by default)
"arg3" "3" // reverse selection key. 0=not usable, 1=R, 2=MIDDLE MOUSE, 3=USE(not bound by default) [note: hidden feature, keeping this standard going]
"arg4" "0xc00000" // HUD color (unavailable)
"arg5" "%s (%.0f rage) [RELOAD (R) to change]\n%s\nAbility is currently unavailable." // HUD text format (unavailable)
"arg6" "0xffffff" // HUD color (available)
"arg7" "%s (%.0f rage) [RELOAD (R) to change]\n%s\nAbility is available. (press E)" // HUD text format (available)
"arg8" "0.68" // HUD Y
"arg9" "RAGE Meter: %.0f%%\nHP: %d / %d" // HUD replacement text
"arg10" "0.80" // HUD replacement Y
"plugin_name" "ff2_sarysapub3"
}

So here are the new additional args for teleport_config, chainlightning_config, and entangle_config:

entangle_config:
http://i.imgur.com/jjcjlRwl.jpg

"abilityX"
{
"name" "entangle_config"
"arg1" "1" // ActivationKey (1 = LeftClick. 2 = RightClick. 3 = ReloadButton. 4 = Special, 5 = Use)
"arg2" "3" // No. of Skills (No. of skill to be given per rage)
"arg3" "5.0" // Entangle Time (No. of seconds that will Entangle the entangled player.)
"arg4" "1" // Should skills stack? 1 - yes, 0 - no

"arg6" "0" // Entangle prevents player from firing weapon? 1: yes, 0: no

// args 7-10 are for entangle beam color
"arg7" "0" // RED value (0-255)
"arg8" "0" // GREEN value (0-255)
"arg9" "0" // BLUE value (0-255)
"arg10" "0" // ALPHA value (0-255)

// args reserved for the ability management system
"arg1001" "0.0" // delay before first use
"arg1002" "30.0" // cooldown
"arg1003" "Entangle" // name
"arg1004" "Entangle Players" // description
"arg1005" "50" // rage cost
"arg1006" "0" // index for ability in the AMS menu

"plugin_name" "ff2_otokiru_wc3"
}


teleport_config:
http://i.imgur.com/B8IH4U1l.jpg

"abilityX"
{
"name" "teleport_config"
"arg1" "2" // ActivationKey (1 = LeftClick. 2 = RightClick. 3 = ReloadButton. 4 = Special, 5 = Use)
"arg2" "2" // No. of Skills (No. of skill to be given per rage)
"arg3" "9999.0" // Teleport Distance (No. of max distance that the hale can teleport to.)
"arg4" "1" // Should skills stack? 1 - yes, 0 - no

// args reserved for the ability management system
"arg1001" "0.0" // delay before first use
"arg1002" "30.0" // cooldown
"arg1003" "Teleport" // name
"arg1004" "Teleport where you are aiming at" // description
"arg1005" "25" // rage cost
"arg1006" "1" // index for ability in the AMS menu

"plugin_name" "ff2_otokiru_wc3"
}


chainlightning_config:
http://i.imgur.com/t2sQaThl.jpg

"abilityX"
{
"name" "chainlightning_config"
"arg1" "4" // ActivationKey (1 = LeftClick. 2 = RightClick. 3 = ReloadButton. 4 = Special, 5 = Use)
"arg2" "1" // No. of Skills (No. of skill to be given per rage)
"arg3" "9999.0" // UNKNOWN Distance (No. of max UNKNOWN distance that either the hale can cast or the lightning can be bounce.)
"arg4" "100" // No. of damage that will be dealt on players. Damage is UNSTABLE, if you set 100, it could damage user around 50~150 and sometimes instant-kill. LOL!)
"arg5" "1" // Should skills stack? 1 - yes, 0 - no

// args reserved for the ability management system
"arg1001" "0.0" // delay before first use
"arg1002" "30.0" // cooldown
"arg1003" "Chain Lightning" // name
"arg1004" "Summon Lightning" // description
"arg1005" "10" // rage cost
"arg1006" "2" // index for ability in the AMS menu

"plugin_name" "ff2_otokiru_wc3"
}


The other config settings have remained unchanged.

TO-DO:
Fix the unstable chain lightning damage
Port sarysa's safer method for teleport skills
Add a cooldown timer between uses

93SHADoW
08-22-2015, 13:13
v1.2.1:
Hopefully fixed frogs (https://www.youtube.com/watch?v=JUBbigtfCWs) errors related to initializing AMS_InitSubAbility()
v1.2.2
Fixed AMS errors (thanks sarysa)

For some reason, some people would say it would fail to initialize if using with AMS, yet on my test environment, it was working fine.

93SHADoW
12-22-2015, 23:37
Changes for v1.2.3:
Added arg to determine if entangle also blocks victim's weapon from firing

"arg6" "0" // Entangle prevents player from firing weapon? 1: yes, 0: no

Allowed entangle beam color to be customized

// args 7-10 are for entangle beam color
"arg7" "0" // RED value (0-255)
"arg8" "255" // GREEN value (0-255)
"arg9" "0" // BLUE value (0-255)
"arg10" "255" // ALPHA value (0-255)

93SHADoW
01-22-2016, 13:44
v1.2.4:
AMS-enabled abilities now use autodetection.

zyox123cc
08-22-2016, 06:20
If I want to set it to the big move
Use according to E
How do I set up?
lightning

93SHADoW
09-07-2020, 19:53
v1.3:
Rewritten in modern syntax

Download: https://forums.alliedmods.net/showpost.php?p=2334852&postcount=4

hkkelvin1995
10-24-2023, 18:54
The chain lightning is causing client timeout in the latest version of TF2. Anyone has any clue why?