Jump to content

nkenny

Member
  • Content Count

    1275
  • Joined

  • Last visited

  • Medals

Everything posted by nkenny

  1. @kju Stance and combat modes I mention stance because in combination with the cover system present in Arma3 you will get a reasonable combatant. Stance -- not necessarily fully dynamic -- is something which could fit within the 'combat mode' packages you've described above. With that said, toggling group stances is something one can do with reasonable ease through the command menu. Specifically the old one, i.e., the Operation Flashpoint era one which is hidden behind the quick-menu. Just press the correct button. Persistent menu options That is the context in which I mention the '6 action menu'. Press 6 and a list of available actions will be shown. The problem is that this list is populated with a mess of options. There is no system and absolutely no persistence. In the stress of combat, it would be convenient to be able to quickly press, F2 (Soldier) - 6 (menu) - 1 (treat self), to make the AI treat itself. Key being that option 1 is _always_ the same. It is consistent. This also removes the need to walk over to the AI and use the 'quick' menu with its sometimes annoyingly fluid options. Retreat I have experimented quite a bit with ways of getting the AI to break off combat. Most of the time it is possible to disable various AI features, but if the currentCommand is 'ATTACK', the only reliable way I've found is to remove that unit from the group then re-add it. Cumbersome to say the least. For context: https://github.com/nk3nny/LambsDanger/blob/master/addons/wp/functions/fnc_taskAssault.sqf Building interaction I've spent a fair amount of time getting AI into and out of buildings with LAMBS AI. What I mean when I brainstorm a better user interface is a system which marries easily to the existing one. Select one unit and it will render the exact building position the AI will seek. Select many, and it will still only show one. The other units will mill uselessly about. Idea: Have the accompanying units instead move to the next nearest defined buildingPos. Simple. Easy. Intuitive and useful. Suppression The interface is to select a unit, point at something, press alt, scrolling down, all while avoiding looking at the wrong thing, selecting the wrong action, and so on. Hardly ideal. I do agree that conceiving of a better system is not so easy. The benefit of having a system by which a timer (however crude) could be defined is that often a single burst of suppressive fire is insufficient to let the AI move forward. Often a continuous volley of two or three is required. If the player is part of the maneuvering element, he or she will often choose a path of concealment-- which precisely makes it impossible to use the 'quick' interface. I do not agree that suppression is ineffective. Quite the contrary. While less so against players, AIs under suppression suffer dramatic drops in accuracy: https://www.nopryl.no/smfprod/index.php?topic=6908.msg88120#msg88120 also: Misunderstandings Perhaps I am misunderstanding the type of feedback or scope of project you are working on. I was conceiving this as a expansion or modification of the existing 'quick command' menu and the background 'Operation Flashpoint' styled one. Cheers, Ken
  2. @JD Wang It affects every unit, but should do so without causing any issues. Of the two, only vehicle crew have any special interaction with their vehicles-- that is, turreted vehicles will engage in very aggressive suppressive fire against buildings and suspected enemy positions. Turning off the LAMBS unit AI is the equivalent of disabling AI "FSM". When I make missions I do so on units which require extra fine control, or that I want to be dumber-- for whatever reason. 🙂 @gerhart You can read our license here: LICENSE. All code is available from our gitHub. The shortest interpretation of the license is that we do not allow reuploads on Steam which may appear to be the 'official' version-- and that we do not allow for monetization. We also ask that in the spirit of openness, you release your source code. The earlier versions of the mod are more standalone and do not require CBA. Simpler structure is probably easier to maintain and modify as well. I'll check your mission later. Looks cool. @Knight81 That depends on the use. In theory mod only needs to be run on entities, servers or clients, that are expected to host or control AI forces. In practice, this is usually limited to the Server and Headless clients, and any Zeusing player. I Also, as is noted-- if mission makers start to use certain specialised Waypoints and sub settings (these are marked in the UI), this may cause mission mod dependencies. In which case: any connecting clients will be asked for the mod. All in all, the mod is fairly lightweight and can easily be run on all clients with little to no performance penalty. If run simply as an enhancement of existing content: only servers, headless clients, and potential Zeusers. If run as a integral part of mission making: all servers and clients. -k
  3. @Unleashthepain It may be the Reaction state triggering on your own group. It only happens once combat is initiated however-- and only one time. You can toggle this option in CBA configuration. @oldy41 There are no such features present in the mod. Perhaps something else is interfering? 🙂 @domokun Glad you enjoy it. We're working hard to maintain compatibility across any scenario. I actually haven't tested singleplayer all that much, admittedly most of the more extensive testing happens in an MP environment. With that said, because the mod doesn't interfere with existing waypoints or other settings-- it should work fine. -k
  4. @JD Wang At the moment, no. It is what I would like to cover with the profiles concept. Basic idea being that instead of solely tuning skill settings-- which are opaque at best of times-- you simply trigger a profile selection. I guess in hindsight defensive could be one of them. -k
  5. I have not been able to get the Disengage command to do anything useful in Arma3. Once a unit is locked into currentCommand "ATTACK", the only way of reliably disengaging I have found is a combination of forgetTarget and creating a new group (before readding) is necessary. If someone knows a better way, I would be very happy. -k
  6. Another interesting thread, kju! I have spent an inordionate amount of time controlling AI groups. I'll list off some of the falws that have always annoyed me or made the command menu unecessarily cumbersome. 90% of combat modes are useless. The single best and most important way of ensuring survivability is stance. Being shot at or need to sneak. Force PRONE stance. Assaulting. Force CROUCHED stance. Escaping, disengaging or otherwise is hard. In Arma2 it was possible to force "UP" stance and set formation to "COLUMN" which seemed to offer more direct control of the group. I seem to remember reading this somewhere, but I've failed to find documentation for this. (certainly there is an extra config parameter that remains in ARMA3-- though I find little real difference). The bounding behaviour exhibited by Combat and Stealth combatModes are invariably of dubious value. In stealth the short standing rushes work contrary to the purpose of the order. In Combat, this will often leave the unit standing exposed. The '6' Action menu is a mess. There are two problems here. 1. The list is populated by actions which are far to distant to the unit in question to be useful 2. Useful commands within the list are dynamic and therefore not dependable in stressful situations. Three comands I would like to see persistent and unyielding. 1. Treat yourself 2. Access subordinate inventory 3. Access inventory (essentially run to nearest object with inventory access-- typically crate or vehicle) It would also be useful if the actions relating to picking up weapons and so on would have a distance measure in meters. Interacting with buildings is hard. It would be supremely useful to be able to point at a building. Select relevant units (F1-F12 menu) and then with a single button press have them move into the building. This has both offensive and defensive potential. It does not really need to be much more complicated than that. (Adding more options seems to add overhead to something which ought to be a simple system). Suppression. While setting up suppression isn't difficult, per se, it is somewhat cumbersome to set up persistent suppressive fire. It is a shame that suppressFor seems to have little effect. Being able to order 10-60 seconds of deliberate fire on a position would have been a godsend. -k
  7. @cpt.ghost Those are some interesting thoughts. 1. Currently the hiding script performs the dual tasks of actually hiding units inside buildings, but also placing them there. The fn_assault function will also keep units within buildings static most of the time (therefore not abandoning positions willy-nilly). I had at one point thought to include some more intelligence movement internal to the building. Perhaps if I can scrounge or make some light-weigth solution which makes it easier to find positions from which the AI can engage in the direction of the enemy from inside the building. 2. The problem you describe is difficult. It is of course present in the vanilla AI as well. The problem is one of context. As a mission maker and human, you understand rules, briefings, and positions of power. Sometimes ROE allows chasing down enemies, sometimes it does not. Sometimes ROE should be broken, sometimes not. Any soldier will have received a briefing about the expected direction of attack by the enemy, abstract or not. This in turns informs which positions should be abandoned, and which cannot. If this analysis sounds philosophical, it is because it is precisely a question of epistemology. It is a question of what the AI knows. It is admittedly a weakness of LAMBS Danger.fsm that it does not leverage the vanilla Combat Modes to any sensible degree. Which means that one easy avenue of controlling what the AI expects is closed. Perhaps certain combat modes should have different executions within the FSM, though the vanilla AI does a poor job of demonstrating any such sensibility itself. Another option may be to read 'HOLD' waypoints and possibly 'Guarded by' positions in a more strict manner. These locations are expected to be held. Essentially, those which are marked as 'Guarded by', hence assigned by the Mission Maker as areas of interest. Adding an intelligence with these elements may give the AI intelligence the type of information it requries to make sensible decisions in tune with the Mission Makers overall goals. I'll have to think about it. If anyone else wants to chime in, I would be very happy. -k
  8. @Machiya Glad you enjoy the mod :) I agree that squad cohesion is something of an issue. The best way to approach it would be to rewrite parts of the squad cohesion FSM (which is distinct from the combat fsm!). However, much of the functions run in it are inaccessible to easily edit. So If I were to rewrite it, like I have done in the Orkz mod, it would come at the cost of much of the dynamic seeking cover routines (leaning around corners, and dropping behind fences). Routines which are handled in engine (for speed) and I am unsure if I have scripted access. Other features, like the unspoken buddy-pair bounding (in fact, it is litterally spoken. Seems to be keyed into vocalisation and callouts) are tied to this as well. Unless mine or other experiments show it to be possible to effect core movement in gainful manner. Its going to be tough. My plan is to make the leader rally phase be just that. Perhaps adding more shared assault routines will also help-- sharing not only target information, but actually assigning more shared targets-- which presumably will generate more cohesive results as the squad attempts to get at the same target. Hmm.. your comment definitely spark potential! -k
  9. Unfortunately this section of the forum is neither for requests nor Arma2. Expect it to be locked or moved. As an alternative, check out Red Hammer Studios series of mods for Arma2. These are available from armaholic.com . As another alternative, the LAV-25 does have as I recall a 3 man crew and is a close equivalent. -k
  10. @Devastator_cm In seconds. Good catch. I will update the description for the next version. The AI will drop prone when explosions trigger near it. It will only repeat after X seconds has passed (to prevent it from happening too often). The new switch also allows for it to be turned off. -k
  11. Thanks @madrussian, glad you are enjoying it! That looks like a cool mission. To answer your question: 1. The individual call for hiding is accomplished by the fn_hideInside function. You can read the current task of individual units by the "lambs_danger_currentTask", which in the case of hiding will read "Hide". Now the hiding call can come from multiple sources: - Immediate reaction to contact - Panic - Leaders calling for it - Being shot at and not knowing the source. Some situations will also trigger CBA styled eventhandlers. Which is implemented for some but not all events. These are unfortunately no fully documented and will likely see expansion in the coming versions. 2. Not as of yet. It isn't a bad suggestion at all. Considering your next question, and taking into account the amount of extra scripting you evidently do-- it may be a better solution to disable the group AI completely. Then call for those functions, LAMBS or your own, to fit your specific mission needs. At least for mission essential units. 3. Absolutely. Simply call the relevant functions. The WP styled scripts are documented earlier in the thread. Others are listed under the "fn_leader*" in the gitHub. 4. Never. It is a design goal of the core component that LAMBS Danger merge seamlessly. This means never altering existing waypoints nor toggling enableAI/disableAI features. The waypoints are stood somewhat beyond this design goal and are allowed to push the envelope. The logic being simply this: When LAMBS WPs or custom scripts are used, they are meant to be used by the mission maker. -k
  12. I am very happy to announce: LAMBS Danger.fsm New Release: Current version 2.1.0 Changelog - Added ZEUS modules 'set radio', 'disable unit AI', 'configure group AI' - Added CBA configurable settings for many features - hiding from tanks or aircraft, autonomous group maneuvers, disabling all information sharing - Added ability to configure which formations count as CQC ones - Added setting to automatically add all artillery - Added ability for fleeing infantry to abandon vehicles - Added new FSM state a variable, "lambs_Danger_forceMove" to have an FSM level force move option - Added new FSM forceMove mode to contact and maneuver leadership states - Added groups to exit CQC mode by changing formation - Added fn_assaultSpeed to adjust movement speed based on ROE and distance to target. - Added support for old variable (will be decrepitated) - Added isolated squad leaders will try to regroup - Added maximum knowsAbout while sharing information to prevent instant combat mode - Added new 3d helpers for fn_assault to debug - Added new debug markers for shareInformation - Added configurable settings for Explosions EventHandler - Fixed changes to suppression speed to prevent units from becoming stuck - Fixed significant flaws in vehicle suppression. Vehicles would occasionally target nearby buildings to themselves rather than the enemy. - Fixed Prevents busy AI from being ordered to man static weapons - Fixed occasionally players being forced to do animations - Fixed Units set to assault a position will now complete the assault even if the target is killed - Fixed Speed levels to allow shooting while moving in close combat - Fixed leaders in reaction state will now be slower and more static - Fixed LAMBS mod naming scheme the same as CBA and ACE3 - Changed made suppression function more reliable - Changed made infantry less susceptible to cowardly behavior for gameplay reasons - Changed added more time for Suppression in FSM (prevents spam) - Changed group assessment and reorganization phase - Changed maneuver phase by balancing distance and suppression - Changed Fleeing state. Units will now prefer running to standing - Changed Leaders assigning buildings for CQC will now only pick buildings between them and the enemy. - Changed various fn_assault and fn_building settings to make for better close combat fighter - Changed aggression in the FSM movement. Increased mobility. - Changed the wording on debugDraw expected destination to something smaller - Removed "lambs_danger_dangerAI" group variable. Replaced with "lambs_danger_disableGroupAI", a boolean expression. Patch 2.1 The overall theme of this patch has been Quality of Life and improving existing systems. Player led units should be easier to control and perform closer to expectations. Alongside this has been a major refinement of existing features: The suppression module has seen improvements to target selection and distance checks. Vehicle suppression has been improved in similar manners, and now actually perform as intended(!). The AI's close quarter battle skills have seen similar improvements. By adding smoother changes in speed, you will see more instances of moving and shooting. Target prioritization and core movement skills, flow through in clearing, has seen similar enhancements. Unit communication has also received an overhaul. In previous versions units would be instantly and fully knowledgable (presence of) about any known unit targeted with CQC range. This effect has been removed, so the AI will be more exploratory when securing buildings. The information sharing feature itself has been tweaked. The maximum knowsAbout value which is communicated is now 1. (1.5 is typical range of which a target is fully known. 4 is max). This has the effect of unis sharing information, but with less certainty. It also prevents unis far removed from the action to behave as if they are under immediate threat. Indeed, units with greater than 1.5 knowsAbout can be confused by contrary messages coming from other sources. All in all adding to the simulation. Units which are currently communicating are shown doing a "radio animation". It is also possible to switch off all unit communications. Unit fleeing and cowardice has seen improvements. It is now possible to fully switch off the feature and units are in general less likely to self-decide to hide from tanks and aircraft. Fleeing units will now abandon cover if spooked more frequently and will also sometimes abandon vehicles if directly threatened. Finally a slew of customisation options has been added to the CBA menu. It is now possible to toggle or tweak many more features. Including configuring which formations are considered 'CQC'. It is possible to automatically add all artillery to the relevant side. And the naming and wording and description for some of these settings have been clarified. Also, three new Zeus modules have been added to toggle various setting. Consider this a test platform for the changes ahead. Variable change Based on input, thanks @Ryko, and the sheer sensibility of the suggestion, one of the variables has been changed. The old variable remains functional, but will eventually be decrepitated. To disable group-level assessments and maneuvers, either toggle the relevant CBA option, or set the new variable for that particular group: <group> setVariable ["lambs_danger_disableGroupAI", true]; It remains possible to disable all FSM enhancements made by LAMBS danger AI with two options: <unit> setVariable ["lambs_danger_disableAI", true]; <unit> disableAI "FSM"; Next step This version has focused on quality of life and refinements of existing features. The next area of focus will be richer in features relating to mission making. We are adding new Zeus modules and rewriting (and in some case revamping) many of the existing way points. Currently these features exist in a not fully supported manner-- i.e., lack of headless client support and certain matters of scripting. Feature wise for the team is exploring added shouted callouts and * as always, hunting for some appropriate animations. Thank you for playing - nkenny and the team --- STEAM Workshop --- GitHub ---
  13. The mighty Killoch's. In regards to information sharing. Some of it seems to be handled on a deeper level, but I have made alterations to information sharing, which will have some effect. It is also worth noting that while information _that_ there is an enemy is not accurate _where_ that enemy is. Good movement an concealment skills are key! That Said. Yes, the AI does spot you and communicate in a very robotic manner.
  14. Teaser on release: shown is the effect of the new debugged vehicle suppression module. https://streamable.com/zi7ri Other mods: ACE/ACRE/JSRS/K_MNP
  15. @sbua16 Glad you had a good run 🙂 Did you by any chance run the Hunters on one of the CQB formations -- Delta or File? That will generally cause the behaviour you experienced. The AI will handle itself quite well without extensive waypoints. Though HUNT only targets players -- I'm guessing they communicated between themselves and just acted on the default mod behaviour. -k
  16. @ribera1945e Those features are added in 2.0.3. One RC test away from release 🙂 Turrets may seem to track at further distances than vanilla because every soldier is a sensor periodically sharing information between groups. This does make for more dangers vehicles in a sense. Could that be it? -k
  17. @johnnyboy Known issue! We're putting out a nuclear fix quite soon. As a temporary solution disabling group AI on the player led group might work. <group> setVariable ["lambs_danger_dangerAI","disabled"]; <-- OLD <group> setVariable ["lambs_danger_disableGroupAI",true]; <-- CURRENT RELEVANT
  18. @Devastator_cm Which ones? I think all scripts are present in the release. Unless you are talking about lambs_suppress and lambs_rpg which I want to continue having distinct for reasons of compataiblity and scope. Incidentally the waypoint scripts can be called from anywhere. Generally these follow the same pattern of use. They may be called on group or unit. Secondary argument is optional and sets range in meters. [group1, 500] spawn lambs_wp_fnc_taskRush; Rushing script to the default 500 meters. [group1, 700] spawn lambs_wp_fnc_taskCreep; [group1, 300] spawn lambs_wp_fnc_taskHunt; And so on. https://github.com/nk3nny/LambsDanger/tree/master/addons/wp/functions --- Task assault differs somewhat in use. It makes groups rush heedlessly of danger with a BOOLEAN toggle to make the unit flee instead. * Arguments: * 0: Unit fleeing <OBJECT> or <GROUP> * 1: Destination <POSITION>, <OBJECT>, <GROUP>, <MARKER> * 2: Forced retreat, default false <BOOL> * 3: Distance threshold, default 10 <NUMBER> * 4: Update cycle, default 2 <NUMBER> [group1, loc1, false] call lambs_wp_fnc_taskAssault; --- Some of task* series scripts still run while/waitUntil loops. These will be written in some future version. The API will remain consistent. Ken
  19. @rangerpl Thanks for the report. I will look into the information sharing aspects. In regards to vehicles. Yes! It is a fairly major problem that I've experienced in our own sessions. Something must have gone wrong in the latest versions, because it hasn't been a problem before. I hope to push a hotfix soonish. Just need to finish a scenario for our Tuesday session first. Ahhh, the life of mission making in Arma. ^^ @Machiya You might just gone and found the 'forced animation' culprit! Thanks Ken
  20. @fawlty Thanks! Yeah, I have on occasion found the same thing to happen. Mostly it occurs on community made maps. Seems a problem with pathfinding, to which there is no easy workaround. @TWRoach Absolutely. If you run the lambs danger fsm you can do so by waypoints. The example below should get you on the right track. Example: _group = [player getPos [600,random 360],EAST,6] call bis_fnc_spawnGroup; [_group,1000] execVM "fn_taskRush.sqf"; -k
  21. Hi everyone, Thank you for the kind words 🙂 After a winter hiatus the team is working on delivering the next version of the mod. We will first concentrate on bugfixes and quality of life improvements before we move onto adding new features. Some of the things to look forward to in version 2.0.3 are toggles for the AI to hide from aircraft and tanks, a revisited vehicle AI, and some changes to low level movement skills. While we will be revisiting waypoints and Zeus interaction at a later stage-- expect some changes that might make the AI a little more responsive and less prone to focus endlessly on buildings. The bug described by @oldy41 has proven elusive. I also suspect it is related to unclear player status in single player games, particularly when switching between units. To be fair, it isn't the environment the mod was developed in and for. That said, we are rolling out a fix. On a similar note: I readily realise that not everyone plays Arma the same way. If you have videos of bugs or annoyances or even just cool moments from your own sessions-- feel free to drop me a private message. This sort of feedback is immensely valuable for maintaining a universally compatible enhancement to the AI. Disabling parts of the AI can be done in a few different ways. It is possible to turn off both the individual and group or leadership AI. The individual AI handles such things as entering buildings, the reaction state to combat, panicking and various other core lambs danger.fsm features. The group, or tactical assessment component covers such things as calling for artillery, coordinated building assaults, hiding from tanks or airplanes, remanning static weapons, scanning with binoculars, and additional levels of extra-group communication. I suspect that turning off the group AI will give groups using ZEUS based play styles better control of soldiers. I'll say that again : If you are a ZEUS player, you might want to turn off the group AI to retain more strategic control and have less autonomous group leaders! The above posts have been very helpful in listing the variables, I will repeat them here to avoid any confusion. Note that it is possible to turn off individual AI by finding the relevant checkbox in unit properties in 3DEN. Doing so will create a mod requirement. <unit> setVariable ["lambs_danger_disableAI",true]; Run on individual units this will switch off all FSM enhancements. <group> setVariable ["lambs_danger_dangerAI","disabled"]; <group> setVariable ["lambs_danger_disableGroupAI", true] Run on groups this will toggle all group level decision and responses. If you need fine control of an AI, toggle the first option. If you need an AI less reactive to tactical concerns-- toggle the second option. Wait a moment. Why isn't the group setting a Boolean (true or false) value? I am glad you asked. The reason for this is because current thinking is to create AI packages. A package is a set of scripted behaviors which will make it possible emulate certain types of troops: recon troops that prefer hiding, dumb charging miltia, or even canny insurgents that try to hide their weapons. This approach is currently being explored and may see changes in future versions. For now the variable will remain stable. Thanks for reading Ken
  22. @LSValmont Hehe, poorly worded on my end. It is exactly what you described. It is now possible to toggle LAMBS Danger.fsm on player led groups by both a CBA setting or button-toggle. The change isn't immediate when hot toggled. In essence, it depends on which FSM state the AI is in when toggled. 🙂 -k
  23. Thanks @CameronMcDonald. I'm a old fashioned forum-head myself, but have been a little scarce around these boards lately. LAMBS Danger.fsm New release: Current version 2.0.1 *HOTFIX* Change notes - Full rewrite of many systems. Significant cleanup to the code - Full CBA integration - Added CBA configurable settings for most features - Added CBA eventhandler backend - Added keyboard for player led groups - Added extensive debug interface - Improved FSM performance - Improved vehicle to infantry interaction - Improved infantry CQB modules - Improved all waypoints and performance - Improved AI squad leader analysis and responses - Improved individual AI movement skills : seeking cover and fire while moving - Improved wheeled APC vehicle tactics - Improved turreted vehicles predictive fire solutions - Improved AI information sharing routines and configuration options - Improved AI gesture usage - Added custom AI fleeing state - Added the ability for AI to man and abandon static weapons - Added taskAssault and taskRetreat waypoints - Added innumerable performance improvements - Added two authors: Diwako and Jokoho482 - All known bugs fixed Requirements and changes This release will replace some of the existing variables and waypoints from older releases. It will also update the bikey. Finally this release has a CBA mod requirement. A legacy version is available on STEAM Workshop. Special thanks goes out to Diwako and Jokoho. This release would have been impossible without them. To members of Nopryl.no for feedback and feature requests. To Clarke for testing and video feedback. To AnAngrySalad for bouncing ideas and testing. And to all the good ideas that have bounced back and forth on this forum. Finally, to any others that I forgot at the time of writing. 🙂 GitHub and License Not only did the code see significant clean ups and performance optimisation, coded in a style following the ACE3 guide, we've created a new GitHub and added a new License. For most users the license will change little. All we ask is that this mod not be monetized and that steam reuploads are limited. The GitHub will also be populated with documentation as I have time to sit down and write it. Mostly the updated variables -- sorry guys-- and descriptions of the features added to this release. Particularly the CBA eventhandlers are powerful, but should be familiar to many of you. Thank you for playing nkenny --- STEAM Workshop --- GitHub ---
  24. @johnnyboy That is weird. My community plays with enhanced movement, and I've seen none of those reports. I will continue to investigate -k
×