Jump to content

Recommended Posts

Before I get into this...
THANK ZUPA FOR THE SCRIPT!

DZMS Ai with Gold Coins Script / Addon

Onto the tutorial!

Open up: DZMSAISpawn.sqf which is located in:

Server.pbo > DZMS > Scripts

Once you've opened up DZMSAISpawn.sqf, search for this:

//Add the behaviour
_unit enableAI "TARGET";
_unit enableAI "AUTOTARGET";
_unit enableAI "MOVE";
_unit enableAI "ANIM";
_unit enableAI "FSM";
_unit setCombatMode "YELLOW";
_unit setBehaviour "COMBAT";

Below the last line add this:

//Zupa Currency
_unit setVariable["headShots",20,true];

So it will look like this:

//Add the behaviour
_unit enableAI "TARGET";
_unit enableAI "AUTOTARGET";
_unit enableAI "MOVE";
_unit enableAI "ANIM";
_unit enableAI "FSM";
_unit setCombatMode "YELLOW";
_unit setBehaviour "COMBAT";
//Zupa Currency
_unit setVariable["headShots",20,true];

Once you have done this repack and upload! Your done!

Configuration

Value
 

If you want to change the value of the money spawning on each AI,change the value:

_unit setVariable["headShots",20,true];

to

_unit setVariable["headShots",WHATEVER YOU WANT,true];

Souls HIVE

If you are using Souls HIVE, then instead of:

_unit setVariable["headShots",20,true];

Change to:

_unit setVariable["CashMoney",5000,true];

Variable Value

If you want the AI to spawn variable values then add this:

 _cash = round(random 20) * 1000; // number between 0 and 20 000

Above this:

_unit setVariable["headShots",20,true];

But change the line above to

_unit setVariable["headShots",_cash,true];

This will spawn money on the AI between 0 and 20,000 Gold Coins on each AI






Special thanks to:
MCPimpin - Original Poster
Zupa - Single Currency and AI Addon
Soul - Custom Hive for Single Currency
TheVampire - DZMS

Links:




I take no credit, just informing people!

See it working at: 
206.221.176.66:2602

Share this post


Link to post
Share on other sites

Hi, thx for sharing but somethimes it happens when checking wallets of DZMS AI's:

You took <NULL>  coins, ID says <NULL>!

All coins on screen are gone only solution -> relog

Anyone a solution for this?

 

I use this code in my DZMSAISpawn.sqf:
    //Zupa Currency
     _cash = round(random 20) * 100; // number between 0 and 20 00
    _unit setVariable["cashMoney",_cash,true];

Share this post


Link to post
Share on other sites

Hi, thx for sharing but somethimes it happens when checking wallets of DZMS AI's:

You took <NULL>  coins, ID says <NULL>!

All coins on screen are gone only solution -> relog

Anyone a solution for this?

 

I use this code in my DZMSAISpawn.sqf:

    //Zupa Currency

     _cash = round(random 20) * 100; // number between 0 and 20 00

    _unit setVariable["cashMoney",_cash,true];

 

I too had this issue.  I tried it all different ways including just setting a static amount of gold without the random.  Ultimately I had to remove the call from DZMS and WAI and just use it with DZAI which seems to work flawless. btw, I use the SC 3.0.

Share this post


Link to post
Share on other sites

not sure if u still looking but i have this dzmsaispawn.sqf

where i have my coins for the ai and works just fine no issues

same for wai

 

 

//Lets spawn the unit
_unit = _unitGroup createUnit [_aiskin, [(_position select 0),(_position select 1),(_position select 2)], [], 10, "PRIVATE"];
 
//Make him join the correct team
[_unit] joinSilent _unitGroup;
 
//Add the behaviour
_unit enableAI "TARGET";
_unit enableAI "AUTOTARGET";
_unit enableAI "MOVE";
_unit enableAI "ANIM";
_unit enableAI "FSM";
_unit setCombatMode "RED";
_unit setBehaviour "COMBAT";
 
//bank
        _cash = round(random 10) * 50; // number between 0 and 20 000
 
                // Soul Hive
_unit setVariable["CashMoney",_cash ,true];
 
