Jump to content

spartan563

Member
  • Content Count

    31
  • Joined

  • Last visited

  • Medals

Everything posted by spartan563

  1. Hi Alpha-Kilo, We don't intend to completely remove the ability of Articulate to emulate key presses, in fact I'm pretty certain that functionality is here to stay. That being said, we'd like to move away from using it wherever possible as it is rather imprecise and limits what can be achieved. The biggest issue is that the delays necessary to ensure that key presses are registered by ArmA vary wildly from system to system and depend heavily on framerates and other factors - by moving to a scripted command system we could avoid this issue altogether. It would also allow us to introduce context specific commands like "One, move over there." or "One, get in that vehicle." which is currently not possible (at least not to any degree of accuracy) using key emulation. We're also trying to make things as universal as possible, so the interface between ArmA and Articulate has been designed to make it possible to integrate the same functionality with other games (in theory), allowing you to hopefully use Articulate in the future for things like DCS (wouldn't that be awesome). So, no need to worry that we're trying to remove functionality, just trying to improve what's there already and add features which weren't possible before.
  2. Hello everyone, It's release day again! I realize that we haven't exactly been sticking to a schedule, everyone working on the project has been seriously busy with work and life, and unfortunately Articulate has taken a bit of a back seat in light of that. We do have some cool news though, we have a new member on the Articulate team - Alec - who is to be in charge of getting an integration addon working with ArmA 3. We've been discussing this on and off, but unfortunately neither Michael or myself have the experience necessary to replicate the standard command menu in SQF/FSM commands. At this point we've got a functional interface between Articulate and ArmA 3 working, allowing us to execute scripts within ArmA from Articulate - a major step forward in removing the need for key emulation. With any luck, we'll have a bit more to share with you guys in the coming weeks. Unfortunately however, this release is more of a maintenance release, it fixes a few small spelling mistakes in the commands and adds a Swedish translation. I've also added an automated error reporting tool which should help reduce the turnaround time between someone experiencing a crash and us finding out the cause behind it - something which was previously a major headache for us and certainly hindered our ability to solve some common issues people were having. Changes - Added a Swedish translation courtesy of Mange - Fixed problems with the Supression commands courtesy of Will Hart - Added automated error reporting code to make finding bugs faster - uses Sentry As always, you can download the latest release at https://github.com/Mpstark/articulate/releases
  3. Hey Black4n, Could you try increasing your Key Release Delay in the advanced settings dialog - I have a feeling it's set too low for your current setup. A few versions ago we dropped the default delay from 100ms to around 50ms (I think, it might be 75ms) which works for most people - but a low FPS will mean that it doesn't work for others. Increasing it to 100ms or more should help resolve your problem. Good luck, Benjamin Pannell
  4. @Oktyabr unfortunately it's quite a step from the existing implementation to being able to change the input devices. Microsoft has made using the default input device easy by providing a function which automatically uses the default, adding the extra functionality will require another library and increase the size of the program. Nonetheless, I've opened an issue on GitHub for it and I or someone else will take a look at it when we get the chance. In the mean time, if you close down Articulate and switch your default input device you should be able to use it with any of your input devices (a bit more of a headache, I know). @djotacon sorry about the name issue, I assume you are referring to the download page on GitHub - in which case I have fixed the spelling of your name. Please let me know if there's anywhere else that you find misspellings. To answer your second question - yes you can use Spanish, simply click the flag on the menu and choose Spanish from the drop down which appears. Helping out can be done in many ways, your assistance with the translations has been invaluable and just testing new versions when they become available and reporting any issues you find is also a huge help.
  5. Update 0.2.5 Released - Fixes the team selection issue Comments Sorry that it's taken so long to get this release out - I know it was in high demand but I simply didn't have access to my development system over the holidays and wasn't able to compile/test the latest version to make sure it worked. I trust you've all had a good holiday nontheless, and just in time for the release of Campaign Episode 2: 'Adapt' here's the latest version of Articulate with the team selections feature fixed. I'm still really busy getting things organized, and will be for the next week and a bit, but feel free to leave comments, bug reports and feature requests and I'll try my best to address those I can given my available time.
  6. Hi everyone, Sorry for the lack of replies, I've been away on holiday and still don't have access to my development machine. Hopefully I'll be in a position to make a release with the changes pending on the development branch (fixes the Shift+Fx - Team selection - keypresses) some time around the 20th of January - don't worry, the project is far from abandoned. Thanks Festa_PWR for helping out with some of the questions, you're correct that Articulate doesn't require Microsoft Speech Recognition to be running, but it does use the same service, so using Microsoft Speech Recognition will result in better accuracy for Articulate. Mac D, as you noticed, only a few commands can be issued on their own, Articulate has been designed to process a full command "set" (All watch east) rather than single command components - this is very different to the way other hotkey applications work and gives vastly better accuracy since Articulate knows that (All watch advance) isn't a valid command. If you're having issues with accuracy, my suggestion would be to attempt giving the commands as you would to a human player (without excessively long pauses in between command components) or adjust your Command Termination Delay in the settings. In the mean time, I hope everyone is enjoying their holidays. Regards, Benjamin Pannell
  7. Thanks for reporting this Goblinbutt, I've since fixed it on the development branch so it should make its way into the next release. Appears I'd forgotten to update those specific commands when I made changes in v0.2.4, which ended up breaking the behaviour of multi-key presses. You are correct in assuming that we're now using Shift+F_ to select teams, the alternative (9-9-_) would take an extended amount of time, resulting in lowered accuracy.
  8. Hi DeThiCa, The default key release delay is actually 75ms, seems even that is a bit short for some people (especially with the team selection and assignment commands, for some reason those appear to present more of an issue than the rest). Generally I'd assume that the ArmA engine needs between 1 and 3 frames to detect the command and render the required menu, so if you are looking for the ideal delay for you then you can use the following equation to work it out. delay = frames * 1000 / min_fps As I said, I'd recommend choosing a value for frames of between 1-3 and then plugging in your minimum FPS. A good bet for minimum FPS would be somewhere overlooking a dense urban center like Kavala (they generally represent the greatest framerate hit) and then looking in the Video Configuration Menu to see your current FPS.
  9. Well, mouse buttons should be bindable - specifically Left, Right, Middle and Forward/Back buttons. If you've got a mouse with more buttons than that then my suggestion would be to use the configuration software to have those buttons emulate key-presses which Articulate will be able to use. The biggest issue is one of standardization, while it is indeed possible to write code which can detect the pressing of a button on a USB device - doing so in such a way that it works for everyone and all devices is a vastly more challenging prospect. I've opened up an issue on the project addressing it and I'll see what can be done about it - but it's the kind of feature which will take time to test and implement. Glad you're enjoying Articulate though :)
  10. Thanks @Pergor :) @Festa_PWR, you can see a list of the available commands on the wiki page. As for binding to a USB device, I assume you are referring to a gamepad/joystick of some sort? If that is the case, I will look into adding it when I get the chance however the current code doesn't have any easy way of implementing such support.
  11. Hi Alpha-Kilo, Thanks for the remarks - I've made a patch release which addresses the freeze issue when changing languages, it should be available at the usual download location. I've also added links to all existing translation files to the translation wiki page. As for the custom commands, unfortunately I cannot give an ETA on that functionality as I am not running that aspect of the project. At the moment I'm in the middle of exams followed by a holiday in which I will be away from my computer for a month at least - if the functionality hasn't been added by the end of January then I'll take it upon myself to implement (sorry that it's a long way off, but I simply don't have the time at the moment
  12. Hello everyone, Release day again - this time with a bunch of new translations and features coming along for the ride. Hopefully some of these features will help make using Articulate easier, while others are aimed at making it work more reliably on a wider range of systems. New Features flyingcroissant has added a sound effect engine which allows sounds to be generated for different events. This should allow you to quickly determine whether or not Articulate has understood your command. This feature can be enabled from the settings menu, and custom sound packs can be used if you wish to customize the behaviour. I've also added the ability to customize the delay between key-presses that Articulate sends to ArmA. This should have a serious impact on the accuracy of commands on systems with a low frame rate. If you've previously had issues with commands not executing correctly despite them being recognized correctly (you can check this by looking at the UI) then please increase this value until things start functioning correctly. Changes - Spanish translation courtesy of Dj Octacon - French translation courtesy of Wismerheal - Display translations names in their localized form instead of English - Added sound effect engine as well as a default sound pack courtesy of flyingcroissant - Allows key press delays to be adjusted Thanks to everyone who helped contribute to making this release possible.
  13. Ah, good to know and have confirmation of my suspicions. I think it'll probably be good to allow adjustment of key-press delays in light of this so that people can tune Articulate to work on their machines. Also, out of curiosity, how much of a difference would it make to be able to say "all except 3, 4, 5 advance"? If it's something in demand then I'll open an issue for it and hopefully it will be implemented. Confidence Margin controls the cutoff level which determines whether a command is "recognized". More specifically, when the Microsoft Speech Recognition API detects speech it reports how confident it is in its recognition (a value from 0% to 100%). By adjusting the confidence margin you are able to set your lower limit for how confident you want the SAPI (Speech API) to be before Articulate executes a command. I have found that values around 70% work well initially, however after training the speech engine I routinely get upwards of 85% accuracy on my commands - so I could feasibly increase the confidence margin to ensure greater accuracy. Hope that clears some things up for everyone.
  14. Thanks for that, seems to indicate that (at least in most situations) it is triggered by commands which take more than two key presses to navigate the menu. My working theory is that this has to do with the framerate of the machine on which Articulate is running on so I'm going to add the option to adjust the delay between key-presses which should hopefully help alleviate this issue. As for the medic ignoring your command, I really have no clue as to what would be causing that - the "all ..." commands use the tilde (~) key to select your squad so I wouldn't expect some units not to receive the order unless you had already selected some of them. I also like your idea of a "Do as you're told, or else..." command but unfortunately I'm simply not experienced enough with writing SQF and FSM scripts to be able to do anything along those lines - I'm currently working on an Addon for ArmA which will allow the execution of scripting commands from Articulate however I haven't yet got it to a stable/testable point. I think your issue with invalid commands showing the menu could be Articulate recognizing a command as simply a selection of units (i.e. 'three') which is also technically a valid command for Articulate. Selecting a unit will then cause ArmA to show the menu - not sure how we can avoid that issue since I think there are cases where it is useful to say "three, four, five" and then use the mouse to contextually give an order. I guess my best recommendation would be to increase your Confidence Margin option, which should reduce the likelihood of this happening when you haven't actually given a command.
  15. Hi guys, Thanks for the bug reports - I'll look into it and try to reproduce the issue on my side. Could you let me know if commands such as "all watch direction east" aren't working as well, as that may indicate that it is an issue with delays which isn't experienced with shorter commands. Thanks, Benjamin Pannell
  16. Hi everyone, Release time again - this time addressing a few irritating UI quirks (freezes and the like) and adding a German translation, thanks to Alpha-Kilo for that. Another nice addition is the presence of a context (right-click) menu for the tray-icon, allowing you to close Articulate without opening up the UI, a little change but one that makes a surprisingly large difference in practice. We've also been working on the backend to help streamline how commands are executed, this has the advantage of both reducing the overhead of dispatching commands and allowing us to design considerably more flexible output scenarios. One of the cool new options this has opened up is the ability for us to implement output schemes which don't necessarily make use of Keyboard/Mouse output emulation, for example: sending data directly to ArmA through an Addon or controlling other applications through any APIs they provide. Changes - German translation courtesy of Alpha-Kilo - Fixes to the English translation on the languages page - Fixes some UI elements not updating when the language is changed - Added a context menu to the tray icon - Fixes a UI freeze when adjusting command timeout values - Improvements to the way output operations (key presses) are dispatched - reduces overhead - More backend work to make supporting customizable commands possible SQF/Addon Developers? This neatly brings me to the next point on our list of things to do. One of our goals for this project is to provide the ability to execute commands without requiring keyboard/mouse emulation (as it is slow, imprecise at times and restrictive in terms of what we can do with it), at the moment we're looking at something similar to JayArmA2Lib or XHSI_A3_MFD which would allow us to directly gather information, and send commands to the game. Ideally this would allow us to handle > 10 units in a squad without having to resort to the rather hacky F11, F11, F12, F1, F11 "solution", as well as allowing context specific commands like "All, move there" issuing a move order to your current cursorPosition. Unfortunately, Michael and I are not the best of SQF programmers, especially when it comes to writing up complex Addons for ArmA. As such, we'd like to ask for anyone in the ArmA community with the requisite scripting knowledge to provide this functionality (I can handle any Extension development if necessary) who'd be willing to help out to get in touch with either one of us. Regards, Benjamin Pannell
  17. It could be any number of things, keep in mind that Articulate will not work anywhere near as well (or at all) if you try to use the same dictation format as you would have used for VAC. Where VAC attempts to recognize single discrete commands and translate those into keystrokes, Articulate attempts to recognize sentences and translate those into sequences of keystrokes to carry out a given command. So where with VAC you would say "Two (pause) Three (pause) Four (pause) Face Direction (pause) North", Articulate expects you to say "Two, Three, Four, Face Direction North". You can tweak the maximum time between words under Advanced Settings if you find yourself regularly pausing between words for long enough that Articulate believes you've finished the command. If you're still having issues after reading this, could you please provide some more information on what you mean by your statement? Going into the Articulate UI and saying commands - does it display the command you expected, or does is display "What was that?". Does adjusting your confidence margin (under Settings) have any effect?
  18. Sorry about that, it should be fixed now.
  19. Hey everyone, It's been a bit of a slow week for Michael and me, with work and life stealing away time that would otherwise be spent on this project. In light of this, our latest release doesn't have the same massive number of changes you've become accustomed to - this release is actually more of a back-end revamp for much of the UI and Key Press emulation code to ensure that it works for everyone before we start implementing new functionality on it for the next release. Changes - Support for localized user interfaces through the use of translation files. - Support for compound key presses (so we can send commands like Shift + F1 to ArmA, this is not yet being used). - Minor UI tweaks to enhance usability Translation The translation engine I've implemented allows you to select the language you wish to use from the new languages menu. Articulate will attempt to default to the language you have set on your PC if you haven't selected an alternate translation from the languages page. At the moment we are only shipping an English translation, but the objective of this release is to give people who are interested in contributing translations the chance to develop their own and test them out. If you're one of those lovely folks then please take a look at our Translating Articulate wiki page for information on how you can go about doing so - and feel free to ask any questions you may have about it here, I'll do my best to help you. And as always, if you have any suggestions about new features you'd like to see implemented (that haven't already been listed on our To-do page) please let us know. Regards, Benjamin Pannell
  20. @Herzach We've considered that approach, however it has the obvious drawback of being incapable of handling situations where the user has manually moved the bar (F11/F12) prior to executing the command. While it is theoretically possible to get around this by pressing F11 a few times before navigating the bar - one needs to keep in mind that we need approximately 100ms per keystroke (for the game engine to recognize that a key was pressed) which would imply that your average command on units 20-30 would take 0.8s to complete. It also introduces an overhead on all other commands (except "all"/"team"/"squad" selectors) of 200-300ms for "zeroing" the unit bar. I personally feel that it would be better for us to hold off on implementing this functionality until a dedicated addon can be created which negates the need to emulate key-presses - therefore allowing us to instantly execute commands on specific units with certainty as to which unit we're executing the commands on. In the mean time, maybe we can implement a "next page"/"previous page" command to press F12/F11 respectively? From there you will be able to select units 11-20 using the standard "one", "two" etc. selectors.
  21. @m101 You can solve the problem temporarily by manually editing your settings file and changing the "arma2co" entry in that to "arma2oa". Your settings file is located at %AppData%\Articulate\Settings.xml, which you can open by pressing Win + R and pasting that in. Hopefully that'll tide you over until the release of our next version.
  22. There is currently no workaround, Microsoft's Speech Recognition has to be installed for this application to work. As far as bundling the libraries goes, not only do I believe this is illegal but it would also needlessly increase the size of the installer for those who have speech recognition installed already (most of the users, and any user upgrading the software). Something we may be able to implement in future is the ability for the installer to detect if Speech Recognition is installed and suggest the download link if it is not.
  23. Progress Update By the looks of it, binding different sets of keys to Push to Ignore seems to be a rather important feature, as is the ability to bind combinations of keys (Shift + Space etc.) - in light of this, I have rewritten the key handling logic to provide the following functionality: - Bind multiple distinct key combinations (Alt + Space, Ctrl, Alt + CapsLock, etc.) - Bind multiple keys to a combination (Ctrl + Space etc.) - Bind combinations of mouse/keyboard keys (Ctrl + RMB) - Bind random combinations of keys (C + V etc.) It has resulted in a slightly more cluttered settings popup for the time being, so we're working on adding a separate settings window to help clear things up. Whether all this will make it into the next release is yet to be decided, we'd like to make a release ASAP to address some of the issues you guys have been having (Lack of ArmA 2 OA support etc.) and may end up holding off on releasing the new key-binding code and settings window as a result. So, look for this new functionality in either the next release or the one following that. Confirmed Fixes for Next Release: - ArmA 2 Operation Arrowhead will now receive key inputs - It is now possible to bind mouse buttons at the command keys - Improved application loading performance Michael has also been working on some major improvements to the speech engine grammar which should hopefully allow for the implementation of custom commands and even different grammars (supporting games outside ArmA) once that is completed.
  24. I've actually had an idea which offers a workable alternative, keeping the basic UI functionality as simple as possible while still allowing us to provide this and other, future, options. I am looking at implementing an Advanced Settings window in which you will be able to manage settings beyond the scope of your average user's configuration. These will include the ability to map multiple key-combinations, as well as providing tools to tweak your grammar etc once that is implemented. I am also going to be replacing the current binding code with one that allows you to easily bind compound key-presses (Shift + Space etc.), hopefully in time for the next release.
  25. @Herzach I'll see what I can do about implementing this. Technically it is entirely possible, but doing so in a way that is still easy to configure and doesn't require explaining will require some thought. For the next release, I'll try and get the supporting code in place to allow this. Update I've got the code implemented to allow this functionality, but it poses the question: If you're running in Push To Talk or Push To Arm mode, would you prefer to allow combinational key-binds (Shift + Space) or (as requested by Herzach for Push To Ignore) "any of" key-binds (Shift or Space). If necessary, I can also make switching between the two possible - however that will further complicate the UI and make it more difficult to use for new users. What are your thoughts?
×