Results 1 to 5 of 5

Thread: October 5 Bot Update

  1. #1
    Valve Developer
    Join Date
    Sep 2011
    Posts
    1,704

    October 5 Bot Update

    Just a few more small CMsgBotWorldState changes:
    • Added -botworldstatetosocket_threaded to use a thread to send CMsgBotWorldState (by default it is no longer threaded)
    • Fixed mana regen to take into account stuff like the fountain
    • Added strength, agility, and intelligence for heroes
    • Made Vector floats rather than ints
    • player_ids are now int32 so they can be -1

  2. #2
    Basic Member
    Join Date
    Dec 2016
    Posts
    729
    Quote Originally Posted by ChrisC View Post
    Just a few more small CMsgBotWorldState changes:
    • Added -botworldstatetosocket_threaded to use a thread to send CMsgBotWorldState (by default it is no longer threaded)
    Can you explain why I would ever want it to be NOT threaded?

  3. #3
    Basic Member
    Join Date
    Dec 2016
    Posts
    729
    @ChrisC - another request

    I'm trying to do a higher layer machine learning through the CMsgBotWorldState - what I mean is - I am trying to hard-code things like "last hitting", "using items", "using abilities" and focus instead on MLing things like when to attack, when to retreat, when to push lane, when to jungle, when to defend lane, when to rotate, when to rune, when to roshan, etc. My thought is to use the recorded world state dumps to evaluate an action and it's reward versus effort. For example - I see at time X that Hero Sniper decided to push T1 mid tower and I can fast forward a few dumps to see how it evaluated the future world state as the action being favorable or not.

    I am looking for a solution that would work with players, bots or replays, not just pure bot matches.

    What I need help with is knowing what location was clicked by a hero. Now for bots we have
    Code:
    // FOR BOTS 
    		optional uint32		action_type = 100;
    		optional uint32		ability_target_handle = 101;
    in the protobuf, but that doesn't work for human players. So instead, I started using
    Code:
    		optional int32		anim_activity = 35;
    		optional float		anim_cycle = 36
    To determine when an ability is cast, attack is made, movement is done since that works for Bots and Players.

    However, ideally, you would be able to provide to me the information that a move order was made clicking on vectorLocation, or an attackmove was made on this target, or an ability was used on this location/target/tree, etc. I mean that info is in the replay I'm sure, so why can't it be reported in the protobuf.

    Again, I'm looking for a solution that will be applicable to being acquired from replays (with the hope you will make the CMsgBotWorldState workable with replays).

  4. #4
    Basic Member
    Join Date
    Mar 2012
    Posts
    2,011
    Keep in mind humans right-click like crazy especially when the hero is far away. So you might have to do an average position to determine the actual destination.
    Explanations on the normal, high and very high brackets in replays: here, here & here
    Why maphacks won't work in D2: here

  5. #5
    Basic Member
    Join Date
    Dec 2016
    Posts
    729
    Quote Originally Posted by The Nomad View Post
    Keep in mind humans right-click like crazy especially when the hero is far away. So you might have to do an average position to determine the actual destination.
    I agree and realize, although remember, the world state dumps I'm seeing are only every 0.5 seconds, so I won't be getting that deluge of clicks, just an update very half second.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •