Page 2 of 2 FirstFirst 1 2
Results 11 to 20 of 20

Thread: March 2 Bot Update

  1. #11
    Quote Originally Posted by ChrisC View Post
    • Fixed bots calling ItemPurchaseThink() while paused, or when they've been fully taken over.
    • Changed all the "player" elements in GetLinearProjectiles(), GetLinearProjectileByHandle(), GetIncomingTrackingProjectiles(), GetDroppedItemList(), and GetAvoidanceZones() to be "playerid".
    • Fixed IsShrineHealing to not always return true.
    • Added a GetAllTrees() function to the global bot script API to return a table of every tree in the map.
    • Added CreateHTTPRequest() to the global bot script API for doing HTTP posts to localhost.
    • Added dota_bot_long_frame_warning convar to disable warnings about long frames.
    • Fixed crash if UpdateRoamDesire() doesn't return a table.
    • When bots are trying to pick up an item, they no longer optimize their backpack.


    I also moved the DispatchAsyncEvent backlog warning into the Panorama log channel, for easier filtering in vconsole.
    Would it be possible to get Necrophos to use his 'W'?

  2. #12
    Basic Member
    Join Date
    Dec 2016
    Posts
    557
    Any March 3 bot updates?

  3. #13
    Basic Member
    Join Date
    Mar 2013
    Posts
    17
    How exactly do you use GetActualIncomingDamage( nDamage, nDamageType )

    At first I thought you can just callGetActualIncomingDamage() and it returns a list or something, but that returns "GetActualIncomingDamage called with 2 arguments - expected 3"

    Also, my bots tend to freeze in place if they need to buy something from the secret shop and I have no idea why

  4. #14
    Basic Member
    Join Date
    Dec 2016
    Posts
    557
    Quote Originally Posted by Ace Deeds View Post
    How exactly do you use GetActualIncomingDamage( nDamage, nDamageType )

    At first I thought you can just callGetActualIncomingDamage() and it returns a list or something, but that returns "GetActualIncomingDamage called with 2 arguments - expected 3"

    Also, my bots tend to freeze in place if they need to buy something from the secret shop and I have no idea why
    you use it on a "unit"... "unit:GetActualIncomingDamage(arg1, arg2)" .. the ':' supplies "self" as a hidden first argument, making it 3

  5. #15
    @ChrisC, Could you help me to check it out what's wrong with my script by the following dump file?

    System Memory:
    memusage( 50 % )
    totalPhysical MiB(7881.78)
    freePhysical MiB(3867.09)
    totalPaging MiB(15761.73)
    freePaging MiB(11202.38)
    totalVirtualMem MiB(8388607.88)
    freeVirtualMem MiB(8384261.38)
    extendedVirtualFree MiB(0.00)

    Registered comments:
    [20a8]HostStateRequest::Start(HSR_IDLE): loop(levelload) id(1) addons() desc(Idle (levelload))
    [20a8]CEngineServiceMgr::SwitchToLoop levelload requested: id [1] addons []
    [20c3]CEngineServiceMgr::Activating loop ( levelload, 1 )
    [234d]CHostStateMgr::Activate(Idle (levelload))
    [240c]CEngineServiceMgr::SwitchToLoop game requested: id [1] addons []
    [273c]m_nServerCount:1 ishltv:no m_nRetryNum:1 szRetryAddress:loopback
    [27b3]CEngineServiceMgr::Activating loop ( game, 1 )
    [4ecb]HostStateRequest::Start(HSR_GAME): loop(levelload) id(2) addons() desc(Loading (start))
    [4ecb]CEngineServiceMgr::SwitchToLoop levelload requested: id [2] addons []
    [4f0b]CEngineServiceMgr::Activating loop ( levelload, 2 )
    [4f21]CEngineServiceMgr::SwitchToLoop game requested: id [2] addons []
    [4fa1]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_INIT curtime:1.000000 realtime:20.385455
    [5131]m_nServerCount:2 ishltv:no m_nRetryNum:1 szRetryAddress:loopback
    [51da]CEngineServiceMgr::Activating loop ( game, 2 )
    [51ef]CHostStateMgr::Activate(Loading (start))
    [6744]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_INIT curtime:5.966662 realtime:26.436964
    [68b0]MatchID:3041057678 GameModeOTA_GAMEMODE_AP Addons:
    [68c9]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_WAIT_FOR_PLAYERS_TO_LOAD curtime:6.366662 realtime:26.825696
    [6cdf]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_HERO_SELECTION curtime:7.433327 realtime:27.871986
    [6ce0]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_HERO_SELECTION curtime:7.433327 realtime:27.872021
    [6d41]Lobby NumMembers:1 AllowCheats:0 FillWithBots:1
    [6d41]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_STRATEGY_TIME curtime:7.499994 realtime:27.969757
    [e33d]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_TEAM_SHOWCASE curtime:37.533104 realtime:58.173801
    [1120d]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD curtime:37.533104 realtime:70.157511
    [113bd]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_PRE_GAME curtime:37.566437 realtime:70.589756
    [1a806]HostStateRequest::Start(HSR_IDLE): loop(levelload) id(3) addons() desc(Idle (levelload))
    [1a806]CEngineServiceMgr::SwitchToLoop levelload requested: id [3] addons []
    [1a9a3]CEngineServiceMgr::Activating loop ( levelload, 3 )
    [1a9a8]CHostStateMgr::Activate(Idle (levelload))
    [1a9cc]CEngineServiceMgr::SwitchToLoop game requested: id [3] addons []
    [1aaba]m_nServerCount:4 ishltv:no m_nRetryNum:1 szRetryAddress:loopback
    [1ab05]CEngineServiceMgr::Activating loop ( game, 3 )
    [249cf]HostStateRequest::Start(HSR_GAME): loop(levelload) id(4) addons() desc(Loading (start))
    [249cf]CEngineServiceMgr::SwitchToLoop levelload requested: id [4] addons []
    [24a19]CEngineServiceMgr::Activating loop ( levelload, 4 )
    [24a2e]CEngineServiceMgr::SwitchToLoop game requested: id [4] addons []
    [24a49]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_INIT curtime:1.000000 realtime:150.089276
    [24bc5]m_nServerCount:5 ishltv:no m_nRetryNum:1 szRetryAddress:loopback
    [24c34]CEngineServiceMgr::Activating loop ( game, 4 )
    [24c49]CHostStateMgr::Activate(Loading (start))
    [2618a]MatchID:0 GameModeOTA_GAMEMODE_AP Addons:
    [2619b]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_INIT curtime:5.999995 realtime:156.059231
    [26392]MatchID:3041061094 GameModeOTA_GAMEMODE_AP Addons:
    [2639a]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_WAIT_FOR_PLAYERS_TO_LOAD curtime:6.533328 realtime:156.570206
    [267d3]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_HERO_SELECTION curtime:7.599994 realtime:157.651060
    [267d3]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_HERO_SELECTION curtime:7.599994 realtime:157.651091
    [26815]Lobby NumMembers:1 AllowCheats:0 FillWithBots:1
    [26815]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_STRATEGY_TIME curtime:7.666660 realtime:157.717653
    [2de28]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_TEAM_SHOWCASE curtime:37.699768 realtime:187.944917
    [30d02]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD curtime:37.699768 realtime:199.938926
    [30eac]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_PRE_GAME curtime:37.733101 realtime:200.364346
    [46e88]CDOTAGamerules::State_Enter DOTA_GAMERULES_STATE_GAME_IN_PROGRESS curtime:127.765060 realtime:290.440580

    ConVars (non-default):

    var value default
    snd_musicvolume 0.464285 1
    r_grass_quality 0 2
    dota_bot_match_difficulty 4 1
    dota_bot_practice_team_desired 2 0
    con_logfile_suffix .3041061094
    r_gpu_driver_high 589842 0
    dota_lobby_settings_advanced_visible 1 0
    r_dota_fxaa 0 1
    snd_gamevoicevolume 0.472222 1
    cl_language schinese english
    dota_fantasy_popup_help 0 1
    dota_ambient_cloth 0 1
    steamworks_sessionid_client 1389763335119 0
    violence_ablood 0 1
    dota_winter2017_hide_intro_page 1 0
    dota_matchgroups_version 104 0
    r_deferred_specular 0 1
    tv_dispatchmode 0 1
    dota_server_wait_for_lobby 0
    dota_render_bottom_inset 0 117
    violence_hblood 0 1
    dota_hud_extra_large_minimap 1 0
    dota_matchgroups_automatic 1179648 0
    r_texture_stream_mip_bias 1 0
    tv_dota_auto_record 1 0
    default_fov 70 90
    tv_snapshotrate 15 20
    dota_ambient_creatures 0 1
    r_ssao 0 1
    tv_relayvoice 0 1
    dota_active_play_section 3 0
    r_texture_pool_size 1580 1600
    r_dota_normal_maps 0 1
    violence_agibs 0 1
    tv_enable 1 0
    steamworks_sessionid_server 1389757759400 0
    dota_cheap_water 1 0
    cl_updaterate 30 20
    english 0 1
    snd_gamevolume 0.47123 1
    hostname 琛屽姩浠e彿
    snd_voipvolume 0.472222 1
    tv_delay 10 120
    r_dashboard_render_quality 0 1
    r_gpu_driver_low 855237 0
    dota_hud_netgraph 1 0
    tv_transmitall 1 0
    dota_render_top_inset 0 31
    hostip 421075208
    dota_match_game_modes 2 0
    dota_bot_disable 0 1
    volume 0.472223 1
    snd_mixahead 0.048 0.001
    think_limit 0 10
    dota_fantasy_popup_help_kiev2017 0 1
    violence_hgibs 0 1
    r_dota_allow_parallax_mapping 0 1
    r_deferred_specular_bloom 0 1
    con_enable true false
    dota_minimap_show_hero_icon false true
    chat_wheel_phrase_4 28 4
    treasure_escalating_rares_popup_seen true false
    chat_wheel_phrase_0 76 8
    dota_join_regional_chat_channel false true
    dota_minimap_simple_colors true false
    dota_armory_automatically_add_new_item_to_collecti true false
    dota_weekend_tourney_selected_division 4 0
    chat_wheel_phrase_5 35 5
    dota_highest_seen_item_id 10478902400 0
    dota_splash_ad_acknowledged_id 35 0
    name 琛屽姩浠e彿 unnamed
    dota_minimap_always_draw_hero_icons true false
    dota_player_units_auto_attack_mode 2 1
    dota_default_spoilers_blocked true false
    dota_conduct_scorecard_latest_acknowledged 1635 0
    chat_wheel_phrase_1 75 1
    chat_wheel_phrase_3 32 3

    Console History (reversed)

    802(290.810907): +++ CSODOTALobby.game_state: DOTA_GAMERULES_STATE_GAME_IN_PROGRESS
    801(290.810893): --- CSODOTALobby.game_state: DOTA_GAMERULES_STATE_PRE_GAME
    800(290.446402): CDOTA_Hud_Main::EventGameRulesStateChanged DOTA_GAMERULES_STATE_GAME_IN_PROGRESS
    799(290.446374): C:Gamerules: entering state 'DOTA_GAMERULES_STATE_GAME_IN_PROGRESS'
    798(290.440418): S:Gamerules: entering state 'DOTA_GAMERULES_STATE_GAME_IN_PROGRESS'
    797(200.888521): +++ CSODOTALobby.game_state: DOTA_GAMERULES_STATE_PRE_GAME
    796(200.888507): --- CSODOTALobby.game_state: DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD
    795(200.547190): Script function 'ItemPurchaseThink' on bot npc_dota_hero_ogre_magi took 2.075ms
    794(200.453127): CDOTA_Hud_Main::EventGameRulesStateChanged DOTA_GAMERULES_STATE_PRE_GAME
    793(200.453092): C:Gamerules: entering state 'DOTA_GAMERULES_STATE_PRE_GAME'
    792(200.395222): Script function 'ItemPurchaseThink' on bot npc_dota_hero_lina took 2.406ms
    791(200.380711): +++ CSODOTALobby.game_state: DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD
    790(200.380687): --- CSODOTALobby.game_state: DOTA_GAMERULES_STATE_TEAM_SHOWCASE
    789(200.364317): m_flStateTransitionTime set to 127.73
    788(200.364313): m_flPreGameStartTime set to 37.73
    787(200.364299): S:Gamerules: entering state 'DOTA_GAMERULES_STATE_PRE_GAME'
    786(200.340424): CDOTA_Hud_Main::EventGameRulesStateChanged DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD
    785(200.340389): C:Gamerules: entering state 'DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD'
    784(199.938815): S:Gamerules: entering state 'DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD'
    783(189.014039): Encountered entity that cannot be used in portrait maps - info_player_start_dota
    782(188.399979): +++ CSODOTALobby.game_state: DOTA_GAMERULES_STATE_TEAM_SHOWCASE
    781(188.399965): --- CSODOTALobby.game_state: DOTA_GAMERULES_STATE_STRATEGY_TIME
    780(187.957851): CDOTA_Hud_Main::EventGameRulesStateChanged DOTA_GAMERULES_STATE_TEAM_SHOWCASE
    779(187.957815): C:Gamerules: entering state 'DOTA_GAMERULES_STATE_TEAM_SHOWCASE'
    778(187.942933): S:Gamerules: entering state 'DOTA_GAMERULES_STATE_TEAM_SHOWCASE'
    777(167.845569): Recording SourceTV replay to replays/auto-20170308-0130-start-____________.dem...
    776(163.295401): WARNING: Schema upconversion occuring for large data (9kb): models/creeps/roshan/roshan.vphys
    775(162.537229): WARNING: Schema upconversion occuring for large data (16kb): models/props_structures/secretshop_radiant002_flag.vphys
    774(162.049711): WARNING: Schema upconversion occuring for large data (14kb): models/creeps/neutral_creeps/n_creep_black_dragon/n_creep_black_dragon.vphys
    773(161.455097): Error loading resource file "particles/rain_fx/econ_weather_aurora_j.vpcf_c" (Error: ERROR_FILEOPEN)
    772(161.295521): CWorldRendererMgr::ServiceWorldRequests long frame: 10.033168ms
    771(161.295502): Long grass load frame: 10.002619 ms for 844 grass tiles
    770(161.138026): CWorldRendererMgr::ServiceWorldRequests long frame: 10.035687ms
    769(161.138011): Long grass load frame: 10.008671 ms for 817 grass tiles
    768(161.102704): CWorldRendererMgr::ServiceWorldRequests long frame: 10.093025ms
    767(161.102659): Long grass load frame: 10.007326 ms for 813 grass tiles
    766(158.055703): +++ CSODOTALobby.game_state: DOTA_GAMERULES_STATE_STRATEGY_TIME
    765(158.055699): --- CSODOTALobby.game_state: DOTA_GAMERULES_STATE_HERO_SELECTION
    764(158.055610): +++ CSODOTALobby.game_state: DOTA_GAMERULES_STATE_HERO_SELECTION
    763(158.055597): --- CSODOTALobby.game_state: DOTA_GAMERULES_STATE_WAIT_FOR_PLAYERS_TO_LOAD
    762(157.719319): CDOTA_Hud_Main::EventGameRulesStateChanged DOTA_GAMERULES_STATE_STRATEGY_TIME
    761(157.719288): C:Gamerules: entering state 'DOTA_GAMERULES_STATE_STRATEGY_TIME'
    760(157.717635): S:Gamerules: entering state 'DOTA_GAMERULES_STATE_STRATEGY_TIME'
    759(157.716926): PR:SetSelectedHero 6:[I:0:0] npc_dota_hero_juggernaut(8)
    758(157.716917): PR:SetSelectedHero 5:[I:0:0] npc_dota_hero_razor(15)
    757(157.716908): PR:SetSelectedHero 4:[I:0:0] npc_dota_hero_lion(26)
    756(157.716898): PR:SetSelectedHero 3:[I:0:0] npc_dota_hero_lina(25)
    755(157.716874): PR:SetSelectedHero 2:[I:0:0] npc_dota_hero_sven(18)
    754(157.665441): CSosOperatorSystem::StartSoundEvent Unable to find soundevent antimage_anti_spawn_01
    753(157.665077): CSosOperatorSystem::StartSoundEvent Unable to find soundevent outworld_destroyer_odest_spawn_02
    752(157.664700): CSosOperatorSystem::StartSoundEvent Unable to find soundevent slardar_slar_spawn_01
    751(157.664263): CSosOperatorSystem::StartSoundEvent Unable to find soundevent ogre_magi_ogmag_spawn_01
    750(157.663407): CSosOperatorSystem::StartSoundEvent Unable to find soundevent undying_undying_spawn_01
    749(157.660516): CDOTA_Hud_Main::EventGameRulesStateChanged DOTA_GAMERULES_STATE_HERO_SELECTION
    748(157.660192): LoadingDisplay changed from WAITING_FOR_PLAYERS to NONE (map="start")
    747(157.659914): C:Gamerules: entering state 'DOTA_GAMERULES_STATE_HERO_SELECTION'
    746(157.655642): PR:SetSelectedHero 11:[I:0:0] npc_dota_hero_antimage(1)
    745(157.655632): PR:SetSelectedHero 10:[I:0:0] npc_dota_hero_obsidian_destroyer(76)
    744(157.655623): PR:SetSelectedHero 9:[I:0:0] npc_dota_hero_slardar(28)
    743(157.655614): PR:SetSelectedHero 8:[I:0:0] npc_dota_hero_ogre_magi(84)
    742(157.655600): PR:SetSelectedHero 7:[I:0:0] npc_dota_hero_undying(85)
    741(157.655546): CDOTA_PlayerResource: Adding player SteamID 90071996842377226 to slot 11 FakeClient=1 preferred slot = -1
    740(157.655122): CDOTA_PlayerResource: Adding player SteamID 90071996842377225 to slot 10 FakeClient=1 preferred slot = -1
    739(157.654684): CDOTA_PlayerResource: Adding player SteamID 90071996842377224 to slot 9 FakeClient=1 preferred slot = -1
    738(157.654336): CDOTA_PlayerResource: Adding player SteamID 90071996842377223 to slot 8 FakeClient=1 preferred slot = -1
    737(157.653889): CDOTA_PlayerResource: Adding player SteamID 90071996842377222 to slot 7 FakeClient=1 preferred slot = -1
    736(157.653501): CDOTA_PlayerResource: Adding player SteamID 90071996842377221 to slot 6 FakeClient=1 preferred slot = -1
    735(157.653191): CDOTA_PlayerResource: Adding player SteamID 90071996842377220 to slot 5 FakeClient=1 preferred slot = -1
    734(157.652734): CDOTA_PlayerResource: Adding player SteamID 90071996842377219 to slot 4 FakeClient=1 preferred slot = -1
    733(157.652230): CDOTA_PlayerResource: Adding player SteamID 90071996842377218 to slot 3 FakeClient=1 preferred slot = -1
    732(157.651771): CDOTA_PlayerResource: Adding player SteamID 90071996842377217 to slot 2 FakeClient=1 preferred slot = -1

  6. #16
    if you can post script some other people might be able to help. (Chris hasnt been on forum in a few days. maybe holiday or something)

    looks like it happens as soon as game launches, which means it could be a number of possible things. Unfortunately it takes me a long time to debug these crashes as well.
    I literally just have to delete huge chunks of my code until it doesnt crash, then narrow down which part is causing the crashing

    usually for me a crash like that is either using an incorrect 'require'. or trying to use some variable before it exists.
    https://github.com/ThePianoDentist/t...dentistdotabot Lina bot which pulls small camp when 'laning' (Aim to work on pulling and stacking bots initially)
    https://github.com/ThePianoDentist/dotabots-ml-tools Parsing data from bot games

  7. #17
    Basic Member
    Join Date
    Mar 2013
    Posts
    17
    I'm a fan of dumb questions and don't really wanna make a separate thread for those

    since you use GetTarget() to see what the bot has currently set its sights on, how would you use that to have a bot check if anyone has set it as a target for abilities?

    GetAttackTarget() exists, but I'm not sure if it counts abilities or not (if it doesnt, I suppose GetIncomingTrackingProjectiles has to do)

  8. #18
    Basic Member
    Join Date
    Mar 2012
    Posts
    1,595
    I think you need to handle that in your code.
    Explanations on the normal, high and very high brackets in replays: here, here & here
    Why maphacks won't work in D2: here

  9. #19
    Thank you. It's OK after several days even if I have changed nothing. Strange!

  10. #20
    Basic Member
    Join Date
    Mar 2012
    Posts
    1,595
    There might be a logic issue which only happens in some cases. That is usually why it most of the time works, but sometimes - very rarely doesn't. Might be from the order of conditions inside an IF (the order is very important)
    It might also be from a restrictive IF (such as IF condition then return) which might be from invalidated handles (like an enemy dying, getting illusions or running out of view).

    Lastly, it might not be from the calculating/returning function, but from other checks (and assignments) you do after that returned value. I had this problem sometimes

    And the list goes on
    Explanations on the normal, high and very high brackets in replays: here, here & here
    Why maphacks won't work in D2: here

Posting Permissions

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