GEORGE FLOROS GR 4207 Posted September 16, 2018 GF Set AISkill Script by GEORGE FLOROS [GR] Description: GF Set AISkill Script , Set your desired AI Skills settings. You are free to do anything but i would like to give me Credits for this! Simple and easy to use and adapt . Have Fun ! Installation / Usage: For usage instructions and information of how to use the GF Set AISkill Script , please refer to the included documentation and/or example mission. Place in your mission the files . There is everything included , in the init.sqf and in the Description.ext , to copy paste in your mission . https://community.bistudio.com/wiki/SQF_syntax Don't try to open this with the simple notepad. For everything that is with comment // in front or between /* means that it is disabled , so there is no need to delete the extra lines. You can open this ex: with notepad++https://notepad-plus-plus.org/ and also use the extra pluggins (this way will be better , it will give also some certain colours to be able to detect ex. problems )http://www.armaholic.com/page.php?id=8680 or use any other program for editing . For the Compilation List of my GF Scripts , you can search in: https://forums.bohemia.net/forums/topic/215850-compilation-list-of-my-gf-scripts/ Notes: Copy in the descripion.ext : #include "Mission_Parameters.hpp" and add the Mission_Parameters.hpp in your mission files. Or copy , in your descripion.ext : class Params { class GF_Set_AISkill { title = "GF_Set_AISkill"; values[] = {0,1,2,3,4,5}; default = 1; texts[] = {"Novice","Rookie","Recruit","Veteran","Expert","Random"}; }; }; Credits & Thanks: Thanks to All script contributors Thanks to everyone who tries to do the best for this game! Thanks to BIS for such a great platform . Thanks to BIS Community and BIS Community Forums . Thanks to Armaholic Community and Forums . Changelog: v1.0 Forum topic: - Armaholic forums http://www.armaholic.com/forums.php?m=posts&q=40229 Armaholic download GF Set AISkill Script 4 Share this post Link to post Share on other sites
Guest Posted September 16, 2018 Thanks for sending us the release :) An Armaholic mirror is now available: GF Set AISkill Script v1.0 Share this post Link to post Share on other sites
HazJ 1289 Posted September 16, 2018 No need for all those if statements. You can pass values in the parameters. values[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; Then divide by 10. 2 Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted September 16, 2018 2 hours ago, HazJ said: You can pass values in the parameters. Yes indeed ! But this way it is possible for everyone to give their personal settings and there is also an option available for Random Skill. Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted September 16, 2018 4 hours ago, foxhound said: An Armaholic mirror is now available: Thank you very much Foxhound for the support ! Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 30, 2019 Oooh men, is it possible to set up separately for each side west, east, green, or for player teams? 1 Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 30, 2019 14 minutes ago, AlexMercerIV said: set up separately for each side Hello there AlexMercerIV ! you can add in the spawn https://community.bistudio.com/wiki/Side_relations if(side _x isEqualto west)then{ example : [] spawn { while {true} do { if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill Random"; }; if(side _x isEqualto west)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.25 + (random 0.75)]; _x setSkill ["aimingShake", 0.25 + (random 0.75)]; _x setSkill ["aimingSpeed", 0.25 + (random 0.75)]; _x setSkill ["commanding", 0.25 + (random 0.75)]; _x setSkill ["courage", 0.25 + (random 0.75)]; _x setSkill ["general", 0.25 + (random 0.75)]; _x setSkill ["reloadSpeed", 0.25 + (random 0.75)]; _x setSkill ["spotDistance", 0.25 + (random 0.75)]; _x setSkill ["spotTime", 0.25+ (random 0.75)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; }; }; Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 30, 2019 43 minutes ago, GEORGE FLOROS GR said: Hello there AlexMercerIV ! you can add in the spawn https://community.bistudio.com/wiki/Side_relations if(side _x isEqualto west)then{ example : [] spawn { while {true} do { if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill Random"; }; if(side _x isEqualto west)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.25 + (random 0.75)]; _x setSkill ["aimingShake", 0.25 + (random 0.75)]; _x setSkill ["aimingSpeed", 0.25 + (random 0.75)]; _x setSkill ["commanding", 0.25 + (random 0.75)]; _x setSkill ["courage", 0.25 + (random 0.75)]; _x setSkill ["general", 0.25 + (random 0.75)]; _x setSkill ["reloadSpeed", 0.25 + (random 0.75)]; _x setSkill ["spotDistance", 0.25 + (random 0.75)]; _x setSkill ["spotTime", 0.25+ (random 0.75)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; }; }; Where should I write this? somewhere under "case X:" I am not very good at it something like this? Quote //________________ Novice ________________ // case 0: { [] spawn { while {true} do { if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill Random"; }; if(side _x isEqualto west)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.25 + (random 0.75)]; _x setSkill ["aimingShake", 0.25 + (random 0.75)]; _x setSkill ["aimingSpeed", 0.25 + (random 0.75)]; _x setSkill ["commanding", 0.25 + (random 0.75)]; _x setSkill ["courage", 0.25 + (random 0.75)]; _x setSkill ["general", 0.25 + (random 0.75)]; _x setSkill ["reloadSpeed", 0.25 + (random 0.75)]; _x setSkill ["spotDistance", 0.25 + (random 0.75)]; _x setSkill ["spotTime", 0.25 + (random 0.75)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill Random"; }; if(side _x isEqualto east)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.15 + (random 0.75)]; _x setSkill ["aimingShake", 0.15 + (random 0.75)]; _x setSkill ["aimingSpeed", 0.15 + (random 0.75)]; _x setSkill ["commanding", 0.15 + (random 0.75)]; _x setSkill ["courage", 0.15 + (random 0.75)]; _x setSkill ["general", 0.15 + (random 0.75)]; _x setSkill ["reloadSpeed", 0.15 + (random 0.75)]; _x setSkill ["spotDistance", 0.15 + (random 0.75)]; _x setSkill ["spotTime", 0.15 + (random 0.75)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; }; }; }; 1 Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 30, 2019 It's fine as i see just add a }; if you haven't to close the case 0: { and delete the second systemchat. You can also test this with the first code. Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 30, 2019 18 minutes ago, GEORGE FLOROS GR said: It's fine as i see just add a }; if you haven't to close the case 0: { and delete the second systemchat. You can also test this with the first code. Thx. One more question, is it possible to increase the shooting distance for bots? 1 Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 30, 2019 5 minutes ago, AlexMercerIV said: to increase the shooting distance for bots? More than the standard ? 1 Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 30, 2019 Just now, GEORGE FLOROS GR said: More than the standard ? yes Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 30, 2019 There are some scripts that you can search here. Personally i was using this and it was working very good : http://www.armaholic.com/page.php?id=23797 It suppose not to be for non vanilla units , though i was testing this mainly with the CUP mod and it was working fine. Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 31, 2019 Something does not work in Zeus. with such parameters Quote //________________ Novice ________________ case 0: { [] spawn { while {true} do { if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill east"; }; if(side _x isEqualto east)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.2 + (random 0.05)]; _x setSkill ["aimingShake", 0.2 + (random 0.05)]; _x setSkill ["aimingSpeed", 0.2 + (random 0.05)]; _x setSkill ["commanding", 0.2 + (random 0.05)]; _x setSkill ["courage", 0.2 + (random 0.05)]; _x setSkill ["general", 0.2 + (random 0.5)]; _x setSkill ["reloadSpeed", 0.2 + (random 0.05)]; _x setSkill ["spotDistance", 0.2 + (random 0.05)]; _x setSkill ["spotTime", 0.2 + (random 0.05)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill west"; }; if(side _x isEqualto west)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.7 + (random 0.05)]; _x setSkill ["aimingShake", 0.7 + (random 0.05)]; _x setSkill ["aimingSpeed", 0.7 + (random 0.05)]; _x setSkill ["commanding", 0.7 + (random 0.05)]; _x setSkill ["courage", 0.7 + (random 0.05)]; _x setSkill ["general", 0.7 + (random 0.05)]; _x setSkill ["reloadSpeed", 0.7 + (random 0.05)]; _x setSkill ["spotDistance", 0.7 + (random 0.05)]; _x setSkill ["spotTime", 0.7 + (random 0.05)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; }; }; }; Spoiler https://ibb.co/7GntDZP Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 31, 2019 The values will not be the same for every type of unit, because it's different by default , when you apply changes to a regular army and to guerilla. In order to check your edit if and how is working , make a check with the first script, as i see that you are using this in the image and check the skill without running the script also , to see the difference. You can add your units also in the example mission and run tests to adjust the numbers. Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 31, 2019 8 minutes ago, GEORGE FLOROS GR said: The values will not be the same for every type of unit, because it's different by default , when you apply changes to a regular army and to guerilla. In order to check your edit if and how is working , make a check with the first script, as i see that you are using this in the image and check the skill without running the script also , to see the difference. You can add your units also in the example mission and run tests to adjust the numbers. Initially, I had to attach the bot setup to the "kp Liberation" mission, but the script option with a specific side conflict does not work "if (side _x is Equalto east) then" Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 31, 2019 1 minute ago, AlexMercerIV said: does not work If it does't work are you sure that you have edit this correctly? Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 31, 2019 1 hour ago, GEORGE FLOROS GR said: If it does't work are you sure that you have edit this correctly? Quote //________________ Novice ________________ case 0: { [] spawn { while {true} do { if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill Random"; }; if(side _x isEqualto east)then{ { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.5 + (random 0.02)]; _x setSkill ["aimingShake", 0.5 + (random 0.02)]; _x setSkill ["aimingSpeed", 0.5 + (random 0.02)]; _x setSkill ["commanding", 0.5 + (random 0.02)]; _x setSkill ["courage", 0.5 + (random 0.02)]; _x setSkill ["general", 0.5 + (random 0.02)]; _x setSkill ["reloadSpeed", 0.5 + (random 0.02)]; _x setSkill ["spotDistance", 0.5 + (random 0.02)]; _x setSkill ["spotTime", 0.5 + (random 0.02)]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; }; }; }; east soldier https://ibb.co/vcH7zYG //________________ Novice ________________ case 0: { [] spawn { while {true} do { if (GF_Set_AISkill_Systemchat_info) then { systemchat "GF_Set_AISkill Novice 0.5"; }; { if (((alive _x)) && (!(_x getVariable ["GF_AISkill",false]))) then { _x setSkill ["aimingAccuracy", 0.5]; _x setSkill ["aimingShake", 0.5 ]; _x setSkill ["aimingSpeed", 0.5 ]; _x setSkill ["commanding", 0.5 ]; _x setSkill ["courage", 0.5 ]; _x setSkill ["general", 0.5 ]; _x setSkill ["reloadSpeed", 0.5 ]; _x setSkill ["spotDistance", 0.5 ]; _x setSkill ["spotTime", 0.5 ]; }; _x setVariable ["GF_AISkill",true]; {waitUntil {!alive _x}; _x setVariable ["GF_AISkill",false]; }; }forEach allUnits; sleep 10; }; }; }; https://ibb.co/sHP6vtf Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 31, 2019 did you tested with and without the script , in order to check if you have edit this correctly ? ( The same unit ) Plus might be in your mission already a script running for skill ? Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 31, 2019 1 hour ago, GEORGE FLOROS GR said: did you tested with and without the script , in order to check if you have edit this correctly ? ( The same unit ) Plus might be in your mission already a script running for skill ? oh yes without "if (side _x isqualto east) then {" works Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 31, 2019 Would you like to send me your script file to check it ? Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 31, 2019 16 minutes ago, GEORGE FLOROS GR said: Would you like to send me your script file to check it ? https://drive.google.com/open?id=1Hyx9LML8JNoSRhhrdIy0u-0IQmI2CstW Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 31, 2019 ok hold on Share this post Link to post Share on other sites
GEORGE FLOROS GR 4207 Posted March 31, 2019 Have you also add the mission parameters and the selected is number 0 (case 0 ) ? Share this post Link to post Share on other sites
AlexMercerIV 4 Posted March 31, 2019 2 minutes ago, GEORGE FLOROS GR said: Have you also add the mission parameters and the selected is number 0 (case 0 ) ? at the start of the mission in the parameters? Share this post Link to post Share on other sites