Jump to content

Recommended Posts

Posted
Many many many many many many .... // .... many thanks blueboy !

That's work marvellous, is magic !!! Much players from my server thanks you also for long time !

Server is stable, i think i don't add sql for botguy and no problems ;)

Perhaps it is possible to add the NPChandler.cpp mod in 8965 patch, but i have not enough skill for that.

Hi,

I'm glad you got it to work.

Enjoy your adventuring :)

  • Replies 1.8k
  • Created
  • Last Reply

Top Posters In This Topic

Posted

Vmaps and Maps definitely needs some tweaking. I wonder if your little fix will also make Blink/Charge/Shadowstep work better, fix NPCs that constantly spawn below ground level, and make the lava pools and stream in places like Searing Gorge actually cause damage?

Sign me up as a tester! I'll give this a try after I manage to finish patching and compiling my new server core for 3.3.0a.

Posted
works fine with enGb so i think ill recomend it for everyone ... no other language fuzzines

Done, tested with enGB and always mount problem, take two new characters, bring them to required level, learn mount, buiy mount, and test, when the player is mounted, the bot do not cast mount

Posted
Just a question

Bot take quest but don't finish it (don't choose rewards)

that correct ?

Hi,

If there is a multiple choice for rewards, the bot will expect you, the master, to choose which reward. As nyko suggests, type this

/w <bot name> hold down the shift key and click on the appropriate link [big sword][large shield][small wand] then press enter

Note:

There are some types of quest (opening chests or collecting fruit) that can not be completed by the bots alone. At present you will have to login as the bot character, and complete it yourself. Project for the future :rolleyes:

Hope this helps

Posted
Done, tested with enGB and always mount problem, take two new characters, bring them to required level, learn mount, buiy mount, and test, when the player is mounted, the bot do not cast mount

Hi,

Your still having mount problems :confused: Your system;

PS : mangos 9407 - SD2 1583 FR @ Mods : AHBot PlayerBot Teleguy Arena<>Honor @ Patchs : Boss oeil_acherus DruidFly DeathBug NewQuest utilisant la db: UDB 0.11.6 (387) for MaNGOS 9310 with SD2 SQL for rev. 1566 => ALL UPDATE OF COURSE

You probably have already tried what I am going to suggest.

Build a basic server MaNGOS[9407] SD2[1583]FR with just playerbot & your UDB database.

I believe the bots detect a change in the player's motion speed. If they have the capabilities to mount, they do so. I do not think it is an issue with language, otherwise the bot would reply

[bot] Whispers: What? follow,stay,©cast etc....

I assume this doesn't happen.

This is a puzzle. It works fine on my server and it not an issue common to other users, or this forum would be bombarded.

Edit: do you get any pertinent errors or warnings as your server loads, or when a mount is tried?

Get back to me.

Posted

No warning no message, i can test with debug

i'll do another test in a test server but i have stability problems running two realms, the second always have segment faults ...

i'll get back soon

Posted
No warning no message, i can test with debug

i'll do another test in a test server but i have stability problems running two realms, the second always have segment faults ...

i'll get back soon

Hi,

It sounds like your problem runs alot deeper. With server stability errors, I really would strip it back to basics, i.e Build MaNGOS with no mods first and only one realm. Then, first check each mod one at a time on this single realm. Then and only then, run your server with dual realms. I have never tried running multiple realms myself, and have no idea how to set them up. The 'segment faults' suggest that something in your second realm is trying to access a protected memory location, used by the first realm. Hopefully, if you follow my suggestions you will be able to track down the root cause.

Hope this helps

Posted

Hi Guys,

I thought I'd warn you of a compile issue caused by changes in MaNGOS[9440]. They have changed the way data is addressed in the PlayerSpell map structure. I include a temporary patch to correct this, until I can update blueboy

