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
Do: 17 Juli 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. Unityeid

    Beiträge von Unityeid

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 31. Mai 2020 um 12:47
      Spoiler anzeigen


      Ich bin ganz ehrlich, normalerweise sollte es auch ohne das einfügen dieser Variablen funktionieren. Ich kann mir auch vorstellen, dass bei dir nochmal irgenwo ein Fehler drin steckt, trotzdem würde ich es der Vollsätndigkeit halber mal probieren.

      Und jetzt noch ein Punkt (noHate): Wenn du wirklich "erst" soweit bist.. (Und ich selbst bin auch absoluter Frischling), dann würde ich erstmal die Finger von ACE lassen.

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 31. Mai 2020 um 10:52

      Nein, in jeder Datei in der das Drin steht...
      Du kannst den ganzen Server-Ordner beispielsweise mit dem Program "Atom" öffen, dann STR+UMSCHALT+F drücken und dann nach "Air" suchen.

      Das selbe machst du dann für den Live-Ordner.

      Atom zeigt dir dann jede Datei und die Stelle in der Datei an, in der "Air" steht... Und da packst du dann noch das dahinter, was ich oben beschrieben habe

      Der Chopshop ist auf jeden Fall, wenn überhaupt, zweitrangig.. Da muss das nicht rein

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 21:51

      Gut dann suchst du jetzt in deinem Serverordner nach "Air" und setzt jedesmal dahinter (Anführungszeichen nicht vergessen)

      "Helicopter","Plane"

      Also: "Air","Helicopter","Plane"

      Und das selbe machst du in deiner Life-Server-Datei

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 20:58

      Dass die Rebellen ihre eigene Garage kriegen funktioniert nur so:

      Du kannst es nur in dem Sinne machen, dass ein Spieler als Cop in der Garage nur seine Cop fahrzeuge sieht und als Medic in der Garage nur seine Medic fahrzeuge sieht...


      Über die Rebellen-Lizenz... Hm keine Ahnung... Eventuell könnte es funktionieren wenn du anstelle von "Car" in die Garge jeweils die übergeordente Parent von beispielsweise vom Quilin oder so einsetzen.. Aber da bin ich auch etwas überfragt, habe auch gerade keine Möglichkeit das selbst zu testen

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 20:52

      Probier es bitte erstaml mit den vanialla Helis und Flugzeugen.

      Damit wir einen Fehler an der Init ausschließen können

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 20:26

      Ah hier deine Lösung bzgl. dem "Zweimal einparken"

      Du hast sowohl im Helikopter-Garagen-Code als auch im Flugzeuge-Garagen-Code nochmal eine Funktion zum einparken von Fahrzeugen drin:

      Code
      this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];


      Dieser Teil ist für das einparken verantwortlich. Wenn du dir die Codes für die Heli- als auch für die FLugzeuggarage einmal anschaust, dann wirst du herausfinden, dass die obige Zeile in beiden Codes vorkommt...

      Also hast du die Funktion auch ZWEIMAL. Damit du diese funktion nur noch EINMAL hast, musst du eben obige Zeile ENTWEDER aus dem Helikopter-garagen-Code oder aus dem FLugzeug-Garagen-Code herausnehmen.

      Aber Achtung, wenn du später dann eine Heli-garage in einen Laptop plazierst und die Flugzeug-garage in einen anderen Laptop plazierst, dann muss diese Code-zeile wieder in beiden Gargagen-Codes drin stehen, sonst kannst du deine Fahrzeuge an dem Laptop, an dem die Zeile fehlt, nicht einparken

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 20:09

      Was nicht funktioniert, dass wenn du zwei verschiedene Garagen in einem Objekt hast diese dann nur mit einem "Ausparken-Symbol" abzufrufen...

      Ich verstehe auch nicht warum du das möchtest, ich dachte du willst Heli-Garage und Flugzeug-Garage getrennt?

      Der eine Button ist nun für die Hubschrauber, der andere für die Flugzeuge.

      Wenn du jetzt doch Flugzeuge und Helis in einer Garage haben willst, dann fügst du den ganzen Code (entweder den vom Flugzeug oder denvom Heli) nur einmal ein und setzt die 3 Variablen wieder auf "Air". Dann hast du auch nur einmal das Menü Scroll-Down-Menü "Fahrzeug ausparken" und aus diesem kannst du dann sowhl Flugzeuge als auch Hubschrauber ausparken.


      Ich meine ich kenne Leute, die wollen irgendwie eine Panzer-Garage und eine Auto-Garage in einem haben. Die verwenden einmal den Code mit "Car" und einmal den Code mit "Tank".. Da hat man dann auch 2 mal das Scroll-Down Menü "Fahrzeug ausparken"... Das eine öffnet dann die Panzegarage und das andere dann die Auto-Garage...

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 20:03

      Da drin steht ja auch noch überall "Air"

      Insgesamt hast du ja 4 Aktionen da drin. Und in der 3. und der 4. Aktion hast du nur ein einziges mal die Variable geändert, du musst aber alle 3 Variablen ändern.. Damit ich das ganze mal farblich hervorheben kann schicke ich es jetzt einmal als Fließtext und dann einmal als Code in der RICHTIGEN(!) Version:

      Also in deiner Version hast du lediglich die Variable bei Garage-Type geändert (Blau). Damit aber nur Flugzeuge und keine Helikopter angezeigt werden, musst du auch die anderen beiden Variablen (Rot) ändern:

      Spoiler anzeigen

      this enableSimulation false; this allowDamage false; this addAction[localize"STR_Garage_Title", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,"Air",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life]; } else { [getPlayerUID player,playerSide,"Air",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "Plane"; createDialog "Life_impound_menu"; disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."]; life_garage_sp = "air_g_2"; },"",1.5,true,true,"","true",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];


      Selbiges Problem in deiner Husbschraubergarage:

      Spoiler anzeigen

      this enableSimulation false; this allowDamage false; this addAction[localize"STR_Garage_Title", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,"Air",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life]; } else { [getPlayerUID player,playerSide,"Air",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "Helicopter"; createDialog "Life_impound_menu"; disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."]; life_garage_sp = "air_g_2"; },"",1.5,true,true,"","true",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];


      Damit das ganze funktioniert muss das Ganze für deine Flugzeug-Garage so aussehen:

      Spoiler anzeigen

      this enableSimulation false; this allowDamage false; this addAction[localize"STR_Garage_Title", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,"Plane",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life]; } else { [getPlayerUID player,playerSide,"Plane",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "Plane"; createDialog "Life_impound_menu"; disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."]; life_garage_sp = "air_g_2"; },"",1.5,true,true,"","true",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];

      Und für deine Hubschrauber-Garage so:

      Spoiler anzeigen

      this enableSimulation false; this allowDamage false; this addAction[localize"STR_Garage_Title", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,"Helicopter",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life]; } else { [getPlayerUID player,playerSide,"Helicopter",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "Helicopter"; createDialog "Life_impound_menu"; disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."]; life_garage_sp = "air_g_2"; },"",1.5,true,true,"","true",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];


      Hier das ganze nochmal in Code-Form, einmal für deine Flugzeuge:

      Spoiler anzeigen
      Code
      this enableSimulation false; this allowDamage false; this addAction[localize"STR_Garage_Title", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,"Plane",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life]; } else { [getPlayerUID player,playerSide,"Plane",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "Plane"; createDialog "Life_impound_menu"; disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."]; life_garage_sp = "air_g_2"; },"",1.5,true,true,"","true",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];

      Und einmal für deine Hubschrauber:

      Spoiler anzeigen
      Code
      this enableSimulation false; this allowDamage false; this addAction[localize"STR_Garage_Title", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,"Helicopter",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life]; } else { [getPlayerUID player,playerSide,"Helicopter",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "Helicopter"; createDialog "Life_impound_menu"; disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."]; life_garage_sp = "air_g_2"; },"",1.5,true,true,"","true",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store',5];
    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 19:45

      Noch ein Zusatz bzgl. meiner Anleitung, was das einparken von Fahrzeugen durch Medics angeht (Siehe Post vom 29.05.2020, 12:37 Uhr):

      Zitat

      Hier für die Medics, dass könnte funktionieren.

      Du müsstest ja schon eine File haben die "fn_impoundAction.sqf" heißt.

      Du erstellst jetzt einfach eine neue und nennst sie

      "fn_impoundActiondMed.sqf"

      Damit das ganze auch funkioniert muss du in der "Funktions.hpp" unter "class Actions" noch folgendes einfügen:

      (Am besten direkt nach "class impoundAction { };")

      Code
      class impoundActionMed {};
    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 30. Mai 2020 um 19:39
      Zitat von MDKing20

      Also so ganz hat das leider noch nicht geklappt. Sofern ich dich nicht falsch verstanden habe. Ich habe in meiner Garage zwei Garagen Scripts angegeben Eins mit Planes und eins mit helicopter. Aber so ganz funzt das dann doch nicht. Also ich habe dann zwar zwei Garagen aber beide zeigen das gleiche an


      Schick doch mal deine Garage-Init hier rein. Hast du das in ein Schild/Händler gepackt oder jeweils in getrennte Schilder/Händler?

    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 29. Mai 2020 um 12:37

      Hier für die Medics, dass könnte funktionieren.

      Du müsstest ja schon eine File haben die "fn_impoundAction.sqf" heißt.

      Du erstellst jetzt einfach eine neue und nennst sie

      "fn_impoundActiondMed.sqf"

      Spoiler anzeigen
      Code
      #include "..\..\script_macros.hpp"
      
      private ["_vehicle","_type","_time","_value","_vehicleData","_upp","_ui","_progress","_pgText","_cP","_filters","_impoundValue","_price","_impoundMultiplier"];
      _vehicle = param [0,objNull,[objNull]];
      _filters = ["Car","Air","Ship"];
      if (!((KINDOF_ARRAY(_vehicle,_filters)))) exitWith {};
      if (player distance cursorObject > 10) exitWith {};
      if (_vehicle getVariable "NPC") exitWith {hint localize "STR_NPC_Protected"};
      
      _vehicleData = _vehicle getVariable ["vehicle_info_owners",[]];
      if (_vehicleData isEqualTo 0) exitWith {deleteVehicle _vehicle}; //Bad vehicle.
      _vehicleName = FETCH_CONFIG2(getText,"CfgVehicles",(typeOf _vehicle),"displayName");
      _price = M_CONFIG(getNumber,"LifeCfgVehicles",(typeOf _vehicle),"price");
      [0,"STR_NOTF_BeingImpounded_med",true,[((_vehicleData select 0) select 1),_vehicleName]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
      life_action_inUse = true;
      
      _upp = localize "STR_NOTF_Impounding_med";
      //Setup our progress bar.
      disableSerialization;
      "progressBar" cutRsc ["life_progress","PLAIN"];
      _ui = uiNamespace getVariable "life_progress";
      _progress = _ui displayCtrl 38201;
      _pgText = _ui displayCtrl 38202;
      _pgText ctrlSetText format ["%2 (1%1)...","%",_upp];
      _progress progressSetPosition 0.01;
      _cP = 0.01;
      
      for "_i" from 0 to 1 step 0 do {
          sleep 0.09;
          _cP = _cP + (0.01 * (missionNamespace getVariable ["mav_ttm_var_saniabschleppSpeedMultiplier", 1]));
          _progress progressSetPosition _cP;
          _pgText ctrlSetText format ["%3 (%1%2)...",round(_cP * 100),"%",_upp];
          if (_cP >= 1) exitWith {};
          if (player distance _vehicle > 10) exitWith {};
          if (!alive player) exitWith {};
      };
      
      "progressBar" cutText ["","PLAIN"];
      
      if (player distance _vehicle > 10) exitWith {hint localize "STR_NOTF_ImpoundingCancelled_med"; life_action_inUse = false;};
      if (!alive player) exitWith {life_action_inUse = false;};
      
      if (count crew _vehicle isEqualTo 0) then {
          if (!(KINDOF_ARRAY(_vehicle,_filters))) exitWith {life_action_inUse = false;};
          _type = FETCH_CONFIG2(getText,"CfgVehicles",(typeOf _vehicle),"displayName");
      
          life_impound_inuse = true;
      
          if (life_HC_isActive) then {
              [_vehicle,true,player] remoteExec ["HC_fnc_vehicleStore",HC_Life];
          } else {
              [_vehicle,true,player] remoteExec ["TON_fnc_vehicleStore",RSERV];
          };
      
          waitUntil {!life_impound_inuse};
          if (playerSide isEqualTo independent) then {
                  _impoundMultiplier = LIFE_SETTINGS(getNumber,"vehicle_cop_impound_multiplier");
                  if(life_global_farmboost) then {
                      _value = _price * _impoundMultiplier * 1.5;
                  };
                  _value = _price * _impoundMultiplier;
                  [0,"STR_NOTF_HasImpounded_med",true,[format["[Medic] %1",profileName],((_vehicleData select 0) select 1),_vehicleName]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
                  if (_vehicle in life_vehicles) then {
                      hint format [localize "STR_NOTF_Impounded_med",_type,[_value] call life_fnc_numberText];
                      BANK = BANK + _value;
                  } else {
                      hint format [localize "STR_NOTF_Impounded_med",_type,[_value] call life_fnc_numberText];
                      BANK = BANK + _value;
                  };
                  if (BANK < 0) then {BANK = 0;};
                  [1] call SOCK_fnc_updatePartial;
                  ["medbeschlagnahmen"] spawn mav_ttm_fnc_addExp;
          };
      } else {
          hint localize "STR_NOTF_ImpoundingCancelled_med";
      };
      
      life_action_inUse = false;
      Alles anzeigen
    • Neue Garagen Hinzufügen, und ein paar andere Fragen.

      • Unityeid
      • 27. Mai 2020 um 21:26

      Ich versuche mal zumindest einen Teil deiner Frage zu beantworten:

      Zum Thema ACE-System:

      Mit dem ACE-System kenne ich mich leider überhaupt nicht aus.

      Zum Thema Levelsystem:

      Da geistern hier eigentlich genügend Skripte rum, ich würde mich einfach mal im Forum dafür umschauen.

      Zum Thema Housing:

      Wir haben das auch versucht und es ist unserer Erfahrung nach relativ komplex. Ich würde das hinten anstellen.

      Zur Minifrage:

      Möchtest du, dass die Medics Fahrzeuge abschleppen können? Oder, dass die wirklich beschlagnahmt werden sollen?

      Zum Thema Garage:
      Hierfür solltest du dir die Parents anschauen:

      Die Parents für einen Humming-Bird wären beispielsweise folgende:

      Code
      Light_01_dynamicLoadout_base_F","Heli_Light_01_armed_base_F","Heli_Light_01_base_F","Helicopter_Base_H","Helicopter_Base_F","Helicopter","Air","AllVehicles","All"]

      Die Parents für einen Jet (Black-Wasp) wären hingegen folgende:

      Code
      ["Plane_Fighter_01_Base_F","Plane_Base_F","Plane","Air","AllVehicles","All"]

      Normalerweise steht in der Garagen-Init von Garagen für Luftfahrzeuge immer die Variable/Klasse "Air".
      Wenn du aber nun beispielsweise die Variable/Klasse "Air" durch "Helicopter" bei deiner Helikoptergarage ersetzt, so kannst du hier nun nur noch Helis ausparken.

      Für die Flugzeug-Garage verwendest du dann die Variable/Klasse "Plane" anstelle von "Air". Müsste eigentlich klappen.

    • Altis Life Kiste in Garage einparken/Zur Datenbank hinzufügen

      • Unityeid
      • 26. Mai 2020 um 22:19

      Und hier auch die Lösung dafür:

      In der Init der Garage darf im Fall dieser Box nicht mit der Variable "ThingX" gearbeitet werden, sondern es muss mit der Variable "ReammoBox_F" gerarbeitet werden.

      ("Container_1" ist im nachfolgenden Skript die Variabel für den für uns gewählten Spawnpunkt):

      Code
      this allowDamage false; this enableSimulation false;this addAction[localize"STR_Garage_Title",{if (life_HC_isActive) then { [getPlayerUID player,playerSide,"ReammoBox_F",player] remoteExecCall ["HC_fnc_getVehicles",HC_Life];} else {[getPlayerUID player,playerSide,"ReammoBox_F",player] remoteExecCall ["TON_fnc_getVehicles",2];}; life_garage_type = "ReammoBox_F"; createDialog "Life_impound_menu";disableSerialization; ctrlSetText[2802,"Fetching Vehicles...."];life_garage_sp = "Container_1";},"",1.5,false,false,"","",5]; this addAction[localize"STR_MAR_Store_vehicle_in_Garage",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store && player distance _target < 4'];


      Zusatz:

      Ich wage, folgende Vermutung anzustellen:

      In die Garagen-Init muss immer die niedrigst-mögliche Klasse, in der das Objekt eingeordent ist, eingefügt werden:

      Für unsere eingefügte Box waren die Parents (Wie man die Parents herausfindet habe ich oben bereits einmal geschrieben) folgende:

      ["ReammoBox_F","ThingX","Thing","All"]

      Für die rote Kiste mit blauen Deckel (die man auf vielen Servern sieht) wird ab "ThingX" höchstwahrscheinlich funktionieren, da die Parents der roten Kiste lediglich folgende sind:

      ["ThingX","Thing","All"]

      Wie man sieht ist im Fall der roten Kiste die Klasse "ThingX" die niedrigste mögliche Klasse, in der die rote Kiste eingeordnet ist. Würde man in der Garagen-Init nun für die rote Kiste die Klasse "Thing" verwenden, so würde man vermutlich wieder keine Objekte in der Garage angezeigt bekommen. Ich selbst werde das allerdings nicht ausprobieren, da bei uns jetzt alles läuft und wir das vorerst nicht mehr anrühren werden.

    • Altis Life Kiste in Garage einparken/Zur Datenbank hinzufügen

      • Unityeid
      • 26. Mai 2020 um 12:20

      Nachhtrag zum Aufschließen bzw. Abschließen der Kisten:

      Also das ist tatsächlich etwas buggy. Als Eiegntümer der Kiste kann man auf die Kiste ganz normal zugreifen.

      Man kann auch den Schlüssel weitergeben an eine weitere Person, die kann dann auch auf die Kiste zugreifen.

      Versucht man die Kiste abzuschließen/aufzushließen kommt immer die Meldung: Das Fahrzeug wurde abgeschlossen. Das ist aber nicht schlimm, da es sich nur um die Meldung handelt.

      Jemand der den Schlüssel NICHT hat, kann die Kiste aber nicht öffnen.

      Man kann ebenfalls NICHT die Kiste aufsperren, sodass eine Person ohne Schlüssel drauf zugreifen könnte.

      Das finde ich aber nicht schlimm, da so verhindert wird, dass man mal vergisst die Kiste abzusperren und so irgend ein Schnorrer sich dann fleißig selbst bedient.

      Kiste abschleppend durch COP/Medic funktioniert

      Lockpick funktioniert.

      Nach illegalen Gegenständen durchsuchen funktioniert.

      Eigentümer feststellen funktioniert leider nicht, ist aber eh eher zweitrangig.


      Mit dem Wasserfass hat das mit der Garage und "ThingX" ganz gut geklappt, allerdings mit der Kiste nicht.
      Liegt offensichtlich aber an der Init der Garage, da die Kiste ganz normal in der Datenbank angezeigt wird.

      Hatten es bisher mit auch für die Kiste mit "ThingX" in der Garagen-Init versucht, aber das ist nicht ganz das Gelbe vom Ei. Wenn jemand ne Idee hat, dann immer her damit.

      Wir verwenden hauptsächlich die "Munitionskiste (leer, virtuell)" mit den Parents:["ReammoBox_F","ThingX","Thing","All"]

      Wir werden auch wieder rumprobieren und wenn wir die Lösung haben, dann schreibe ich das hier wieder rein. :)

    • Altis Life Scripting

      • Unityeid
      • 26. Mai 2020 um 01:03

      RE: Altis Life Kiste in Garage einparken/Zur Datenbank hinzufügen


      Bitteschön, die Antwort auf deine Frage findest du hier.

    • Altis Life Kiste in Garage einparken/Zur Datenbank hinzufügen

      • Unityeid
      • 26. Mai 2020 um 01:03

      So nun die Antwort:

      Es funktioniert jetzt, vielen vielen Dank.

      Folgende weiteren Hinweise von uns:

      1. Wir haben jetzt nur das Item "Wasserfass" eingefügt.

      2. Dieses kann nun:

      - Im Shop gekauft oder gemietet werden

      - In die Garage ein und ausgeparkt werden

      3. Wir haben noch ein Problem mit:

      Auf und Absperren der Box


      Hier nun unser kleines Tutorial:

      Wie sind wir vorgeangen:

      Um das Wasserfass (oder die Kiste eurer Wahl) grundsätzlich einzufügen, muss es:

      Schritt 1. In der Vehicles_Config angelegt werden

      Schritt 2. (Optional: In igi-Load angelegt werden)

      Hierfür(also für Schritt 1 & 2) haben wir jeweils den direkten Objekt-Begriff für das Wasserfass verwendet: "Land_WaterBarrel_F"

      ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

      Für das WEITERE Vorgehen (Also Schritt 3) haben wir jeweils die Klasse unter der das Objekt "Land_WaterBarrel_F" eingefügt, die da wäre: "Items_base_F" (Kleines Tutorial wie ihr die Klasse zum Objekt findet, füge ich mal ganz unten an)

      Schritt 3. Wir haben nun die Klasse ("Items_base_F") unter der dieses Wasserfass eben einegordnet ist, in jede der Dateien eingefügt, die mir Tass oben genannt hat:

      Zitat von Tass

      server:

      fn_spawnVehicle.sqf

      fn_vehicleCreate.sqf


      mission:

      fn_impoundAction.sqf

      fn_storeVehicle.sqf

      fn_vehInvSearch.sqf

      fn_keyHandler.sqf

      fn_openInventory.sqf

      fn_vehStoreItem.sqf

      fn_vInteractionMenu.sqf

      Alles anzeigen

      Und zwar haben wir immer dort "Items_base_F" eingefügt wo es eben sinnvoll war weil bereits Klassen wie "Car" oder "Air" vorhanden waren.

      Schritt 4. Nun muss noch AUF DER KARTE eine Garage eingefügt werden und diese muss mit einer Init versehen werden. Hierfür kann einfach die Init einer normalen Garage (z.B. für Autos) kopiert werden und anstatt der Variable "Car" (Oder "Air", etc.) muss an dieser Stelle aber "ThingX" einegfügt werden.

      Zusätzliche Eräuterung zum Einfügen des Objekts in einen Shop:

      Hier noch eine kleine Erläuterung wie wir das Fass in den Shop eingefügt haben:

      Jeder Shop greift auf eine vorher selbst definierte Klasse (in der Config_Vehicles) an Fahrzeugen zurück.

      Hierbei haben wir eine neue Klasse erstellt und unter dieser Klasse dann einzig und allein das Wasserfass eingefügt.

      Wir haben dann einen LKW-Shop kopiert und in der Init des Shops die Variable, bei der auf die Klasse der LKWs zurückgegriffen werden in die neue Variable geändert, die unsere neu angelegte Klasse (in der Config_Vehicles) mit dem Wasserfass beschreibt.

      Bekannte Probleme:

      So weit so gut, wir sind uns dabei 2 Problem bewusst geworden:

      Problem No.1: Auf vielen Servern wird das Geld, wenn ein Spieler stirbt als Item auf den Boden gedropped. Dieses Item gehört auch der Klasse "Items_Base_F" an, was (kurz und knapp) zur Folge hat, dass das Geld nicht mehr aufgeheoben werden kann.
      In solchen Fällen ist die Verwendung des Wasserfasses nicht möglich. Dazu gleich nochmal mehr.

      Problem No. 2: Auf Vielen Servern wird für die Bank die Rote Kiste mit blauem Deckel als Tresor verwendet. Deswegen ist ein Ausweichen vom Wasserfass auf dieses Kiste mit viel Ärger verbunden.

      Für beide Probleme haben wir folgenden Löungsvorschlag:

      Man kann auf die Objekte ausweichen:

      - Fahrzeug-Munition [NATO/ AAF / CSAT]

      - Munitionskiste (leer, virtuell)

      In diesem Fall müsste in Schritt 1 & 2 das nicht "Land_WaterBarrel_F" verwendet werden, sondern die Bezeichnung für das jeweilige Objekt (Im Fall der Munitionskiste (leer, virtuell): "VirtuelReammoBox_F") einfügen.

      In Schritt 3 müsste dann anstatt "Items_base_F" die Klasse "ReammoBox_F" verwendet werden.

      Bei Schritt 4 bleibt die Variable aber gleich.

      (Theoretisch könnte man jetzt "unser Tutorial" in Word kopieren und bereits da schon mal alle Variablen ändern und dann strikt danach vorgehen, damit keine Verwirrung entsteht.)


      Und wie Versprochen noch:

      Klassen von Objekten herausfinden

      Vergesst Arma-Wiki mit seiner Tabelle an Vehicle-Cfgs die ins nichts führen. Die jeweiligen Klassen und übergeordneten Klassen für ein Objekt findet ihr, wenn ihr das gewünschte Objekt im Eden-Editor aufstellt und dann mit Rechtsklick anvisiert. Hier wählt ihr dann die Option "Im Config-Viewer finden" aus. Ganz unten unter "Parents" stehen dann jweils die Klassen.

      Die Klasse ganz links ist die "kleinste" Klasse und die Klasse ganz rechts (meistens die Klasse "All") ist die am "übergrodnetste" Klasse von allen. (Naja eigentlich selbsterklärend, aber der Vollstädnigkeit halber ;))

      Und zum Schluss nochmal: Ein dickes DANKESCHÖN an Tass der uns mit wenig Worten viel geholfen hat. Das Problem mit dem Auf- und Abschließen der Boxen werden wir nun selbst irgendwie lösen.

      Ich hoffe ich konnte allen anderen, die das selbe Problem haben auch irgendwie helfen :)

    • Altis Life Kiste in Garage einparken/Zur Datenbank hinzufügen

      • Unityeid
      • 25. Mai 2020 um 18:00

      Okay, wir werden das sofort ausprobieren. Mal sehen ob das klappt :)

      Vielen Dank schon mal, ich melde mich mit dem Ergebenis.

    • Altis Life Scripting

      • Unityeid
      • 25. Mai 2020 um 17:18

      Habe das selbe Problem

    • Altis Life Kiste in Garage einparken/Zur Datenbank hinzufügen

      • Unityeid
      • 25. Mai 2020 um 01:39

      Hallo liebe Community wir haben folgendes Problem:

      Wir betreiben einen Life-Server.

      Auf diesem Life-Server soll eine typische Funktion eingebunden werden:

      Das Auf- und Abladen der "typischen" roten Kisten auf ein Fahrzeug um somit den V-Item-Speicher zu erweitern.

      Als Alterntative soll das Objekt "Land_WaterBarrel_F" (Wasserfass) aufgeladen werden.

      Dafür nutzen wir das Script Igi-Load, wir können auch beiden Objekte, (Kiste & WaterBarrel) auf das Fahrzeug aufladen.

      Soweit so gut.

      Darüber hinaus haben wir es geschafft, dass Objekt im Shop zu implementieren.

      Sprich: Das Objekt kann im Shop gekauft werden und spawnt dann auch.

      Auch ein V-Invetar ("T-Inventar") konnten wir bereits hinzufügen, es ist also möglich die Kiste zu kaufen, aufzuladen und auf das T-Inventar zuzugreifen.

      Was aber nicht möglich ist,

      - ist die Kiste jeweils auf und abzusperren (Jeder hat Zugriff auf die Kiste)

      - ist die Kiste in der Datenbank zu speichern/wieder abzurufen:

      Gemeint ist folgendes: Ich kann die Kiste neben der Garage abstellen und díe Kiste dann auch einparken. Die Kiste despawnt auch und es kommt die Meldung "Das Fahrzeug wurde erfolgreich in der Garage geparkt"

      Möchte ich aber nun aber auf die Kiste in der Garage zugreifen, wird mir in der Garage kein Objekt angezeigt, darüber hinaus erscheint die Kiste auch nirgendwo in der Datenbank.


      Wie kann ich die Kiste(n) also in der Garage speichern und wieder abrufen bzw. wie kann ich diese Kisten in der Datenbank speichern?


      Zusatzinformationen:

      - Wir nutzen "ThingX" als Classname

      - In der Garagen-Init steht anstelle von "Car" oder "Air" --> "ThingX"

      - In der Config-Vehicles ist die Kiste(n) auch ordentlich angelegt

      - In der fn_storeVehicle.sqf ist "ThingX" ebenfalls angelegt:


      Code
      _nearVehicles = nearestObjects[getPos (_this select 0),["Car","Tank","Air","Ship","ThingX"],30]; //fetch Vehicles within 30m 


      Wir haben auch bereits mal versucht überall, wo die Variable "Car" oder "LandVehicle" auch "ThingX" einzufügen, alles ohne Erfolg.

      Vielleicht kann jemand helfen, wo der Fehler liegt oder hat Erfahrung bei der Installation einer solchen Funktion und kann helfen.

      Vielen Dank im Voraus!

    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™