Forum Rules

  • No flaming or derogatory remarks, directly or through insinuation.
  • No discussion, sharing or referencing illegal software such as hacks, keygen, cracks and pirated software.
  • No offensive contents, including but not limited to, racism, gore or pornography.
  • No excessive spam/meme, i.e. copious one liners in a short period of time, typing with all caps or posting meme responses (text/image).
  • No trolling, including but not limited to, flame incitation, user provocation or false information distribution.
  • No link spamming or signature advertisements for content not specific to Dota 2.
  • No Dota 2 key requests, sell, trade etc.
  • You may not create multiple accounts for any purpose, including ban evasion, unless expressly permitted by a moderator.

  • Please search before posting. One thread per issue. Do not create another thread if there is an existing one already.
  • Before posting anything, make sure you check out all sticky threads (e.g., this). Do not create new threads about closed ones.
  • It is extremely important that you post in correct forum section.

  • Balance discussion only in Misc.
  • All art related (such as hero model) feedbacks go to Art Feedback Forum.
  • All matchmaking feedback should go here: Matchmaking Feedback
  • All report/low priority issues should go here: Commend/Report/Ban Feedback
  • No specific workshop item feedback. These should go to workshop page of that item.
  • When posting in non-bugs section (such as this), use [Bugs], [Discussion] or [Suggestion] prefix in your thread name.

In case you object some action by a moderator, please contact him directly through PM and explain your concerns politely. If you are still unable to resolve the issue, contact an administrator. Do not drag these issues in public.

All rules are meant to augment common sense, please use them when not conflicted with aforementioned policies.
See more
See less

Programmatic access to VConsole functionality possible?

  • Filter
  • Time
  • Show
Clear All
new posts

  • Programmatic access to VConsole functionality possible?

    Could anyone offer some insight into the workings of VConsole, comment on its usefulness as a tool (besides its apparent primary use as a mere log-viewer or mod testing utility) and explain whether there is any programmatic access to its functionality, such as the ability to send commands to the client?

    Note: Yes I do know about Autoexec config but as far as I'm aware that is a on-client-load-only way of interacting with the console.

    The only real documentation that I could find on VConsole is both brief and not all that helpful, if someone could point me towards any other links I may have missed?

    VConsole2 documentation link

    As far as valid console commands go, the only real document of any use that I could actually find is a Reddit post linking to a text dump.
    (probably ripped from the client executable's resource strings or game DLLs or something...)

    Link to text paste of Reborn console commands

    Is there really no reference material for such a powerful feature? If so, why not?

    Perhaps I am misunderstanding the intent of VConsole2, but it seems to be the obvious route of entry to creating useful third party tools that interact with the Reborn client in some fashion by issuing commands to the client and parsing the console output etc.

    For example, I would love to be able to cobble together a little utility program in something like Python or C# that could adjust various things in the client like settings or hero loadout, perhaps even start watching a replay etc. It would seem that such functionality should be using VConsole as the conduit to make that happen. What am I missing here? I thought the whole point of a "console" is to facilitate such things, no?

    One thing I should note is that I'm not quite sure if the V in VConsole stands for virtual console, differentiating it from the in game client somehow? I'm guessing that since it hooks into a local port that it must be more of an external debugging facility which simply echoes or redirects the contents of the in-game console buffers? But then, how is it possible to issue commands from this external executable resulting in a response within the client?

    I'm pretty sure I've missed something major like a SDK documentation entry, so please fix my ignorance and point me in the right direction with a link.

  • #2
    Have you been under a rock lately?
    autoexec.cfg was nerfed into oblivion by being disabled in matchmaking, because an idiot spread some lies about so-called cfg 'cheats' live on Major stream, then other computer illiterate people on reddit made a huge deal out of it believing cfgs are the same as external, reactive Lua hacks like Ensage.

    So no, you will get no support for what you have in mind for VConsole.
    It's main goal was to help mod developers better manage their work environment (workshop tools - hammer).
    It's second goal was to help streamers adjust settings without showing it on stream and look unprofessional (yet none of them used it, not even reddit's favorite child, pimpmuckl).

    If you need to interact with the client in a non-invasive, non-VACable way, research gamestate integration - I would start with dota2-gsi for node.js
    Troubleshooting crashes
    Dota 2 Resources: autoexec.cfg reference / benchmark.cfg / Tweak it yourself (launch options, cvars) / useful batch files
    No-Bling GlanceValue & FPS ++ NEW! Panorama hotkeys NEW! dota_primary_mm_language_override NEW TOGGLE_QUICKCAST_TP.bat NEW FIX LEGACY KEYS YOURSELF! NEW Toggle UI Animations OFF


    • #3
      Thanks for your response and the hint to check out dota2-gsi, it definitely looks promising.