diff --git a/src/game/PlayerbotAI.cpp b/src/game/PlayerbotAI.cpp
index 3ecc870..507d183 100644
--- a/src/game/PlayerbotAI.cpp
+++ b/src/game/PlayerbotAI.cpp
@@ -185,7 +185,7 @@ uint32 PlayerbotAI::getSpellId(const char* args, bool master) const
    {
        uint32 spellId = itr->first;

-        if (itr->second->state == PLAYERSPELL_REMOVED || itr->second->disabled || IsPassiveSpell(spellId))
+        if (itr->second.state == PLAYERSPELL_REMOVED || itr->second.disabled || IsPassiveSpell(spellId))
            continue;

        const SpellEntry* pSpellInfo = sSpellStore.LookupEntry(spellId);
@@ -487,7 +487,7 @@ void PlayerbotAI::HandleBotOutgoingPacket(const WorldPacket& packet)
                    for(PlayerSpellMap::iterator itr = m_bot->GetSpellMap().begin(); itr != m_bot->GetSpellMap().end(); ++itr)
                    {
                        uint32 spellId = itr->first;
-                        if(itr->second->state == PLAYERSPELL_REMOVED || itr->second->disabled || IsPassiveSpell(spellId))
+                        if(itr->second.state == PLAYERSPELL_REMOVED || itr->second.disabled || IsPassiveSpell(spellId))
                            continue;
                        const SpellEntry* pSpellInfo = sSpellStore.LookupEntry(spellId);
                        if (!pSpellInfo)
@@ -2738,7 +2738,7 @@ void PlayerbotAI::HandleCommand(const std::string& text, Player& fromPlayer)
        for (PlayerSpellMap::iterator itr = m_bot->GetSpellMap().begin(); itr != m_bot->GetSpellMap().end(); ++itr) {
            const uint32 spellId = itr->first;

-            if (itr->second->state == PLAYERSPELL_REMOVED || itr->second->disabled || IsPassiveSpell(spellId))
+            if (itr->second.state == PLAYERSPELL_REMOVED || itr->second.disabled || IsPassiveSpell(spellId))
                continue;

            const SpellEntry* const pSpellInfo = sSpellStore.LookupEntry(spellId);

To be applied if using MaNGOS[9440]+

Hope this helps

Posted
Vmaps and Maps definitely needs some tweaking. I wonder if your little fix will also make Blink/Charge/Shadowstep work better, fix NPCs that constantly spawn below ground level, and make the lava pools and stream in places like Searing Gorge actually cause damage?

Sign me up as a tester! I'll give this a try after I manage to finish patching and compiling my new server core for 3.3.0a.

Hi,

I appreciate your interest in this issue. It is not a perfect solution, but I have had some success. I have found some areas of the map where the value of 'vmap_z' drops to -2000f. A particular spot is in the harbour(Stormwind) @ the foot of one ramp. The player is not effected, but the bots drop into the abyss. By switching to the calculated 'map_z' value in this instance, they all remain above ground. I have included debug info in the patch, that you can uncomment. If you find a problem spot that annoys you, check the values @ the server output. Hopefully this will help. If you have any suggestion, that would be great. If you want to tweak the hover height of the bots, add or subract from the assigned 'vmap_z' value (e.g +/- 0.05f).

The NPC's do not appear to be effected by this adjustment. Occasionaly you will see an NPC flying through the air, or disappering below ground. I have even seen a cow walking up and down the trunk of a tree :confused: Their movement is obviously governed by other factors.

Cheers

Posted
One more question !

Where i can change Bot number, i think 9 bots is too much for my server, 2 or 3 are more serious ;)

Hi,

It's up to you how many bots you use. Nine is the maximum, purely because any account can only support ten characters, one player and nine bots. If you only want to use two or three bot, thats fine.

Edit if you want to limit the number of bots per account, you could simply ask your users not to load more than three bots.

Cheers

Posted
Edit if you want to limit the number of bots per account, you could simply ask your users not to load more than three bots.

On a very small server, say a population of less than 20, that would be easy to enforce. Unfortunately, for those who have high population servers, greater than 50 players, GMs and the Admin would be kept very busy checking up on everyone to make sure they're not tempted to exceed the imposed limit for bots.

I'm not saying it should be high priority, but it would make Playerbots much more friendly, and easier to use, if a function could be added that would allow server administrators to limit how many bots per account are permitted. It could be configured with from a line added to mangosd.conf that might read something like this:

#  PlayerbotAI.LimitBots
#  Limit how many bots can be used with each player's account.
#  Default: 9 - Max number of account characters that can be added as bots. Player accounts have 
#                   a limit of ten characters total, so max bots is 9 - 1 (Player's active 
#                   character).
#           1 - Minimum number of bots a player can use with their account. 
#              
#              Note:  For Hunters and Warlocks the minumum number must not be lower than 2 or 
#                        they cannot use other characters in their account as a bot. Their Pets 
#                        and Guardians already count as one slot for available bots
###############################################################################################

PlayerbotAI.LimitBots = 9

Just an idea that would be good to see added to Playerbots sometime in the future. I'm certainly grateful you have taken up this project, blueboy. It has come a long way under your name! :D

P.S. I added in that optimization code you posted for Vmaps and Maps. I'll be compiling and testing my server this weekend, so I'll let you know how the bots behave with the patch. I will also make sure to take a stroll through Stormwind Harbor with a bot close at hand as a test to check that the patch is working. Thank you for suggesting that.

Weirdest thing I've ever seen an NPC do? Walk up the side of the wall that surrounds Stormwind City and then fall through it!

Posted
On a very small server, say a population of less than 20, that would be easy to enforce. Unfortunately, for those who have high population servers, greater than 50 players, GMs and the Admin would be kept very busy checking up on everyone to make sure they're not tempted to exceed the imposed limit for bots.

I'm not saying it should be high priority, but it would make Playerbots much more friendly, and easier to use, if a function could be added that would allow server administrators to limit how many bots per account are permitted. It could be configured with from a line added to mangosd.conf that might read something like this:

#  PlayerbotAI.LimitBots
#  Limit how many bots can be used with each player's account.
#  Default: 9 - Max number of account characters that can be added as bots. Player accounts have 
#                   a limit of ten characters total, so max bots is 9 - 1 (Player's active 
#                   character).
#           1 - Minimum number of bots a player can use with their account. 
#              
#              Note:  For Hunters and Warlocks the minumum number must not be lower than 2 or 
#                        they cannot use other characters in their account as a bot. Their Pets 
#                        and Guardians already count as one slot for available bots
###############################################################################################

PlayerbotAI.LimitBots = 9

Just an idea that would be good to see added to Playerbots sometime in the future. I'm certainly grateful you have taken up this project, blueboy. It has come a long way under your name! :D

P.S. I added in that optimization code you posted for Vmaps and Maps. I'll be compiling and testing my server this weekend, so I'll let you know how the bots behave with the patch. I will also make sure to take a stroll through Stormwind Harbor with a bot close at hand as a test to check that the patch is working. Thank you for suggesting that.

Weirdest thing I've ever seen an NPC do? Walk up the side of the wall that surrounds Stormwind City and then fall through it!

Hi

Thanks for your response. I was thinking along the same lines myself. I have been busy :rolleyes: Recently, there have been a couple of requests about ways to govern bots.

Stodderen wanted to know whether it was possible to selectively summon bots, based upon realm, and belfedia wanted to limit the number of bots, based upon the account.

The solution to these are similar, and both can be achieved to a greater and lesser extent.

Solution for Stodderen

This patch seems to work without issue. I do not have a mutiple realm server, but in principle it should work.

If 'PlayerbotAI.DisableBotInRealm = 0', then bots are active on all realms.

Enter an integer value greater than zero, to specify the realm id, where you wish bots to be disabled.

If you want bots to be disabled on all realms, use 'PlayerbotAI.DisableBots = 1'.

diff --git a/src/game/PlayerbotMgr.cpp b/src/game/PlayerbotMgr.cpp
index 0abd67d..bfcb698 100644
--- a/src/game/PlayerbotMgr.cpp
+++ b/src/game/PlayerbotMgr.cpp
@@ -522,6 +522,20 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
        m_session->GetPlayer()->SetPlayerbotMgr(mgr);
    }

+    QueryResult *resultacct = loginDatabase.PQuery("SELECT active_realm_id FROM account WHERE id = '%d'", m_session->GetAccountId());
+    if(resultacct)
+    {
+        Field *fields=resultacct->Fetch();
+        uint32 acctrealm = fields[0].GetUInt32();
+        delete resultacct;
+        if(acctrealm == sConfig.GetIntDefault("PlayerbotAI.DisableBotInRealm", 0))
+        {
+            PSendSysMessage("bots are disabled for this realm.");
+            SetSentErrorMessage(true);
+            return false;
+        }
+    } 
+
    if (cmdStr == "add" || cmdStr == "login")
    {
        if (mgr->GetPlayerBot(guid)) {
@@ -580,4 +594,4 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
    }

    return true;
-}
\\ No newline at end of file
+}
diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in
index 6514228..f7f34a8 100644
--- a/src/mangosd/mangosd.conf.dist.in
+++ b/src/mangosd/mangosd.conf.dist.in
@@ -1495,9 +1495,16 @@ Ra.Secure = 1
#    PlayerbotAI.FollowDistanceMax
#        Min. and Max. follow distance for bots
#        Default: 0.5 / 1.0
+#
+#    PlayerbotAI.DisableBotInRealm
+#        Disable the bot command and bot menu for this realm
+#        Default: 0 - off
+#        Realm id: - on
+#
###################################################################################################################

