1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Di: 09 September 2025
  • Anmelden oder registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Mitglieder
    3. Saturin78

    Beiträge von Saturin78

    • Suche Server mit Sprengwesten Script

      • Saturin78
      • 26. Juli 2017 um 13:01

      Ich hatte das mal auf dem Server. Aber raus gemacht, da selten ordentliches RP entstand. Es wurde nur als Hobby-Möchtegern-IS-Terrorist genutzt. Und da geht mir die Hutschnur hoch. Bei mir wurden alle die mit dem Kram angefangen haben direkt mit Perma ban belegt, da ich diese Sche... Bei mir im TS Und Server nicht zulassen. Einmal den Ausruf Alua...ba und zack Perma ban, ohne Diskussion.

      Aber es gibt Leute die damit wirklich gutes RP machen können, aber das sind leider sehr wenige.

    • Setting up client Pleas Wait 4.4R3

      • Saturin78
      • 26. Juli 2017 um 10:46

      Mach in der Datenbank noch die Zelle so, dass wenn er den Spieler anlegt da immer eine 0 drin ist. Also als default Zahl eine 0 rein. Weil in dem Script fragt er ba ob da eine 0 drin steht und wenn ja fragt er ne neue Pin an die gespeichert wird. Wenn da eine zahl ungleich 0 drin ist ist das die Pin und die Abfrage kommt nicht mehr, wenn da nichts drin steht, kapiert er nichts mehr.

    • Haben ein script installiert muss ich dar noch was in der Datenbank / live_server was eintragen?

      • Saturin78
      • 26. Juli 2017 um 10:19
      Zitat von Dovkeizz

      Guten Tag, Ich haben eine Frage oder besser ein Problem. Ich haben ein Perso script für mein Altis live Server geholt und auch in der MP erfolgreich installiert.

      Nun zum Problem, wenn ich dann auf Server gehe bekomm ich Fehler [Einrichten des Client bitte warten]

      Mein Version ist 5.00 muss ich dar noch in der Datenbank oder bei live_server was eintragen meinen Datenbank ist nicht das Problem nehme ich das script wieder raus geht wieder alles.

      Ich bedanke mich schon mal im voraus.:D

      Sei mir nicht böse, aber du erwartest von uns dass wir unsere Glaskugeln quälen :)

      Ne im Ernst, wir sollten wissen was du eingebaut hast. Wenn es z.B. ein Perso script ist, das den Perso permanent speichert, also die Spieler jedesmal den gleichen PErso wieder haben, dann ja muss es in der DB eingetragen werden und sicher auch im life_server. Ist es aber nur so eine Art "Ich gebe dem Spieler random einfach mal nen Perso und das bei jedem Login neu" dann wird das warhscheinlich nur in den Profildaten des spielers hinterlegt. Aber im life_Server muss sicher was eingebaut werden.

      Wo hast denn das Script her? In den meisten Fällen ist das doch mit einem Tuttorial verbunden. Wenn du das bei jemandem gekauft hast, kann der dir sicher genauere Informationen dazu geben ( Support ). Und wenn du es einfach aus einer anderen Mission geklaut hast, hast du eh kein Recht das zu verwenden und wirst hier auch keinerlei Hilfe mehr bekommen. Will dir damit nichts unterstellen.

    • [Tutorial][VIS V2 BETA] Vehicle Information System | Multi-kompatibel & Database Synchronisation

      • Saturin78
      • 24. Juli 2017 um 22:20

      Danke, gerne doch :)

    • [Tutorial][VIS V2 BETA] Vehicle Information System | Multi-kompatibel & Database Synchronisation

      • Saturin78
      • 24. Juli 2017 um 22:01

      Erweiterung für HeadlesClient:

      1. in der Datein CfgRemoteExec.hpp falls noch nciht vorhanden das unten bei HC einfügen:

      C: CfgRemoteExec.hpp
      //Fahrzeug Informations System
              F(HC_fnc_vehicleInfoUpdate,HC)

      2. im HeadlesClient @life_hc einen Ordner unter MySQL erstellen mit dem Namen Vis

      3. in diesen Ordnerdiese fn_vehicleInfoUpdate.sqf erstellen:

      C: fn_vehicleInfoUpdate.sqf
      #include "\life_hc\hc_macros.hpp"
      /*
          File: fn_vehicleInfoUpdate.sqf
          Author: Leon "DerL30N" Beeser
          Description:
          Stores/reads the vehicle informations of VIS in db
      */
      private["_ret","_vehicle","_read","_vInfo","_plate","_uid","_query","_tickTime","_queryResult"];
      _ret = [_this,0,objNull,[objNull]] call BIS_fnc_param;
      _vehicle = [_this,1,objNull,[objNull]] call BIS_fnc_param;
      _read = [_this,2,false,[true]] call BIS_fnc_param;
      _data = [_this,3,[],[[]]] call BIS_fnc_param;
      if (isNull _ret) exitWith {};
      _ret = owner _ret;
      if (isNull _vehicle) exitWith {};
      
      _vInfo = _vehicle getVariable ["dbInfo",[]];
      if (count _vInfo > 0) then {
          _plate = _vInfo select 1;
          _uid = _vInfo select 0;
      };
      
      diag_log format["--- VIS -> DB -> Starting DB for %1 ---",_ret];
      
      if (!_read) exitWith {
          // update
          _query = format["UPDATE vehicles SET vis='%3' WHERE pid='%1' AND plate='%2'", _uid, _plate, _data];
          [_query,1] call HC_fnc_asyncCall;
          diag_log "--- VIS -> Saving -> Perm Vehicle -> DB done ---";    
      };
      
      if (count _vInfo isEqualTo 0) exitWith {};
      
      _query = format["SELECT vis FROM vehicles WHERE pid='%1' AND plate='%2'", _uid, _plate];
      
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call HC_fnc_asyncCall;
      
      if (EXTDB_SETTING(getNumber,"DebugMode") isEqualTo 1) then {
          diag_log "------------- Client Query Request -------------";
          diag_log format["QUERY: %1",_query];
          diag_log format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
          diag_log format["Result: %1",_queryResult];
          diag_log "------------------------------------------------";
      };
          
      // we dont like bad data
      if (!(count _queryResult == 1)) exitWith { diag_log format["--- VIS -> DB -> Error -> Bad data 1 : %1 ---",_queryResult]; };
      _queryResult = _queryResult select 0;
      if (!(count _queryResult == 5)) exitWith { diag_log format["--- VIS -> DB -> Error -> Bad data 2 : %1 ---",_queryResult]; };
      
      diag_log format["--- VIS -> DB -> Returning result -> %1 ---",_queryResult];
      [_queryResult,true] remoteExec ["life_fnc_visVehInfo",_ret];
      Alles anzeigen

      4. in der config.cpp im life_hc diese Neue Class unter Class General einfügen:

      C: config.cpp
      class VisdbHC {
                  file = "\life_hc\MySQL\Vis";
                  class vehicleInfoUpdate {};
              };

      5. in der Datei fn_insertVehicle.sqf auf dem life_hc die Zeile 23 durch das ersetzen:

      C: fn_insertVehicle.sqf
      _query = format ["INSERT INTO vehicles (side, classname, type, pid, alive, active, inventory, color, plate, gear, damage) VALUES ('%1', '%2', '%3', '%4', '1','1','""[[],0]""', '%5', '%6','""[]""','""[]""')",_side,_className,_type,_uid,_color,_plate];
      
      ersetzen durch:
      
      _vis = [0,[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],0,0,0];
      _query = format["INSERT INTO vehicles (side, classname, type, pid, alive, active, inventory, color, plate, gear, damage, vis) VALUES ('%1', '%2', '%3', '%4', '1','1','""[[],0]""', '%5', '%6','""[]""','""[]""','%7')",_side,_className,_type,_uid,_color,_plate,_vis];

      Und unten die Zeile [_query,1] call DB_fnc_asyncCall; durch [_query,1] call HC_fnc_asyncCall; ersetzen.

      6. die Datei fn_vis_setup.sqf ersetzen durch diese:

      C: fn_vis_setup.sqf
      #include "..\lb_script_macros.hpp"
      #include "..\..\script_macros.hpp"
      /*
          File: fn_vis_setup.sqf
          Author: Leon "DerL30N" Beeser
          
          Description:
          Starts the VIS System
      */
      
      if(!isServer) then 
      {
          if ((vis_isActive) && (vehicle player != player) && (driver (vehicle player) == player) && ((vehicle player isKindOf "Car") OR (vehicle player isKindOf "Air") OR (vehicle player isKindOf "Ship"))) then 
          {
              _veh = vehicle player;
              _vInfo = _veh getVariable ["dbInfo",[]];
              if (!(count _vInfo isEqualTo 0)) then  {
                  diag_log "--- VIS -> Starting -> Perm Vehicle -> DB Connecting... ---";
                  //Anpassung für HeadlessClient
                  if (life_HC_isActive) then {
                      [player,_veh,true] remoteExecCall ["HC_fnc_vehicleInfoUpdate",HC_Life];
                  } else {
                      [player,_veh,true] remoteExecCall ["life_fnc_vehicleInfoUpdate",RSERV];
                  };
                  
                  //[player,_veh,true] remoteExecCall ["life_fnc_vehicleInfoUpdate",RSERV];//Database veh only
              } else {
                  //[0,false] spawn life_fnc_vis_vehInfo;
                  [0,false] spawn life_fnc_visVehInfo;
                  diag_log "--- VIS -> Starting -> Rental Vehicle ---";
              };
          };
      };
      Alles anzeigen

      Sodele, das dürfte es gewesen sein. Bei mir klappt es nun wunderbar auch mit aktiven HeadlessClient.

      MfG

      Saturin78

    • [Tutorial][VIS V2 BETA] Vehicle Information System | Multi-kompatibel & Database Synchronisation

      • Saturin78
      • 24. Juli 2017 um 21:27

      ah super, danke, das hab ich total übersehen :)

    • [Tutorial][VIS V2 BETA] Vehicle Information System | Multi-kompatibel & Database Synchronisation

      • Saturin78
      • 24. Juli 2017 um 20:11
      Zitat von DerL30N

      Saturin78 Ich muss mich nochmals korrigieren....

      Ich habe gearde gesehen, dass er mit HC an die DB geht.... nur erstellst du den eintrag nicht....

      Code: fn_vehicleInfpUpdate.sqf
      // we dont like bad data
      if (!(count _queryResult == 1)) exitWith { diag_log format["--- VIS -> DB -> Error -> Bad data 1 : %1 ---",_queryResult]; };
      _queryResult = _queryResult select 0;
      if (!(count _queryResult == 5)) exitWith { diag_log format["--- VIS -> DB -> Error -> Bad data 2 : %1 ---",_queryResult]; };

      Wie du sicherlich siehst, wird beim ersten schritt geguckt ob es überhaupt einen Datensatz gibt und den gibt es bei dir...

      Dann kontrolliert er ob dieser auch richtug ist, also ob dieser die erwartete Länge besitzt, und das scheint er bei dir nicht zu haben...

      Ich würde mal schätzen, dass etwas bei deiner fn_insertVehicle.sqf nicht ganz koschar ist.

      Er erwartet ja folgenden Block :

      [0,[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],0,0,0]

      Alles anzeigen

      Ja, sage ja er schreibt das nicht in die Table rein. das macht er nur ohne HC. Wenn ich ein Auto kaufe ohne aktiven HC, wird es in die DB eingetragen, bei aktiven HC ist die Spalte leer. die fn_insertVehicle.sqf ist im life_server vorhanden, aber im life_hc nicht.

      C: fn_insertVehicle.sqf
      /*
          File: fn_insertVehicle.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Inserts the vehicle into the database
      */
      private ["_query","_sql","_vis"];
      params [
          "_uid",
          "_side",
          "_type",
          "_className",
          ["_color",-1,[0]],
          ["_plate",-1,[0]]
      ];
      
      //Stop bad data being passed.
      if (_uid isEqualTo "" || _side isEqualTo "" || _type isEqualTo "" || _className isEqualTo "" || _color isEqualTo -1 || _plate isEqualTo -1) exitWith {};
      
      //_query = format ["INSERT INTO vehicles (side, classname, type, pid, alive, active, inventory, color, plate, gear, damage) VALUES ('%1', '%2', '%3', '%4', '1','1','""[[],0]""', '%5', '%6','""[]""','""[]""')",_side,_className,_type,_uid,_color,_plate];
      _vis = [0,[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],0,0,0];
      _query = format["INSERT INTO vehicles (side, classname, type, pid, alive, active, inventory, color, plate, gear, damage, vis) VALUES ('%1', '%2', '%3', '%4', '1','1','""[[],0]""', '%5', '%6','""[]""','""[]""','%7')",_side,_className,_type,_uid,_color,_plate,_vis];
      
      [_query,1] call DB_fnc_asyncCall;
      Alles anzeigen
    • [Tutorial][VIS V2 BETA] Vehicle Information System | Multi-kompatibel & Database Synchronisation

      • Saturin78
      • 24. Juli 2017 um 18:44
      Zitat von DerL30N

      Ja, das Script hat nicht gelernt mit HC umzugehen, da ich zum Zeitpunkt der Entwiclung nicht darüber nachgedacht habe HC einzubinden.....

      Das sollte aber ganz einfach nachzurüsten seien, ich gucke mir das mal eben an, wie das mit HC funktioniert, habe schon lange nichts mehr mit SQF und co gemacht ^^

      Also kurz gefasst musst du (man) "einfach" in der fn_vis_setup.sqf den HC integrieren....

      Wow supi, das wäre mega.

      Ich hab zwar langsam raus wie ich kleinere Sachen mit HC machen, aber bin da auch erst noch am reinfuchsen :)

    • [Tutorial][VIS V2 BETA] Vehicle Information System | Multi-kompatibel & Database Synchronisation

      • Saturin78
      • 24. Juli 2017 um 17:50

      Hallole, mir ist gerade was aufgefallen.

      Ich nutze einen HeadlessClient und wenn dieser läuft , dann schreibt er mir beim kaufen von nem Auto die vis sachen nciht in die DB. Nun ist aber das Problem, dass die datei fn_insertVehicle.sqf nicht im HeadlessClient existiert. Ich denke dass er deswegen auch nichts in die DB einträgt. Wenn man das Auto dann nutzt, zeigt er auch keine Anzeige an. Wenn der HeadlessClient aus ist, geht alles ohne Probleme.

      Der einzige Fehler der in den Logs deswegen dann kommt ist dieser:

      17:24:54 "--- VIS -> DB -> Error -> Bad data 2 : ---"

      Wahrscheinlich weil in der vis Table nichts drin ist.

      Hat jemand ne Idee wie man das noch so hin bekommt, dass es auch mit HC funktioniert?

    • 3 Skindateien auf ein Fahrzeug , Wie ?

      • Saturin78
      • 24. Juli 2017 um 17:01

      Wie wäre es wenn du das gleich wie bei den civ machst?

      Code
      class C_SUV_01_F {
          vItemSpace = 50;
          conditions = "license_civ_driver  {!(playerSide isEqualTo civilian)}";
          price = 30000;
          textures[] = {
              { "Dunkel Rot", "civ", {
                  "\a3\soft_f_gamma\SUV_01\Data\suv_01_ext_co.paa"
              }, "" },
              { "Silber", "civ", {
                  "\a3\soft_f_gamma\SUV_01\Data\suv_01_ext_03_co.paa"
              }, "" },
              { "Orange", "civ", {
                  "\a3\soft_f_gamma\SUV_01\Data\suv_01_ext_04_co.paa"
              }, "" },
              { "Polizei_1", "cop", {
                  "\textures\cop_suv.paa",
              }, "" },
              { "Polizei_2", "cop", {
                  "\textures\cop_suv2.paa",
              }, "" },
              { "Polizei_3", "cop", {
                  "\textures\cop_suv3.paa"
              }, "" }
          };
      };
      Alles anzeigen
    • Farming/Abbau Massenproduktion

      • Saturin78
      • 24. Juli 2017 um 11:47
      Zitat von Brizi Jaeger

      Irgendwie geht es bei mir auf der 4.4r3 aber auf der 5.0 nicht lellek script alter ...

      hm schade. Vielleicht weiß ja Shinji ne Lösung.

      Also das Farmgebiet erkennt er. Wenn ich z.B. auf dem Ananas Feld stehe und die Hände hoch mache und dann mit der Win Taste farmen will, kommt die gewollte Meldung dass es mit erhobenen armen nicht geht. Aber das war dann auch schon alles was geht.


      Das Ananas Feld ist auch angelegt und eingetragen, die vItems sind auch eingetragen. Das Farmen hatte vorher ja auch funktioniert. Also muss es an der Änderung liegen, aber ich kann mir nicht erklären wo da das Problem nun ist.


      Hat sonst niemand ne Idee?

    • Tga zu paa umwandeln

      • Saturin78
      • 23. Juli 2017 um 23:51

      Du musst drauf achten dass die Auflösung immer 512 x 512 / 1024x1024 / 2048x2048 / 1024x512 usw. sein. Sonst werden Farben falsch dargestellt usw. ZB wird wenn du andere Auflösungen nimmst das rot oft zu blau usw.

    • Bei der Staatsbank die Container innerhalb der Kubbel anschliesen

      • Saturin78
      • 23. Juli 2017 um 11:44

      Ich hab es jetzt gelöst, aber sicher nicht auf die schönste Art und Weise :)

      ich habe nun in die Inits der betroffenen Gebäude einfach das eingetragen:

      Code
      this setVariable ["locked",true,true];
      this setVariable ["bis_disabled_Door_1",1,true];

      und nun sind sie abgeschlossen.

    • Bei der Staatsbank die Container innerhalb der Kubbel anschliesen

      • Saturin78
      • 23. Juli 2017 um 11:14

      Alsoim life_server hab ich nur das gefunden in der init.sqf.

      Dort ist das drin:

      C: init.sqf
      /* Setup the federal reserve building(s) */
      private _vaultHouse = [[["Altis", "Land_Research_house_V1_F"], ["Tanoa", "Land_Medevac_HQ_V1_F"]]] call TON_fnc_terrainSort;
      private _altisArray = [16019.5,16952.9,0];
      private _tanoaArray = [11074.2,11501.5,0.00137329];
      private _pos = [[["Altis", _altisArray], ["Tanoa", _tanoaArray]]] call TON_fnc_terrainSort;
      
      _dome = nearestObject [_pos,"Land_Dome_Big_F"];
      _rsb = nearestObject [_pos,_vaultHouse];
      
      for "_i" from 1 to 3 do {_dome setVariable [format ["bis_disabled_Door_%1",_i],1,true]; _dome animateSource [format ["Door_%1_source", _i], 0];};
      _dome setVariable ["locked",true,true];
      _rsb setVariable ["locked",true,true];
      _rsb setVariable ["bis_disabled_Door_1",1,true];
      _dome allowDamage false;
      _rsb allowDamage false;
      Alles anzeigen

      Wenn ich das richtig sehe ist es hier nun so dass die Kuppel (_dome) und das MediVac Gebäude (_rsb) verschlossen werden und allowDamage false. Dieses Medivac Gebäude hab ich auch innerhalb der Kuppel 2 mal drin und 2 mal das kleine. Aber keines ist verschlossen, nur die Kuppel. Muss ich das kleine medivac Gebäide auch noch eintragen hier?

      C: init.sqf
      private _vaultHouse = [[["Altis", "Land_Research_house_V1_F"], ["Tanoa", "Land_Medevac_HQ_V1_F", "Land_Medevac_house_V1_F"]]] call TON_fnc_terrainSort;
    • Bei der Staatsbank die Container innerhalb der Kubbel anschliesen

      • Saturin78
      • 23. Juli 2017 um 10:08

      Die Datei boltcutter hab ich schon bearbeitet, aber die Gebäude sind immer noch nicht abgeschlossen.

      C: fn_boltcutter.sqf
      #include "..\..\script_macros.hpp"
      /*
          File: fn_boltcutter.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Breaks the lock on a single door (Closet door to the player).
      */
      private ["_building","_door","_doors","_cpRate","_title","_progressBar","_titleText","_cp","_ui"];
      _building = param [0,objNull,[objNull]];
      
      private _vaultHouse = [[["Altis", "Land_Research_house_V1_F"], ["Tanoa", "Land_Medevac_HQ_V1_F"]]] call TON_fnc_terrainSort;
      private _altisArray = [16019.5,16952.9,0];
      private _tanoaArray = [11074.2,11501.5,0.00137329];
      private _pos = [[["Altis", _altisArray], ["Tanoa", _tanoaArray]]] call TON_fnc_terrainSort;
      
      if (isNull _building) exitWith {};
      if (!(_building isKindOf "House_F")) exitWith {hint localize "STR_ISTR_Bolt_NotNear";};
      if (((nearestObject [_pos,"Land_Dome_Big_F"]) == _building || (nearestObject [_pos,_vaultHouse]) == _building) && (west countSide playableUnits < (LIFE_SETTINGS(getNumber,"minimum_cops")))) exitWith {
          hint format [localize "STR_Civ_NotEnoughCops",(LIFE_SETTINGS(getNumber,"minimum_cops"))];
      };
      if (((nearestObject [_pos,"Land_Medevac_HQ_V1_F"]) == _building || (nearestObject [_pos,_vaultHouse]) == _building) ) exitWith {
          hint format [localize "STR_Civ_NotEnoughCops",(LIFE_SETTINGS(getNumber,"minimum_cops"))];
      };
      if (((nearestObject [_pos,"Land_Medevac_house_V1_F"]) == _building || (nearestObject [_pos,_vaultHouse]) == _building) ) exitWith {
          hint format [localize "STR_Civ_NotEnoughCops",(LIFE_SETTINGS(getNumber,"minimum_cops"))];
      };
      if ((typeOf _building) == _vaultHouse && (nearestObject [_pos,"Land_Dome_Big_F"]) getVariable ["locked",true]) exitWith {hint localize "STR_ISTR_Bolt_Exploit"};
      if ((typeOf _building) == _vaultHouse && (nearestObject [_pos,"Land_Medevac_HQ_V1_F"]) getVariable ["locked",true]) exitWith {hint localize "STR_ISTR_Bolt_Exploit"};
      if ((typeOf _building) == _vaultHouse && (nearestObject [_pos,"Land_Medevac_house_V1_F"]) getVariable ["locked",true]) exitWith {hint localize "STR_ISTR_Bolt_Exploit"};
      if (isNil "life_boltcutter_uses") then {life_boltcutter_uses = 0;};
      
      _doors = FETCH_CONFIG2(getNumber,"CfgVehicles",(typeOf _building),"numberOfDoors");
      _door = 0;
      //Find the nearest door
      for "_i" from 1 to _doors do {
          _selPos = _building selectionPosition format ["Door_%1_trigger",_i];
          _worldSpace = _building modelToWorld _selPos;
              if (player distance _worldSpace < 2) exitWith {_door = _i;};
      };
      if (_door isEqualTo 0) exitWith {hint localize "STR_Cop_NotaDoor"}; //Not near a door to be broken into.
      if ((_building getVariable [format ["bis_disabled_Door_%1",_door],0]) isEqualTo 0) exitWith {hint localize "STR_House_Raid_DoorUnlocked"};
      
      if ((nearestObject [_pos,"Land_Dome_Big_F"]) == _building || (nearestObject [_pos,"Land_Medevac_house_V1_F"]) == _building || (nearestObject [_pos,"Land_Medevac_HQ_V1_F"]) == _building || (nearestObject [_pos,_vaultHouse]) == _building) then {
          [[1,2],"STR_ISTR_Bolt_AlertFed",true,[]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
      } else {
          [0,"STR_ISTR_Bolt_AlertHouse",true,[profileName]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
          
          //CationStudio Alarmanlage
          if (_building getVariable ["security",false]) then {
              if (!(isNil {(_building getVariable "house_owner")})) then {
                  private "_owner";
                  _owner = objNull;
                  {
                      if (((_building getVariable "house_owner") select 0) isEqualTo (getPlayerUID _x)) then {
                          _owner = _x;
                      };
                  } forEach playableUnits;
                  [_building] remoteExec ["cat_alarm_fnc_houseAlarm",_owner];
              };
          };
      };
      
      life_action_inUse = true;
      /*
      //Alarmanlage
      if(_building getVariable "alarme") then {
          [_building] call life_fnc_alarme;
      };
      */
      
      //Setup the progress bar
      disableSerialization;
      _title = localize "STR_ISTR_Bolt_Process";
      "progressBar" cutRsc ["life_progress","PLAIN"];
      _ui = uiNamespace getVariable "life_progress";
      _progressBar = _ui displayCtrl 38201;
      _titleText = _ui displayCtrl 38202;
      _titleText ctrlSetText format ["%2 (1%1)...","%",_title];
      _progressBar progressSetPosition 0.01;
      _cP = 0.01;
      
      
      
      switch (typeOf _building) do {
          case "Land_Dome_Big_F": {_cpRate = 0.003;};
          case "Land_Medevac_HQ_V1_F"; {_cpRate = 0.0015;};
          case "Land_Research_house_V1_F": {_cpRate = 0.0015;};
          default {_cpRate = 0.08;}
      };
      
      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";
          };
          sleep 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];
          if (_cP >= 1 || !alive player) exitWith {};
          if (life_istazed) exitWith {}; //Tazed
          if (life_isknocked) exitWith {}; //Knocked
          if (life_interrupted) exitWith {};
      };
      
      //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;};
      if (player getVariable ["restrained",false]) exitWith {life_action_inUse = false;};
      if (life_interrupted) exitWith {life_interrupted = false; titleText[localize "STR_NOTF_ActionCancel","PLAIN"]; life_action_inUse = false;};
      life_boltcutter_uses = life_boltcutter_uses + 1;
      life_action_inUse = false;
      
      if (life_boltcutter_uses >= 5) then {
          [false,"boltcutter",1] call life_fnc_handleInv;
          life_boltcutter_uses = 0;
      };
      
      _building setVariable [format ["bis_disabled_Door_%1",_door],0,true]; //Unlock the door.
      _building setVariable ["locked",false,true];
      
      if (life_HC_isActive) then {
          [getPlayerUID player,profileName,"459"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life];
      } else {
          [getPlayerUID player,profileName,"459"] remoteExecCall ["life_fnc_wantedAdd",RSERV];
      };
      Alles anzeigen

      Oder hab ich da nun was total übersehen?

    • Bei der Staatsbank die Container innerhalb der Kubbel anschliesen

      • Saturin78
      • 23. Juli 2017 um 09:42

      Hallole,

      ich wollte gerne die inneren Container bei mir in der Staatsbank abschließen, so dass man diese auch erst öffnen muss, bevor man an den Tressor kommt. Habe hier mal ein bisschen die Suche gequält, aber irgendwie hat das wohl noch niemand bearbeitet.

      Wie kann ich das denn anstellen? Es sollte halt einfach verschlossen sein und die Cops sollen es wieder abschließen können. Es soll aber hier keine Abfrage mehr sein, wie viele Cops online sind ( so wie es bei der Kuppel ist ) Sonst loggen sich die Cops beim knacken der ersten Kuppel direkt aus und dann geht nichts mehr :)

      MfG

      Saturin78

    • Farming/Abbau Massenproduktion

      • Saturin78
      • 23. Juli 2017 um 09:19

      Hallo zusammen, ich habe versucht das so einzubauen. Ich habe das mal so mit der Auswahl versucht. letzter Post von Brizi Jaeger , und das farmen mit Spitzhacke geht auch wunderbar. Allerdings kann man nichts mehr farmen, das ohne vItem zu farmen ist. Ich habe versucht an den Feldern zu farmen, es passiert garnichts. Fehler kommt auch keiner. Habe dann versucht wenn ich "surrendered" farmen will, da bringt er noch die Meldung dass es so nicht geht. Also er erkennt die Felder. Habe die Logs mal angehängt. Ich bin hier nur auf den Server gegangen getestet zu farmen, geht nicht, dann zu salz mine und dort gefarmt geht. dann disconektet und Logs gespeichert.

      Hier auch mal die 2 Dateien dazu:

      C: fn_mine.sqf
      #include "..\..\script_macros.hpp"
          /*
              File: fn_mine.sqf
              Author: Devilfloh
              Editor: Dardo
      
              Description:
              Same as fn_gather,but it allows use of probabilities for mining.
          */
      private ["_maxGather", "_resource", "_amount", "_requiredItem", "_mined","_action"];
      if (life_action_inUse) exitWith {};
      if !(isNull objectParent player) exitWith {};
      if ((vehicle player) != player) exitWith {["Du sitzt in einem Fahrzeug!","fast","red"] spawn life_fnc_message;};
      if (player getVariable "restrained") exitWith {[localize "STR_NOTF_isrestrained","fast","red"] spawn life_fnc_message;};
      _exit = false;
      if (player getVariable "playerSurrender") exitWith {[localize "STR_NOTF_surrender","fast","red"] spawn life_fnc_message;};
      life_action_inUse = true;
      _zone = "";
      _requiredItem = "";
      
      _resourceCfg = missionConfigFile >> "CfgGather" >> "Minerals";
      _percent = (floor random 100) + 1; //Make sure it's not 0
      
      for "_i" from 0 to count(_resourceCfg)-1 do {
          _curConfig = _resourceCfg select _i;
          _resources = getArray(_curConfig >> "mined");
          _maxGather = getNumber(_curConfig >> "amount");
          _zoneSize = getNumber(_curConfig >> "zoneSize");
          _resourceZones = getArray(_curConfig >> "zones");
          _requiredItem = getText(_curConfig >> "item");
          _mined = "";
      
          if (_resources isEqualTo []) exitWith {}; //Smart guy :O
          for "_i" from 0 to count (_resources) do {
              if (count _resources isEqualTo 1) exitWith {
                  if (!((_resources select 0) isEqualType [])) then {
                      _mined = _resources select 0;
                  } else {
                      _mined = (_resources select 0) select 0;
                  };
              };
              _resource = (_resources select _i) select 0;
              _prob = (_resources select _i) select 1;
              _probdiff = (_resources select _i) select 2;
              if ((_percent >= _prob) && (_percent <= _probdiff)) exitWith {
                  _mined = _resource;
              };
          };
      
          {
              if ((player distance(getMarkerPos _x)) < _zoneSize) exitWith {
                  _zone = _x;
              };
          } forEach _resourceZones;
      
          if (_zone != "") exitWith {};
      };
      
      if (_zone isEqualTo "") exitWith {
          life_action_inUse = false;
          //["Hier bricht er ab weil _zone isEqualTo "" ist!","fast","red"] spawn life_fnc_message;
      };
      
      if (_requiredItem != "") then {
          _valItem = missionNamespace getVariable "life_inv_" + _requiredItem;
      
          if (_valItem < 1) exitWith {
              switch (_requiredItem) do {
                  case "pickaxe": {
                      titleText[(localize "STR_NOTF_Pickaxe"), "PLAIN"];
                  };
              };
              life_action_inUse = false;
              _exit = true;
        };
      };
      
      if (_exit) exitWith {
          life_action_inUse = false;
          //["Hier bricht er ab weil _exit = true ist!","fast","red"] spawn life_fnc_message;
      };
      
      life_action_inUse = true;
      _action = [
          format ["Hardcore Farming Activate?"],
          "Sex and the Farming",
          "FullHouse",
          "Einzeln"
      ] call BIS_fnc_guiMessage;
      
      if (_action) then {
      
          /* Author Shinji */
          while {true} do {
              if(vehicle player != player) exitWith {["Du sitzt in einem Fahrzeug!","fast","red"] spawn life_fnc_message;};
              if(life_interrupted) exitWith {life_interrupted = false;}; // Damit ist die Zeile hier gemeint 
       
              _amount = round(random(_maxGather)) + 1;
              _diff = [_mined, _amount, life_carryWeight, life_maxWeight] call life_fnc_calWeightDiff;
              if (_diff isEqualTo 0) exitWith {
                  //hint localize "STR_NOTF_InvFull";
                  [localize "STR_NOTF_InvFull","fast","red"] spawn life_fnc_message;
                  life_action_inUse = false;
              };
              player say3D "mining";
          
              for "_i" from 0 to 4 do {
                  player playMoveNow "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
                  waitUntil {
                      animationState player != "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
                  };
                  sleep 0.5;
              };
      
              if (([true, _mined, _diff] call life_fnc_handleInv)) then {
                  _itemName = M_CONFIG(getText, "VirtualItems", _mined, "displayName");
                  titleText[format [localize "STR_NOTF_Mine_Success", (localize _itemName), _diff], "PLAIN"];
              };
      
              sleep 2.5;
              //life_action_inUse = false;
      
          };
          life_action_inUse = false; // Über dieser Variable endet die Schleife!
      } else {
          _amount = round(random(_maxGather)) + 1;
          _diff = [_mined, _amount, life_carryWeight, life_maxWeight] call life_fnc_calWeightDiff;
          if (_diff isEqualTo 0) exitWith {
              [localize "STR_NOTF_InvFull","fast","red"] spawn life_fnc_message;
              //hint localize "STR_NOTF_InvFull";
              life_action_inUse = false;
          };
          player say3D "mining";
      
          for "_i" from 0 to 4 do {
              player playMoveNow "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
              waitUntil {
                  animationState player != "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
              };
              sleep 0.5;
          };
      
          if (([true, _mined, _diff] call life_fnc_handleInv)) then {
              _itemName = M_CONFIG(getText, "VirtualItems", _mined, "displayName");
              titleText[format [localize "STR_NOTF_Mine_Success", (localize _itemName), _diff], "PLAIN"];
          };
      
          sleep 2.5;
          life_action_inUse = false;
      
      };
      
      sleep 2.5;
      life_action_inUse = false;
      Alles anzeigen
      C: fn_gather.sqf
      #include "..\..\script_macros.hpp"
      /*
       File: fn_gather.sqf
       Author: Devilfloh
      Edited by Brizi Jaeger
      Inspired by Shinji xD 
      
       Description:
       Main functionality for gathering.
      */
      private["_maxGather","_resource","_amount","_maxGather","_requiredItem","_action"];
      if (life_action_inUse) exitWith {};
      
      if ((vehicle player) != player) exitWith {["Du sitzt in einem Fahrzeug!","fast","red"] spawn life_fnc_message;};
      if (player getVariable "restrained") exitWith {[localize "STR_NOTF_isrestrained","fast","red"] spawn life_fnc_message;};
      if (player getVariable "playerSurrender") exitWith {[localize "STR_NOTF_surrender","fast","red"] spawn life_fnc_message;};
      
      life_action_inUse = true;
      _zone = "";
      _requiredItem = "";
      _zoneSize = (getNumber(missionConfigFile >> "CfgGather" >> "zoneSize"));
      _exit = false;
      
      _resourceCfg = missionConfigFile >> "CfgGather" >> "Resources";
      for "_i" from 0 to count(_resourceCfg)-1 do {
      
          _curConfig = _resourceCfg select _i;
          _resource = configName _curConfig;
          _maxGather = getNumber(_curConfig >> "amount");
          _resourceZones = getArray(_curConfig >> "zones");
          _requiredItem = getText(_curConfig >> "item");
          {
              if ((player distance (getMarkerPos _x)) < _zoneSize) exitWith {_zone = _x;};
          } forEach _resourceZones;
      
          if (_zone != "") exitWith {};
      };
      
      if (_zone isEqualTo "") exitWith {life_action_inUse = false;};
      
      if (_requiredItem != "") then {
          _valItem = missionNamespace getVariable "life_inv_" + _requiredItem;
      
          if (_valItem < 1) exitWith {
              switch (_requiredItem) do {
                  //Messages here
              };
              life_action_inUse = false;
              _exit = true;
          };
      };
      
      if (_exit) exitWith {life_action_inUse = false;};
      
      life_action_inUse = true;
      _action = [
          format ["Hardcore Farming Activate?"],
          "Sex and the Farming",
          "FullHouse",
          "Einzeln"
      ] call BIS_fnc_guiMessage;
      
      if (_action) then {
          while {true} do {
              if(vehicle player != player) exitWith {["Du sitzt in einem Fahrzeug!","fast","red"] spawn life_fnc_message;};
              if(life_interrupted) exitWith {life_interrupted = false;};
              
              _amount = round(random(_maxGather)) + 1;
              _diff = [_resource,_amount,life_carryWeight,life_maxWeight] call life_fnc_calWeightDiff;
              if (_diff isEqualTo 0) exitWith {
                  [localize "STR_NOTF_InvFull","fast","red"] spawn life_fnc_message;
                  //hint localize "STR_NOTF_InvFull";
                  life_action_inUse = false;
              };
      
              switch (_requiredItem) do {
                  case "pickaxe": {player say3D "mining";};
                  default {player say3D "harvest";};
              };
      
              for "_i" from 0 to 4 do {
                  player playMoveNow "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
                  waitUntil{animationState player != "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";};
                  sleep 0.5;
              };
      
              if ([true,_resource,_diff] call life_fnc_handleInv) then {
                  _itemName = M_CONFIG(getText,"VirtualItems",_resource,"displayName");
                  titleText[format[localize "STR_NOTF_Gather_Success",(localize _itemName),_diff],"PLAIN"];
              };
          };
          life_action_inUse = false; // Über dieser Variable endet die Schleife!
      } else {
          _amount = round(random(_maxGather)) + 1;
          _diff = [_resource,_amount,life_carryWeight,life_maxWeight] call life_fnc_calWeightDiff;
          if (_diff isEqualTo 0) exitWith {
              [localize "STR_NOTF_InvFull","fast","red"] spawn life_fnc_message;
              //hint localize "STR_NOTF_InvFull";
              life_action_inUse = false;
          };
      
          switch (_requiredItem) do {
              case "pickaxe": {player say3D "mining";};
              default {player say3D "harvest";};
          };
      
          for "_i" from 0 to 4 do {
              player playMoveNow "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
              waitUntil{animationState player != "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";};
              sleep 0.5;
          };
      
          if ([true,_resource,_diff] call life_fnc_handleInv) then {
              _itemName = M_CONFIG(getText,"VirtualItems",_resource,"displayName");
              titleText[format[localize "STR_NOTF_Gather_Success",(localize _itemName),_diff],"PLAIN"];
          };
          sleep 1;
          life_action_inUse = false;
      };
      
      sleep 1;
      life_action_inUse = false;
      Alles anzeigen

      Ich stehe da jetzt gerade total auf dem Schlauch. Vielleicht sieht ja jemand den Fehler. Ein 2 paar Augen ist manchmal aufmerksamer. :)

      MfG

      Saturin78

      Dateien

      Arma3_x64_2017-07-23_09-07-37.txt 62,54 kB – 187 Downloads arma3server_x64_2017-07-23_09-06-57.txt 64,93 kB – 142 Downloads
    • [TUTORIAL][Altis Life 4.4r3] RyanTTs Dynamic Market System

      • Saturin78
      • 21. Juli 2017 um 18:03
      Zitat von LegacyofAtilla

      Ich hätte zwei Probleme:

      Nr 1.: Das Ändern der Preise via Admin Konsole scheint nicht zu funktionieren...

      Nach Eintragen der vItem Bezeichnung und Setzung eines Preises bekomme ich zwar die Meldung die Preise sind angepasst worden,

      allerdings ist dem nicht so. Sowohl in der Datenbank, als auch der Börsenanzeige zeigt es immernoch den alten Preis an. Auch beim Verkaufen wird der alte Preis verwendet. In den RPT-Logs, sowohl Clientseitig, als auch Serverseitig sind keinerlei Fehler zu finden.

      Nr 2.: Gab es nichtmal eine Anzeige, wenn man beim entsprechenden Händler stand, wie denn der derzeitige Preis ist?

      Das mit der Anzeige war glaub nur im BlackLagoon Marketing, das ist aber ein anderes System als das hier. Da zeigt er wenn man zB im Drogendealer ist, wie die Preise so sind etc rechts..

    • [WIP] GUI D3V 2.0

      • Saturin78
      • 20. Juli 2017 um 21:28
      Zitat von Shinji

      So ~ Schluss mit dem Müll nun vonwegen "False-Positive"

      Ab sofort wird nach dem jedem Build ein Check über VirusTotal gemacht.

      Letzter Check von heute: VirusTotal - MP-Patcher.exe

      Sollte sich jemand dazu bereit erklären, kann er gerne den Patcher als "Harmlos" bewerten.

      Patch Update ist bereits draußen und kann geholt werden ~ bei Fehlern oder Fragen könnt ihr euch gerne wieder an mich wenden.

      für alle die nun nicht wissen woher sie den "aktuellen" Patcher bekommen:

      GUI V2 Seite mit Download und Tutorial

      Alles anzeigen

      Wie oder wo stufe ich das als sicher ein. Hab es bei mir einfach als Ausnahme im Virenscanner drin, seither geht es. Kaspersky ist wohl etwas uberempfindlich

    • Texturen und Planzen welt von Tanoa

      • Saturin78
      • 20. Juli 2017 um 19:12
      Zitat von Montylein

      wo die sind weiß ich, wie ich die rein mache auch, Ich brauch die Namen von denen und keine Anleitung oder nen Tutorial zum Mappen.
      Sorry, aber ICH brauch nur die Namen.

      und nen EBO Encrypter gibt es keinen der das kann, es gibt nen paar aber die Funktionieren nicht.

      PS: Was ich vor habe steht doch oben im ersten Anfrage Thread: ( um die auf einer anderen Map zu benutzen, )

      Also ganz ehrlich, ich finde deine Antwort recht unfreundlich. So überlegt man sich, ob man überhaupt hilft.

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™