Jump to content
🛡️FORUMS ARE IN READ-ONLY MODE Read more... ×

Schatten

Member
  • Content Count

    816
  • Joined

  • Last visited

  • Medals

Everything posted by Schatten

  1. These files are specific to each mission. server\init.sqf same like in my previous post. server\eventHandlers\init.sqf onRequestPosPlaya = compile (preprocessFileLineNumbers "server\eventHandlers\onRequestPosPlaya.sqf"); "requestPosPlaya" addPublicVariableEventHandler {(_this select 1) call onRequestPosPlaya}; server\eventHandlers\onRequestPosPlaya.sqf PosPlaya = []; _id = 0; _dbName = _this select 0; _uid = _this select 1; if (_dbName call iniDB_exists) then {PosPlaya = _this call iniDB_read}; {if (_uid == (getPlayerUID _x)) exitWith {_id = owner _x}} count playableUnits; _id publicVariableClient "PosPlaya"; true In player\init.sqf you need to add this code: isPosPlayaReceived = false; _scriptHandler = [] execVM "player\eventHandlers\init.sqf"; waitUntil { sleep 0.1; scriptDone _scriptHandler }; player\eventHandlers\init.sqf onReceivePosPlaya = compile (preprocessFileLineNumbers "player\eventHandlers\onReceivePosPlaya.sqf"); "PosPlaya" addPublicVariableEventHandler {[] call onReceivePosPlaya}; player\eventHandlers\onReceivePosPlaya.sqf isPosPlayaReceived = true; true player\build.sqf _playa = _this select 1; requestPosPlaya = ["IWK_db", getPlayerUID _playa, "Position", "ARRAY"]; publicVariableServer "requestPosPlaya"; _startTime = time; waitUntil { sleep 0.1; isPosPlayaReceived or {(time - _startTime) > 10} }; if (isPosPlayaReceived) then { if ((count PosPlaya) > 0) then {_playa setPos PosPlaya}; isPosPlayaReceived = false; }; Logic is simple: I think it can be clearly seen in player\build.sqf.
  2. 2 azams, So you need to send request to server, server needs to retrieve data from database and send them to player.
  3. Hi! If I start dedicated server using A2OA Dedicated Server from Steam Tools no one can connect to it - pops up window "Connection lost". But if I start dedicated server using arma2oaserver.exe EVERYONE can connect to it. If I add arma2oaserver.exe to Steam Library (Games -> Add non-Steam application in my library) and start no one can connect to it again - pops up window "Connection lost". What's the matter? Parameters -cfg=basic.cfg -config=server.cfg -mod=@inidbi;@server -name=server -port=2302 -profiles=profiles server.cfg hostName = "something"; maxPlayers = 60; motd[] = {"something"}; motdInterval = 5; password = ""; passwordAdmin = "something"; allowedLoadFileExtensions[] = {"hpp","sqs","sqf","fsm","cpp","paa","txt","xml","inc","ext","sqm","ods","fxy","lip","csv","kb","bik","bikb","html","htm","biedi"}; allowedPreprocessFileExtensions[] = {"hpp","sqs","sqf","fsm","cpp","paa","txt","xml","inc","ext","sqm","ods","fxy","lip","csv","kb","bik","bikb","html","htm","biedi"}; BattlEye = 1; kickDuplicate = 1; localClient[] = {127.0.0.1}; onHackedData = "ban (_this select 0)"; persistent = 1; reportingIP = ""; requiredBuild = 125548; requiredSecureId = 2; steamPort = 8766; steamQueryPort = 2303; timeStampFormat = "short"; verifySignatures = 2; voteMissionPlayers = 3; voteThreshold = 1.33; class Missions { class something { template = "something.Takistan"; difficulty = "veteran"; }; }; Disabling mods, verifySignatures, requiredBuild and requiredSecureId didn't help. Please, help! OR How to make that Steam doesn't report that I started A2OA after launching arma2oaserver.exe? Because of this, I could not start the game. UPDATES: I opened these UDP ports in my router: 2302, 2303, 2305 and 8766. If I delete steam_appid.txt (which contain number 33930) Steam will not report that I started A2OA after launching arma2oaserver.exe. But no one can connect to server - pops up window "Connection lost". If I change number from steam_appid.txt from 33930 to 33935 Steam will report that I started A2OA Dedicated Server after launching arma2oaserver.exe. But no one can connect to server again - pops up window "Connection lost".
  4. Hi! I started dedicated server and connect to it headless client from same machine. And I can't connect to my server - pops up window "Connection lost". Also BattlEye reports "BE Service not running - closing game to start installation..." but nothing happens. What's the problem? Or it is impossible to do? UPDATE: Connect HC to Arma 2 OA server.bat CMD /C START ArmA2OA_BE.exe 0 0 -cfg=hc.cfg -client -connect=127.0.0.1 -mod=@server -name=HC -nosound -port=2302 -profiles=profiles From server.cfg kickDuplicate = 0; localClient[] = {127.0.0.1};
  5. Viba, how did you do that headless client occupied special slot on connected to server? On my server HC occupied first free slot. Can you help? From mission.sqm class Item67 { side="CIV"; class Vehicles { items=1; class Item0 { position[]={4398.0698,2.8474684,12019.737}; azimut=195; id=67; side="CIV"; vehicle="CIV_EuroMan01_EP1"; player="PLAY CDG"; leader=1; skill=0.60000002; description="Headless client"; forceHeadlessClient=1; init="this allowDamage false; this enableSimulation false"; }; }; }; From init.sqf _path = switch (true) do { case isServer: {"\@server\init.sqf"}; case (!hasInterface and !isDedicated): {"hc\init.sqf"}; case !isDedicated: {"player\init.sqf"}; }; [] execVM _path;
  6. Try. If enemy units are placed in editor use this code after mission starts: {if (!(isPlayer _x)) then {_x addEventHandler ["Killed", {_this call onKilledAi}]}} count (allMissionObjects "CAManBase"); Or simply attach event handler to enemy units during creation using script: _unit addEventHandler ["Killed", {_this call onKilledAi}];
  7. I think this is the only solution. You need attach for each AI event handler _unit addEventHandler ["Killed", {_this call onKilledAi}]; Example of event handler: server\eventHandlers\onKilledAi.sqf _unit = _this select 0; _killer = _this select 1; _killer addScore 1; _unit spawn { sleep (5 * 60); hideBody _this; }; true Command addScore works only on server. So you need attach event handler on server.
  8. Yes, HC is the same copy of the game as my client. Maybe. Can anybody that prove or disprove?
  9. Example: server\init.sqf call (compile (preprocessFileLineNumbers "\inidbi\init.sqf")); _scriptHandler = [] execVM "server\eventHandlers\init.sqf"; waitUntil { sleep 0.1; scriptDone _scriptHandler };server\eventHandlers\init.sqf onPlayerProfileReceipt = compileFinal (preprocessFileLineNumbers "server\eventHandlers\onPlayerProfileReceipt.sqf"); onPlayerProfileRequest = compileFinal (preprocessFileLineNumbers "server\eventHandlers\onPlayerProfileRequest.sqf"); "playerProfile" addPublicVariableEventHandler {call onPlayerProfileReceipt}; "playerUid" addPublicVariableEventHandler {call onPlayerProfileRequest};server\eventHandlers\onPlayerProfileReceipt.sqf _uid = playerProfile select 0; _profile = playerProfile select 1; playerProfile = nil; if ((count _profile) > 0) then { [_uid, "profile", "damage", _profile select 0] call iniDB_write; [_uid, "profile", "position", _profile select 1] call iniDB_write; [_uid, "profile", "magazines", _profile select 2] call iniDB_write; [_uid, "profile", "weapons", _profile select 3] call iniDB_write; }; trueserver\eventHandlers\onPlayerProfileRequest.sqf playerProfile = []; if (playerUid call iniDB_exists) then { { _variableName = _x select 0; _variableType = _x select 1; _variableValue = [playerUid, "profile", _variableName, _variableType] call iniDB_read; playerProfile pushBack _variableValue; } forEach [ ["damage", "SCALAR"], ["position", "ARRAY"], ["magazines", "ARRAY"], ["weapons", "ARRAY"] ]; }; {if ((getPlayerUID _x) == playerUid) exitWith {(owner _x) publicVariableClient "playerProfile"}} forEach playableUnits; playerProfile = nil; playerUid = nil; trueplayer\init.sqf resetProfile = compileFinal (preprocessFileLineNumbers "player\functions\resetProfile.sqf"); setUpPlayer = compileFinal (preprocessFileLineNumbers "player\functions\setUpPlayer.sqf"); profileBroadcaster = compileFinal (preprocessFileLineNumbers "player\scripts\profileBroadcaster.sqf"); playerUid = getPlayerUID player; publicVariableServer "playerUid"; playerUid = nil; player globalChat "Profile is requested"; waitUntil { sleep 0.1; !(isNil "playerProfile") }; if ((count playerProfile) > 0) then { player globalChat "Profile is found"; playerDamage = playerProfile select 0; playerPosition = playerProfile select 1; playerMagazines = playerProfile select 2; playerWeapons = playerProfile select 3; } else { player globalChat "Profile is not found"; call resetProfile; }; playerProfile = nil; call setUpPlayer; [] spawn profileBroadcaster;player\scripts\profileBroadcaster.sqf while {true} do { sleep (2 * 60); _weapons = (weapons player) - ["ItemCompass", "ItemMap", "ItemRadio", "ItemWatch"]; playerProfile = [ getPlayerUID player, [ damage player, [position player, direction player], magazines player, _weapons ] ]; publicVariableServer "playerProfile"; playerProfile = nil; player globalChat "Profile is saved"; };Hope it will help.
  10. Schatten

    Arma2 dedicated server howto

    Oh no... Steam reports again that I start A2OA after launching arma2oaserver.exe. So I can't start A2OA. I think that solution is using A2OA Dedicated Server from Steam's tools. But if I start this tool NO ONE can connect to my server. However, if I launch arma2oaserver.exe everyone can connect to my server. What's the problem?
  11. If you use this code, indicator will stop hiding when opening map.
  12. Schatten

    Arma2 dedicated server howto

    I used A2OA Dedicated Server from Steam's Tools because if I started dedicated server using arma2oaserver.exe, Steam reported that I started the game. Because of this, I could not start the game. But Steam was updated a few hours ago. Now if I start arma2oaserver.exe, Steam doesn't report that I started the game. So problem is removed for the time being. Thx for help. My response: { "response": { "success": true, "servers": [ { "addr": "*.*.*.*:2303", "gmsindex": 65534, "appid": 33930, "gamedir": "arma2arrowpc", "region": -1, "secure": false, "lan": false, "gameport": 2302, "specport": 0 } ] } } * I changed steamQueryPort to 2303.
  13. Schatten

    Arma2 dedicated server howto

    Yes, I start dedicated server from my computer. Yes, the title bar of the console window say "ArmA 2 OA Console version 1.63 : port 2302". More info see in my previous message. I tried - didn't help.
  14. Schatten

    Arma2 dedicated server howto

    Did not help. My server.cfg: hostName = "something"; maxPlayers = 60; motd[] = {"something"}; motdInterval = 5; password = ""; passwordAdmin = "something"; allowedLoadFileExtensions[] = {"hpp","sqs","sqf","fsm","cpp","paa","txt","xml","inc","ext","sqm","ods","fxy","lip","csv","kb","bik","bikb","html","htm","biedi"}; allowedPreprocessFileExtensions[] = {"hpp","sqs","sqf","fsm","cpp","paa","txt","xml","inc","ext","sqm","ods","fxy","lip","csv","kb","bik","bikb","html","htm","biedi"}; BattlEye = 1; kickDuplicate = 1; localClient[] = {127.0.0.1}; onHackedData = "ban (_this select 0)"; persistent = 1; reportingIP = ""; requiredBuild = 125548; requiredSecureId = 2; steamPort = 8766; steamQueryPort = 27016; timeStampFormat = "short"; verifySignatures = 2; voteMissionPlayers = 3; voteThreshold = 1.33; class Missions { class something { template = "something.Takistan"; difficulty = "veteran"; }; };
  15. Schatten

    Arma2 dedicated server howto

    Did not help. Yes, I'm sure. From server.cfg: steamPort = 8766; steamQueryPort = 27016; If I start dedicated server using arma2oaserver.exe packets pass through steamQueryPort and everyone can connect to my server. If I start dedicated server using Steam's tool packets pass through steamQueryPort too, but NO ONE can connect to my server.
  16. Schatten

    Arma2 dedicated server howto

    Hi everyone! If I start dedicated server using arma2oaserver.exe it works fine. But if I start dedicated server using Steam's tool I can not connect to it - pops up window "Connection lost". What's the matter? Parameters: -cfg=basic.cfg -config=server.cfg -mod=@inidbi;@server -name=server -profiles=profiles From arma2oaserver.RPT if I start dedicated server using arma2oaserver.exe: ===================================================================== == D:\Steam\steamapps\common\Arma 2 Operation Arrowhead\arma2oaserver.exe == "D:\Steam\steamapps\common\Arma 2 Operation Arrowhead\arma2oaserver.exe" -cfg=basic.cfg -config=server.cfg -mod=@inidbi;@server -name=server -profiles=profiles ===================================================================== Exe timestamp: 2014/08/14 12:45:09 Current time: 2014/08/14 13:17:13 Version 1.63.125402 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) 13:17:13 Server error: Player without identity Schatten (id *********) From arma2oaserver.RPT if I start dedicated server using Steam's tool: ===================================================================== == D:\Steam\steamapps\common\Arma 2 Operation Arrowhead\ARMA2OASERVER.exe == "D:\Steam\steamapps\common\Arma 2 Operation Arrowhead\ARMA2OASERVER.exe" -cfg=basic.cfg -config=server.cfg -mod=@inidbi;@server -name=server -profiles=profiles ===================================================================== Exe timestamp: 2014/08/14 12:45:09 Current time: 2014/08/14 12:49:20 Version 1.63.125402 12:49:20 Server error: Player without identity Schatten (id *********) No errors in server's console.
  17. Why did wheeled vehicles not become to move off-road as slowly as in ACR DLC? I need to disable DLC, otherwise players without DLC will have advantage over me.
×