Go Back   EQEmulator Home > EQEmulator Forums > Support > Spell Support

Spell Support Broken Spells? Want them Fixed? Request it here.

Reply
 
Thread Tools Display Modes
  #1  
Old 10-06-2015, 09:35 AM
chrsschb's Avatar
chrsschb
Dragon
 
Join Date: Nov 2008
Location: GA
Posts: 904
Default Sharing is Caring: Custom Spells

Anyone made some unique/cool/fun/complex custom spells they wouldn't mind sharing? I know we have a custom quest forum and some of you guys are very talented so we appreciate the shares. Helps the newer guys learn to do some more complex stuff. So I have the same idea for spells. Any thing you guys are willing to share?

I have just really started digging into custom spells, just making some basic HoT, teleports, etc so definitely interested in some new ideas!
__________________
Clumsy's World: Resurgence [2019-Present]
Clumsy's World 2.0 [2014-2016]
Clumsy's World [2006-2012]
Reply With Quote
  #2  
Old 10-06-2015, 01:23 PM
starblight's Avatar
starblight
Sarnak
 
Join Date: Jan 2007
Posts: 76
Default

I made some custom items like the Just Looking Stick that has the cleric epic clicky on it And a Vanguard Rope with a modified CoH spell that has a range of 30.

I know this is not exactly what you were looking for but it should just be one post to ignore
Reply With Quote
  #3  
Old 10-06-2015, 01:52 PM
Maceblade
Hill Giant
 
Join Date: Jun 2010
Posts: 231
Default

I have a few custom spells but nothing super extensive. I manipulated a shaman spell that will strip beneficial, malo, slow, debuff and cripple , that cannot be resisted at the cost of 10k mana, which isn't hard to achieve on my server.
Also have quite a few illusion clickies that add procs and swarm pets and a few group celestial heals and targetable self buffs. Nothing worth bragging about.
Reply With Quote
  #4  
Old 10-06-2015, 02:14 PM
N0ctrnl's Avatar
N0ctrnl
Discordant
 
Join Date: Jan 2007
Posts: 443
Default

I made copies of a bunch of hitpoint buffs without the "instant hitpoints" effect (for bots), but that's about it. :P
Reply With Quote
  #5  
Old 10-06-2015, 02:47 PM
NatedogEZ's Avatar
NatedogEZ
Developer
 
Join Date: Dec 2012
Posts: 515
Default

Custom spells using quests? Because I love doing that!

AoE rez spell I wrote awhile ago... (edited it a bit)
uses spell 994 to resurrect.. but whatever spell its attached to needs to be self only targettype to trigger the quest script..

spellid.pl (example 11.pl) in the global\spells folder
Code:
sub EVENT_SPELL_EFFECT_CLIENT {
	my @corpselist = $entity_list->GetCorpseList();
	foreach $CL (@corpselist) {
		next unless $CL->IsPlayerCorpse();
		next if $CL->IsRezzed();
		next if $client->CalculateDistance($CL->GetX(), $CL->GetY(), $CL->GetZ()) > 100;
		quest::castspell(994,$CL->GetID()); 
	}
}
Reply With Quote
  #6  
Old 10-06-2015, 02:53 PM
chrsschb's Avatar
chrsschb
Dragon
 
Join Date: Nov 2008
Location: GA
Posts: 904
Default

Quote:
Originally Posted by NatedogEZ View Post
Custom spells using quests? Because I love doing that!

AoE rez spell I wrote awhile ago... (edited it a bit)
uses spell 994 to resurrect.. but whatever spell its attached to needs to be self only targettype to trigger the quest script..

spellid.pl (example 11.pl) in the global\spells folder
Code:
sub EVENT_SPELL_EFFECT_CLIENT {
	my @corpselist = $entity_list->GetCorpseList();
	foreach $CL (@corpselist) {
		next unless $CL->IsPlayerCorpse();
		next if $CL->IsRezzed();
		next if $client->CalculateDistance($CL->GetX(), $CL->GetY(), $CL->GetZ()) > 100;
		quest::castspell(994,$CL->GetID()); 
	}
}
That's pretty badass.
__________________
Clumsy's World: Resurgence [2019-Present]
Clumsy's World 2.0 [2014-2016]
Clumsy's World [2006-2012]
Reply With Quote
  #7  
Old 10-06-2015, 03:23 PM
NatedogEZ's Avatar
NatedogEZ
Developer
 
Join Date: Dec 2012
Posts: 515
Default

Here is another one where a spell will cycle ranks to the max...

X boss casts a single target nuke.. every 30sec or so... and each time you get a stacking debuff.. where you take more damage.

This quest has test spell IDs but.. it works, the test spells are the GMHP buffs so you can test if it works :p

When this spell lands on the player the next spell in the @spells array will be cast on them.. stacking debuff.. or stacking buff.

This can be used for other ideas I am guessing as well.. I just used it for boss debuffs / player stacking self buffs :p


