Request information on building 3rd party client to tie text to keybind

Discussion in 'Player Created Resources' started by Ravicus Domdred, Oct 26, 2016.

Thread Status:
Not open for further replies.
  1. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    I would like some feedback on how hard it would be to create a third party app to use for RP PvP, or even combat pve. If you played UO you could remember the ability to say a couple words that would keybind to keys on your keyboard. You could also tie text to spells when casting. Say you hit Num1 and it is set for stone fist. Well in addition to that at the same time and same keybind it would allow you to say short phrases like (press nmb1 cast stone fist) *Eat Stone you Fiend* or Num2 (num2 cast root)*You cannot escape!* Things like this. How hard would it be to make something like this and how much would it cost if I was to think about funding such a thing?
     
    Moiseyev Trueden likes this.
  2. Moiseyev Trueden

    Moiseyev Trueden Avatar

    Messages:
    3,016
    Likes Received:
    8,439
    Trophy Points:
    165
    Gender:
    Male
    Location:
    California
    Not a clue, as I'm not familiar enough with Unity. But it sounds awesome and I'd love to help if we can get something going.
     
    Ravicus Domdred likes this.
  3. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    im trying to find a pic of the menu screen that allowed you to do it in UO, but its kind of tough lol. I will post it here if I find it.
     
    Moiseyev Trueden likes this.
  4. Weins201

    Weins201 Avatar

    Messages:
    7,121
    Likes Received:
    10,958
    Trophy Points:
    153
    You are talking about something that could be something they do not want used, you should first ask them about the programs like they have asked for in the "Banned" thread, this is not a public issue

    BTW almost every programmable mouse / keyboard allows you to enter text or anything you want with a key stroke.
     
    FrostII likes this.
  5. Snazz

    Snazz Avatar

    Messages:
    650
    Likes Received:
    665
    Trophy Points:
    93
    Gender:
    Male
    Location:
    SK / BKK
    Autohotkey app. Very flexible scripting tool.

    Just map the keystroke/macro/mouse button to whatever text you want as output.
     
  6. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    this was the in game macro interface in UO that allowed you to keybind text to key as well as a spell or action. :)
    http://imgur.com/a/mn4ba
    [​IMG]
     
    iansmellios and Moiseyev Trueden like this.
  7. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    this could be used for Role play, guild ceremonies, and theater troupe performances
     
    Moiseyev Trueden likes this.
  8. Snazz

    Snazz Avatar

    Messages:
    650
    Likes Received:
    665
    Trophy Points:
    93
    Gender:
    Male
    Location:
    SK / BKK
    Definitely handy for RP and running parties (if you aren't on voicechat)

    And just some flair combining phrases and emotes.
     
  9. Weins201

    Weins201 Avatar

    Messages:
    7,121
    Likes Received:
    10,958
    Trophy Points:
    153
  10. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    if you can read what you posted it says related to resource gathering. I am just talking about text (speech) not anything more.
     
  11. redfish

    redfish Avatar

    Messages:
    11,366
    Likes Received:
    27,673
    Trophy Points:
    165
    @Ravicus Domdred, It would be easy... I've made programs before that send keystrokes and other types of input to Windows apps. You can also intercept keystrokes...
     
    Snazz and Ravicus Domdred like this.
  12. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    I am not dumb but I just do not know about these things, I build barb wire fences for a living lol.
     
  13. redfish

    redfish Avatar

    Messages:
    11,366
    Likes Received:
    27,673
    Trophy Points:
    165
    Good work! Barb wire fences protect people against cannibals.
     
  14. Lazlo

    Lazlo Avatar

    Messages:
    1,497
    Likes Received:
    3,223
    Trophy Points:
    113
    It's easy to make an ahk script that sends input when a key is pressed if SotA is the active window, but it's not quite that simple for chat because the script has no way of knowing whether or not your chat window is already active. It would work most of the time by sending enter and then the text that you want, but it wouldn't work if your chat box was already active, and in that case whatever you were typing would get cut off and sent.
     
    Ravicus Domdred likes this.
  15. Snazz

    Snazz Avatar

    Messages:
    650
    Likes Received:
    665
    Trophy Points:
    93
    Gender:
    Male
    Location:
    SK / BKK
    The real missing piece is something like %t for a target variable. Makes heals etc far better for 'speech additions'

    AHK could begin with a set mouse click to a lower left coordinate to activate the chat window if not already
     
    Lazlo and Ravicus Domdred like this.
  16. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    Like I said previously I do not know much about this.

    What if you where able to have 2 chat clients open? one set for specifically this program(the program would target this one) and the other for local/party/etc.... chat. Not sure if that would work or could work just spitballin.
     
  17. Lazlo

    Lazlo Avatar

    Messages:
    1,497
    Likes Received:
    3,223
    Trophy Points:
    113
    Using a separate chat window is probably a good idea anyway since you will have to change to local channel to avoid whispering messages about stone fist to your friends. I don't think it really solves that problem though since enter probably re activates the last used chat window (not sure about that). The only way to ensure that your chat window is active when you send the text is probably to send a mouse click to the chat bar coordinates of that window like Snazz was saying. That's a little bit ghetto though since it relies on your chat window position staying the same in order to work.

    edit: you will also have to avoid using normal numbers or letters for your hotkeys, otherwise your text will fire when you are typing.
     
    Last edited: Oct 26, 2016
    Ravicus Domdred likes this.
  18. Umuri

    Umuri Avatar

    Messages:
    527
    Likes Received:
    1,828
    Trophy Points:
    63
    Being entirely candid, it's not likely without breaking the rules or the devs giving an explicit ok that you can violate them.
    The reasoning is as follows:
    1. Without directly interfacing to the client, you will incur interface delay, which is the time between you send or programmatically emulate a keypress, to where the client recieves it, processes it, and shows it.
    2. Directly interfacing with the client is against the EULA explicitly.
    3. Therefore, we must send emulated keypresses. Each keypress, at 60 fps, has a minimum roundtrip time of 12 ms. So a 5 keypress sentence would be 60 ms. Plus 20 more for the two enters.
    4. This can be circumvented by limiting each action to enter, paste, enter, and putting your data directly into the clipboard.

    Therefore, in the best case scenario:
    You're looking at an extra 40-50 ms in the most ideal cases, per action, in a pvp situation.
    Note these are ideal. In practice, on most people systems, this delay is closer to 200ms. Which is measurable.
    Also note any player action during these 50 ms or 200 ms, can invalidate/throw off the whole situation. And cutting off player input in a pvp situation can be disasterous.

    For rp purposes outside of pvp, I know there is already one app that does bulk chat input.
     
    Lazlo and Ravicus Domdred like this.
  19. Ravicus Domdred

    Ravicus Domdred Avatar

    Messages:
    3,708
    Likes Received:
    9,037
    Trophy Points:
    165
    Location:
    Get In MY BELLY!
    What if you had Portalariums approval on it and let you directly interface with the client? (not sure if this is possible) but if they liked the program they might implement it? It probably is not possible but just asking. Kind of like using the keybinds in the game settings but adding the ability to add text to it.
     
  20. Alley Oop

    Alley Oop Bug Hunter Bug Moderator

    Messages:
    15,678
    Likes Received:
    19,463
    Trophy Points:
    153
Thread Status:
Not open for further replies.