PlayerbotAI.DisableBots = 0
PlayerbotAI.DebugWhisper = 0
PlayerbotAI.FollowDistanceMin = 0.5
PlayerbotAI.FollowDistanceMax = 1.0
+PlayerbotAI.DisableBotInRealm = 0

Solution for Belfedia.

This patch is not fool proof. It works fine if bots are summoned individually, at the command line. It does not work very well with macros. I believe macros are treated like a single command, although they may be composed of multiple commands e.g.

Single command entered at client

/s .bot add <bot>

Macro

.bot add <bot1>
.bot add <bot2>
.bot add <bot3>

The server seems to treat both alike, so it is possible for users to disregard the limitation placed on their account. I have tried to find a solution, but to no avail. It works, but not very well.

If you want to have a go at fixing this, please publish your results on this thread for other to test and share.

diff --git a/src/game/PlayerbotMgr.cpp b/src/game/PlayerbotMgr.cpp
index 0abd67d..041b3c0 100644
--- a/src/game/PlayerbotMgr.cpp
+++ b/src/game/PlayerbotMgr.cpp
@@ -522,6 +522,20 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
        m_session->GetPlayer()->SetPlayerbotMgr(mgr);
    }

+    QueryResult *resultacct = CharacterDatabase.PQuery("SELECT Count(*) FROM characters WHERE online = 1 AND account = '%d'", m_session->GetAccountId());
+    if(resultacct)
+    {
+        Field *fields=resultacct->Fetch();
+        uint32 acctcharcount = fields[0].GetUInt32();
+        delete resultacct;
+        if((acctcharcount > sConfig.GetIntDefault("PlayerbotAI.MaxNumBots", 9)) && (cmdStr == "add" || cmdStr == "login"))
+        {
+            PSendSysMessage("You cannot summon anymore bots for this account.");
+            SetSentErrorMessage(true);
+            return false;
+        }
+    } 
+    
    if (cmdStr == "add" || cmdStr == "login")
    {
        if (mgr->GetPlayerBot(guid)) {
@@ -531,6 +545,7 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
        }
        mgr->AddPlayerBot(guid);
        PSendSysMessage("Bot added successfully.");
+        CharacterDatabase.PExecute("UPDATE characters SET online = 1 WHERE account = '%d' AND guid = '%d'", m_session->GetAccountId(),guid);
    }
    else if (cmdStr == "remove" || cmdStr == "logout")
    {
@@ -580,4 +595,4 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
    }

    return true;
