perx Da bin ich auch schon drauf gestossen, nur ich hoste meinen Server nicht selbst sondern bei einem Hosting Anbieter
Beiträge von ___
-
-
Hey^^
Da ich nicht wusste, wo ich diesen Beitrag posten soll, poste ich ihn eben hier
Wie es im Titel steht, ich suche ein neues RCon Tool für meinen Server, da das EPM Tool totaler Bullsh*t ist...
Kann keine Banns hinzufügen, laden oder aktualisieren und sonst funktioniert hier und da auch was nicht
Ich suche ein kostenfreies, am besten per Webinterface steuerbares Tool. Zur Not auch was zum downloaden.
Kann mir da jemand was Gutes empfehlen?
-
So, einmal das Log
-
Virus_ Okay, da war ich einfach ein bisschen Brain AFK, das ist ja easy
Auf jeden Fall erstmal vielen Dank, so funktioniert es! Nur habe ich diesbezüglich noch ein Problem...
Ich kann den betreffenden Spieler in ein Fahrzeug setzen, nur kann ich ihn nicht mehr herausziehen
Ich hänge einmal meine vInteractionMenu.sqf an:
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_vInteractionMenu.sqf Author: Bryan "Tonic" Boardwine Description: Replaces the mass add actions for various vehicle actions. */ #define Btn1 37450 #define Btn2 37451 #define Btn3 37452 #define Btn4 37453 #define Btn5 37454 #define Btn6 37455 #define Title 37401 private["_display","_curTarget","_Btn1","_Btn2","_Btn3","_Btn4","_Btn5","_Btn6","_dlcVehicles"]; if (!dialog) then { createDialog "vInteraction_Menu"; }; disableSerialization; _curTarget = param [0,objNull,[objNull]]; if (isNull _curTarget) exitWith {closeDialog 0;}; //Bad target _isVehicle = if ((_curTarget isKindOf "landVehicle") || (_curTarget isKindOf "Ship") || (_curTarget isKindOf "Air")) then {true} else {false}; if (!_isVehicle) exitWith {closeDialog 0;}; _display = findDisplay 37400; _Btn1 = _display displayCtrl Btn1; _Btn2 = _display displayCtrl Btn2; _Btn3 = _display displayCtrl Btn3; _Btn4 = _display displayCtrl Btn4; _Btn5 = _display displayCtrl Btn5; _Btn6 = _display displayCtrl Btn6; life_vInact_curTarget = _curTarget; _dlcVehicles = ["C_Kart_01_Blu_F","C_Kart_01_Red_F","C_Kart_01_Fuel_F","C_Kart_01_Vrana_F","B_Heli_Transport_03_F","B_Heli_Transport_03_unarmed_F","O_Heli_Transport_04_F","O_Heli_Transport_04_ammo_F","O_Heli_Transport_04_bench_F","O_Heli_Transport_04_box_F","O_Heli_Transport_04_covered_F","O_Heli_Transport_04_fuel_F","O_Heli_Transport_04_medevac_F","O_Heli_Transport_04_repair_F"]; //Set Repair Action _Btn1 ctrlSetText localize "STR_vInAct_Repair"; _Btn1 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_repairTruck; closeDialog 0;"; if ("ToolKit" in (items player) && {alive life_vInact_curTarget} && {([life_vInact_curTarget] call life_fnc_isDamaged)}) then {_Btn1 ctrlEnable true;} else {_Btn1 ctrlEnable false;}; if (playerSide isEqualTo west) then { _Btn2 ctrlSetText localize "STR_vInAct_Registration"; _Btn2 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_searchVehAction; closeDialog 0;"; _Btn3 ctrlSetText localize "STR_vInAct_SearchVehicle"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_vehInvSearch; closeDialog 0;"; _Btn4 ctrlSetText localize "STR_vInAct_PullOut"; _Btn4 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_pulloutAction; closeDialog 0;"; if (crew _curTarget isEqualTo []) then {_Btn4 ctrlEnable false;}; _Btn5 ctrlSetText localize "STR_vInAct_Impound"; _Btn5 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_impoundAction; closeDialog 0;"; if (_curTarget isKindOf "Ship") then { _Btn6 ctrlSetText localize "STR_vInAct_PushBoat"; _Btn6 buttonSetAction "[] spawn life_fnc_pushObject; closeDialog 0;"; if (_curTarget isKindOf "Ship" && {local _curTarget} && {crew _curTarget isEqualTo []}) then { _Btn6 ctrlEnable true;} else {_Btn6 ctrlEnable false}; } else { if ((typeOf (_curTarget) in _dlcVehicles) && !(288520 in getDLCs 1)) then { if (_curTarget isKindOf "Air") then { _Btn6 ctrlSetText localize "STR_vInAct_GetInHeli"; } else { _Btn6 ctrlSetText localize "STR_vInAct_GetInKart"; }; _Btn6 buttonSetAction "player moveInDriver life_vInact_curTarget; closeDialog 0;"; if (crew _curTarget isEqualTo [] && {canMove _curTarget} && {locked _curTarget isEqualTo 0}) then {_Btn6 ctrlEnable true;} else {_Btn6 ctrlEnable false}; } else { _Btn6 ctrlSetText localize "STR_vInAct_Unflip"; _Btn6 buttonSetAction "life_vInact_curTarget setPos [getPos life_vInact_curTarget select 0, getPos life_vInact_curTarget select 1, (getPos life_vInact_curTarget select 2)+0.5]; closeDialog 0;"; if (alive _curTarget && {crew _curTarget isEqualTo []} && {canMove _curTarget}) then { _Btn6 ctrlEnable false;} else {_Btn6 ctrlEnable true;}; }; }; } else { if (_curTarget isKindOf "Ship") then { _Btn2 ctrlSetText localize "STR_vInAct_PushBoat"; _Btn2 buttonSetAction "[] spawn life_fnc_pushObject; closeDialog 0;"; if (alive _curTarget && {_curTarget isKindOf "Ship"} && {local _curTarget} && {crew _curTarget isEqualTo []}) then { _Btn2 ctrlEnable true;} else {_Btn2 ctrlEnable false}; } else { if ((typeOf (_curTarget) in _dlcVehicles) && !(288520 in getDLCs 1)) then { if (_curTarget isKindOf "Air") then { _Btn2 ctrlSetText localize "STR_vInAct_GetInHeli"; } else { _Btn2 ctrlSetText localize "STR_vInAct_GetInKart"; }; _Btn2 buttonSetAction "player moveInDriver life_vInact_curTarget; closeDialog 0;"; if (crew _curTarget isEqualTo [] && {canMove _curTarget} && {locked _curTarget isEqualTo 0}) then {_Btn2 ctrlEnable true;} else {_Btn2 ctrlEnable false}; } else { _Btn2 ctrlSetText localize "STR_vInAct_Unflip"; _Btn2 buttonSetAction "life_vInact_curTarget setPos [getPos life_vInact_curTarget select 0, getPos life_vInact_curTarget select 1, (getPos life_vInact_curTarget select 2)+0.5]; closeDialog 0;"; if (alive _curTarget && {crew _curTarget isEqualTo []} && {canMove _curTarget}) then { _Btn2 ctrlEnable false;} else {_Btn2 ctrlEnable true;}; }; }; if (typeOf _curTarget == "O_Truck_03_device_F") then { _Btn3 ctrlSetText localize "STR_vInAct_DeviceMine"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_deviceMine"; if (!isNil {(_curTarget getVariable "mining")} || !local _curTarget && {_curTarget in life_vehicles}) then { _Btn3 ctrlEnable false; } else { _Btn3 ctrlEnable true; }; } else { _Btn3 ctrlShow false; if (typeOf (_curTarget) in ["C_Van_01_fuel_F","I_Truck_02_fuel_F","B_Truck_01_fuel_F"] && _curTarget in life_vehicles) then { if (!isNil {_curTarget getVariable "fuelTankWork"}) then { _Btn3 ctrlSetText localize "STR_FuelTank_Stop"; _Btn3 buttonSetAction "life_vInact_curTarget setVariable [""fuelTankWork"",nil,true]; closeDialog 0;"; _Btn3 ctrlShow true; } else { if (count (nearestObjects [_curTarget, ["Land_FuelStation_Feed_F","Land_fs_feed_F"], 15]) > 0) then { _Btn3 ctrlSetText localize "STR_FuelTank_Supply"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_fuelSupply"; _Btn3 ctrlShow true; }else{ { if (player distance (getMarkerPos _x) < 20) exitWith { _Btn3 ctrlSetText localize "STR_FuelTank_Store"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_fuelStore"; _Btn3 ctrlShow true; }; } forEach ["fuel_storage_1","fuel_storage_2"]; }; }; }; }; _Btn4 ctrlShow false; _Btn5 ctrlShow false; _Btn6 ctrlShow false; }; if (playerSide isEqualTo Independent) then { _Btn2 ctrlSetText localize "STR_vInAct_Unflip"; _Btn2 buttonSetAction "life_vInact_curTarget setPos [getPos life_vInact_curTarget select 0, getPos life_vInact_curTarget select 1, (getPos life_vInact_curTarget select 2)+0.5]; closeDialog 0;"; if (alive _curTarget && {crew _curTarget isEqualTo []} && {canMove _curTarget}) then { _Btn2 ctrlEnable false;} else {_Btn2 ctrlEnable true;}; _Btn3 ctrlSetText localize "STR_vInAct_Impound"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_impoundAction; closeDialog 0;"; _Btn3 ctrlShow true; _Btn4 ctrlSetText localize "STR_vInAct_Registration"; _Btn4 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_searchVehAction; closeDialog 0;"; _Btn4 ctrlShow true; if (alive _curTarget && {crew _curTarget isEqualTo []} && {canMove _curTarget}) then { _Btn5 ctrlEnable false;} else {_Btn5 ctrlEnable true;}; if (!isNil "_id") then { if !(_id in getDLCs 1) then { _Btn6 ctrlSetText localize "STR_vInAct_GetInVehicle"; _Btn6 buttonSetAction "player moveInDriver life_vInact_curTarget; closeDialog 0;"; if (crew _curTarget isEqualTo [] && {canMove _curTarget} && {locked _curTarget isEqualTo 0}) then {_Btn6 ctrlEnable true;} else {_Btn6 ctrlEnable false}; }; } else {_Btn6 ctrlShow false;}; };
-
Marius1773 Mhm... Wirklich strange
-
Hehe, funktioniert leider immer noch nicht. Aber wenigstens baut es jz 20 anstatt 18 Äpfel ab
-
moeck Jetzt farmt er gar nicht mehr und nachdem ich das farmen gestartet habe, öffnet sich das vInteractionMenu auch nicht mehr
Und beim connecten hab ich auch einen Scriptfehler bekommen, war zu langsam um ihn zu screenshoten, deswegen auch noch die Server Logs
Ja, bekommen wir sicher nochmal iwann hin und wenn wir Bohemia anhauen müssen
-
Marius1773 Okay, danke trotzdem vielen Dank und falls ich es mir anders überlege schreibe ich dich an!
-
Marius1773 Nur eins?
Also hätte schon lieber drei... Bzw. zur Not kann man das mit den Markern auch sein lassen... Hätte ich aber eig. schon gern
-
Virus_ moeck Leider funktionieren beide Scripts nicht. Habe meine entsprechenden Zonen eingetragen, es werden aber wieder nur Äpfel abgebaut... Einmal mein Client Log
Und moeck Ja, habe aktuell auch Probleme mit dem Gang Hideout bzw. teste gerade ein Script von Marius1773 das ggf. Marker erstellt, sobald dieses eingenommen wurde. Und ich habe die deviceMine.sqf nicht von einer x3 Version, sondern aus deinem Tutorial für die x4
-
Marius1773 Erstmal danke! Nur leider bekomme ich folgende Fehlermeldung, die erste beim connecten auf den Server, die zweite beim Versuch ein Gangversteck einzunehmen, dieses lässt sich aber nicht einehmen
Connect:
Einnehmen des Gangversteckes:
-
Virus_ Okay, ich stelle mich ein bisschen blöd an
[_curObject] call life_fnc_civInteractionMenu; soll ich wo einfügen/ersetzen?
-
Tass Oh, hatte ich gar nicht angehängt
Hier mal meine fn_escortAction.sqf:
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_escortAction.sqf Author: Bryan "Tonic" Boardwine Description: Attaches the desired person(_unit) to the player(player) and "escorts them". */ private ["_unit"]; _unit = [_this,0,objNull,[objNull]] call BIS_fnc_param; if (!isNull(player getVariable ["escortingPlayer",objNull])) exitWith {}; if (isNil "_unit" || isNull _unit || !isPlayer _unit) exitWith {}; if (!(side _unit in [civilian,independent])) exitWith {}; if (player distance _unit > 3) exitWith {}; _unit attachTo [player,[0.1,1.1,0]]; player setVariable ["escortingPlayer",_unit]; player setVariable ["isEscorting",true]; _unit setVariable ["transporting",false,true]; _unit setVariable ["Escorting",true,true]; player reveal _unit; [_unit] spawn { _unit = _this select 0; waitUntil {(!(_unit getVariable ["Escorting",false]))}; player setVariable ["escortingPlayer",nil]; player setVariable ["isEscorting",false]; };
-
Marius1773 Klar. Meine Variablen: "gang_area_1", "gang_area_2", "gang_area_3"
Bin erstmal weg, hab noch was zu erledigen, aber ich werde dein Script dann morgen anschauen und testen!
-
Marius1773 Okay, das wäre super
-
Marius1773 Nope, wird kein Marker erstellt
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_captureHideout.sqf Author: Bryan "Tonic" Boardwine Description: Blah blah. */ private _altisArray = ["Land_u_Barracks_V2_F","Land_i_Barracks_V2_F"]; private _tanoaArray = ["Land_School_01_F","Land_Warehouse_03_F","Land_House_Small_02_F"]; private _hideoutObjs = [[["Altis", _altisArray], ["Tanoa", _tanoaArray]]] call TON_fnc_terrainSort; private _hideout = (nearestObjects[getPosATL player,_hideoutObjs,25]) select 0; private _group = _hideout getVariable ["gangOwner",grpNull]; if (isNil {group player getVariable "gang_name"}) exitWith {titleText[localize "STR_GNOTF_CreateGang","PLAIN"];}; if (_group == group player) exitWith {titleText[localize "STR_GNOTF_Controlled","PLAIN"]}; if ((_hideout getVariable ["inCapture",false])) exitWith {hint localize "STR_GNOTF_onePersonAtATime";}; private "_action"; private "_cpRate"; if (!isNull _group) then { _gangName = _group getVariable ["gang_name",""]; _action = [ format [localize "STR_GNOTF_AlreadyControlled",_gangName], localize "STR_GNOTF_CurrentCapture", localize "STR_Global_Yes", localize "STR_Global_No" ] call BIS_fnc_guiMessage; _cpRate = 0.0180; } else { _cpRate = 0.0210; }; if (!isNil "_action" && {!_action}) exitWith {titleText[localize "STR_GNOTF_CaptureCancel","PLAIN"];}; life_action_inUse = true; //Setup the progress bar disableSerialization; private _title = localize "STR_GNOTF_Capturing"; "progressBar" cutRsc ["life_progress","PLAIN"]; private _ui = uiNamespace getVariable "life_progress"; private _progressBar = _ui displayCtrl 38201; private _titleText = _ui displayCtrl 38202; _titleText ctrlSetText format ["%2 (1%1)...","%",_title]; _progressBar progressSetPosition 0.01; private _cP = 0.01; for "_i" from 0 to 1 step 0 do { if (animationState player != "AinvPknlMstpSnonWnonDnon_medic_1") then { [player,"AinvPknlMstpSnonWnonDnon_medic_1",true] remoteExecCall ["life_fnc_animSync",RCLIENT]; player switchMove "AinvPknlMstpSnonWnonDnon_medic_1"; player playMoveNow "AinvPknlMstpSnonWnonDnon_medic_1"; }; uiSleep 0.26; if (isNull _ui) then { "progressBar" cutRsc ["life_progress","PLAIN"]; _ui = uiNamespace getVariable "life_progress"; _progressBar = _ui displayCtrl 38201; _titleText = _ui displayCtrl 38202; }; _cP = _cP + _cpRate; _progressBar progressSetPosition _cP; _titleText ctrlSetText format ["%3 (%1%2)...",round(_cP * 100),"%",_title]; _hideout setVariable ["inCapture",true,true]; if (_cP >= 1 || !alive player) exitWith {_hideout setVariable ["inCapture",false,true];}; if (life_istazed) exitWith {_hideout setVariable ["inCapture",false,true];}; //Tazed if (life_isknocked) exitWith {_hideout setVariable ["inCapture",false,true];}; //Knocked if (life_interrupted) exitWith {_hideout setVariable ["inCapture",false,true];}; }; //Kill the UI display and check for various states "progressBar" cutText ["","PLAIN"]; player playActionNow "stop"; if (!alive player || life_istazed || life_isknocked) exitWith {life_action_inUse = false;_hideout setVariable ["inCapture",false,true];}; if (player getVariable ["restrained",false]) exitWith {life_action_inUse = false;_hideout setVariable ["inCapture",false,true];}; if (life_interrupted) exitWith {life_interrupted = false; titleText[localize "STR_GNOTF_CaptureCancel","PLAIN"]; life_action_inUse = false;_hideout setVariable ["inCapture",false,true];}; life_action_inUse = false; titleText[localize "STR_GNOTF_Captured","PLAIN"]; private _flagTexture = [ "\A3\Data_F\Flags\Flag_red_CO.paa", "\A3\Data_F\Flags\Flag_green_CO.paa", "\A3\Data_F\Flags\Flag_blue_CO.paa", "\A3\Data_F\Flags\Flag_white_CO.paa", "\A3\Data_F\Flags\flag_fd_red_CO.paa", "\A3\Data_F\Flags\flag_fd_green_CO.paa", "\A3\Data_F\Flags\flag_fd_blue_CO.paa", "\A3\Data_F\Flags\flag_fd_orange_CO.paa" ] call BIS_fnc_selectRandom; _this select 0 setFlagTexture _flagTexture; [[0,1],"STR_GNOTF_CaptureSuccess",true,[name player,(group player) getVariable "gang_name"]] remoteExecCall ["life_fnc_broadcast",RCLIENT]; _hideout setVariable ["inCapture",false,true]; _hideout setVariable ["gangOwner",group player,true];
Am besten wäre, dass der Hideout Marker entfernt wird und ein Marker mit "eingenommen von blabla" erstellt wird. Natürlich nur, bis es wieder nicht besetzt ist
-
Mike Black, okay trotzdem danke
Hat sonst noch wer ne Idee?
-
Marius1773 Achja, könntest du mir vlt. noch erkären wie das mit dem Ding mit der Map usw. funktioniert?
-
So, alles klar. Hat alles super funktioniert. Danke!
-
blackfisch Naja, Copy & Pasten klar, nicht einfach blind nutzen. Aber die einzelnen Variablen bzw. einfache Scripting Commands hab ich schon raus, aber ich denke da ist gerade NN ein guter Anlaufpunkt um sich zu informieren, und von Profis wie euch zu lernen