Code Monkey home page Code Monkey logo

scriptdev2-classic's Introduction

== ScriptDev2 README ==

  This file is part of the ScriptDev2 Project. See AUTHORS file for Copyright information
  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

== Welcome to ScriptDev2 ==

ScriptDev2 is a script library, an extention of the scripting capabilities
that comes with MaNGOS ( http://www.getmangos.com ), written in C++ and is
compatible with Windows and Linux. SQL needed for database support both
MySQL and PostgreSQL.

This script library provides unique scripts for NPCs, gameobjects, events
and other that need unique implementation.

Once ScriptDev2 is compiled it is automatically run by MaNGOS on server
startup.

For further information on ScriptDev2, please visit our project web site
at http://www.scriptdev2.com/

Documentation on various development related topics can be found in the
../doc/ sub directory as well as on the web site.

The required SQL files for creating the database backend are included in
the ../sql/ sub directory. If you are updating from an older ScriptDev2
version, make sure to take a look at the SQL files provided in the
../sql/updates/ sub directory.

scriptdev2-classic's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scriptdev2-classic's Issues

[Request[ Meetingstone System

I saw this patch staying on mangos forum for months

[code]
diff --git a/src/game/LFGHandler.cpp b/src/game/LFGHandler.cpp
new file mode 100755
index 0000000..0a0ca41
--- /dev/null
+++ b/src/game/LFGHandler.cpp
@@ -0,0 +1,111 @@
+/*

  • * Copyright (C) 2005-2012 MaNGOS http://getmangos.com/
  • * This program is free software; you can redistribute it and/or modify
  • * it under the terms of the GNU General Public License as published by
  • * the Free Software Foundation; either version 2 of the License, or
  • * (at your option) any later version.
  • * This program is distributed in the hope that it will be useful,
  • * but WITHOUT ANY WARRANTY; without even the implied warranty of
  • * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  • * GNU General Public License for more details.
  • * You should have received a copy of the GNU General Public License
  • * along with this program; if not, write to the Free Software
  • * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  • */
    +
    +#include "Common.h"
    +#include "WorldPacket.h"
    +#include "Opcodes.h"
    +#include "Log.h"
    +#include "Player.h"
    +#include "ObjectMgr.h"
    +#include "WorldSession.h"
    +#include "Object.h"
    +#include "Chat.h"
    +#include "Language.h"
    +#include "ScriptMgr.h"
    +#include "World.h"
    +#include "Group.h"
    +#include "LFGHandler.h"
    +
    +void WorldSession::HandleMeetingStoneJoinOpcode(WorldPacket & recv_data)
    +{
  • ObjectGuid guid;
  • recv_data >> guid;
  • DEBUG_LOG("WORLD: Recvd CMSG_MEETINGSTONE_JOIN Message guid: %s", guid.GetString().c_str());
  • // ignore for remote control state
  • if (!_player->IsSelfMover())
  •    return;
    
  • GameObject *obj = GetPlayer()->GetMap()->GetGameObject(guid);
  • if (!obj)
  •    return;
    
  • // Never expect this opcode for some type GO's
  • if (obj->GetGoType() != GAMEOBJECT_TYPE_MEETINGSTONE)
  • {
  •    sLog.outError("HandleMeetingStoneJoinOpcode: CMSG_MEETINGSTONE_JOIN for not allowed GameObject type %u (Entry %u), didn't expect this to happen.", obj->GetGoType(), obj->GetEntry());
    
  •    return;
    
  • }
  • if (Group *grp = _player->GetGroup())
  • {
  •    if(!grp->IsLeader(_player->GetGUID()))
    
  •    {
    
  •        SendMeetingstoneFailed(MEETINGSTONE_FAIL_PARTYLEADER);
    
  •        obj->Use(_player);
    
  •        return;
    
  •    }
    
  •    if(grp->isRaidGroup())
    
  •    {
    
  •        SendMeetingstoneFailed(MEETINGSTONE_FAIL_RAID_GROUP);
    
  •        obj->Use(_player);
    
  •        return;
    
  •    }
    
  •    if(grp->IsFull())
    
  •    {
    
  •        SendMeetingstoneFailed(MEETINGSTONE_FAIL_FULL_GROUP);
    
  •        obj->Use(_player);
    
  •        return;
    
  •    }
    
  • }
  • GameObjectInfo const *gInfo = ObjectMgr::GetGameObjectInfo(obj->GetEntry());
  • SendMeetingstoneSetqueue(gInfo->meetingstone.areaID, MEETINGSTONE_STATUS_JOINED_QUEUE);
  • obj->Use(_player);
    +}

+void WorldSession::HandleMeetingStoneLeaveOpcode(WorldPacket & recv_data)
+{

  • DEBUG_LOG("WORLD: Recvd CMSG_MEETINGSTONE_LEAVE");
  • SendMeetingstoneSetqueue(0, MEETINGSTONE_STATUS_NONE);
    +}

+void WorldSession::SendMeetingstoneFailed(uint8 status)
+{

  • WorldPacket data(SMSG_MEETINGSTONE_JOINFAILED, 1);
  • data << uint8(status);
  • SendPacket(&data);
    +}

+void WorldSession::SendMeetingstoneSetqueue(uint32 areaid, uint8 status)
+{

  • WorldPacket data(SMSG_MEETINGSTONE_SETQUEUE, 5);
  • data << uint32(areaid);
  • data << uint8(status);
  • SendPacket(&data);
    +}
    diff --git a/src/game/LFGHandler.h b/src/game/LFGHandler.h
    new file mode 100755
    index 0000000..b10c0de
    --- /dev/null
    +++ b/src/game/LFGHandler.h
    @@ -0,0 +1,41 @@
    +/*
  • * Copyright (C) 2005-2012 MaNGOS http://getmangos.com/
  • * This program is free software; you can redistribute it and/or modify
  • * it under the terms of the GNU General Public License as published by
  • * the Free Software Foundation; either version 2 of the License, or
  • * (at your option) any later version.
  • * This program is distributed in the hope that it will be useful,
  • * but WITHOUT ANY WARRANTY; without even the implied warranty of
  • * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  • * GNU General Public License for more details.
  • * You should have received a copy of the GNU General Public License
  • * along with this program; if not, write to the Free Software
  • * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  • */
    +
    +#ifndef MANGOSSERVER_LFGHANDLER_H
    +#define MANGOSSERVER_LFGHANDLER_H
    +
    +enum MeetingstoneQueueStatus
    +{
  • MEETINGSTONE_STATUS_NONE = 0,
  • MEETINGSTONE_STATUS_JOINED_QUEUE = 1,
  • MEETINGSTONE_STATUS_PARTY_MEMBER_LEFT_LFG = 2,
  • MEETINGSTONE_STATUS_PARTY_MEMBER_REMOVED_PARTY_REMOVED = 3,
  • MEETINGSTONE_STATUS_LOOKING_FOR_NEW_PARTY_IN_QUEUE = 4,
  • MEETINGSTONE_STATUS_NONE_UNK = 5
    +};

+enum MeetingstoneFailedStatus
+{

  • MEETINGSTONE_FAIL_NONE = 0,
  • MEETINGSTONE_FAIL_PARTYLEADER = 1,
  • MEETINGSTONE_FAIL_FULL_GROUP = 2,
  • MEETINGSTONE_FAIL_RAID_GROUP = 3,
  • MEETINGSTONE_FAIL_NONE_UNK = 4
    +};

+#endif
\ No newline at end of file
diff --git a/src/game/Opcodes.cpp b/src/game/Opcodes.cpp
index 28b4b2d..9c8ed2b 100644
--- a/src/game/Opcodes.cpp
+++ b/src/game/Opcodes.cpp
@@ -707,7 +707,7 @@ void Opcodes::BuildOpcodeList()
/0x290/ StoreOpcode(CMSG_BUYBACK_ITEM, "CMSG_BUYBACK_ITEM", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleBuybackItem);
/_[-ZERO] Need check /0x291/ StoreOpcode(SMSG_SERVER_MESSAGE, "SMSG_SERVER_MESSAGE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide);
/_0x292*/ StoreOpcode(CMSG_MEETINGSTONE_JOIN, "CMSG_MEETINGSTONE_JOIN", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMeetingStoneJoinOpcode);

  • /0x293/ StoreOpcode(CMSG_MEETINGSTONE_LEAVE, "CMSG_MEETINGSTONE_LEAVE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL);
  • /0x293/ StoreOpcode(CMSG_MEETINGSTONE_LEAVE, "CMSG_MEETINGSTONE_LEAVE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMeetingStoneLeaveOpcode);
    /0x294/ StoreOpcode(CMSG_MEETINGSTONE_CHEAT, "CMSG_MEETINGSTONE_CHEAT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL);
    /[-ZERO] Need check /0x295/ StoreOpcode(SMSG_MEETINGSTONE_SETQUEUE, "SMSG_MEETINGSTONE_SETQUEUE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide);
    /
    [-ZERO] Need check /0x296/ StoreOpcode(CMSG_MEETINGSTONE_INFO, "CMSG_MEETINGSTONE_INFO", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMeetingStoneInfoOpcode);
    diff --git a/src/game/SpellHandler.cpp b/src/game/SpellHandler.cpp
    index aa535db..8e61798 100644
    --- a/src/game/SpellHandler.cpp
    +++ b/src/game/SpellHandler.cpp
    @@ -278,32 +278,6 @@ void WorldSession::HandleGameObjectUseOpcode(WorldPacket & recv_data)
    obj->Use(_player);
    }

-void WorldSession::HandleMeetingStoneJoinOpcode(WorldPacket & recv_data)
-{

- ObjectGuid guid;

- recv_data >> guid;

- DEBUG_LOG("WORLD: Recvd CMSG_MEETINGSTONE_JOIN Message guid: %s", guid.GetString().c_str());

  • // ignore for remote control state
  • if (!_player->IsSelfMover())

- return;

  • GameObject *obj = GetPlayer()->GetMap()->GetGameObject(guid);
  • if (!obj)

- return;

  • // Never expect this opcode for some type GO's
  • if (obj->GetGoType() != GAMEOBJECT_TYPE_MEETINGSTONE)
  • {
  •    sLog.outError("HandleMeetingStoneJoinOpcode: CMSG_MEETINGSTONE_JOIN for not allowed GameObject type %u (Entry %u), didn't expect this to happen.", obj->GetGoType(), obj->GetEntry());
    
  •    return;
    

- }

  • obj->Use(_player);

-}

void WorldSession::HandleCastSpellOpcode(WorldPacket& recvPacket)
{
uint32 spellId;
diff --git a/src/game/WorldSession.h b/src/game/WorldSession.h
index 4375b9d..62faebe 100644
--- a/src/game/WorldSession.h
+++ b/src/game/WorldSession.h
@@ -252,6 +252,10 @@ public:
void SendSaveGuildEmblem(uint32 msg);
void SendBattleGroundJoinError(uint8 err);

  • // Meetingstone
  • void SendMeetingstoneFailed(uint8 status);
  • void SendMeetingstoneSetqueue(uint32 areaid, uint8 status);

void BuildPartyMemberStatsChangedPacket(Player *player, WorldPacket *data);

void DoLootRelease(ObjectGuid lguid);
@@ -365,7 +369,9 @@ public: // opcodes handlers
void HandleSetActionButtonOpcode(WorldPacket& recvPacket);

void HandleGameObjectUseOpcode(WorldPacket& recPacket);
+
void HandleMeetingStoneJoinOpcode(WorldPacket& recPacket);

  • void HandleMeetingStoneLeaveOpcode(WorldPacket& recPacket);
    void HandleMeetingStoneInfoOpcode(WorldPacket& recPacket);

void HandleNameQueryOpcode(WorldPacket& recvPacket);
diff --git a/src/game/debugcmds.cpp b/src/game/debugcmds.cpp
index dee3c24..23f9834 100644
--- a/src/game/debugcmds.cpp
+++ b/src/game/debugcmds.cpp
@@ -1098,4 +1098,4 @@ bool ChatHandler::HandleDebugSpellModsCommand(char* args)
chr->GetSession()->SendPacket(&data);

return true;
-}
+}
\ No newline at end of file[/code]

What is missing is Queue system.

I am posting this here so it is not losing because of MaNGOS (others) incapacity to manage a community and a project

Deeprun Rat Roundup Quest

This quest (6661) is working right up to the point of completion. However, upon completion the enthralled rats don't go to Monty, Monty doesn't do his emote and the rats don't despawn but continue to follow the player around. This was commented on the closed post about this issue in classic DB.

Quest 5721 Support

The quest The Battle of Darrowshire ID: 5721, when you place the relic bag, it doesn't do anything. I believe we need a script for this.

Quest: Cluck

in npcs_special.cpp, the following code doesn't seem to work. Unless my luck is just really really bad, tried about 250+ times :0

Does the random even work?

Also you can skip the whole /chicken part, by just saying /cheer to the chicken which isn't correct. So we need a check on TEXTEMOTE_CHEER to make sure the target is friendly.

if (uiEmote == TEXTEMOTE_CHICKEN)
    {
        if (!urand(0, 29))
        {
            if (pPlayer->GetQuestStatus(QUEST_CLUCK) == QUEST_STATUS_NONE)
            {
                m_creature->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);
                m_creature->setFaction(FACTION_FRIENDLY);

                DoScriptText(EMOTE_A_HELLO, m_creature);

                /* are there any difference in texts, after 3.x ?
                if (pPlayer->GetTeam() == HORDE)
                    DoScriptText(EMOTE_H_HELLO, m_creature);
                else
                    DoScriptText(EMOTE_A_HELLO, m_creature);
                */
            }
        }
    }

Source: http://www.wowwiki.com/Quest:CLUCK!

Lieutenant General Andorov event crash the server

Lieutenant General Andorov event crashes the server. Lieutenant General Andorov does not attack any mobs.

How to reproduce:

Start the event and kill the rows as they comes, server does at one point.

DireMaul Badly Scripted.

Current Dire maul bugs :

NPC/Event/Quest/instance script.
Immol'Thar's prison does not have the forcefield around it, therefor it is not necissary to clear the pylons/beacons.
Lord Hel'Nurath is always spawned, while he is supposed to be summoned.
Prince Tortheldrin is spawned hostile, while he is supposed to be turned hostile by talking to him or slaying Immol'Thar.
Quest: "Elven Legends" is incompletable; nothing happens when you click on the skeletal remains of Kariel Winthales
Ancient Equine Spirit should only appear after you've killed Tendris Warpwood, now you don't have to kill him, making the paladin mount quest really easy.
The treant mobs in the capital gardens should be walking around, so that you can't skip them so easily.
If you aggro Tendris Warpwood, all the Ironbark Protector mobs in the capital gardens should come and help him in the fight, so you should need to kill those first. But the aggro isn't linked now.
All the pylons in DM west are missing. (I can show you the location of these.)
"Ironbark the Redeemed" shouldn't be spawned at the Capital Gardens.
"Ironbark the Redeemed" shouldn't be hostile, he should be friendly.
Missing trap at guard Slip'Kik, in order to perform a tribute run, you would have to freeze guard Slip'Kik using that trap, thus making it able to skip him.
Missing NPC spawned after killing King Gordok; Mizzle the Crafty.
The Gordok Tribute chest is already spawned, while it is supposed to be spawned by Mizzle the Crafty. When spawned, the containments of this chest is supposed to rely on what DM north bosses you have spared on your way to the king. On VG, the contaiment is random.
Missing buff: Gordok King. This is also given to you by talking to Mizzle the Crafty.
Performing a "tribute run" is imposible due to the bugs above.
The doors in DM north don't require keys to open them.
Pussilin, the first NPC you can see when you enter Warpwood Quarter. He should be friendly at first, and you should be able to talk to him. Then he would run, and a chase would begin, leading you all the way to the end of the instance, and then, when you talk to him for the last time, he should turn hostile, spawn "Wildspawn Imps" (about 4 of them) However, he is killable from the start, making the quest: "Pusillin and the Elder Azj'Tordin" impossible to finish. Pussilin also drops the kew that opens the doors to DM west and north. (the doors that are missing)
After you've killed the boss: "Zevrim Thornhoof", "Old Ironbark" should change to "Ironbark the Redeemed" He would open the door that leads to Alzzin the Wildshaper. But the door he is supposed to open isn't there.
Isalien is supposed to be a spawned boss for a quest in the T0,5 quest chain, but she's there already.
Isalien should spawn a hostile pet "Empyrean" about 10 seconds in the fight. However, now she spawns Empyrean immediatly after she's pulled.
The class specific books to get: "Royal Seal of Eldre'Thalas" and the book: "Foror's Compendum of Dragonslaying" are supposed to drop from any boss in eather west, north or east. On this server it only drops from Guard Slip'Kik.
The Shen'Dralar mobs are attackable, they shouldn't be.

http://www.wowwiki.com/Immol'thar
http://www.wowwiki.com/Lord_Hel'nurath
http://www.wowwiki.com/Prince_Tortheldrin
http://www.wowwiki.com/Dire_Maul_tribute_run
http://www.wowwiki.com/Guard_Slip'kik
http://www.wowwiki.com/Mizzle_the_Crafty
http://www.wowwiki.com/Gordok_Courtyard_Key
http://www.wowwiki.com/Gordok_Inner_Door_Key
http://www.wowwiki.com/Pusillin
http://www.wowwiki.com/Quest:Pusillin_and_the_Elder_Azj'Tordin
http://www.wowwiki.com/Old_Ironbark
http://www.wowwiki.com/Isalien

Ridiculous, this instance is completely broken.

ZG - High Priest Thekal Bugs

Source:
http://www.wowwiki.com/High_Priest_Thekal

In SD2 he currently casts SPELL_SILENCE = 23207

Which links to this Silence: http://db.wowascension.com/?spell=23207

Should be this spell ID: http://db.wowascension.com/?spell=22666

And he also at the moment casting the Silence on himself it seems, not the player.

In SD2 he currently casts SPELL_FRENZY = 23342,

http://db.wowascension.com/?spell=23342

That spell procs a 'Fire Nova' which Thekal shouldn't do, it should probably be:

http://db.wowascension.com/?spell=26041

But this casts the 10 second silence again? But is definitely more relevant than Fire Nova.

Summon Tiger Timer -

if (DoCastSpellIfCan(m_creature, SPELL_SUMMON_TIGERS) == CAST_OK)
m_uiSummonTigersTimer = urand(10000, 14000);

This is way too fast.

Source (a pixelated YouTube video from a ZG raid!):

Tiger Wave 1: at 4:04
https://www.youtube.com/watch?v=h3ydSMjU7Bg#t=235

Tiger Wave 2: at 4:53
https://www.youtube.com/watch?v=h3ydSMjU7Bg#t=235

Tiger Wave 3: at 5:45

https://www.youtube.com/watch?v=h3ydSMjU7Bg#t=339

Tiger Wave 4: at 6:38
https://www.youtube.com/watch?v=h3ydSMjU7Bg#t=339

So should be closer to 50s not 10-14s.

Kel'thuzad

Instance: Naxxramas
NPC ID: 15990
Bug: Kelthuzad's The shadow fissure spell animation does not work.
What should happen: The Shadow fissure spell should work, wich is the "Red circle animation"
spell id: 27810 (http://db.vanillagaming.org/?spell=27810)

UBRS - Pyroguard Emberseer

Map & Area: Hall of Binding - UBRS

How to replicate the bug: use the altar to break the adds link with the Pyroguard

What happens: Once you kill the adds, Pyroguard Emberseer does not engage nor does the emotes he is gaining strength appear

What should happen: He should engage once he'll fully empowered

Extra Information: Could not get any further as the door won't open till he's killed.

/

/

Quest #7632: The Ancient Leaf

This is a famous quest from classic days which was class-specific for Hunters to obtain their epic bow, Rhok'delar, Longbow of the Ancient Keepers. Like most of the other epic item quests, it starts from an item (Ancient Petrified Leaf dropped from Majordomo Executus in Molten Core). After looting the item and starting the quest, you have to stand on a hill between the "three ancients" in the middle of Felwood and their spirits will appear and give you the subsequent quests needed for the bow:

It was recently reported on the cmangos.net forums by kallefleetwood123 (thread) that upon standing on the hill, the ancients do not appear; therefore making the quest impossible to complete in its current state.


I did some digging and confirmed that the ancients do not spawn and there are no current entries in the creatures table for them: meaning they aren't "hidden" in some way and you just can't see them. To test just loot the item on a level 60 hunter, start the quest, and then stand on the little hill between the ancients (nothing happens).

I found several sources describing how the quest should work considering the epicness of this chain from vanilla days and there is even a github bug report from some old repository describing the issue (although I'm not sure if they ever implemented a true fix for it). Here are some sources for reference:

github issue 1
github issue 2
wowhead 1
wowhead 2
blog detailing entire quest chain

Here are some choice comments from wowhead describing how the ancients "appear:"
comment 1
comment 2
comment 3

Edit: pictures of ancients' locations
pic 1
pic 2

Notes:

  • Although this is for classic core, the quest did remain active until Cataclysm; at which point it was removed completely.
  • The three ancient creature_template entries are: 14524, 14525, and 14526.
  • There are two area triggers near the little hill between the ancients: trigger 3586 and trigger 3587.
  • According to most sources, the ancients all seem to "appear" after standing on the hilltop for a few seconds.
  • I believe the ancients should only be visible to players who are on the quest or have the ancient petrified leaf item in their inventory. I'm not sure if they are still visible to players after all of the quests have been completed, however.

The subsequent demon quest also does not appear to be scripted yet , and so here is what I've discovered thus far (if you refer to the blog post listed above you will find complete details about all of the subsequent quests. It's written as a story, but is very specific and informative).

Quest #7634: Ancient Sinew Wrapped Lamina

  • This quest requires a drop from Azuregos and functions correctly.

Quest #7635: A Proper String

  • This quest requires a drop from Onyxia and functions correctly.

Quest #7636: Stave of the Ancients

  • All of the four demons are spawned in their "friendly" forms (before they transform when challenging them).
  • None of them are patrolling as they should be, they are just stationary.
  • None of them have gossip options to "challenge" them.
  • None of them are scripted. This will be quite the undertaking considering they have very unique scripts (e.g. the hunter on the quest can be the only one to attack them, they despawn if you don't finish the encounter in time, pets that also transform, "The Cleaner" -- a massively OP demon who spawns and crushes everyone if someone tries to interfere, etc).

Simone the Inconspicuous / Simone the Seductress

Franklin the Friendly / Klinfran the Crazed

Nelson the Nice / Solenor the Slayer

Artorius the Amiable / Artorius the Doombringer

Dire Maul Bugs

DISCLAIMER I dont know scripting, I've tried following the example files provided in the scriptdev2 map which didnt go too well, I've taken a class in java but that's basically it so dont expect advanced understanding of what is possible and what's not. I apologize in advance for my english which is not my first language and therefore not prefect. Thanks! :)

I ran dire maul with a friend of mine the other day on my own mangoszero server (using scriptdev2 obviously) and we came across some bugs which I thought I'd share here. (Basically bugs that makes the bosses undoable/wierd)

  • Tendris Warpwood casts roots and all of that but for some reason he keeps glitching trough the ground and once he casts root when under the ground he drags you down which results in a fall under the map. (This may be caused by corrupt movement maps. I've made an issue regarding this on the mangoszero github, He's still glitching trough with movement maps off tho)
  • Immol'thar if I remember him correctly is just supposed to summon some eyes and do a disease. For now he only does his disease, he's doable but the issue is that his hit aura is massive, you can basically hit him from anywhere within his "arena"
  • (EDIT) Guard Mol'Dar / Fengus / Slip'Kik seem to work fine.
  • Captain Kromcrush. He basically is just like the guards, no spells and no yelling etc. If I remember correctly he is supposed to do thunderclap and at 50% he shouts which summons 2 "Gordok Reavers" and that's pretty much it.
  • King Gordok, now here's the advanced part and I believe scripting this takes some serious effort but as mentioned before if it's just doable I dont really mind. The problem with this fight is basically that when Gordok dies, for some odd reason the entire room gets aggroed (Including critters lol). Once he's dead Cho'Rush The Observer is supposed to sit down and yell "the king is dead bla bla bla" then Mizzle the Crafty appears and declears that the king is dead and gives you the option (From a menu) to summon the Tribute Run chest. None of this happends ofc due to its complexity.
    The fight in general seem to be working pretty good, King Gordok does his pushback etc (he should charge random targets aswell I believe) and Chu'Rush casts his fireballs (but does not stand still in one spot as he should).

any boss not mentioned here seemed to work fine. such as Prince Tortheldrin which does his pushback and arcane spells but misses his dialog.

Ancient Petrified Leaf Quest and stave-of-the-ancients no scripts 1.12.1

I see this in my client SD2 File,

No script found for ScriptName 'at_ancient_leaf'.
No script found for ScriptName 'go_fathom_stone'.

Quest http://www.wowhead.com/item=18703/ancient-petrified-leaf Is bugged i can't find the npc below i did this quest in vanilla myself and something is not correct with it.

http://www.wowhead.com/npc=14524/vartrus-the-ancient

I don't see vartrus-the-ancient in game i have the Leaf from molten core, I've been to the place he is suppose to spawn when on the quest but his not there, I had to spawn him with a GM command to able to see him and advance to the next stage of the quest he give's ( A DB error will post on Cmangos, I know you can't fix that)

http://www.wowhead.com/quest=7636/stave-of-the-ancients

I see each Npc in game but they don't have the required scripts, I can talk to them but they will just Say good day My Character Name, And some of them have custom text but no trigger to start the encounter and kill the creature for the Head's that are a required item for the Bow and Staff,

Latest Git pull of Scriptdev2-Classic with Cmangos latest DB and Core 1.12.1,

there my be an available fix but the website is still offline, So posting here so i can get conformation of a fix or if it's yet to be added or i've missed an update or something,

I tired this on a admin/gm account and a normal players account, each time same results,

Thanks for reading.

Unhandled AT (ID 4052) in AQ40

Greetings,

there is in AreaTrigger (ID 4052) in front of AQ's suppression room (tunnel).
It is supposed to put you into combat with Battleguard Sartura, you are not allowed to skip her.

Currently, it is missing or unhandled.

Volcor in Darkshore - Blackwood Den

Escape Through Force - Escort Quest

It's implemented but needs some improvement - he seems to warp around a lot; making the quest near impossible to complete. Waypoints/movement needs relooking at.

ZG - High Priest Jeklik Bugs

Source:
https://www.youtube.com/watch?v=T9_oghoERTc

As you can see on the bat waves at 1:03 in the video linked above, they all shoot out (about 6-8) at a time.

Currently, they stay in the back of the cave or near the top and don't rush the raid. And it seems to only spawn 2 bats or so.

Additionally, the bomb bats should also leave a visible area on the ground where they threw their bombs. (As shown in the Fire in the video at 3 minutes or so)

Extra Information: The bomb bats have a tendency to linger after Jeklik is dead, keeping some people in combat after the fight is over.

[Molten Core] Baron Geddon - Inferno

Inferno Pulses seem to not be working. Baron Geddon casts Inferno and goes Immune. But then you can stand next to him and not get affected by the AoE Fire Pulses that should be happening with Inferno.

Inferno โ€” a PBAoE that increases in damage with each pulse. The pulses come about 1 second apart and last for 10 seconds. Damage starts at 500 damage per pulse and increases by 500 every other pulse (500, 500, 1000, 1000, 1500, etc.). Baron Geddon will not move while casting this and he will do 6-10 pulses.

Emperor Dagran Thaurissan BRD

After wiping on Emperor Dagran Thaurissan, we all died and ran back and the doors remained locked. The only way to fix it is to all relog at the doors to get them to open.

ZG - High Priest Thekal

High Priest Thekal seems to be using the wrong spell-IDs.

The first one being not correct is his Enrage. He is periodically using the enrage spell of Flamegor. Flamegor's ability has a second effect, a nova, which can quickly wipe out the whole raid.
In fact, I do not even know if Thekal is supposed to enrage periodically. I've watched quite a few videos and he never did.

The second one, is his Frenzy spell, he should use when getting low on health. He is using Chromaggus' ability, which MAY be correct, but sounds not to me.

Sadly, I have yet to figure out which spells should be used instead.

Boss: Cthun

SDName: Boss_Cthun
SDComment: Transform spell has some minor core issues. Eject from stomach event contains workarounds because of the missing spells. Digestive Acid should be handled in core.

*You don't get teleported to the stomach (Digstive Acid keeps stacking up cuz it thinks ur in the stomach)

C'thun: It all works properly except p3 when he's supposed to digest us to weaken him. What happens is actually really weird. We don't get thrown into his stomach, but we get the debuffs. Which makes it impossible to stop the stacks from stacking up, which would happen when we leave his stomach.*

Stratholme Gauntlet Run

How to replicate the bug: do the gauntlet run
What happens: once you get to the Baron and still have enough time, you engage him but he still kills the npc anyway
What should happen: once you engage him, the npc should live therefore completing the gauntlet and associated quest
Quest: http://www.wowwiki.com/Quest:Dead_Man%27s_Plea

Extra Information:
"Baron Rivendare
You do not have to kill the Baron in 45 minutes, you only have to engage him in 45 minutes. However, if you wipe after engaging him, you will fail the quest. From this point, it is exactly the same as on a normal Baron run. After you have taken him down, you can talk to Ysida and finish the quest."

We did not wipe, but he still killed the Npc.

-

moved

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.