-}
\\ No newline at end of file
+}
diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in
index 6514228..2b6b57c 100644
--- a/src/mangosd/mangosd.conf.dist.in
+++ b/src/mangosd/mangosd.conf.dist.in
@@ -1495,9 +1495,15 @@ Ra.Secure = 1
#    PlayerbotAI.FollowDistanceMax
#        Min. and Max. follow distance for bots
#        Default: 0.5 / 1.0
+#
+#    PlayerbotAI.MaxNumBots
+#        Limits the number of bots per account (Max 9)
+#        Default: 9
+#
###################################################################################################################

PlayerbotAI.DisableBots = 0
PlayerbotAI.DebugWhisper = 0
PlayerbotAI.FollowDistanceMin = 0.5
PlayerbotAI.FollowDistanceMax = 1.0
+PlayerbotAI.MaxNumBots = 9

Edit: When you test the vmap/map patch, obviously try the problem areas with and without the patch, so we can judge whether it makes any difference :)

Hope this helps

Posted
blue boy if i set 40 characters to create on account would i be able to add 39 bots ?

If you get 40 characters (real players). Between them, they could create upto 360 bots. Each account can support upto 9 (max) bots. You cannot summon bots from an different account than the player, for security reasons.

Hope this helps

Posted

hey, i was thinking at this :

