Companion PathServer to KillBots menu

User Tag List

Results 1 to 1 of 1
  1. #1
    hoobiedoobie's Avatar Member
    Reputation
    29
    Join Date
    Nov 2007
    Posts
    17
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Companion PathServer to KillBots

    I was in the process of updating this for Cataclysm when I basically ran out of steam for interest in Warcraft. See my other thread here on KillBots for the bot this PathServer was connected to. This ONLY works currently on WOTLK data – so this PathServer posting is for instructive purposes only. However, the interprocess code and the A-Star updated code could be instructive for some beginners.

    PathServer


    Features:
    • Listens to interprocess topic based publish/subscribe.
    • Works on any computer in the local net for serving (assuming firewalls are open to it).
    • Will "send" data if you want bots to go to a given place (button on GUI).
    • Will "listen" to bot commands that request for information to be sent to other bots in party (try to understand the KillBot code for how that worked). Basically used for MT to "call" other bots to its position if they go out of LOS, or to "tell" other bots to go places. Such commands are usually driven by KillBots-based context/task routines.
    • Ability to click on displayed mesh to add NO GO loci and "Preferred" paths. Makes sure the pathfinder does not use those. KillBot also had the ability to send any current location to the PathServer to be marked as NO GO or preferred through the interprocess server (see killbot code for details).
    • Needs to be upgraded to Cata MPQ structures which I was in the process of doing with wowmapper (see next post below).
    This is a rewrite, major upgrade, and FIX of this:
    http://www.mmowned.com/forums/world-of-warcraft/bots-programs/251315-source-pathing-3d-viewer.html
    as previously posted 1.5 years ago by DarrenSmith. I had fixed the M2 positioning (the quaternions were wrong), I added the interprocess Publish/Subscribe system (originally posted on codeproject.com but strangely now missing), and the other features noted above.

    Sorry to say the UI has DevExpress elements in it, so you will either have to download a “trial” package of DevExpress or replace the UI elements with standard Microsoft UI buttons and pulldowns. For a C# programmer with reasonable experience that should not be too hard.

    ---------- Post added at 03:22 PM ---------- Previous post was at 03:20 PM ----------

    The original Publish/Subscribe package I used is posted below. The server in this package can be run on any computer on the local network and can "talk" to any others on the network and "serve" pathdata as long as they are subscribed to a given data stream. The local bot would decode the path and run it alongside other tasks it was doing. There are a lot of other interprocess packages out there that can be adapted similarly-- I provide this one just for completeness since I set it up for my KillBots and Pathserver Projects:

    TopicBasedPublishSubscribe

    Need to change in Subscribe and Publish, respectively, MYCOMPUTERNAME to the name of your computer if the pathserver is on a different computer:

    _endpoint = "net.tcp://MYCOMPUTERNAME:7002/Sub";
    const string endpointAddressInString = "net.tcp://MYCOMPUTERNAME:7001/Pub";

    if you are doing everything just on one computer and different processes, you can just use “localhost” (without the quotes) in place of MYCOMPUTERNAME.

    ---------- Post added at 03:23 PM ---------- Previous post was at 03:22 PM ----------

    My beginning of a C# wrapper to read the MPQs. Wraps the AMAZING work of Pferdone (who got a lot of help from people at this site, including Ryns, namreeb, & FenixTX2 ). Could be useful for people who want to learn wrapping-- kid's play for many people on this site, but for me was a great learning experience. This was my first real foray into C++ code, and I was delighted to have gotten it to the point of working.

    Basically, all that is needed to be done to fully integrate to KillBot is to add the interprocess server and the A-star and I'd be good to go again (given the limited instances or regions I played in, I did not feel I needed recast/detour as A* is fast enough on most computers. Plus, with the smoothing I did for pathing my paths looked more natural and not "jerky" as they did when I used Detour).

    To use this you will have to change the paths to a lot of the includes, as well as download all kinds of libraries that the projects reference. Not for the feint of heart... don’t ask me to figure it out for you. I had to figure it out myself, and I am a better person for it.

    MapperWrapper

    rep always appreciated.
    Last edited by hoobiedoobie; 01-16-2011 at 07:18 PM.

    Companion PathServer to KillBots

Similar Threads

  1. [Custom Model] turtle pet -> companion cube!
    By joeyshinobi88 in forum World of Warcraft Model Editing
    Replies: 34
    Last Post: 05-21-2008, 12:50 PM
  2. ...A Companion Cube in WoW?!
    By amd in forum World of Warcraft Exploration
    Replies: 42
    Last Post: 03-30-2008, 01:53 PM
  3. Request - Dungeon Companion or Dungeon Companion 2 in PDF
    By mike133 in forum World of Warcraft General
    Replies: 0
    Last Post: 09-14-2007, 10:36 AM
  4. Dungeon Companion
    By woot41 in forum World of Warcraft General
    Replies: 3
    Last Post: 03-25-2007, 08:12 PM
All times are GMT -5. The time now is 11:56 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search