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: 03 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. Samero

    Beiträge von Samero

    • Clothing Shop - Kleidung beim verlassen noch am Spieler attached (umsonst)

      • Samero
      • 22. Oktober 2020 um 02:12
      Zitat von Basti0208

      Du musst spawn anstatt call benutzen.

      18:43:16 Suspending not allowed in this context

      Vielen Dank!
      Mal wieder was neues gelernt und es macht tatsächlich auch Sinn. :D

      #closed

      Gruß
      Samero

    • Clothing Shop - Kleidung beim verlassen noch am Spieler attached (umsonst)

      • Samero
      • 22. Oktober 2020 um 00:22

      Hat hier noch jemand einen schlauen rat für mich?

      Danke und Gruß
      Samero

    • Clothing Shop - Kleidung beim verlassen noch am Spieler attached (umsonst)

      • Samero
      • 19. Oktober 2020 um 19:01

      Hi Marius,

      vielen Dank für deine Antwort.
      Scheinbar habe ich doch einen Fehler übersehen. :huh:
      Aber was da fehlerhaft sein soll, finde ich nicht.
      Vllt. findest du ja was. Im Anhang auch nochmal der Client RPT

      Code: Client RPT
      18:43:04 Error in expression < call life_fnc_playerSkins;
      waitUntil {isNull (findDisplay 3100)};
      if (getNumbe>
      18:43:04   Error position: <isNull (findDisplay 3100)};
      if (getNumbe>
      18:43:04   Error Allgemeiner Fehler in Ausdruck
      18:43:04 File core\shops\fn_clothingMenu.sqf [life_fnc_clothingMenu]..., line 240
      18:43:04 Ref to nonnetwork object 1ff221df580# 1815674: usertexture10m.p3d
      18:43:04 Ref to nonnetwork object 1ff3a89a080# 1815675: usertexture10m.p3d
      18:43:04 Ref to nonnetwork object 1ff221deb00# 1815676: usertexture10m.p3d
      18:43:04 Ref to nonnetwork object 1ff343eb580# 1815677: usertexture10m.p3d
      18:43:16 Ref to nonnetwork object 1ff3a7dd600# 1815696: usertexture10m.p3d
      18:43:16 Suspending not allowed in this context
      18:43:16 Error in expression < call life_fnc_playerSkins;
      waitUntil {isNull (findDisplay 3100)};
      if (getNumbe>
      18:43:16   Error position: <isNull (findDisplay 3100)};
      if (getNumbe>
      18:43:16   Error Allgemeiner Fehler in Ausdruck
      18:43:16 File core\shops\fn_clothingMenu.sqf [life_fnc_clothingMenu]..., line 240
      Alles anzeigen

      Dateien

      Arma3_x64_2020-10-19_18-37-29.rpt 220,19 kB – 138 Downloads
    • Clothing Shop - Kleidung beim verlassen noch am Spieler attached (umsonst)

      • Samero
      • 19. Oktober 2020 um 16:33

      Moin zusammen,

      ich stehe mal wieder vor einem sehr nervigen Problem. :/
      Jedes Mal, wenn man im Kleidungsgeschäft auf einen Artikel klickt, um sich diesen anzuschauen und dann auf
      den Button "Schließen" klickt oder ESC auf der Tastatur drückt, behält man die ausgewählte Kleidung an ohne diese zu bezahlen.

      Im Client RPT und auch Server RPT gibt es keine Fehlermeldung dazu.
      Ich hoffe wir können hier noch ein paar Lösungsansätze finden und freue mich auf eure Ideen.

      Edit: Im Anhang noch alle Dateien die mit dem clothing zu tun haben.

      Danke und Gruß
      Samero

      Dateien

      native_network.zip 9,95 kB – 191 Downloads
    • life_coplevel oder life_mediclevel via Debug Console ändern

      • Samero
      • 30. September 2020 um 17:33

      Vielen Dank für die schnelle Antwort.
      Das macht durchaus sind und funktioniert nun. ^^
      Hätte man auch selbst drauf kommen können ^^

      #closed

    • life_coplevel oder life_mediclevel via Debug Console ändern

      • Samero
      • 30. September 2020 um 17:17

      Moin zusammen,

      ich stehe aktuell vor der frage, ob es irgendwie möglich ist über die Debug Console Ingame das Coplevel kurzfristig zu ändern? :/
      Ich habe bisher probiert der Life Variable direkt einen Wert zuzuweisen, musste aber leider feststellen, dass das so leider nicht funktioniert
      Kennt von euch einer eine Möglichkeit?

      life_coplevel = 3; //Funktioniert nicht :(

      Danke und Gruß
      Samero.

    • Datenbank abfrage für eigenes Skript

      • Samero
      • 3. Oktober 2018 um 13:22

      Das Problem war auch damit nicht behoben.

      Einfach so Sachen habe ich nicht eingefügt, sondern mir was dabei gedacht.

      Der oben genannte Fehler kam aus mehreren Test versuchen zustande ;)

      Da ich das Problem nun anders gelöst habe, kann das Thema geschlossen werden.

      #close

    • Lizenzen zum Verarbeiten

      • Samero
      • 30. September 2018 um 09:27

      Dann ist meine Aussage aber dennoch Korrekt denn beides ist möglich. Du hast lediglich meine Aussage mit deiner erweitert ;)

    • weiß wer wie man sowas macht

      • Samero
      • 29. September 2018 um 19:01

      Was genau meinst du?

      Bei einem Server als "Titelbild" oder wie da zusehen als "Arma" Bild wo man dann die Serverauswahl hat etc.?

    • Datenbank abfrage für eigenes Skript

      • Samero
      • 29. September 2018 um 18:58
      Zitat von br1zey

      dein fehler ist an dem punkt wo du von

      fn_fetchInsurance.sqf wieder an fn_garageLBChange.sqf zurück gibst

      und zwar machst du

      [1,_class,_statusReq] call life_fnc_garageLBChange;

      aber GarageLBChange erwartet nur

      params [ ["_mode",0,[0]], ["_statusReq",0,[0]] ];

      Alles anzeigen

      schon nicht schlecht und schon einmal vielen Dank dafür!

      Aber funktioniert immer noch nicht :(

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_fetchInsurance.sqf
          Author: Samero Richter @RP-INFINITY
          
          Description:
          Fetch the insurancestatus
      */
      params [
          ["_mode",0,[0]],
          ["_class","",[""]],
          ["_return",-1,[0]]
      ];
      disableSerialization;
      if ((lbCurSel 2802) isEqualTo -1) exitWith {hint localize "STR_Global_NoSelection"};
      private _vehicle = lbData[2802,(lbCurSel 2802)];
      _vehicle = (call compile format ["%1",_vehicle]) select 0;
      private _vehicleLife = _vehicle;
      private _vid = lbValue[2802,(lbCurSel 2802)];
      private _pid = getPlayerUID player;
      
      //Fetch send to life_server
      if (_mode isEqualTo 0) exitWith {
          if (_class isEqualTo "") exitWith {[]}; //Bad class passed.
          if (!isClass (configFile >> "CfgVehicles" >> _class)) exitWith {[]}; //Class doesn't exist in CfgVehicles
      
          if (life_HC_isActive) then {
              [_vid,_pid,player,life_garage_type] remoteExecCall ["HC_fnc_vehicleInsuranceStatus",HC_Life];
          } else {
              [_vid,_pid,player,life_garage_type] remoteExecCall ["TON_fnc_vehicleInsuranceStatus",RSERV];
          }; 
      };
      
      //receive Result from life_server
      if (_mode isEqualTo 1) exitWith {
          private _statusReq = _return;
          
          //return
          [1,_class,_statusReq] call life_fnc_garageLBChange;
      };
      Alles anzeigen
      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_garageLBChange.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Can't be bothered to answer it.. Already deleted it by accident..
      */
      params [
          ["_mode",0,[0]],
          ["_class","",[""]],
          ["_statusReq",0,[0]]
      ];
      disableSerialization;
      private ["_control","_index","_className","_classNameLife","_dataArr","_vehicleColor",
      "_vehicleInfo","_trunkSpace","_sellPrice","_retrievePrice","_sellMultiplier","_price",
      "_storageFee","_purchasePrice", "_vehicleInsuranceStatus", "_InsuranceMultiplier", 
      "_vehicleInsurancePrice","_statusReq"
      ];
      
      diag_log format ["STATUS: %1",_statusReq];
      
      _control = _this select 0;
      _index = _this select 1;
      
      //Fetch some information.
      _dataArr = CONTROL_DATAI(_control,_index);
      _dataArr = call compile format ["%1",_dataArr];
      _className = (_dataArr select 0);
      _classNameLife = _className;
      
      if (_mode isEqualTo 0) then {
      
          if (!isClass (missionConfigFile >> "LifeCfgVehicles" >> _classNameLife)) then {
              _classNameLife = "Default"; //Use Default class if it doesn't exist
              diag_log format ["%1: LifeCfgVehicles class doesn't exist",_className];
          };
      
          _vehicleColor = ((M_CONFIG(getArray,"LifeCfgVehicles",_classNameLife,"textures") select (_dataArr select 1)) select 0);
          if (isNil "_vehicleColor") then {_vehicleColor = "Default";};
      
          _vehicleInfo = [_className] call life_fnc_fetchVehInfo;
          _trunkSpace = [_className] call life_fnc_vehicleWeightCfg;
      
          _price = M_CONFIG(getNumber,"LifeCfgVehicles",_classNameLife,"price");
          _storageFee = LIFE_SETTINGS(getNumber,"vehicle_storage_fee_multiplier");
          
          [0,_className,-1] call life_fnc_fetchInsurance;
      };
      
      if (_mode isEqualTo 1) then {
          
          if (_statusReq isEqualTo 0) then {
              _vehicleInsuranceStatus = "Nicht Versichert";
          } else {
              _vehicleInsuranceStatus = "Versichert";
          };
      
          switch (playerSide) do {
              case civilian: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_CIVILIAN");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_CIVILIAN");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_CIVILIAN");
              };
              case west: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_COP");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_COP");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_COP");
              };
              case independent: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_MEDIC");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_MEDIC");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_MEDIC");
              };
              case east: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_OPFOR");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_OPFOR");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_OPFOR");
              };
          };
          _retrievePrice = _purchasePrice * _storageFee;
          _sellPrice = _purchasePrice * _sellMultiplier;
          _vehicleInsurancePrice = _price * _InsuranceMultiplier;
      
          if (!(_sellPrice isEqualType 0) || _sellPrice < 1) then {_sellPrice = 500;};
          if (!(_retrievePrice isEqualType 0) || _retrievePrice < 1) then {_retrievePrice = 500;};
      
          (CONTROL(2800,2803)) ctrlSetStructuredText parseText format [
              (localize "STR_Shop_Veh_UI_RetrievalP")+ " <t color='#8cff9b'>$%1</t><br/>
              " +(localize "STR_Shop_Veh_UI_SellP")+ " <t color='#8cff9b'>$%2</t><br/>
              " +(localize "STR_Insurance_Price")+ " <t color='#8cff9b'>$%9</t><br/>
              " +(localize "STR_Insurance_Status")+ " %10<br/>
              " +(localize "STR_Shop_Veh_UI_Color")+ " %8<br/>
              " +(localize "STR_Shop_Veh_UI_MaxSpeed")+ " %3 km/h<br/>
              " +(localize "STR_Shop_Veh_UI_HPower")+ " %4<br/>
              " +(localize "STR_Shop_Veh_UI_PSeats")+ " %5<br/>
              " +(localize "STR_Shop_Veh_UI_Trunk")+ " %6<br/>
              " +(localize "STR_Shop_Veh_UI_Fuel")+ " %7
              ",
          [_retrievePrice] call life_fnc_numberText,
          [_sellPrice] call life_fnc_numberText,
          (_vehicleInfo select 8),
          (_vehicleInfo select 11),
          (_vehicleInfo select 10),
          if (_trunkSpace isEqualTo -1) then {"None"} else {_trunkSpace},
          (_vehicleInfo select 12),
          _vehicleColor,
          [_vehicleInsurancePrice] call life_fnc_numberText,
          _vehicleInsuranceStatus
          ];
      
          ctrlShow [2803,true];
          ctrlShow [2830,true];
          
      };
      Alles anzeigen

      Dateien

      Arma3_x64_2018-09-29_10-00-52.rpt 69,55 kB – 180 Downloads arma3server_x64_2018-09-29_18-51-34.rpt 76,26 kB – 240 Downloads
    • Lizenzen zum Verarbeiten

      • Samero
      • 29. September 2018 um 18:50
      Zitat von Jones08

      Und die Lizenz die ich in der Init des npcs einfüge ist die, die ich zum Verarbeiten benötige?

      korrekt

    • Lizenzen zum Verarbeiten

      • Samero
      • 29. September 2018 um 14:32

      Moin,

      erst einmal gibt es keine doofen fragen ;)

      Zum einen musst du in der Config_Licenses.hpp eine Lizenz anlegen oder eine dort angelegte verwenden.

      Dann musst / solltest du in der Config_Process.hpp bei dem entsprechenden Item einen Wert für NoLicenseCost hinterlegen. (Verarbeitungskosten ohne Lizenz)

      Dann gehst du in den Editor und fügst bei der Init von deinem Verarbeiter das ein:

      Code
      this enableSimulation false;  this allowDamage false;  this addAction[localize"STR_Process_DEIN-ITEM",life_fnc_processAction,"CLASSNAME-DEINER-PROCESS-FUNCTION",0,false,false,"",' life_inv_DEIN-ITEMUnprocessed > 0 && !life_is_processing && !life_action_inUse',3];  this addAction[format ["%1 ($%2)",localize (getText(missionConfigFile >> "Licenses" >> "DEINE-ITEM-LIZENZ" >> "displayName")), [(getNumber(missionConfigFile >> "Licenses" >> "DEINE-ITEM-LIZENZ" >> "price"))] call life_fnc_numberText],life_fnc_buyLicense,"DEINE-ITEM-LIZENZ",0,false,false,"",' !license_civ_DEINE-ITEM-LIZENZ && playerSide isEqualTo civilian ',3];

      Sollte so passen :) ansonsten helfe ich gerne und kleiner Tipp schau dir einfach deine anderen Verarbeiter mal an

    • Datenbank abfrage für eigenes Skript

      • Samero
      • 29. September 2018 um 14:17

      Moin zusammen,

      nun hänge ich am nächsten vermutlich kleinen Problem:

      Ich versuche mir eine Zahl an mein Script zurück zugeben aber wenn ich diese verarbeiten will gibt es immer eine Fehlermeldung: Error Params: Typ Zeichenfolge, erwartet Zahl

      zwar verstehe ich schon was er mir damit sagen möchte, aber ich finde den Fehler einfach nicht.

      Meine fn_garageLBChange habe ich entsprechend umgeschrieben:

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_garageLBChange.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Can't be bothered to answer it.. Already deleted it by accident..
      */
      params [
          ["_mode",0,[0]],
          ["_statusReq",0,[0]]
      ];
      disableSerialization;
      private ["_control","_index","_className","_classNameLife","_dataArr","_vehicleColor",
      "_vehicleInfo","_trunkSpace","_sellPrice","_retrievePrice","_sellMultiplier","_price",
      "_storageFee","_purchasePrice", "_vehicleInsuranceStatus", "_InsuranceMultiplier", 
      "_vehicleInsurancePrice","_statusReq"
      ];
      
      diag_log format ["STATUS: %1",_statusReq];
      
      _control = _this select 0;
      _index = _this select 1;
      
      //Fetch some information.
      _dataArr = CONTROL_DATAI(_control,_index);
      _dataArr = call compile format ["%1",_dataArr];
      _className = (_dataArr select 0);
      _classNameLife = _className;
      
      if (_mode isEqualTo 0) then {
      
          if (!isClass (missionConfigFile >> "LifeCfgVehicles" >> _classNameLife)) then {
              _classNameLife = "Default"; //Use Default class if it doesn't exist
              diag_log format ["%1: LifeCfgVehicles class doesn't exist",_className];
          };
      
          _vehicleColor = ((M_CONFIG(getArray,"LifeCfgVehicles",_classNameLife,"textures") select (_dataArr select 1)) select 0);
          if (isNil "_vehicleColor") then {_vehicleColor = "Default";};
      
          _vehicleInfo = [_className] call life_fnc_fetchVehInfo;
          _trunkSpace = [_className] call life_fnc_vehicleWeightCfg;
      
          _price = M_CONFIG(getNumber,"LifeCfgVehicles",_classNameLife,"price");
          _storageFee = LIFE_SETTINGS(getNumber,"vehicle_storage_fee_multiplier");
          
          [0,_className,-1] call life_fnc_fetchInsurance;
      };
      
      if (_mode isEqualTo 1) then {
          
          if (_statusReq isEqualTo 0) then {
              _vehicleInsuranceStatus = "Nicht Versichert";
          } else {
              _vehicleInsuranceStatus = "Versichert";
          };
      
          switch (playerSide) do {
              case civilian: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_CIVILIAN");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_CIVILIAN");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_CIVILIAN");
              };
              case west: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_COP");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_COP");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_COP");
              };
              case independent: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_MEDIC");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_MEDIC");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_MEDIC");
              };
              case east: {
                  _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_OPFOR");
                  _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_OPFOR");
                  _InsuranceMultiplier = LIFE_SETTINGS(getNumber,"vehicle_insurance_multiplier_OPFOR");
              };
          };
          _retrievePrice = _purchasePrice * _storageFee;
          _sellPrice = _purchasePrice * _sellMultiplier;
          _vehicleInsurancePrice = _price * _InsuranceMultiplier;
      
          if (!(_sellPrice isEqualType 0) || _sellPrice < 1) then {_sellPrice = 500;};
          if (!(_retrievePrice isEqualType 0) || _retrievePrice < 1) then {_retrievePrice = 500;};
      
          (CONTROL(2800,2803)) ctrlSetStructuredText parseText format [
              (localize "STR_Shop_Veh_UI_RetrievalP")+ " <t color='#8cff9b'>$%1</t><br/>
              " +(localize "STR_Shop_Veh_UI_SellP")+ " <t color='#8cff9b'>$%2</t><br/>
              " +(localize "STR_Insurance_Price")+ " <t color='#8cff9b'>$%9</t><br/>
              " +(localize "STR_Insurance_Status")+ " %10<br/>
              " +(localize "STR_Shop_Veh_UI_Color")+ " %8<br/>
              " +(localize "STR_Shop_Veh_UI_MaxSpeed")+ " %3 km/h<br/>
              " +(localize "STR_Shop_Veh_UI_HPower")+ " %4<br/>
              " +(localize "STR_Shop_Veh_UI_PSeats")+ " %5<br/>
              " +(localize "STR_Shop_Veh_UI_Trunk")+ " %6<br/>
              " +(localize "STR_Shop_Veh_UI_Fuel")+ " %7
              ",
          [_retrievePrice] call life_fnc_numberText,
          [_sellPrice] call life_fnc_numberText,
          (_vehicleInfo select 8),
          (_vehicleInfo select 11),
          (_vehicleInfo select 10),
          if (_trunkSpace isEqualTo -1) then {"None"} else {_trunkSpace},
          (_vehicleInfo select 12),
          _vehicleColor,
          [_vehicleInsurancePrice] call life_fnc_numberText,
          _vehicleInsuranceStatus
          ];
      
          ctrlShow [2803,true];
          ctrlShow [2830,true];
          
      };
      Alles anzeigen

      in der fn_fetchInsurance ist dann folgendes:

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_fetchInsurance.sqf
          Author: Samero Richter @RP-INFINITY
          
          Description:
          Fetch the insurancestatus
      */
      params [
          ["_mode",0,[0]],
          ["_class","",[""]],
          ["_return",-1,[0]]
      ];
      disableSerialization;
      if ((lbCurSel 2802) isEqualTo -1) exitWith {hint localize "STR_Global_NoSelection"};
      private _vehicle = lbData[2802,(lbCurSel 2802)];
      _vehicle = (call compile format ["%1",_vehicle]) select 0;
      private _vehicleLife = _vehicle;
      private _vid = lbValue[2802,(lbCurSel 2802)];
      private _pid = getPlayerUID player;
      
      //Fetch send to life_server
      if (_mode isEqualTo 0) exitWith {
          if (_class isEqualTo "") exitWith {[]}; //Bad class passed.
          if (!isClass (configFile >> "CfgVehicles" >> _class)) exitWith {[]}; //Class doesn't exist in CfgVehicles
      
          if (life_HC_isActive) then {
              [_vid,_pid,player,life_garage_type] remoteExecCall ["HC_fnc_vehicleInsuranceStatus",HC_Life];
          } else {
              [_vid,_pid,player,life_garage_type] remoteExecCall ["TON_fnc_vehicleInsuranceStatus",RSERV];
          }; 
      };
      
      //receive Result from life_server
      if (_mode isEqualTo 1) exitWith {
          private _statusReq = _return;
          
          //return
          [1,_class,_statusReq] call life_fnc_garageLBChange;
      };
      Alles anzeigen

      kann mir jmd. verraten wo mein Denkfehler ist? :/

      Wäre echt super und schon einmal vielen Dank im voraus!

      P.S. im Anhang einmal der Client und Server Log

      Dateien

      Arma3_x64_2018-09-29_10-00-52.rpt 23,15 kB – 175 Downloads arma3server_x64_2018-09-29_14-07-03.rpt 76,27 kB – 221 Downloads
    • Erfahrener Life Spieler sucht bleibe!

      • Samero
      • 28. September 2018 um 08:11

      Ich kann dir noch RP-Infinity anbieten - aktuell in der Beta Phase mit einigen Usern die am Testen sind und eigene Wünsche anmerken.

      Da unser Server ein komplettes Community Projekt ist, wird insofern möglich auf die Wünsche eingegangen.

      Es ist ein normaler Vanilla Tanoa Life Server und aktuell ohne mods aber mit einer menge schöner Scripte, die zum Teil auch selbst geschrieben sind.

      Da wir noch ganz am Anfang stehen und ich der Scripter für alles bin, steht eine Webseite noch nicht zu 100% zur Verfügung. Ist aber so gut wie online ;)

      Ansonsten bieten wir einen Discord Server Link oder auch TS3: rp-infinity.de

      Wenn du Interesse hast, kannst du uns gerne einmal besuchen

      Gruß

      Samero

    • 2 Server auf den Selben root

      • Samero
      • 28. September 2018 um 08:01

      Kein Problem bei Fragen gerne fragen ;)

      Gruß

      Samero

      #close

    • Datenbank abfrage für eigenes Skript

      • Samero
      • 27. September 2018 um 21:49

      Fehler gefixt:

      Code
      #include "..\..\script_macros.hpp"
      /*
       File: fn_fetchInsurance.sqf
       Author: Samero Richter @RP-INFINITY
       
       Description:
       Fetch the insurancestatus
      */
      params [
       ["_mode",-1,[0]]
       ,["_class","",[""]]
       ,["_return",-1,[0]]
      ];
      disableSerialization;
      if ((lbCurSel 2802) isEqualTo -1) exitWith {hint localize "STR_Global_NoSelection"};
      private _vehicle = lbData[2802,(lbCurSel 2802)];
      _vehicle = (call compile format ["%1",_vehicle]) select 0;
      private _vehicleLife = _vehicle;
      private _vid = lbValue[2802,(lbCurSel 2802)];
      private _pid = getPlayerUID player;
      
      //Fetch send to life_server
      if (_mode isEqualTo 0) exitWith {
       
       if (_class isEqualTo "") exitWith {[]}; //Bad class passed.
       if (!isClass (configFile >> "CfgVehicles" >> _class)) exitWith {[]}; //Class doesn't exist in CfgVehicles
      
       if (life_HC_isActive) then {
       [_vid,_pid,player,life_garage_type] remoteExecCall ["HC_fnc_vehicleInsuranceStatus",HC_Life];
       } else {
       [_vid,_pid,player,life_garage_type] remoteExecCall ["TON_fnc_vehicleInsuranceStatus",RSERV];
       }; 
      };
      
      //receive Result from life_server
      if (_mode isEqualTo 1) exitWith {
       private _statusReq = _return;
       
       hint format ["Status: %1",_statusReq];
       diag_log "----------------------------";
       diag_log format ["Status %1",_status];
       diag_log format ["StatusReq %1",_statusReq];
       diag_log format ["RETURN %1",_return];
       diag_log "----------------------------";
       
      };
      Alles anzeigen
    • Datenbank abfrage für eigenes Skript

      • Samero
      • 27. September 2018 um 20:04
      Zitat von Samero

      Die Logs sind beide clean!

      Vergessen an zu hängen aber bitte und nochmals danke für deine Hilfe! :)

      Dateien

      arma3server_x64_2018-09-27_19-17-21.rpt 76,52 kB – 171 Downloads Client.rpt 29,75 kB – 184 Downloads
    • Datenbank abfrage für eigenes Skript

      • Samero
      • 27. September 2018 um 19:52

      Moin,

      habe es getestet und es gab einen kleinen Fehler!

      Bei ,["_class",""[""]] fehlt ein komma ,["_class","",[""]]

      Code
      params [
       ["_mode",-1,[0]]
       ,["_class","",[""]]
       ,["_return",-1,[0]]
      ];

      Ansonsten habe ich nur das Problem dass der geänderte Mode nicht erkannt wird, und das script nicht weiter ausgeführt wird.

      Hast du da eine Lösung?

      Die Logs sind beide clean!


      So rufe ich das Script auf:

      Code
      _vehicleInsuranceStatus_NUM = [0,_className,-1] call life_fnc_fetchInsurance;

      Dann in der fn_fetchInsurance.sqf

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_fetchInsurance.sqf
          Author: Samero Richter @RP-INFINITY
          
          Description:
          Fetch the insurancestatus
      */
      params [
       ["_mode",-1,[0]]
       ,["_class","",[""]]
       ,["_return",-1,[0]]
      ];
      disableSerialization;
      if ((lbCurSel 2802) isEqualTo -1) exitWith {hint localize "STR_Global_NoSelection"};
      private _vehicle = lbData[2802,(lbCurSel 2802)];
      _vehicle = (call compile format ["%1",_vehicle]) select 0;
      private _vehicleLife = _vehicle;
      private _vid = lbValue[2802,(lbCurSel 2802)];
      private _pid = getPlayerUID player;
      
      if (_class isEqualTo "") exitWith {[]}; //Bad class passed.
      if (!isClass (configFile >> "CfgVehicles" >> _class)) exitWith {[]}; //Class doesn't exist in CfgVehicles
      
      //Fetch send to life_server
      if (_mode isEqualTo 0) exitWith {
          if (life_HC_isActive) then {
              [_vid,_pid,player,life_garage_type] remoteExecCall ["HC_fnc_vehicleInsuranceStatus",HC_Life];
          } else {
              [_vid,_pid,player,life_garage_type] remoteExecCall ["TON_fnc_vehicleInsuranceStatus",RSERV];
          }; 
      };
      
      //receive Result from life_server
      if (_mode isEqualTo 1) exitWith {
          private _statusReq = _return;
          
          hint format ["Status: %1",_statusReq];
          diag_log "----------------------------";
          diag_log format ["Status %1",_status];
          diag_log format ["StatusReq %1",_statusReq];
          diag_log format ["RETURN %1",_return];
          diag_log "----------------------------";
          
      };
      Alles anzeigen


      in der life_server:

      Code
      #include "\life_server\script_macros.hpp"
      /*
          FETCH Insurance Status
      */
      params [
       ["_vid",-1,[0]]
       ,["_pid","",[""]]
       ,["_unit",objNull,[objNull]]
       ,["_type","",[""]]
      ];
      
      if (_vid isEqualTo -1 || _pid isEqualTo "" || isNull _unit || _type isEqualTo "") exitWith {};
      _unit = owner _unit;
      
      _query = format ["SELECT insurance_status FROM vehicles WHERE pid='%1' AND id='%2'",_pid,_vid];
      _queryResult = [_query,2] call DB_fnc_asyncCall;
      
      if (_queryResult isEqualTo "") exitWith {};
      _return = (_queryResult select 0);
      
      if (EXTDB_SETTING(getNumber,"DebugMode") isEqualTo 1) then {
          _tickTime = diag_tickTime;
          
          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 - Status: %2",(_queryResult),_return];
          diag_log "------------------------------------------------";
      };
      
      //Send Result to player
      [1,"",_return] remoteExecCall ["life_fnc_fetchInsurance",_unit];
      Alles anzeigen

      :/:/

    • Datenbank abfrage für eigenes Skript

      • Samero
      • 27. September 2018 um 09:01

      Danke dir!

      Da hatte ich wohl einen Knoten im Kopf :rolleyes:

      Werde ich mal testen!

      Kannst du mir und der Zukunft vllt. erklären warum da noch zusätzlich Parameter mit übergeben werden müssen?

      Danke und Gruß

      Samero

    • 2 Server auf den Selben root

      • Samero
      • 27. September 2018 um 08:57

      Moin,

      du musst in den Startparametern entsprechend den Standartport ändern!

      Hier einfach mal ein Link von Bohemia bzgl. Ports

      In der Config stellst du dann einfach den steamPort auf 8866 insofern der frei ist und den steamQueryPort auf 27116 insofern auch der frei ist.

      Edit: Bitte auch diese Ports entsprechend freigeben.

      Dann noch einmal die Port in der Firewall freigeben und du kannst normal connecten wie auf deinen anderen Server.

      Gruß

      Samero

    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™