for example i set in the mangosd.conf file CharactersPerAccount = 50 and i log into my account create 40 characters(im on my account not on a other account) and i enter on one of the 40 characters i created on my account then ill do .bot add 39 times (40 - my char wich im logged on) so is that possible ?

Posted

understood, thanks unkle nuke.

Is there a way to add a command for bots to open object like crates,etc. ? or for example if i have quest and i get near to that object they can "sense" it and use it , like code to detect the nearest object and use/open it ?

Posted
understood, thanks unkle nuke.

Is there a way to add a command for bots to open object like crates,etc. ? or for example if i have quest and i get near to that object they can "sense" it and use it , like code to detect the nearest object and use/open it ?

Hi,

No, at present bots can not independently interact with an object that needs opening or using. You have to login as the bot to complete these types of quest. If anyone would like to develop this gap in the AI, that would be great. If not, continue watching this space.

Cheers

Posted

Hi,

If you want to try both patches (limit bots per account & limit bot per realm)together, I have created a modified patch. Only apply this to a clean server build.

diff --git a/src/game/PlayerbotMgr.cpp b/src/game/PlayerbotMgr.cpp
index 0abd67d..1a23585 100644
--- a/src/game/PlayerbotMgr.cpp
+++ b/src/game/PlayerbotMgr.cpp
@@ -522,6 +522,34 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
        m_session->GetPlayer()->SetPlayerbotMgr(mgr);
    }

+    QueryResult *resultrealm = loginDatabase.PQuery("SELECT active_realm_id FROM account WHERE id = '%d'", m_session->GetAccountId());
+    if(resultrealm)
+    {
+        Field *fields=resultrealm->Fetch();
+        uint32 acctrealmid = fields[0].GetUInt32();
+        delete resultrealm;
+        if(acctrealmid == sConfig.GetIntDefault("PlayerbotAI.DisableBotInRealm", 0))
+        {
+            PSendSysMessage("bots are disabled for this realm.");
+            SetSentErrorMessage(true);
+            return false;
+        }
+    } 
+
+    QueryResult *resultchar = CharacterDatabase.PQuery("SELECT Count(*) FROM characters WHERE online = 1 AND account = '%d'", m_session->GetAccountId());
+    if(resultchar)
+    {
+        Field *fields=resultchar->Fetch();
+        uint32 acctcharcount = fields[0].GetUInt32();
+        delete resultchar;
+        if((acctcharcount > sConfig.GetIntDefault("PlayerbotAI.MaxNumBots", 9)) && (cmdStr == "add" || cmdStr == "login"))
+        {
+            PSendSysMessage("You cannot summon anymore bots for this account.");
+            SetSentErrorMessage(true);
+            return false;
+        }
+    } 
+
    if (cmdStr == "add" || cmdStr == "login")
    {
        if (mgr->GetPlayerBot(guid)) {
@@ -580,4 +608,4 @@ bool ChatHandler::HandlePlayerbotCommand(const char* args)
    }

    return true;
-}
\\ No newline at end of file
+}
diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in
index 6514228..e3a2104 100644
--- a/src/mangosd/mangosd.conf.dist.in
+++ b/src/mangosd/mangosd.conf.dist.in
@@ -1495,9 +1495,21 @@ Ra.Secure = 1
#    PlayerbotAI.FollowDistanceMax
#        Min. and Max. follow distance for bots
#        Default: 0.5 / 1.0
+#
+#    PlayerbotAI.DisableBotInRealm
+#        Disable the bot command and bot menu for this realm
+#        Default: 0 - off
+#        Realm id: - on
+#
+#    PlayerbotAI.MaxNumBots
+#        Limits the number of bots per account (Max 9)
+#        Default: 9
+#
###################################################################################################################