spellid.pl (example 11.pl in global\spells)
Code:
sub EVENT_SPELL_EFFECT_CLIENT {
	my $caster_ent = $entity_list->GetMobID($caster_id);  #who cast the spell
	my $target_id = $client->GetID(); #Client who got cast on
	my @spells = (6817, 6818, 6819, 6820, 6821, 6822, 6823, 6824); #Spells Can add more to array if you want
	
	if ( grep { $client->FindBuff($_) } @spells ) {
		for $x (0 .. $#spells) { 
			if( $client->FindBuff($spells[$x]) ) {
				$client->BuffFadeBySpellID($spells[$x]); #Remove current buff / debuff  (incase they STACK)
				if($spells[$x] == $spells[$#spells]) {
					$caster_ent->SpellFinished($spells[$x], $client, 0);	#Last Rank
					last;
				} else {
					$caster_ent->SpellFinished($spells[$x + 1], $client, 0);	#Cycle Ranks
					last;
				}
			}
		}
	} else {
		$caster_ent->SpellFinished($spells[0], $client, 0);	#Cast First Rank!
	}
}
Reply With Quote
  #8  
Old 10-06-2015, 05:18 PM
Maceblade
Hill Giant
 
Join Date: Jun 2010
Posts: 231
Default

Those are pretty sick Nate I like them!
Reply With Quote
  #9  
Old 10-06-2015, 05:32 PM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,447
Default

Technically, this video is all done using spells... (and perl )

Reply With Quote
  #10  
Old 10-06-2015, 05:33 PM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,447
Default

Reply With Quote
  #11  
Old 10-06-2015, 05:38 PM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,447
Default

Reply With Quote
  #12  
Old 10-06-2015, 05:42 PM
Kingly_Krab
Administrator
 
Join Date: May 2013
Location: United States
Posts: 1,595
Default

Here's a zone teleporter with search capability, requires a lot of plugins:
Code:
sub EVENT_SAY {
    if ($text=~/Hail/i) {
        plugin::Whisper("Hello $name, would you like me to " . quest::saylink("teleport", 1) . " you somewhere?");
    } elsif ($text=~/Teleport/i) {
        plugin::Whisper("Just say any phrase like \"search a\" and I will see if I can teleport you to a similar zone.");
    } elsif ($text=~/^Search/i) {
        my $search = substr($text, 7);
        plugin::ListTeleport($search);
    } elsif ($text > 0) {
        plugin::Teleport();
    }
}

sub EVENT_POPUPRESPONSE {
    plugin::Teleport($popupid);
}
Plugins:
Code:
sub Message {
    my $client = plugin::val('client');
    my $message = shift;
    $client->Message(315, $message);
}

sub ListTeleport {
    my $text = shift;
    my %zh = plugin::ZoneHash();
    foreach my $key (sort {$a <=> $b} keys %zh) {
        if ($zh{$key}[1] =~ /$text/i) {
            plugin::Message("ID: $zh{$key}[0] Short Name: $zh{$key}[1] " . quest::saylink($zh{$key}[0], 1, "Teleport"));
        } elsif ($zh{$key}[2] =~ /$text/i) {
            plugin::Message("ID: $zh{$key}[0] Long Name: $zh{$key}[2] " . quest::saylink($zh{$key}[0], 1, "Teleport"));
        }
    }
}

sub Teleport {
    my $popup = defined $_[0] ? $_[0] : 0;
    if ($popup == 0) {
        my $text = plugin::val('text');
        my %zh = plugin::ZoneHash();
        foreach my $key (sort {$a <=> $b} keys %zh) {
            if ($zh{$key}[0] == $text || $zh{$key}[1] eq $text || $zh{$key}[2] eq $text) {
                quest::popup("Confirmation Window", "Are you sure you want to teleport to the following zone?<br><font color ='#00FFFF'>$zh{$key}[2]</font>", $zh{$key}[0], 1);
            }
        }
    } else {
        quest::zone(plugin::Zone("SN", $popup));
    }
}

sub Zone {
    my %zh = plugin::ZoneHash();
    my $t = shift;
    my $z = shift;
    foreach my $k (keys %zh) {
        if ($z ~~ @{$zh{$k}}) {
            if ($t eq "ID") {
                return $zh{$k}[0];
            } elsif ($t eq "SN") {
                return $zh{$k}[1];
            } elsif ($t eq "LN") {
                return $zh{$k}[2];
            }
        }
    }
}

sub ZoneHash {
    my %zh = (1 => [1, "qeynos", "South Qeynos"],
    2 => [2, "qeynos2", "North Qeynos"],
    3 => [3, "qrg", "The Surefall Glade"],
    4 => [4, "qeytoqrg", "The Qeynos Hills"],
    5 => [5, "highpass", "Highpass Hold"],
    6 => [6, "highkeep", "High Keep"],
    7 => [8, "freportn", "North Freeport"],
    8 => [9, "freportw", "West Freeport"],
    9 => [10, "freporte", "East Freeport"],
    10 => [11, "runnyeye", "The Liberated Citadel of Runnyeye"],
    11 => [12, "qey2hh1", "The Western Plains of Karana"],
    12 => [13, "northkarana", "The Northern Plains of Karana"],
    13 => [14, "southkarana", "The Southern Plains of Karana"],
    14 => [15, "eastkarana", "Eastern Plains of Karana"],
    15 => [16, "beholder", "Gorge of King Xorbb"],
    16 => [17, "blackburrow", "Blackburrow"],
    17 => [18, "paw", "The Lair of the Splitpaw"],
    18 => [19, "rivervale", "Rivervale"],
    19 => [20, "kithicor", "Kithicor Forest"],
    20 => [21, "commons", "West Commonlands"],
    21 => [22, "ecommons", "East Commonlands"],
    22 => [23, "erudnint", "The Erudin Palace"],
    23 => [24, "erudnext", "Erudin"],
    24 => [25, "nektulos", "The Nektulos Forest"],
    25 => [25, "nektulos", "The Nektulos Forest"],
    26 => [26, "cshome", "Sunset Home"],
    27 => [27, "lavastorm", "The Lavastorm Mountains"],
    28 => [28, "nektropos", "Nektropos"],
    29 => [29, "halas", "Halas"],
    30 => [30, "everfrost", "Everfrost Peaks"],
    31 => [31, "soldunga", "Solusek's Eye"],
    32 => [32, "soldungb", "Nagafen's Lair"],
    33 => [33, "misty", "Misty Thicket"],
    34 => [34, "nro", "Northern Desert of Ro"],
    35 => [35, "sro", "Southern Desert of Ro"],
    36 => [36, "befallen", "Befallen"],
    37 => [37, "oasis", "Oasis of Marr"],
    38 => [38, "tox", "Toxxulia Forest"],
    39 => [39, "hole", "The Hole"],
    40 => [40, "neriaka", "Neriak - Foreign Quarter"],
    41 => [41, "neriakb", "Neriak - Commons"],
    42 => [42, "neriakc", "Neriak - 3rd Gate"],
    43 => [43, "neriakd", "Neriak Palace"],
    44 => [44, "najena", "Najena"],
    45 => [45, "qcat", "The Qeynos Aqueduct System"],
    46 => [46, "innothule", "Innothule Swamp"],
    47 => [47, "feerrott", "The Feerrott"],
    48 => [48, "cazicthule", "Accursed Temple of Cazic Thule"],
    49 => [49, "oggok", "Oggok"],
    50 => [50, "rathemtn", "The Rathe Mountains"],
    51 => [51, "lakerathe", "Lake Rathetear"],
    52 => [52, "grobb", "Grobb"],
    53 => [53, "aviak", "Aviak Village"],
    54 => [54, "gfaydark", "The Greater Faydark"],
    55 => [55, "akanon", "Ak'Anon"],
    56 => [56, "steamfont", "Steamfont Mountains"],
    57 => [57, "lfaydark", "The Lesser Faydark"],
    58 => [58, "crushbone", "Crushbone"],
    59 => [59, "mistmoore", "The Castle of Mistmoore"],
    60 => [60, "kaladima", "South Kaladim"],
    61 => [61, "felwithea", "Northern Felwithe"],
    62 => [62, "felwitheb", "Southern Felwithe"],
    63 => [63, "unrest", "The Estate of Unrest"],
    64 => [64, "kedge", "Kedge Keep"],
    65 => [65, "guktop", "The City of Guk"],
    66 => [66, "gukbottom", "The Ruins of Old Guk"],
    67 => [67, "kaladimb", "North Kaladim"],
    68 => [68, "butcher", "Butcherblock Mountains"],
    69 => [69, "oot", "Ocean of Tears"],
    70 => [70, "cauldron", "Dagnor's Cauldron"],
    71 => [71, "airplane", "The Plane of Sky"],
    72 => [72, "fearplane", "The Plane of Fear"],
    73 => [73, "permafrost", "The Permafrost Caverns"],
    74 => [74, "kerraridge", "Kerra Isle"],
    75 => [75, "paineel", "Paineel"],
    76 => [76, "hateplane", "Plane of Hate"],
    77 => [77, "arena", "The Arena"],
    78 => [78, "fieldofbone", "The Field of Bone"],
    79 => [79, "warslikswood", "The Warsliks Woods"],
    80 => [80, "soltemple", "The Temple of Solusek Ro"],
    81 => [81, "droga", "The Temple of Droga"],
    82 => [82, "cabwest", "Cabilis West"],
    83 => [83, "swampofnohope", "The Swamp of No Hope"],
    84 => [84, "firiona", "Firiona Vie"],
    85 => [85, "lakeofillomen", "Lake of Ill Omen"],
    86 => [86, "dreadlands", "The Dreadlands"],
    87 => [87, "burningwood", "The Burning Wood"],
    88 => [88, "kaesora", "Kaesora"],
    89 => [89, "sebilis", "The Ruins of Sebilis"],
    90 => [90, "citymist", "The City of Mist"],
    91 => [91, "skyfire", "The Skyfire Mountains"],
    92 => [92, "frontiermtns", "Frontier Mountains"],
    93 => [93, "overthere", "The Overthere"],
    94 => [94, "emeraldjungle", "The Emerald Jungle"],
    95 => [95, "trakanon", "Trakanon's Teeth"],
    96 => [96, "timorous", "Timorous Deep"],
    97 => [97, "kurn", "Kurn's Tower"],
    98 => [98, "erudsxing", "Erud's Crossing"],
    99 => [100, "stonebrunt", "The Stonebrunt Mountains"],
    100 => [101, "warrens", "The Warrens"],
    101 => [102, "karnor", "Karnor's Castle"],
    102 => [103, "chardok", "Chardok"],
    103 => [104, "dalnir", "The Crypt of Dalnir"],
    104 => [105, "charasis", "The Howling Stones"],
    105 => [106, "cabeast", "Cabilis East"],
    106 => [107, "nurga", "The Mines of Nurga"],
    107 => [108, "veeshan", "Veeshan's Peak"],
    108 => [109, "veksar", "Veksar"],
    109 => [110, "iceclad", "The Iceclad Ocean"],
    110 => [111, "frozenshadow", "The Tower of Frozen Shadow"],
    111 => [112, "velketor", "Velketor's Labyrinth"],
    112 => [113, "kael", "Kael Drakkel"],
    113 => [114, "skyshrine", "Skyshrine"],
    114 => [115, "thurgadina", "The City of Thurgadin"],
    115 => [116, "eastwastes", "Eastern Wastes"],
    116 => [117, "cobaltscar", "Cobaltscar"],
    117 => [118, "greatdivide", "The Great Divide"],
    118 => [119, "wakening", "The Wakening Land"],
    119 => [120, "westwastes", "The Western Wastes"],
    120 => [121, "crystal", "The Crystal Caverns"],
    121 => [123, "necropolis", "Dragon Necropolis"],
    122 => [124, "templeveeshan", "The Temple of Veeshan"],
    123 => [125, "sirens", "Siren's Grotto"],
    124 => [126, "mischiefplane", "The Plane of Mischief"],
    125 => [127, "growthplane", "The Plane of Growth"],
    126 => [128, "sleeper", "The Sleeper's Tomb"],
    127 => [129, "thurgadinb", "Icewell Keep"],
    128 => [130, "erudsxing2", "Marauders Mire"],
    129 => [150, "shadowhaven", "Shadow Haven"],
    130 => [151, "bazaar", "The Bazaar"],
    131 => [151, "bazaar", "The Bazaar"],
    132 => [152, "nexus", "Nexus"],
    133 => [153, "echo", "The Echo Caverns"],
    134 => [154, "acrylia", "The Acrylia Caverns"],
    135 => [155, "sharvahl", "The City of Shar Vahl"],
    136 => [156, "paludal", "The Paludal Caverns"],
    137 => [157, "fungusgrove", "The Fungus Grove"],
    138 => [158, "vexthal", "Vex Thal"],
    139 => [159, "sseru", "Sanctus Seru"],
    140 => [160, "katta", "Katta Castellum"],
    141 => [161, "netherbian", "Netherbian Lair"],
    142 => [162, "ssratemple", "Ssraeshza Temple"],
    143 => [163, "griegsend", "Grieg's End"],
    144 => [164, "thedeep", "The Deep"],
    145 => [165, "shadeweaver", "Shadeweaver's Thicket"],
    146 => [166, "hollowshade", "Hollowshade Moor"],
    147 => [167, "grimling", "Grimling Forest"],
    148 => [168, "mseru", "Marus Seru"],
    149 => [169, "letalis", "Mons Letalis"],
    150 => [170, "twilight", "The Twilight Sea"],
    151 => [171, "thegrey", "The Grey"],
    152 => [172, "tenebrous", "The Tenebrous Mountains"],
    153 => [173, "maiden", "The Maiden's Eye"],
    154 => [174, "dawnshroud", "The Dawnshroud Peaks"],
    155 => [175, "scarlet", "The Scarlet Desert"],
    156 => [176, "umbral", "The Umbral Plains"],
    157 => [179, "akheva", "The Akheva Ruins"],
    158 => [180, "arena2", "The Arena Two"],
    159 => [181, "jaggedpine", "The Jaggedpine Forest"],
    160 => [182, "nedaria", "Nedaria's Landing"],
    161 => [183, "tutorial", "EverQuest Tutorial"],
    162 => [184, "load", "Loading Zone"],
    163 => [185, "load2", "New Loading Zone"],
    164 => [186, "hateplaneb", "The Plane of Hate"],
    165 => [187, "shadowrest", "Shadowrest"],
    166 => [188, "tutoriala", "The Mines of Gloomingdeep"],
    167 => [189, "tutorialb", "The Mines of Gloomingdeep"],
    168 => [190, "clz", "Loading"],
    169 => [200, "codecay", "The Crypt of Decay"],
    170 => [201, "pojustice", "The Plane of Justice"],
    171 => [202, "poknowledge", "The Plane of Knowledge"],
    172 => [203, "potranquility", "The Plane of Tranquility"],
    173 => [204, "ponightmare", "The Plane of Nightmares"],
    174 => [205, "podisease", "The Plane of Disease"],
    175 => [206, "poinnovation", "The Plane of Innovation"],
    176 => [207, "potorment", "Torment, the Plane of Pain"],
    177 => [208, "povalor", "The Plane of Valor"],
    178 => [209, "bothunder", "Bastion of Thunder"],
    179 => [210, "postorms", "The Plane of Storms"],
    180 => [211, "hohonora", "The Halls of Honor"],
    181 => [212, "solrotower", "The Tower of Solusek Ro"],
    182 => [213, "powar", "Plane of War"],
    183 => [214, "potactics", "Drunder, the Fortress of Zek"],
    184 => [215, "poair", "The Plane of Air"],
    185 => [216, "powater", "The Plane of Water"],
    186 => [217, "pofire", "The Plane of Fire"],
    187 => [218, "poeartha", "The Plane of Earth"],
    188 => [219, "potimea", "The Plane of Time"],
    189 => [220, "hohonorb", "The Temple of Marr"],
    190 => [221, "nightmareb", "The Lair of Terris Thule"],
    191 => [222, "poearthb", "The Plane of Earth"],
    192 => [223, "potimeb", "The Plane of Time"],
    193 => [224, "gunthak", "The Gulf of Gunthak"],
    194 => [225, "dulak", "Dulak's Harbor"],
    195 => [226, "torgiran", "The Torgiran Mines"],
    196 => [227, "nadox", "The Crypt of Nadox"],
    197 => [228, "hatesfury", "Hate's Fury"],
    198 => [229, "guka", "Deepest Guk: Cauldron of Lost Souls"],
    199 => [230, "ruja", "The Rujarkian Hills: Bloodied Quarries"],
    200 => [231, "taka", "Takish-Hiz: Sunken Library"],
    201 => [232, "mira", "Miragul's Menagerie: Silent Gallery"],
    202 => [233, "mmca", "Mistmoore's Catacombs: Forlorn Caverns"],
    203 => [234, "gukb", "The Drowning Crypt"],
    204 => [235, "rujb", "The Rujarkian Hills: Halls of War"],
    205 => [236, "takb", "Takish-Hiz: Shifting Tower"],
    206 => [237, "mirb", "Miragul's Menagerie: Frozen Nightmare"],
    207 => [238, "mmcb", "Mistmoore's Catacombs: Dreary Grotto"],
    208 => [239, "gukc", "Deepest Guk: Ancient Aqueducts"],
    209 => [240, "rujc", "The Rujarkian Hills: Wind Bridges"],
    210 => [241, "takc", "Takish-Hiz: Fading Temple"],
    211 => [242, "mirc", "The Spider Den"],
    212 => [243, "mmcc", "Mistmoore's Catacombs: Struggles within the Progeny"],
    213 => [244, "gukd", "The Mushroom Grove"],
    214 => [245, "rujd", "The Rujarkian Hills: Prison Break"],
    215 => [246, "takd", "Takish-Hiz: Royal Observatory"],
    216 => [247, "mird", "Miragul's Menagerie: Hushed Banquet"],
    217 => [248, "mmcd", "Mistmoore's Catacombs: Chambers of Eternal Affliction"],
    218 => [249, "guke", "Deepest Guk: The Curse Reborn"],
    219 => [250, "ruje", "The Rujarkian Hills: Drudge Hollows"],
    220 => [251, "take", "Takish-Hiz: River of Recollection"],
    221 => [252, "mire", "The Frosted Halls"],
    222 => [253, "mmce", "Mistmoore's Catacombs: Sepulcher of the Damned"],
    223 => [254, "gukf", "Deepest Guk: Chapel of the Witnesses"],
    224 => [255, "rujf", "The Rujarkian Hills: Fortified Lair of the Taskmasters"],
    225 => [256, "takf", "Takish-Hiz: Sandfall Corridors"],
    226 => [257, "mirf", "The Forgotten Wastes"],
    227 => [258, "mmcf", "Mistmoore's Catacombs: Scion Lair of Fury"],
    228 => [259, "gukg", "The Root Garden"],
    229 => [260, "rujg", "The Rujarkian Hills: Hidden Vale of Deceit"],
    230 => [261, "takg", "Takish-Hiz: Balancing Chamber"],
    231 => [262, "mirg", "Miragul's Menagerie: Heart of the Menagerie"],
    232 => [263, "mmcg", "Mistmoore's Catacombs: Cesspits of Putrescence"],
    233 => [264, "gukh", "Deepest Guk: Accursed Sanctuary"],
    234 => [265, "rujh", "The Rujarkian Hills: Blazing Forge "],
    235 => [266, "takh", "Takish-Hiz: Sweeping Tides"],
    236 => [267, "mirh", "The Morbid Laboratory"],
    237 => [268, "mmch", "Mistmoore's Catacombs: Aisles of Blood"],
    238 => [269, "ruji", "The Rujarkian Hills: Arena of Chance"],
    239 => [270, "taki", "Takish-Hiz: Antiquated Palace"],
    240 => [271, "miri", "The Theater of Imprisoned Horror"],
    241 => [272, "mmci", "Mistmoore's Catacombs: Halls of Sanguinary Rites"],
    242 => [273, "rujj", "The Rujarkian Hills: Barracks of War"],
    243 => [274, "takj", "Takish-Hiz: Prismatic Corridors"],
    244 => [275, "mirj", "Miragul's Menagerie: Grand Library"],
    245 => [276, "mmcj", "Mistmoore's Catacombs: Infernal Sanctuary"],
    246 => [277, "chardokb", "Chardok: The Halls of Betrayal"],
    247 => [278, "soldungc", "The Caverns of Exile"],
    248 => [279, "abysmal", "The Abysmal Sea"],
    249 => [280, "natimbi", "Natimbi, the Broken Shores"],
    250 => [281, "qinimi", "Qinimi, Court of Nihilia"],
    251 => [282, "riwwi", "Riwwi, Coliseum of Games"],
    252 => [283, "barindu", "Barindu, Hanging Gardens"],
    253 => [284, "ferubi", "Ferubi, Forgotten Temple of Taelosia"],
    254 => [285, "snpool", "Sewers of Nihilia, Pool of Sludg"],
    255 => [286, "snlair", "Sewers of Nihilia, Lair of Trapp"],
    256 => [287, "snplant", "Sewers of Nihilia, Purifying Pla"],
    257 => [288, "sncrematory", "Sewers of Nihilia, Emanating Cre"],
    258 => [289, "tipt", "Tipt, Treacherous Crags"],
    259 => [290, "vxed", "Vxed, the Crumbling Caverns"],
    260 => [291, "yxtta", "Yxtta, Pulpit of Exiles "],
    261 => [292, "uqua", "Uqua, the Ocean God Chantry"],
    262 => [293, "kodtaz", "Kod'Taz, Broken Trial Grounds"],
    263 => [294, "ikkinz", "Ikkinz, Chambers of Transcendence"],
    264 => [295, "qvic", "Qvic, Prayer Grounds of Calling"],
    265 => [296, "inktuta", "Inktu'Ta, the Unmasked Chapel"],
    266 => [297, "txevu", "Txevu, Lair of the Elite"],
    267 => [298, "tacvi", "Tacvi, The Broken Temple"],
    268 => [299, "qvicb", "Qvic, the Hidden Vault"],
    269 => [300, "wallofslaughter", "Wall of Slaughter"],
    270 => [301, "bloodfields", "The Bloodfields"],
    271 => [302, "draniksscar", "Dranik's Scar"],
    272 => [303, "causeway", "Nobles' Causeway"],
    273 => [304, "chambersa", "Muramite Proving Grounds"],
    274 => [305, "chambersb", "Muramite Proving Grounds"],
    275 => [306, "chambersc", "Muramite Proving Grounds"],
    276 => [307, "chambersd", "Muramite Proving Grounds"],
    277 => [308, "chamberse", "Muramite Proving Grounds"],
    278 => [309, "chambersf", "Muramite Proving Grounds"],
    279 => [316, "provinggrounds", "Muramite Provinggrounds"],
    280 => [317, "anguish", "Anguish, the Fallen Palace"],
    281 => [318, "dranikhollowsa", "Dranik's Hollows"],
    282 => [319, "dranikhollowsb", "Dranik's Hollows"],
    283 => [320, "dranikhollowsc", "Dranik's Hollows"],
    284 => [328, "dranikcatacombsa", "Catacombs of Dranik"],
    285 => [329, "dranikcatacombsb", "Catacombs of Dranik"],
    286 => [330, "dranikcatacombsc", "Catacombs of Dranik"],
    287 => [331, "draniksewersa", "Sewers of Dranik"],
    288 => [332, "draniksewersb", "Sewers of Dranik"],
    289 => [333, "draniksewersc", "Sewers of Dranik"],
    290 => [334, "riftseekers", "Riftseekers' Sanctum"],
    291 => [335, "harbingers", "Harbinger's Spire"],
    292 => [336, "dranik", "The Ruined City of Dranik"],
    293 => [337, "broodlands", "The Broodlands"],
    294 => [338, "stillmoona", "Stillmoon Temple"],
    295 => [339, "stillmoonb", "The Ascent"],
    296 => [340, "thundercrest", "Thundercrest Isles"],
    297 => [341, "delvea", "Lavaspinner's Lair"],
    298 => [342, "delveb", "Tirranun's Delve"],
    299 => [343, "thenest", "The Nest"],
    300 => [344, "guildlobby", "Guild Lobby"],
    301 => [345, "guildhall", "Guild Hall"],
    302 => [346, "barter", "The Barter Hall"],
    303 => [347, "illsalin", "Ruins of Illsalin"],
    304 => [348, "illsalina", "Illsalin Marketplace"],
    305 => [349, "illsalinb", "Temple of Korlach"],
    306 => [350, "illsalinc", "The Nargil Pits"],
    307 => [351, "dreadspire", "Dreadspire Keep"],
    308 => [354, "drachnidhive", "The Hive"],
    309 => [355, "drachnidhivea", "The Hatchery"],
    310 => [356, "drachnidhiveb", "The Cocoons"],
    311 => [357, "drachnidhivec", "Queen Sendaii`s Lair"],
    312 => [358, "westkorlach", "Stoneroot Falls"],
    313 => [359, "westkorlacha", "Prince's Manor"],
    314 => [360, "westkorlachb", "Caverns of the Lost"],
    315 => [361, "westkorlachc", "Lair of the Korlach"],
    316 => [362, "eastkorlach", "The Undershore"],
    317 => [363, "eastkorlacha", "Snarlstone Dens"],
    318 => [364, "shadowspine", "Shadow Spine"],
    319 => [365, "corathus", "Corathus Creep"],
    320 => [366, "corathusa", "Sporali Caverns"],
    321 => [367, "corathusb", "The Corathus Mines"],
    322 => [368, "nektulosa", "Shadowed Grove"],
    323 => [369, "arcstone", "Arcstone, Isle of Spirits"],
    324 => [370, "relic", "Relic, the Artifact City"],
    325 => [371, "skylance", "Skylance"],
    326 => [372, "devastation", "The Devastation"],
    327 => [373, "devastationa", "The Seething Wall"],
    328 => [374, "rage", "Sverag, Stronghold of Rage"],
    329 => [375, "ragea", "Razorthorn, Tower of Sullon Zek"],
    330 => [376, "takishruins", "Ruins of Takish-Hiz"],
    331 => [377, "takishruinsa", "The Root of Ro"],
    332 => [378, "elddar", "The Elddar Forest"],
    333 => [379, "elddara", "Tunare's Shrine"],
    334 => [380, "theater", "Theater of Blood"],
    335 => [381, "theatera", "Deathknell, Tower of Dissonance"],
    336 => [382, "freeporteast", "East Freeport"],
    337 => [383, "freeportwest", "West Freeport"],
    338 => [384, "freeportsewers", "Freeport Sewers"],
    339 => [385, "freeportacademy", "Academy of Arcane Sciences"],
    340 => [386, "freeporttemple", "Temple of Marr"],
    341 => [387, "freeportmilitia", "Freeport Militia House: My Precious"],
    342 => [388, "freeportarena", "Arena"],
    343 => [389, "freeportcityhall", "City Hall"],
    344 => [390, "freeporttheater", "Theater of the Tranquil"],
    345 => [391, "freeporthall", "Hall of Truth: Bounty"],
    346 => [392, "northro", "North Desert of Ro"],
    347 => [393, "southro", "South Desert of Ro"],
    348 => [394, "crescent", "Crescent Reach"],
    349 => [395, "moors", "Blightfire Moors"],
    350 => [396, "stonehive", "Stone Hive"],
    351 => [397, "mesa", "Goru`kar Mesa"],
    352 => [398, "roost", "Blackfeather Roost"],
    353 => [399, "steppes", "The Steppes"],
    354 => [400, "icefall", "Icefall Glacier"],
    355 => [401, "valdeholm", "Valdeholm"],
    356 => [402, "frostcrypt", "Frostcrypt, Throne of the Shade King"],
    357 => [403, "sunderock", "Sunderock Springs"],
    358 => [404, "vergalid", "Vergalid Mines"],
    359 => [405, "direwind", "Direwind Cliffs"],
    360 => [406, "ashengate", "Ashengate, Reliquary of the Scale"],
    361 => [407, "highpasshold", "Highpass Hold"],
    362 => [408, "commonlands", "The Commonlands"],
    363 => [409, "oceanoftears", "The Ocean of Tears"],
    364 => [410, "kithforest", "Kithicor Forest"],
    365 => [411, "befallenb", "Befallen"],
    366 => [412, "highpasskeep", "HighKeep"],
    367 => [413, "innothuleb", "The Innothule Swamp"],
    368 => [414, "toxxulia", "Toxxulia Forest"],
    369 => [415, "mistythicket", "The Misty Thicket"],
    370 => [416, "kattacastrum", "Katta Castrum"],
    371 => [417, "thalassius", "Thalassius, the Coral Keep"],
    372 => [418, "atiiki", "Jewel of Atiiki"],
    373 => [419, "zhisza", "Zhisza, the Shissar Sanctuary"],
    374 => [420, "silyssar", "Silyssar, New Chelsith"],
    375 => [421, "solteris", "Solteris, the Throne of Ro"],
    376 => [422, "barren", "Barren Coast"],
    377 => [423, "buriedsea", "The Buried Sea"],
    378 => [424, "jardelshook", "Jardel's Hook"],
    379 => [425, "monkeyrock", "Monkey Rock"],
    380 => [426, "suncrest", "Suncrest Isle"],
    381 => [427, "deadbone", "Deadbone Reef"],
    382 => [428, "blacksail", "Blacksail Folly"],
    383 => [429, "maidensgrave", "Maiden's Grave"],
    384 => [430, "redfeather", "Redfeather Isle"],
    385 => [431, "shipmvp", "The Open Sea"],
    386 => [432, "shipmvu", "The Open Sea"],
    387 => [433, "shippvu", "The Open Sea"],
    388 => [434, "shipuvu", "The Open Sea"],
    389 => [435, "shipmvm", "The Open Sea"],
    390 => [436, "mechanotus", "Fortress Mechanotus"],
    391 => [437, "mansion", "Meldrath's Majestic Mansion"],
    392 => [438, "steamfactory", "The Steam Factory"],
    393 => [439, "shipworkshop", "S.H.I.P. Workshop"],
    394 => [440, "gyrospireb", "Gyrospire Beza"],
    395 => [441, "gyrospirez", "Gyrospire Zeka"],
    396 => [442, "dragonscale", "Dragonscale Hills"],
    397 => [443, "lopingplains", "Loping Plains"],
    398 => [444, "hillsofshade", "Hills of Shade"],
    399 => [445, "bloodmoon", "Bloodmoon Keep"],
    400 => [446, "crystallos", "Crystallos, Lair of the Awakened"],
    401 => [447, "guardian", "The Mechamatic Guardian"],
    402 => [448, "steamfontmts", "The Steamfont Mountains"],
    403 => [449, "cryptofshade", "Crypt of Shade"],
    404 => [451, "dragonscaleb", "Deepscar's Den"],
    405 => [452, "oldfieldofbone", "Field of Scale"],
    406 => [453, "oldkaesoraa", "Kaesora Library"],
    407 => [454, "oldkaesorab", "Kaesora Hatchery"],
    408 => [455, "oldkurn", "Kurn's Tower"],
    409 => [456, "oldkithicor", "Bloody Kithicor"],
    410 => [457, "oldcommons", "Old Commonlands"],
    411 => [458, "oldhighpass", "Highpass Hold"],
    412 => [459, "thevoida", "The Void"],
    413 => [460, "thevoidb", "The Void"],
    414 => [461, "thevoidc", "The Void"],
    415 => [462, "thevoidd", "The Void"],
    416 => [463, "thevoide", "The Void"],
    417 => [464, "thevoidf", "The Void"],
    418 => [465, "thevoidg", "The Void"],
    419 => [466, "oceangreenhills", "Oceangreen Hills"],
    420 => [467, "oceangreenvillage", "Oceangreen Village"],
    421 => [468, "oldblackburrow", "BlackBurrow"],
    422 => [469, "bertoxtemple", "Temple of Bertoxxulous"],
    423 => [470, "discord", "Korafax, Home of the Riders"],
    424 => [471, "discordtower", "Citadel of the Worldslayer"],
    425 => [472, "oldbloodfield", "Old Bloodfields"],
    426 => [473, "precipiceofwar", "The Precipice of War"],
    427 => [474, "olddranik", "City of Dranik"],
    428 => [475, "toskirakk", "Toskirakk"],
    429 => [476, "korascian", "Korascian Warrens"],
    430 => [477, "rathechamber", "Rathe Council Chamber"],
    431 => [480, "brellsrest", "Brell's Rest"],
    432 => [481, "fungalforest", "Fungal Forest"],
    433 => [482, "underquarry", "The Underquarry"],
    434 => [483, "coolingchamber", "The Cooling Chamber"],
    435 => [484, "shiningcity", "Kernagir, the Shining City"],
    436 => [485, "arthicrex", "Arthicrex"],
    437 => [486, "foundation", "The Foundation"],
    438 => [487, "lichencreep", "Lichen Creep"],
    439 => [488, "pellucid", "Pellucid Grotto"],
    440 => [489, "stonesnake", "Volska's Husk"],
    441 => [490, "brellstemple", "Brell's Temple"],
    442 => [491, "convorteum", "The Convorteum"],
    443 => [492, "brellsarena", "Brell's Arena"],
    444 => [493, "weddingchapel", "Wedding Chapel"],
    445 => [494, "weddingchapeldark", "Wedding Chapel"],
    446 => [495, "dragoncrypt", "Lair of the Risen"],
    447 => [700, "feerrott2", "The Feerrott"],
    448 => [701, "thulehouse1", "House of Thule"],
    449 => [702, "thulehouse2", "House of Thule, Upper Floors"],
    450 => [703, "housegarden", "The Grounds"],
    451 => [704, "thulelibrary", "The Library"],
    452 => [705, "well", "The Well"],
    453 => [706, "fallen", "Erudin Burning"],
    454 => [707, "morellcastle", "Morell's Castle"],
    455 => [708, "somnium", "Sanctum Somnium"],
    456 => [709, "alkabormare", "Al'Kabor's Nightmare"],
    457 => [710, "miragulmare", "Miragul's Nightmare"],
    458 => [711, "thuledream", "Fear Itself"],
    459 => [712, "neighborhood", "Sunrise Hills"],
    460 => [724, "argath", "Argath, Bastion of Illdaera"],
    461 => [725, "arelis", "Valley of Lunanyn"],
    462 => [726, "sarithcity", "Sarith, City of Tides"],
    463 => [727, "rubak", "Rubak Oseka, Temple of the Sea"],
    464 => [728, "beastdomain", "Beasts' Domain"],
    465 => [729, "resplendent", "The Resplendent Temple"],
    466 => [730, "pillarsalra", "Pillars of Alra"],
    467 => [731, "windsong", "Windsong Sanctuary"],
    468 => [732, "cityofbronze", "Erillion, City of Bronze"],
    469 => [733, "sepulcher", "Sepulcher of Order"],
    470 => [734, "eastsepulcher", "Sepulcher East"],
    471 => [735, "westsepulcher", "Sepulcher West"],
    472 => [752, "shardslanding", "Shard's Landing"],
    473 => [753, "xorbb", "Valley of King Xorbb"],
    474 => [754, "kaelshard", "Kael Drakkel: The King's Madness"],
    475 => [755, "eastwastesshard", "East Wastes: Zeixshi-Kar's Awakening"],
    476 => [756, "crystalshard", "The Crystal Caverns: Fragment of Fear"],
    477 => [757, "breedinggrounds", "The Breeding Grounds"],
    478 => [758, "eviltree", "Evantil, the Vile Oak"],
    479 => [759, "grelleth", "Grelleth's Palace, the Chateau of Filth"],
    480 => [760, "chapterhouse", "Chapterhouse of the Fallen"],
    481 => [996, "arttest", "Art Testing Domain"],
    482 => [998, "fhalls", "The Forgotten Halls"],
    483 => [999, "apprentice", "Designer Apprentice"]);
    return %zh;
}

return 1;
Reply With Quote
  #13  
Old 10-06-2015, 06:18 PM
Kingly_Krab
Administrator
 
Join Date: May 2013
Location: United States
Posts: 1,595
Default

Expansion of plugin::check_hasitem to have array capability (checks for at least one of the items in the array) as well as the ability to check if someone has a certain item or any item in an array of items equipped:
Code:
sub check_hasitem {
    my $client = shift;
    my $itemid = shift;
    my @slots = (0..30, 251..340, 2000..2023, 2030..2270, 2500..2501, 2531..2550, 9999);
    foreach $slot (@slots) {
        if ($client->GetItemIDAt($slot) == $itemid) {
            return 1;
        }

        for ($i = 0; $i < 5; $i++) {
            if ($client->GetAugmentIDAt($slot, $i) == $itemid) {
                return 1;
            }
        }
    }
    return 0;
}

sub check_hasitem_array {
    my $client = shift;
    my @items = @_;
    my @slots = (0..30, 251..340, 2000..2023, 2030..2270, 2500..2501, 2531..2550, 9999);
    foreach $slot (@slots) {
        if ($client->GetItemIDAt($slot) ~~ @items) {
            return 1;
        }

        for ($i = 0; $i < 5; $i++) {
            if ($client->GetAugmentIDAt($slot, $i) ~~ @items) {
                return 1;
            }
        }
    }
    return 0;
}

sub check_hasequipped {
    my $client = shift;
    my $item = shift;
    my @slots = (0..21, 9999);
    foreach my $slot (@slots) {
        if ($client->GetItemIDAt($slot) == $item) {
            return 1;
        }

        for ($i = 0; $i < 5; $i++) {
            if ($client->GetAugmentIDAt($slot, $i) == $item) {
                return 1;
            }
        }
    }
}

sub check_hasequipped_array {
    my $client = shift;
    my @items = @_;
    my @slots = (0..21, 9999);
    foreach my $slot (@slots) {
        if ($client->GetItemIDAt($slot) ~~ @items) {
            return 1;
        }

        for ($i = 0; $i < 5; $i++) {
            if ($client->GetAugmentIDAt($slot, $i) ~~ @items) {
                return 1;
            }
        }
    }
}

return 1;

Last edited by Kingly_Krab; 10-06-2015 at 06:25 PM..
Reply With Quote
  #14  
Old 10-08-2015, 01:22 PM
chrsschb's Avatar
chrsschb
Dragon
 
Join Date: Nov 2008
Location: GA
Posts: 904
Default

So I had an idea, maybe one of you wizards can tell me if it's possible.

Basically I want to have a buff applied to a player when they equip an item and I want the buff to fade if they take the weapon off.
__________________
Clumsy's World: Resurgence [2019-Present]
Clumsy's World 2.0 [2014-2016]
Clumsy's World [2006-2012]
Reply With Quote
  #15  
Old 10-08-2015, 01:46 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

Like... a worn effect? :P
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 10:16 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3