//Remove the items he spawns with by default
removeAllWeapons _unit;
removeAllItems _unit;

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By JasonTM
      Download the files for DZMS Overpoch 1.0.6.2 Here: https://github.com/worldwidesorrow/DZMS-DayZMissionSystem-Overpoch
       
      This is an update to the DayZ Mission System by Vampire that was updated for DayZ Epoch 1.0.6.1 by ebayShopper: https://github.com/ebayShopper/DZMS-DayZMissionSystem
      This includes adding a few missions from EMS 0.3 by Fuchs:
       
      Updates:
      1. Added a variable in DZMSConfig.sqf to enable the AI to have money in their wallets if ZSC is installed.
      //If you have ZSC installed then you can set this to true to place money in ai wallets. DZMSAICheckWallet = false; 2. Added the Overwatch weapons to the AI and Crate configs.
      3. Expanded the selection of gear and vehicles available to the missions, AI config, and crate spawns.
      4. Created additional crate spawning options.
      5. Changed "UH60Wreck_DZ" to "UH60_ARMY_Wreck_burned_DZ" in minor mission SM4 because of "Cannot create non-ai vehicle UH60Wreck_DZ" error.
      6. Converted the format of a few EMS 0.3 missions and added them to the mission spawning arrays.
      7. There is an issue with the new small ammo boxes and medical crates which is not resolved.

      Here is a list of all of the Major and Minor missions with a few notes.
       
       
      Demo Video
       
       
    • By Grahame
      ARMA3 DayZ Mission System (DZMS)
      This is a purely derivative port of the DayZ Mission System to ARMA3/Epoch. I have added functionality where appropriate (equipping uniforms for example) and stripped and replaced ARMA2 or DayZ/Epoch specific code in this implementation.
      The DayZ Mission System is a very good, lightweight and modular mission system.
      Credits
      There are a lot of people who have contributed to DZMS on A2/DayZ/Epoch. Please check the links below for many of them. Personally they all have my thanks for providing a solid mission system that has been a lot of fun to play in the years I've spent on DayZ/Epoch:
      Download
      Download from GitHub at:
      https://github.com/morgoth0/A3E-DZMS
      Installation Instructions
      If using Vanilla ARMA3/Epoch, and you just want to just try it out simply download and upload the DZMS.pbo in the @EpochHive folder into the @EpochHive/addons folder on your server.
      The source files, including the three config files are located in the DZMS folder on GitHub
      Coming soon
      All the missions included within the latest version of DZMS 1.1 uploaded by @JasonTM will be implemented using CUP Terrains Core for use on maps and servers that support it. A module to support Static weapons at missions More diverse and varied loot tables for custom crates A port of the DZMS Hotspots code for roadblocks and other such interesting things The ability to run multiple major, minor and hotspot missions Better configuration instructions and a mission file design tutorial
    • By MessiGamer
      Alright!
      i tried to instal this five times. clean installation without other scripts. I see this work without battleye, but with it I get three restrictions. I tried to fix this with bfe.marma.io because I'm noob. but I get another constraint that I can not fix.
      this log are pure clean install without my modifications: i have edited for not showing my useless data.     .  
      RPT.log 
      script.log
      server.log
      script.txt
      //new2 5 addAction !raddAction !"\"addAction\", " !", \"\\z\\addons\\dayz_code\\" !"],DZE_build_vector_file,[vectorActionState," 5 addBackpack !"addBackpackCargoGlobal [_x,(_objWpnQty select _counter)];\n_counter = _counter + 1;\n} count _objWpnTypes;" !"addBackpack _item;\n};\n};\nformat[localize \"str_c" !"case 3: {_holder addBackpackCargoGlobal [_item,_amount];};\n};\n\n\n" !"}) then {\n_newUnit addBackpack _newBackpackType;\n\nd" !"(_this select 0)) then\n{\n(_this select 0) addBackpack (_x select 1);\n};\n};" !"(_this select 0) addBackpackCargoGlobal [_x select 1, 1];\n};\n};\n} cou" !"addBackpack _backpackType; \ndayz_myBackpack = unitBackpack player;\n\n\n\n_backpackWpnT" !"};\n} count _wpns;\n\nif (_bcpk != \"\") then {\nplayer addBackpack" !"1 == \"trade_backpacks\") then {\nDZE_myVehicle addBackpack" !"7 addBackpackCargoGlobal [_create,_qty];\n};\nif (surfaceIsWater" !"case 5: {_item addBackpackCargoGlobal [_itemOut,_countOut]};\n};\n} else" 5 addMagazine !raddMagazine !"\"addMagazine\", " !"if (isClass (configfile >> \"cfgmagazines\" >> (_item))) then {_unit addMagazine _item;};\n};\n};\n};\n};" !"_vehicle addMagazineTurret [_ammo,_turret];\nplayer removeMagazine" !"if (dayz_actionInProgress) exitWith {" !"addMagazine _x;\n};\n} foreach _items;\nformat[loc" !"addMagazine 'Hatchet_Swing'" !"addMagazine \"ItemAntibiotic\" + str(_remain" !"sumeDrop\") == 0) then\n{\nplayer addMagazine" !"ion) do {\ncase \"CfgWeapons\":\n{\nplayer addWeapon _item;\n};\ncase \"CfgMagazines\":\n{\nplayer addMagazine" !"addMagazine [\"12Rnd_Quiver_Wood\",_qty_quiv" !" >> \"containerEmpty\")" !"plant) select 1;\n{\n_item addMagazine" !"addMagazineCargoGlobal [_itemtodrop,1];\n\nformat[localize \"str_f" !"addMagazine _attachment;\n\n\n(findDisplay 10" !"addMagazine getText (configFile >> \"CfgMagazines\" >> _x >> _water" !"};\n};\n\n\nswitch _type do {\ncase 1: {_holder addMagazine" !"do {\n_animalbody addMagazine _rawfoodtype" !"addMagazine _item;\n};\n};\n_idc = _idc" !"_newUnit addMagazine [_x select 0,_x select 1]" !"addMagazine _x } count MeleeMagazines;\n} e" !"_meleeNum < 1) then {\nplayer addMagazine" !"addMagazine _qtyRemaining;\n};\n};\ntrue" !"bag\";\n};\n};\n(_this select 0) addMagazine" !"addMagazineCargoGlobal [_item, 1];\nif (surfaceIsWater (_this s" !"addMagazine \"wholeBloodBagBNEG\";\n};\n};" !"_qty > 0) then {\n_firePlace addMagazine" !"ONEG\" }; \n};\ndayz_myBackpack addMagazine" !"addMagazine _x;\n_countmags = _countmags +1;\n};\n} count _gmag" !"E\"];\n_lootpile addMagazineCargoGlobal [\"TrapBear\", 1]" !"With\n{\nplayer addMagazine (_this select 1" !"lder addMagazineCargoGlobal [_x,(_objWpnQty select _counter)];\n_counter = _counter + 1;\n};\n} co" !"soldItem\"];\n{\n_object addMagazine" !"systemChat localize \"STR_EPOCH_TRADE_" !"if (_silver_1oz > 0) then {\nif (_silver_1oz == 1) then {\nplayer addMagazine" 5 addWeapon !raddWeapon !"\"addWeapon\", " !"if (isClass (configfile >> \"cfgweapons\" >> (_item))) then {_unit addWeapon _item;}\nelse" !",0]] call dayz_NutritionSystem;\n" !"Remove) == 1}) then {\nplayer addWeapon _create;" !"Display 0;\n\n\nif (_weaponInUse) then\n{\n_muz" !"failChance) then {\nswitch (_selection) do {\ncase \"CfgWeapons\":\n{\nplayer addWeapon" !"addWeapon _fixedItem;\nformat[localize \"str_f" !"_wepcounts = (getWeaponCargo _plant) select 1;\n{\n_item addWeapon" !"addWeapon _repair;\n} else {\n\n[_repair" !"player addWeapon dayz_onBack\n] select 0;\n};\n\n" !"player addWeapon _addWeapon;\n\nif (vehicle player != player) then {\n_display = find" !"};\n};\n\n\nswitch _type do {\ncase 1: {_holder addMagazineCargoGlobal [_item,_amount];};\ncase 2: {_holder addWeapon" !"l fn_chance) then {\nplayer removeWeapon _x;\nplayer addWeapon _rem" !"else {\n_body addWeapon dayz_onBack;\n};\n};\n\n\n_infect" !"\" >> _x)) then {\nplayer addWeapon _x;\n};\n} count _wpns;\n};" !"lder addWeaponCargoGlobal [_x,(_objWpnQty select _counter)];\n_counter = _counter + 1;\n} co" !"WpnQtys = [];\nif (count _backpackWpn > 0) then {\n_backpackWpnTypes = _backpackWpn sel" !"addWeapon (\"Item\"+str(_remain)+\"Matchbox" !"{\nswitch (_x select 0) do\n{\ncase 2:\n{\n(_this select 0) addWeapon" !"E\"];\n_vehicle addWeaponCargoGlobal [_lootInfo select 1, 1" !"addWeaponCargoGlobal [_bcpkWpn, 1];\n};\n};\n};\n};" !"s;\n};\n\n\nplayer addWeapon \"Loot" !"With\n{\nplayer addWeapon (_this select 1" !"\") then {\n_newUnit addWeapon _secweapon;\n};\n\n" !"soldItem\"];\n{\n_object addWeapon" !"then {\nsystemChat format[localize \"STR_EPOCH_" !"DuplicateTool;\n} else {\nplayer addWeapon" 5 allDead !"} count allDead;\n\n\nif (dayz_oldBodyCount > _bodyCount) then {" 5 allGroups !"publicVariableServer \"PVDZ_Server_UpdateGroup\";\n};\n} count allGroups;" 5 allMissionObjects !"[_x,2,0,false,false] spawn BIS_Effects_Burn;\n};\n} count allMissionObjects \"SpawnableWreck\";" 5 allowDammage 5 allUnits !"} count allUnits;\nlbSort _playerList;" !"if (getPlayerUID _x == _this) exitWith {\n_player = _x;\n};\n} count allUnits;" !"owner _x publicVariableClient \"PVDZ_groupInvite\";\n};\n} count allUnits;" 5 attachTo !"(_variation * 2)) - _variation)];\n_bolt attachTo [_hitObject,_val,_hitMemoryPt];" !"player playActionNow \"PutDown\";\nuiSleep 2;\n_flare attachTo [player,[0,0,0],\"granat2\"];" !"tchmove \"ainjpfalmstpsnonwrfldnon_carried_still\";\n_dragee attachto [_unit,[-0.2, 0.2, 0]];" !"_source setDropInterval 0.02;\n_point attachTo [_unit,_modelPos,_wound];" !" attachto [_v,[0,0,0],\"destructionEffect" !"publicVariable \"PVDZ_drg_RaDrag\";\n\n_dragee attachto [_unit,[0.1, 1.01, 0]];" !="_l1 attachTo [_lh,[0,0,0],\"light\"];" !"_objectHelper attachTo [player,_offset];" !"_object attachTo [player,_offset];\n\n_position = getPosATL _object;" !="_vehicle attachTo [_liftHeli,[0,0,-7]];" !="_obj attachTo [_axis];" !"_objectSnapGizmo attachTo [_object,[_x select 0,_x select 1,_x select 2]];" !="_vehicle attachTo [_towTruck,[1.3,-2,2.3]];" !"localize \"STR_EPOCH_ACTIONS_ATTACHTOHELI\"," 5 buttonSetAction 5 callExtension 5 camCreate !"camCreate (player modeltoWorld [0,0,2]);\n0.2 fadeSound 0.1;\nDayz_" !"_body;\n_playerID = getPlayerUID player;\n\n\n_camera = \"camera\" camCreate _death" !="_camera = \"camera\" camCreate [12222.323, 3415.7791, -0.059190542]" 5 cameraEffect !"0.2 fadeSound 0.1;\nDayz_BuildCamera cameraeffect [\"External\", \"TOP\"];" !"cameraEffect [\"Internal\",\"TOP\"];\n_camera camSetTarget _deathPos;\n_camera camSetPos [_deathPos select" !"r_Simulation\";\n\n_camera cameraEffect [\"Terminate" !"cameraEffect [\"internal\",\"back\"]\n\n_camera camPrepareTarget [6433.5" 5 closeDisplay !"'closeDisplay'" !"closeDisplay 0" !"closeDisplay 2" !"if (!isNil \"closeDisplay\") then {" 1 compile !"ca\\communityconfiguration" !"ca\\Data\\" !"ca\\missions" !"ca\\modules" !"ca\\ui\\" !"ca\\Warfare2\\" !"scriptName \"Functions\\systems\\fn_inv" !"scriptName \"MP\\data\\script" !"code = compile preprocessFileLineNumbers (BIS_PathMPscriptCommands" !"t = missionConfigFile >> \"onMinimapScript" !="_this call (call compile GetText (configFile >> \"CfgAmmo\" >> _amm >> \"muzzleEffect\"));" !"z\\addons\\dayz_code\\" !"_menu ctrlSetEventHandler [\"ButtonClick\",_compile];\n};\n_pos set [3" !"{ _x set [1, compile (_x select 1)]; }" !"silver_1oz_b);\n\n{ \nif (!isNil {call compile" !"Var = compile format[\"epoch_death_board_record_" 5 createAgent !="_agent = createAgent [_type, _position, [], _radius, \"CAN_COLLIDE\"];" !="_agent = if (_type == \"Pastor\") then {createAgent [_type, _Pos, [], 0, \"NONE\"]} else {createAgent [_type, _Pos, [], 0, \"FORM\"]};" !="_dog = createAgent [_type, _Pos, [], 0, \"NONE\"];" 5 createDialog !="_region = createDialog \"RscDisplaySpawnSelecter\";" !="_gender = createDialog 'RscDisplayGenderSelect';" !="_dialog = createDialog \"bloodTest\";" !="createDialog 'RscDisplayCraftingMenu';" !="createDialog \"DAYZ_PADLOCK\";" !"createDialog 'horde_journal_" !"Z_ResetContainer = true;\ncreateDialog \"AdvancedTrading\";" !"createDialog \"DoorManagement\";\ncall DoorNearbyHumans;" !="createDialog \"ComboLockUI\";" !"createdialog \"PlotManagement\";\ncall PlotNearbyHumans;" !"_trader_data = (_this select 3);\n\n_dialog = createdialog \"TraderDialog\";" !"_ok = createdialog \"KeypadUI\";" !"EpochDeathBoardLoad = {\ncreatedialog \"EpochDeathBoardDialog\";" !="if(DZE_doorManagement) then {createdialog \"DoorAccess\";} else {createdialog \"ComboLockUI\";};" !"\ndisableSerialization;\ncreateDialog \"DZ_GroupDialog\";"!"createDialog \"atmDialog\";"!="createDialog \"BankDialog\";" !="createDialog \"GivePlayerDialog\";" 5 createDisplay 5 createMarker !"\"createMarkerLocal\"," !"rcreateMarkerLocal" !"if (isnil 'BIS_GITA_fnc_createMarkers' || false) then {" !"_marker = createMarkerLocal [format[\"groupMember" 5 createUnit !="_newUnit = _group createUnit [_class,respawn_west_original,[],0,\"NONE\"];" !="BIS_MPF_logic = BIS_MPF_dummygroup createUnit [\"Logic\", [1000,10,0], [], 0, \"NONE\"];" 5 createVehicleLocal !="_object = (_x select 1) createVehicleLocal [0,0,0];" !="_plant = _x createVehicleLocal (getMarkerPos \"center\");" !="_point = \"Logic\" createVehicleLocal getPosATL _unit;" !"_object = _type createVehicleLocal [0,0,0];" !="_obj = _class createVehicleLocal (getMarkerpos \"respawn_west\");" !" = \"#lightpoint\" createVehicleLocal " !" = \"#particlesource\" createVehicleLocal " !="_object = _ghost createVehicleLocal getMarkerpos \"respawn_west\";" !="_cursorTarget = _upgrade createVehicleLocal getMarkerpos \"respawn_west\";" !="_para = \"ParachuteWest\" createVehicleLocal [0,0,0];" !="_sign = \"Sign_arrow_down_large_EP1\" createVehicleLocal [0,0,0];" !"_obj = \"Sign_sphere10cm_EP1\" createVehicleLocal [0,0,0];" !="_objectSnapGizmo = \"Sign_sphere10cm_EP1\" createVehicleLocal [0,0,0];" !"_object2 = _ghost2 createVehicleLocal [0,0,0];\nhideObject _object;" 5 ctrlAddEventHandler 5 ctrlSetPosition !="_control ctrlSetPosition [_posX, _posY];" !"3,_h]};\n_control ctrlsetposition _pos;" !="_control ctrlSetPosition [0, (_y + _deltaY)];" !="_disp_ctrl ctrlSetPosition [_posX, _posY];" !="_control ctrlSetPosition _grpPos;" !="_group ctrlSetPosition _pos;" !="_control ctrlSetPosition [_controlPos select 0, _controlPos select 1, _controlPos select 2, 0.03921 * _lines];" !="((uiNamespace getVariable 'DAYZ_GUI_waiting') displayCtrl 1400) ctrlSetPosition _sandLevel;" !="_delayControl ctrlSetPosition [0, _pos];" !="_icon ctrlSetPosition [(_screen select 0),(_screen select 1),.99,.65];" 5 cutText !"_layer cuttext [\"\",\"plain\"];\n};\nmissionnamespace" !"\n\n\n3100 cuttext [\"\",\"plain\"];" !"} else {\n16 cutText [\"\",\"PLAIN\"];" !"exitWith {\n1 cutText [localize \"" !"progress_monitor.sqf\";\n0 cutText ['','BLACK',0]" !="8 cutText [\"\",\"PLAIN\"];" 5 deleteMarker !"} count allDead;\n\n\nif (dayz_oldBodyCount > _bodyCount) then {" 5 displayAddEventHandler !"bis_fnc_halo_keydown_eh = (finddisplay 46) displayaddeventhandler [\"keydown\",\"_this call bis_fnc_halo_keydown;\"];" 5 displaySetEventHandler 5 enableEnvironment 5 endMission !rendMission !"clearWeaponCargo\",\n\"endMission\"," !"enablesimulation\", \"endMission\"," !"lize \"str_player_login_timeout\", \"PLAIN DOWN\"];\nuiSleep 5;\nendMission" !"\npublicVariableServer \"PVDZ_sec_atp\";\nendMission \"LOSER\";\n};\n" !"Terminate\",\"BACK\"];\ncamDestroy _camera;\n\nendMission" !"endMission \"END1\";\n\n\ndayz_authed = true" 1 execVM !rexecVM !"\"execVM\", " !="[] execVM \"initJIPcompatible.sqf\";" !="_script = [] execVM (BIS_MP_Path + BIS_PATH_SQF + \"JIPWaitFor.sqf\");" !"execVM \"\\ca\\Data\\" !"execVM '\\ca\\Data\\" !"execVM \"\\ca\\missions" !"execVM 'ca\\modules\\" !"execVM \"ca\\modules\\" !"'\\ca\\ui\\" !"\"\\ca\\ui\\" !"scriptName \"MP\\data\\script" !"_handle\"];\n_handle = [_display] execVM _script;\n}" !"execVM '\\z\\addons\\dayz_code\\" !"execVM 'z\\addons\\dayz_code\\" !"execVM \"z\\addons\\dayz_code\\" !"execVM \"\\z\\addons\\dayz_code\\" !"execVM (\"\\z\\addons\\dayz_code\\" !="dayz_rulesHandle = execVM \"rules.sqf\";" !"execvm '\\ASC\\" !"\\usec_ch53\\scripts\\" !"execVM (_actionDir + \"warn.sqf" 5 failMission !rfailMission !"failMission\",\n\"titleCut\"," !"fadeSound\", \"failMission\"," !"if (_debug == 1) then {\ndiag_log (\"End Mission\");\n};\n\nfailMission" 5 forceEnd 5 groupIcon 5 HelicopterExplo !"(isNull _who) then {\nif (_ammo != \"\" && _ammo isKindOf \"HelicopterExplo" !"_v = thisTrigger getVariable [\"obj\", objNull];\n" !"_v = thisTrigger getVariable [\"\"obj\"\", objNull];\n" !"\n\n\nremoveallweapons _v;\n\nif (local _v) then {_expl=\"HelicopterExplo" 5 hideObject !rhideObject !"\"hideObject\"" !"(_x select 0) nearestObject (_x select 1);\n_object hideObject" !"_object2 = _ghost2 createVehicleLocal [0,0,0];\nhideObject _object;" 5 hint !", \"_postFix\"" !rhint !rtaskHint !"\"hint\", " !"\"hintC\", " !"\"taskHint\"," !"_controlHintButton ctrlSettext \"Objectives\";" !"hint (localize \"strwf" !"'BIS_fnc_hints'" !sched_planthint !"call ui_initDisplay;\nhintSilent \"\"" !"hintSilent localize \"str_player_low" 5 lbCurSel !"_selectedUserIndex = lbCurSel _lbUsersControl;" !="profileNamespace setVariable ['statusUI',(lbCurSel (_this select 0))];" !="profileNamespace setVariable ['streamerMode',(lbCurSel (_this select 0))];" !"_index = lbCurSel _lbcontrol;\n_selectedItem" !"_selected = lbCurSel _list;\n_classname = _list lnbData [_selected, 2];" !="_friendName = _userList lbText (lbCurSel _userList);" !")] call Z_" !"(lbCurSel 7421) call Z_fillCategoryList" !"] call Door" !"] call Plot" !"[(lbCurSel 12001)] " !="[(lbCurSel 21000), ((ctrlParent (_this select 0)) displayCtrl 21001)] spawn EpochDeathBoardClick;" !"((ctrlParent (_this select 0)) closeDisplay 2);" !="_uid = _playerList lbData (lbCurSel _playerList);" !"_myGroup lbData (lbCurSel _myGroup);" 5 lbSet !"_lbUsersControl lbSetColor [_x, [1,0,0,1]];" !"\n_control lbSetColor [_x, _color];\n};" !"_weaponsLBSetFocus" !="(_this select 0) displayCtrl _idc lbSetCurSel (profileNamespace getVariable [_var,_default]);" !="(_display displayCtrl 105) lbSetColor [_i, [0.06, 0.05, 0.03, 1]];" !" [7421," !"lbSetPicture [7422, _index" !"lbSetPicture [7402, _index" !"lbSetPicture [7401, _index" !="_userList lbSetData [(lbSize _userList) -1,_friendUID];" !" [TraderDialogItemList, _index, " !"_myGroup lbSetData [_index,getPlayerUID _x];" 5 loadFile 5 menu !",\"MenuSelected\",\"Draw\",\"VideoStop" !"_menu = _parent displayCtrl (1600 + _i);\n_menu ctrlShow " !="createDialog 'RscDisplayCraftingMenu';" !"BIS_fnc_commsMenu" !"BIS_fnc_kbMenu" !"call gear_ui_offMenu;" !"dayz_inflame_showMenu" !"\"showCommandingMenu\", " !"rshowCommandingMenu" !"menu_" !"use action menu to " !"\"_menu\",\"_menu1\"" !"PVDZE_plr_TradeMenu" !"fn_gearMenuChecks" !"fn_pauseMenuChecks" 5 onMapSingleClick 5 player_humanityMorph !"fn_surfaceNoise.sqf\";\nplayer_humanityMorph = compile preprocessFileLineNumbers \"\\z" !"addMagazine _itemNew;\n_morphHandle = [dayz_playerUID,dayz_characterID,_model] spawn player_humanityMorph;\n}" !"<= -2000) then {\nif (_isMen || _isMenH) then {\n[dayz_playerUID,dayz_characterID,\"Bandit1_DZ\"] spawn player_humanityMorph" !"#line 1 \"z\\addons\\dayz_code\\compile\\player_humanityMorph.sqf" 5 playableUnits !"for [{_y=0},{_y < count(playableUnits)},{_y=_y+1}] do {" !"typeName player == \"OBJECT\" && {(player in playableUnits" !"AND {((alive _x) AND {((vehicle _x) distance _obj < 150)})}} count playableUnits)}) then {" !="_local = { _unit distance _x < _dis; } count playableUnits <= 1;" !"if (!_isOk) exitWith {false};\nuiSleep 0.001;\n} forEach playableUnits;" !"ManagementMustBeClose) then { player nearEntities [\"CAManBase\", 10] } else { playableUnits };" 5 positionCameraToWorld 5 removeAllEventHandlers !"_WarnFuel = false;\n};\n\n};\n\n_vehicle removeAllEventHandlers \"IncomingMissile" !"leep _wait;} else {sleep (_wait * 4);};\n};\n\n_vehicle removeAllEventHandlers \"Dammaged" !"lse\"];\n{\n(findDisplay 12) displayCtrl 51 ctrlRemoveAllEventHandlers" !"select 1,0] nearestObject (_x select 2);\n_building removeAllEventHandlers" !"\n\n\n\nif (_this isKindOf \"AllVehicles\") then {\n\n_this removeAllEventHandlers" !"With {};\n\n_old = player;\n_old removeAllEventHandlers \"FiredN" !"\npublicVariableServer \"PVDZ_veh_Save\";\n};\n};\n\n\n_unit removeAllEventHandlers" 5 selectPlayer !"addSwitchableUnit dayz_originalPlayer;\nsetPlayable dayz_originalPlayer;\nselectPlayer dayz_originalPlayer;" !"addSwitchableUnit _newUnit;\nsetPlayable _newUnit;\nselectPlayer _newUnit;" 5 serverCommand !="_character = if (serverCommandAvailable \"#kick\") then { call sched_tg_follow } else { player };" !"serverCommand (\"#vote kick \" + _selectedName);" 5 setAperture !"select 1);\n\nif(_NVOn == \"ON\") exitwith\n{\nsetaperture -1" !"+_inc;\n\n_NVOn = (_NV select 0);\n\nif(_NVOn == \"ON\") then {\n\nsetAperture" 5 setCamUseTI 5 setDamage !"if (_entity isKindOf \"Animal\") then {\n_entity setDamage 1;" !"player setDamage 1;\n};\n\nif (dayz_onBack != \"\") then {\nif (dayz_onBack in w" !"if (_ent isKindOf \"Animal\" || _ent isKindOf \"zZombie_base\") then {\n_ent setDamage 1;" 5 setDammage 5 setDate !rsetDate !"\"setDate\", " !"\n\n\nif (!isDedicated) then {\n\"dayzSetDate\" addPublicVariableEventHandler {" !"if (_x != _newdate select _forEachIndex) exitWith {\nsetDate _newdate" !"plr_Login1]; \nPVDZ_send = [player,\"dayzSetDate\",[player]];\npublicVariableServer" !="!isNil \"dayzSetDate\"" !"diag_log ['Date & time received:', dayzSetDate];\nsetDate dayzSetDate;\ndiag" 5 SetEventHandler !"\n_menu ctrlSetEventHandler [\"ButtonClick\",_compile];\n};" !"inGameUISetEventHandler [\"Action\",\"false\"];" 5 setMarkerAlpha 5 setMarkerBrush 5 setMarkerColor !",if (_vehicle == _x) then {name _x} else {_vehicle call dayz_getCrew}];\n_marker setMarkerColorLocal \"ColorGreen\";" 5 setMarkerDir 5 setMarkerPos !"\"setMarkerPosLocal\"," !"rsetMarkerPosLocal" 5 setMarkerShape 5 setMarkerSize 5 setMarkerText !",if (_vehicle == _x) then {name _x} else {_vehicle call dayz_getCrew}];\n_marker setMarkerColorLocal \"ColorGreen\";" 5 setMarkerType !",if (_vehicle == _x) then {name _x} else {_vehicle call dayz_getCrew}];\n_marker setMarkerColorLocal \"ColorGreen\";" 5 setPosASL !="_unit setPosAsl [(_position select 0), (_position select 1), (LHA_height+1)];" !="_flame setPosASL [_pos select 0,_pos select 1,(_pos select 2)+0.2];" !="_fire setPosASL _location;" !"_objectHelper setPosASL _position;\n} else {" !"_b0x1337 setPosASL (getPosASL player);\n} else {" !"_obj setPosASL [_center select 0, _a, _b];" !"_objectSnapGizmo setPosASL " !"_para setposasl [\n" !"_thingy setPosASL (ATLToASL _pos);\n} else {" 5 setTerrainGrid !"if (dayz_REsec == 1) then {call compile preprocessFileLineNumbers \"" 5 setUnitRecoilCoefficient 5 setVehicle !"if(_status) then {\n_vehicle setVehicleLock \"LOCKED\";\n} else {\n_vehicle setVehicleLock \"UNLOCKED\";\n};" 5 setViewDistance 5 sideLogic !"publicVariable \"BIS_MPF_logic\";" 5 switchCamera !"\"switchCamera\", " !"rswitchCamera" !="player switchCamera (Dayz_constructionContext select 2);" !"player switchCamera _currentCamera;\nif (_currentWpn !=" 5 systemChat !="systemChat format[localize \"str_missing_to_do_this\", _x];" !"systemChat (localize " !"systemChat format[localize \"STR_EPOCH_" !"systemChat localize \"STR_EPOCH_" !"case \"system\": {systemChat _message;};" 5 title !"titleCut [\"\", \"BLACK " !"\"titleCut\", " !"\"titleText\"" !="rtitleCut = 'titleCut'" !"rtitleCutc" !="rtitleText = 'titleText'" !"rtitleTextc" !"(_missionTextListPath >> \"titles\")" !"(_display displayCtrl _titleIDC) ctrlShow false;" !"titleText [format[localize \"str_return_lobby\", _x" !",\"_titleText\"" !"localize 'STR_UI_GENDER_TITLE';\n_timeNem" !="scriptName \"MP\\data\\scriptCommands\\titleText.sqf\";" !_fillTradeTitle !_bldTxtStringTitle !"localize \"str_halo_altitude_speed" 5 toString !"_animCheck = toString ([(_animStateArray select 0),(_animStateArray select 1)" !="_skinToModel = toString (_finalArray);" !="{_textArrayTemp = _textArrayTemp + [tostring [_x]]} foreach _line;" !="_cmpt = toString _cmpt;" !="_objName = toLower(toString(_objName));" !"if (toString _hayArr != _needle) then {" !="_type = toString _typeA;" !="_anim4 = toString _anim4;" !"{(count _stance>17)}) then {toString [_stance select 17]}" !"BIS_fnc_timeToString" !"02, if (typeName _name == \"ARRAY\") then {toString _name} else {_name}];"!"_input = parseNumber (toString (_input));" 5 worldTo !="_relPos = _building worldToModel _point;" !"if (_isPlayer) then {\n_x = _pos worldToModel _new;" !"_w2m = _x worldToModel (getPosATL player);\n_bb = (boundingbox _x) select 1;" !="_h = _offset + ((_o worldToModel (getPosATL _o)) select 2);" !"_pos set [2,(_pos select 2) + 1.5];\n_screen = worldToScreen _pos;\n_text = composeText [image" //The best use of this file is filtering commonly used scripting commands, because they are always the same when compiled and executed. See: https://community.bistudio.com/wiki/Category:Scripting_Commands_ArmA2 //Filtering strings, variable names and code snippets is less effective because they can easily be changed or obfuscated in a near infinite number of ways //Always test after modifying by executing code on yourself. Ensure you are kicked or logged appropriately. One error in this file can break functionality of all filters and exceptions beyond that point. //Note ! and != currently behave identically in scripts.txt, there is no advantage to using one over the other //Note currently scripts.txt does not support regex, so the only characters that need to be escaped are literal double quotes " and literal backslash \ //Note tabs and spaces used as indents are stripped out automatically and do not need to be included in exceptions //Note code is filtered as it appears when it is executed. Macros in scripts and % in formats will be replaced with their real values. Double quotes ""x"" or ''x'' nested in strings will appear as single quotes. Formatting characters will be stripped from FSMs.  
    • By iben
      Hello guys,
      because I was couple times asked for updated and unified dev function for single currency (originally posted in ZSC thread),
      I've decided release it here so you can have all info in one place.
      So here it is with specific example (with detailed comments) you can try for fun...
      ===
      First thing first - let's start with giving credits for these great guys:
      DayZ Epoch developers, collaborators and contributors (thank you guys for your excellent work!) (visit them on github) @Zupa : original SC concept creator and author of Universal Dev functions for 1.0.5 version. (see original thread) @salival : for adapting @Zupa's concept to 1.0.6+ version and great community support. (see original thread) All great guys from Epoch comunity participating on SC and banking concept (see original thread) ===
      This function was reworked and updated for Epoch 1.0.6.1+
      ===
      Changelog:
      [2017-05-08], v1.0 | Initial release, published at Epoch forum [2017-05-28], v1.1 | Added: debug (parameters check, exec time to analyze code performace in game) [2017-05-31], v1.2 | Improved: removed unnecessary checks during player sync ===
      Read "Goodbye". Wish you the best guys!
      ===
      How it looks like:
      Check source code (Github)
      ===
      FEATURES:
      Function is able to manage money processing with single line code (see bellow) and can be easily integrated into your code You can use debug option to check your fnc parameters + exec time (code performance) showed on screen (global chat):
      just uncoment line: '#define: __ DEBUG__' is src code; It's pretty fast but remember: use it only if you're developing some addon or you know exactly what to do.
      Otherwise, you can stil use common methods used by addons authors - mostly it's even faster their way, because of scoped approach; It's a function - you can easily maintain your "money" code... ===
      How to install:
      It's actually very easy: practical example is the best way to explain, what needs to be done - see repo structure and files.
      Source files are available at Github repo (specific usage example included!). You can download them from here.
      ===
      How to use it:
      = General usage:
      // [_player,_amount,_action,_target] call fnc_SC_uniCoins; // '_player' : object : player, _killer...etc // '_amount' : number : 1000 // '_action' : string : 'add' / 'remove' // '_target' : string : 'cache' / 'bank' // ========================================================== // @example 01: Remove 5.000 Coins from player's wallet: [player,5000,'remove','cache'] call fnc_SC_uniCoins; // @example 02: Add 1.000 Coins to player's wallet: [player,1000,'add','cache'] call fnc_SC_uniCoins; // @example 03: Remove 7.000 Coins from player's bank account: [player,7000,'remove','bank'] call fnc_SC_uniCoins; // @example 04: Add 15.000 Coins to player's bank account: [player,15000,'add','bank'] call fnc_SC_uniCoins; ===
      ...easy enough, isn't it?
      ===
      = Specific usage (with detailed description):
      // === Scenario: // Award player for killing local zombies. // If player kills zombie, he will receive random amount of money from 0 to 250 Coins for kill. // Let's make it interesting - player receive money only in case he used the gun defined by you: // === What to do: // Save file "local_eventKill.sqf" to your custom compiles folder, load it in your custom compiles file // outside (!isDedicated) and (isServer) - we need this file for both client and server. // (it's in 'dayz_code' folder: you can download file from: // https://github.com/EpochModTeam/DayZ-Epoch/blob/master/SQF/dayz_code/compile/local_eventKill.sqf) // Open your custom variables file (or add bellow code to your init.sqf file) and add: playerZedKillAward = true; // ... so you can quickly turn ON/OFF your script // Now, let's create some code in 'local_eventKill.sqf' file: if (local _zed) then { private["_killer","_fnc_uniCoinsTest","_allowedWps"]; // code // ...find last line of code: _killer setVariable["humanity",_humanity,true]; // Bellow we define local function "_fnc_killZedsAward" so we can call it easily: // === _fnc_killZedsAward = { private ["_action","_target","_money","_curWep"]; _action = _this select 0; // @info: we take parameter from call in main code bellow this fnc and assign value to local var _target = _this select 1; // @info: we take parameter from call in main code bellow this fnc and assign value to local var _money = (round(random 5) * 50); // @info: now from 0 to 250 Coins, define to your liking _curWep = getText (configFile >> 'CfgWeapons' >> currentWeapon _killer >> 'displayName'); // @info: What's the name of player current weapon? We need this for info in hint or dayz_rollingMessages call { // Player has 20% chance to get 0 coins from random (if you will use round(random 5) - meaning staying with 5, scale from 0 to 4) // So let's check it first and prevent display msg on screen in such a case if (_money == 0) exitWith { //@info: You can pick 'dayz_rollingMessages' and comment 'hintSilent' if your hint layer is occupied by your debug monitor ["Sorry, our bank is low on money!"] call dayz_rollingMessages; hintSilent "Sorry, our bank is low on money!"; }; // If random money are above zero, let's call dev fnc_SC_uniCoins. // First parameter '_killer' is defined by original code; _money param was defined above, // _action and _target parameters we defined in main code bellow... if ([_killer,_money,_action,_target] call fnc_SC_uniCoins) exitWith { //@info: You can pick 'dayz_rollingMessages' and comment 'hintSilent' if your hint layer is occupied by your debug monitor hintSilent format ["Zed kill award!\nweapon: [%1]\nReceived: [%2 %3]",_curWep,_money,CurrencyName]; [format["Zed kill award! Weapon: [%1] Received: [%2 %3]",_curWep,_money,CurrencyName]] call dayz_rollingMessages; }; // Do not put any default code for call here - if you do, you will trigger code action in cases, // like zombie is killed close to you by some accident (from experience) }; }; // Now let's create main procedure: if (playerZedKillAward) then { // @info: define your custom array of weapons here: _allowedWps = [ 'M110_NVG_EP1', 'M9_SD_DZ','DMR_DZ', 'M9_DZ' ]; if ((currentWeapon _killer) in _allowedWps) exitWith { // @info: if player used allowed weapon, tell '_fnc_killZedsAward', what to do with money. // You can be creative here :)) ["add","cache"] call _fnc_killZedsAward; }; }; }; // === Done! ===
      ...that's all, you can use it wherever money are... Have Fun!!
      Cheers...
      ===
    • By JohnnyBravo666
      My question is for when I switched over to single currency from the default currency, that when I went to the traders, it was showing costs like "5 Coins" to buy and "3 Coins to sell". I understand that it's pulling the value quantities from the trader files from the default currency. But is there a way to set it so it calculates what the gold bars and silver bars and whatnot are equal to in single currency ?
      I'd really prefer not to have to change up all the files.
  • Advertisement
  • Supporters
  • Discord

×
×
  • Create New...