中国虚拟军事网(VME)- 专注于武装突袭系列虚拟军事游戏

 找回密码
 加入VME

QQ登录

只需一步,快速开始

搜索
查看: 2431|回复: 1

[讨论] Ambient Combat Manager 的設置問題

[复制链接]
发表于 2012-3-12 14:31:26 | 显示全部楼层 |阅读模式
下面是我的init設置,之前用的是車臣單位,有用,但是換成俄軍就死活沒用···
所以···求高人指點···


skiptime (((paramsarray select 0) - daytime + 24) % 24);

// briefing
_garbage2 = execVM "briefing.sqf";

// Core Functions - for rangefinder script
_garbage1 = execvm "RMM_Core.sqf";

//Init Burn
BIS_fnc_burn = compile preprocessFile "\ca\Data\ParticleEffects\Scripts\Destruction\burn.sqf";

// Spotting mode function initialization
if (isnil "DZ_FNC_SpottingMode") then {
        DZ_FNC_SpottingMode = {
                private ["_spotter"];
              _spotter = _this select 0;
              selectplayer _spotter;
              (vehicle _spotter) switchcamera "GUNNER";
        };
};


execVm "rpf.sqf";
execVm "rpff.sqf";
execVm "rpfff.sqf";
execVm "rpffff.sqf";
execVm "rpt1.sqf";
execVm "rpt2.sqf";
execVm "rpt3.sqf";
execVm "rpt4.sqf";
execVm "UPA.sqf";
execvm "init_spotter.sqf";
call compile preprocessFileLineNumbers "scripts\Init_UPSMON.sqf";

randomlocation = round (floor (random 2));

if (randomlocation == 0) then {
        apt_sniper setPosATL [12255.2,9509.64,5.80502];apt_sniper setDir 338.794;
};
if (randomlocation == 1) then {
        apt_sniper setPosATL [12257.7,9513.14,9.91303];apt_sniper setDir 24.6297;  
};
if (randomlocation == 2) then {
        apt_sniper setPosATL [12264.9,9507.77,9.91303];apt_sniper setDir 135.872;
};

// Ambient Combat Module
sleep 2;
//ACM settings   
waitUntil {!isNil {BIS_ACM1 getVariable "initDone"}};
waitUntil {BIS_ACM1 getVariable "initDone"};
[] spawn {
    waitUntil {!(isnil "BIS_fnc_init")};
    [1, BIS_ACM1] call BIS_ACM_setIntensityFunc;                 //Sets the intensity of the ACM, in other words, determines how active it will be. Starts at 0 ends at

1.0, its been known to fail using 0.7 and 0.8
    [BIS_ACM1, 650, 1500] call BIS_ACM_setSpawnDistanceFunc;      // This is the radius on where the units will spawn around the unit the module is sync'd to, 400m

being the minimal distance and 700m being the maximum. Minimum is 1 I believe.
    [["RU"], BIS_ACM1] call BIS_ACM_setFactionsFunc;     // This tells the ACM which faction of units it will spawn. In this case it will spawn Takistani Insurgents
    [0.8, 0.9, BIS_ACM1] call BIS_ACM_setSkillFunc;                // This determines what the skill rating for the spawned units will be
    [0.7, 0.8, BIS_ACM1] call BIS_ACM_setAmmoFunc;               // This sets their amount of ammo they spawn with
    ["ground_patrol", 1, BIS_ACM1] call BIS_ACM_setTypeChanceFunc; //If you want ground patrols then leave it as a 1, if you don't put a 0. They will use random paths
    ["air_patrol", 0, BIS_ACM1] call BIS_ACM_setTypeChanceFunc;    // Same thing for air patrols
    [BIS_ACM1, ["MVD_AssaultTeam","RU_SniperTeam","RUS_ReconTeam","RU_MechInfSquad_1"]] call BIS_ACM_addGroupClassesFunc;   // This determines which exact units will

spawn from the group **Citation needed**
};

发表于 2012-3-12 22:21:26 | 显示全部楼层
车臣单位是否与RU一个阵营呢?

RU side=0 (EAST)

Cha? side=1 (WEST)

玩家 side 又是什么呢?你需要给出详细说明

ACM 默认刷敌方单位,如果ACE side=player side那就没得刷了,或者你需要重定义

在//ACE Setting段,试着把

[BIS_ACM1, ["MVD_AssaultTeam","RU_SniperTeam","RUS_ReconTeam","RU_MechInfSquad_1"]] call BIS_ACM_addGroupClassesFunc;

这句放在最前面看是否有效

关于你的Init

1. apt_sniper出生随机位置就三个,少了点。并且完全不必使用脚本定义,游戏自带random marker

2. if then 的效率比switch do 低,尽量不要在并列关系上使用if then

3. 每一次execVM都会浪费200-600微秒的时间,如果那个sqf不大,还是尽量放进一个脚本里面

或者少用execVM,改用读取cfgClass参数或者compile preprocessFile

点评

thanks ! 謝謝F大指點,已經更正  发表于 2012-3-12 23:39
您需要登录后才可以回帖 登录 | 加入VME

本版积分规则

小黑屋|中国虚拟军事网

GMT+8, 2024-5-2 07:13

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表