Gerne doch
Kleiner hinweis: in der 4.0 gibt's die Config_vItems.hpp noch nicht, da ist das in der Config_Master.hpp mit drin. Und bis auf den Teil ist das auch komplett auf alle anderen Versionen und Modi übertragbar.
Beiträge von blackfisch
-
-
Client-Logs? Welchen Code nutzt du? Wie heißt die Texturdatei und wo liegt sie?
-
Kleine Verbesserungen:
Punkt 1: bitte diesen Code verwenden: (Wegen Missbrauch etc)
Ccase (_item isEqualTo "protestschild"): { if ([false,"protestschild",1] call life_fnc_handleInv;) then { call life_fnc_protestschild; closeDialog 0; }; };Punkt 3: Diesen Code:
C
Alles anzeigen/* File: fn_protestschild.sqf Author: Brizi01 Optimized & Edited by: blackfisch Description: [DE] Bearbeitet die Aktionen für das Protestschild - veröffentlicht auf Native-Network.net Es ist erlaubt dieses Script zu bearbeiten und zu adaptieren, der Header muss erhalten und darf nicht entfernt werden! [EN] Handles the actions for the protest sign - released on Native-Network.net You are allowed to adapt and modify this script, but the header has to remain untouched and can not be removed! */ if (!isNull objectParent player) exitWith { hint format["Protestschild aus dem Auto halten? Nein lieber %1!",profileName]; }; //only outside of vehicles | nur außerhalb von Fahrzeugen if (!isNil "life_signActive" || life_signActive) exitWith { hint "Du trägst bereits ein Schild!"; }; //only one sign allowed | nur ein Schild gleichzeitig life_signActive = true; //Debug player action ["SwitchWeapon", player, player, 100]; //holster Weapon | Waffe holstern if !(animationState player isEqualTo "amovpercmstpsnonwnondnon_salute") then { //only when not saluting | nur wenn er noch nicht salutiert player playAction "Salute"; //make player Salute (hand up) | Spieler salutieren lassen (Hand nach oben) }; private _sign = "Land_Poster_04_F" createVehicle [0,0,0]; //spawn the sign | das Schild spawnen _sign attachTo [player, [0,0,0.6], "righthand"]; //attach to hand | in die and geben _sign setVectorUp [0,90,-1]; //turn it right | richtig herum drehen 0 spawn { waitUntil{sleep 1; !(animationState player isEqualTo "amovpercmstpsnonwnondnon_salute") || {!alive player}}; //wait until not saluting or dead | warten bis nicht mehr salutierend oder tot life_signActive = false; //Debug deleteVehicle _sign; //Schild löschen };(kannst du gerne ins Tut übernehmen. Ist so einfasch schneller und performanter - siehe: [Erklärung|Leitfaden] Arma 3 Code Optimierung und ich hab etwas Debugging eingefügt ^^)
-
...wie du eine neue Case erstellst denke ich weißt du, das ist untertrieben das eine Grundvoraussetzung zu nennen
-
in der init ist sowieso purer Blödsinn, wenn dann über einen Trigger aber so und so ist das ein Performancefresser. Mach lieber nen Keyhandler Eintrag, kannst dafür folgenden Code nutzen:
-
Stimmt, nur meistens nimmt man einfach ! statt not zur Negierung, einfach weil wegen kürzer und in längeren Scripts und Codeschnipseln bleibt es so einfach ne Nummer übersichtlicher