PlayerbotAI.DisableBots = 0
PlayerbotAI.DebugWhisper = 0
PlayerbotAI.FollowDistanceMin = 0.5
PlayerbotAI.FollowDistanceMax = 1.0
+PlayerbotAI.DisableBotInRealm = 0
+PlayerbotAI.MaxNumBots = 9

Hope this helps

Posted

Hello BlueBoy!

Thanks for sharing this patch with us Bud, you rock.

I just attempted to compile this with VS2K8. The merge went fine with MaNGOS r9463 and SD2 r1605.

When compiling it choked on the PlayerSpell routine with this output.

PlayerbotAI.cpp

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2232: '->PlayerSpell::state' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2232: '->PlayerSpell::Disabled' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(433) : warning C4305: 'argument' : truncation from 'double' to 'float'

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2232: '->PlayerSpell::state' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2232: '->PlayerSpell::Disabled' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(1856) : warning C4305: 'argument' : truncation from 'double' to 'float'

..\\..\\src\\game\\PlayerbotAI.cpp(1894) : warning C4305: 'argument' : truncation from 'double' to 'const float'

..\\..\\src\\game\\PlayerbotAI.cpp(2517) : warning C4018: '>' : signed/unsigned mismatch

..\\..\\src\\game\\PlayerbotAI.cpp(2534) : warning C4018: '>' : signed/unsigned mismatch

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2232: '->PlayerSpell::state' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2232: '->PlayerSpell::Disabled' : left operand has 'struct' type, use '.'

I'm sure its been brought on with all the SpellIndex changes lately. If you get time could you look this over and see if you can straighten me out. Thanks again.

Posted
Hello BlueBoy!

Thanks for sharing this patch with us Bud, you rock.

I just attempted to compile this with VS2K8. The merge went fine with MaNGOS r9463 and SD2 r1605.

When compiling it choked on the PlayerSpell routine with this output.

PlayerbotAI.cpp

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2232: '->PlayerSpell::state' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(188) : error C2232: '->PlayerSpell::Disabled' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(433) : warning C4305: 'argument' : truncation from 'double' to 'float'

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2232: '->PlayerSpell::state' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(490) : error C2232: '->PlayerSpell::Disabled' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(1856) : warning C4305: 'argument' : truncation from 'double' to 'float'

..\\..\\src\\game\\PlayerbotAI.cpp(1894) : warning C4305: 'argument' : truncation from 'double' to 'const float'

..\\..\\src\\game\\PlayerbotAI.cpp(2517) : warning C4018: '>' : signed/unsigned mismatch

..\\..\\src\\game\\PlayerbotAI.cpp(2534) : warning C4018: '>' : signed/unsigned mismatch

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2232: '->PlayerSpell::state' : left operand has 'struct' type, use '.'

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2819: type 'PlayerSpell' does not have an overloaded member 'operator ->'

d:\\users\\forge\\documents\\visual studio 2008\\projects\\mangos\\src\\game\\Player.h(95) : see declaration of 'PlayerSpell'

did you intend to use '.' instead?

..\\..\\src\\game\\PlayerbotAI.cpp(2741) : error C2232: '->PlayerSpell::Disabled' : left operand has 'struct' type, use '.'

I'm sure its been brought on with all the SpellIndex changes lately. If you get time could you look this over and see if you can straighten me out. Thanks again.

Hi,

You need to use the patch I provided in post #819. This resolves this issue with PlayerSpell

Hope this helps

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use