-
Kleine Verbesserung: waitUntil {!alive Soldat1 && !alive Soldat2 && !alive Soldat3};
So verhinderst du eventuelle Fehler ggf.
-
C
Alles anzeigenparams [ ["_shop",objNull,[objNull]], //The object that has the action attached to it is _this. ,0, is the index of object, ObjNull is the default should there be nothing in the parameter or it's broken ["_robber",objNull,[objNull]], //Can you guess? Alright, it's the player, or the "caller". The object is 0, the person activating the object is 1 ["_action",0,[0]] //Action name ]; private _kassa = 1000; //The amount the shop has to rob, you could make this a parameter of the call (community.bistudio.com/wiki/addAction). Give it a try and post below if (isNil "life_robCount") then {life_robCount = 1;} else {life_robCount = life_robCount + 1;}; if(side _robber != civilian) exitWith { hintSilent "You can not rob this station!" }; if(_robber distance _shop > 5) exitWith { hintSilent "You need to be within 5m of the cashier to rob him!" }; if (!isNull objectParent _robber) exitWith { hintSilent "Get out of your vehicle!" }; if !(alive _robber) exitWith {}; if (currentWeapon _robber isEqualTo "") exitWith { hintSilent "HaHa, you do not threaten me! Get out of here you hobo!" }; if (_kassa isEqualTo 0) exitWith { hintSilent "There is no cash in the register!" }; if (life_robCount > 1) exitWith {}; _kassa = 10000 + round(random 10000); _shop removeAction _action; _shop switchMove "AmovPercMstpSsurWnonDnon"; _chance = random(100); if(_chance >= 1) then {[1,format["ALARM! - Gasstation: %1 is being robbed!", _shop]] remoteExec ["life_fnc_broadcast",west]; }; _cops = (west countSide playableUnits); if(_cops < 1) exitWith { hintSilent "There isnt enough Police to rob gas station!"; life_robCount = 0; }; disableSerialization; 5 cutRsc ["life_progress","PLAIN"]; private _ui = uiNameSpace getVariable "life_progress"; private _progress = _ui displayCtrl 38201; private _pgText = _ui displayCtrl 38202; _pgText ctrlSetText format["Robbery in Progress, stay close (10m) (1%1)...","%"]; _progress progressSetPosition 0.01; private _cP = 0.01; while{true} do { uiSleep 0.85; _cP = _cP + 0.01; _progress progressSetPosition _cP; _pgText ctrlSetText format["Robbery in Progress, stay close (10m) (%1%2)...",round(_cP * 100),"%"]; private _Pos = position player; // by ehno: get player pos private _marker = createMarker ["Marker200", _Pos]; //by ehno: Place a Maker on the map "Marker200" setMarkerColor "ColorRed"; "Marker200" setMarkerText "!ATTENTION! robbery !ATTENTION!"; "Marker200" setMarkerType "mil_warning"; if(_cP >= 1) exitWith { life_robCount = 0; }; if(_robber distance _shop > 10.5) exitWith { life_robCount = 0; }; if!(alive _robber) exitWith { life_robCount = 0; }; }; if!(alive _robber) exitWith { life_robCount = 0; }; if(_robber distance _shop > 10.5) exitWith { deleteMarker "Marker200"; _shop switchMove ""; hintSilent "You need to stay within 10m to Rob registry! - Now the registry is locked."; 5 cutText ["","PLAIN"]; _rip = false; }; 5 cutText ["","PLAIN"]; titleText[format["You have stolen $%1, now get away before the cops arrive!",[_kassa] call life_fnc_numberText],"PLAIN"]; deleteMarker "Marker200"; // by ehno delete maker life_cash = life_cash + _kassa; life_robCount = 0; //Debug life_use_atm = false; uiSleep (30 + random(180)); life_use_atm = true; uiSleep 300; _action = _shop addAction["Rob the Gas Station",life_fnc_robShops]; _shop switchMove ""; -
C
Alles anzeigenparams [ ["_shop",objNull,[objNull]], //The object that has the action attached to it is _this. ,0, is the index of object, ObjNull is the default should there be nothing in the parameter or it's broken ["_robber",objNull,[objNull]], //Can you guess? Alright, it's the player, or the "caller". The object is 0, the person activating the object is 1 ["_action"] //Action name ]; private _kassa = 1000; //The amount the shop has to rob, you could make this a parameter of the call (community.bistudio.com/wiki/addAction). Give it a try and post below if (isNil "life_robCount") then {life_robCount = 1;} else {life_robCount = life_robCount + 1;}; if(side _robber != civilian) exitWith { hintSilent "You can not rob this station!" }; if(_robber distance _shop > 5) exitWith { hintSilent "You need to be within 5m of the cashier to rob him!" }; if (!isNull objectParent _robber) exitWith { hintSilent "Get out of your vehicle!" }; if !(alive _robber) exitWith {}; if (currentWeapon _robber isEqualTo "") exitWith { hintSilent "HaHa, you do not threaten me! Get out of here you hobo!" }; if (_kassa isEqualTo 0) exitWith { hintSilent "There is no cash in the register!" }; if (life_robCount > 1) exitWith {}; _kassa = 10000 + round(random 10000); _shop removeAction _action; _shop switchMove "AmovPercMstpSsurWnonDnon"; _chance = random(100); if(_chance >= 1) then {[1,format["ALARM! - Gasstation: %1 is being robbed!", _shop]] remoteExec ["life_fnc_broadcast",west]; }; _cops = (west countSide playableUnits); if(_cops < 1) exitWith{[_vault,-1] remoteExec ["disableSerialization;",2]; hintSilent "There isnt enough Police to rob gas station!";}; disableSerialization; 5 cutRsc ["life_progress","PLAIN"]; private _ui = uiNameSpace getVariable "life_progress"; private _progress = _ui displayCtrl 38201; private _pgText = _ui displayCtrl 38202; _pgText ctrlSetText format["Robbery in Progress, stay close (10m) (1%1)...","%"]; _progress progressSetPosition 0.01; private _cP = 0.01; while{true} do { uiSleep 0.85; _cP = _cP + 0.01; _progress progressSetPosition _cP; _pgText ctrlSetText format["Robbery in Progress, stay close (10m) (%1%2)...",round(_cP * 100),"%"]; private _Pos = position player; // by ehno: get player pos private _marker = createMarker ["Marker200", _Pos]; //by ehno: Place a Maker on the map "Marker200" setMarkerColor "ColorRed"; "Marker200" setMarkerText "!ATTENTION! robbery !ATTENTION!"; "Marker200" setMarkerType "mil_warning"; if(_cP >= 1) exitWith { life_robCount = 0; }; if(_robber distance _shop > 10.5) exitWith { life_robCount = 0; }; if!(alive _robber) exitWith { life_robCount = 0; }; }; if!(alive _robber) exitWith { life_robCount = 0; }; if(_robber distance _shop > 10.5) exitWith { deleteMarker "Marker200"; _shop switchMove ""; hintSilent "You need to stay within 10m to Rob registry! - Now the registry is locked."; 5 cutText ["","PLAIN"]; _rip = false; }; 5 cutText ["","PLAIN"]; titleText[format["You have stolen $%1, now get away before the cops arrive!",[_kassa] call life_fnc_numberText],"PLAIN"]; deleteMarker "Marker200"; // by ehno delete maker life_cash = life_cash + _kassa; life_robCount = 0; //Debug life_use_atm = false; uiSleep (30 + random(180)); life_use_atm = true; uiSleep 300; _action = _shop addAction["Rob the Gas Station",life_fnc_robShops]; _shop switchMove "";Da waren einige Logikdummheiten drin die ich mal rausgefischt habe und nen kleinen Debug eingefügt habe (dass die nicht 2x gleichzeitig ausrauben können)
-
Okay, mir reichts... gib mir ne Sekunde, ich check das mal komplett durch...

-
Hi
Schon den A3l Taser versucht der ist auch ganz gut

Ich hoffe dir ist bewusst, dass die A3L Files lizensiert sind und nicht verwendet werden dürfen - A3L klagt auch ganz gern
-
-
In verschiedenen Dateien steht: player addRating 9999999;
Mach nen negativen Wert draus, z.B. player addRating -9999999; - sollte klappen.Müssten sein:
- initCiv
- core\init.sqf
- core\medical\fn_onPlayerRespawn.sqf
Nachteil: Medics werden auch angeschossen
-
isNil "_kassa" nicht isNil _kassa und das gilt generell für Variablen.
Außerdem keine Bilder von solchen Fehlern sondern Logs (siehe meine Signatur zum nachlesen) anhängen
-
Gute Frage. Die Basic ist immer ein sehr heikles Thema das gern verschwiegen wird. "Richtig" oder "Falsch" gibt es nicht, nur mehr oder weniger gut. Keiner von den großen Servern wird jemals seine Basic rausgeben, weil es eine höllische Arbeit ist die zu erstellen. Es gilt: bei relativ gefülltem Server (20 Pers. min) immer wieder anpassen, neu starten und testen bis es passt.
-
Simpelste Lösung: Config_Master.hpp -> spyGlass_toggle = false;
Zieht natürlich nach sich, dass BattlEye (logischerweise) aus ist und du mit BE Filtern/Anti-Cheat Tools (und ich meine jetzt nicht unbedingt infiStar, weil es viel zu viele unnötige Funktionen und BE Filter Whitelistungen hat) nachhelfen musst - der beste Schutz ist aber immernoch ein aufmerksames Adminteam/Community
-
Lieber statt blödem Befehleraten auch mal informieren was sie tun und welchen Syntax sie haben -> BI Community Wiki (https://community.bistudio.com/wiki/alive) und solche - tut mir leid, aber - blöden Fragen lassen sich vermeiden.
-
Vergleiche bitte diese Zeilen (korrekt):
C{ "B_MRAP_01_F", 620000, "rebel" }, { "O_Heli_Light_02_unarmed_F", 400000, "rebel" }, { "I_Heli_Transport_02_F", 475000, "rebel" }mit diesen (falsch):
C{ "B_Heli_Light_01_F", 253000, { "pilot" }, { "I_Heli_Transport_02_F", 600000, { "pilot" }, { "O_Heli_Light_02_unarmed_F", 550000, { "pilot" }Fällt was auf? Ich hoffe doch...
-
Hey Keks bei mir klappt alles wunderbar, ich brauch keine Hilde!
(ALTIS)Das wäre eine passende Antwort auf deine "Frage". Logs (Server/Client/[lexicon]extDB[/lexicon])? Woher weißt du das? Wie spiegelt sich das wieder?... -.- (siehe bitte auch mal meine Signatur)
-
Ich schließe mich @DerOetzii an - CityLife ist da sehr hinterher und Tipps zu Servern, die deren Mods ohne Erlaubnis nutzen sind bei denen sehr angesehen - da gibt's auch mal ne Unterlassungsklage.