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
Fr: 16 Mai 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. Harry Knueller

    Beiträge von Harry Knueller

    • Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall

      • Harry Knueller
      • 7. Juni 2023 um 10:19

      Erledigt

    • Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall

      • Harry Knueller
      • 7. Juni 2023 um 10:06
      Zitat von Henne

      Ansonsten kannst du eine weitere Funktion Serverseitig erstellen (nur mit dem Aufruf der Datenbank-Funktion), die du per remoteExec aufrufst, die dann die wirkliche Datenbank-Abfrage durchführt. Somit kann nicht jeder alles an die Datenbank senden.


      Das hatte ich zwischen durch auch mal probiert aber wieder verworfen... hätte ich man nochmal in den Serverlog reingeguckt, dann hätte ich gesehen das ich die Abfrage nur hätte freigeben müssen.dash

      Habs jetzt wie folgt gelöst und funktioniert, dank deiner Hilfe !

      Code: fn_tuningkit_V4.sqf
      [...]
      
      [_owner, _plate, _chip] remoteExecCall ["TON_fnc_updateVehChip", 2];
      Code: fn_updateVehChip.sqf
      private["_query", "_queryResult"];
      params [
      ["_pid", -1, [0,""]],
      ["_plate", -1, [0,""]],
      ["_chip", -1, [0,""]]
      ];
      
      
      private _query = format ["UPDATE vehicles SET chip='%3' WHERE pid='%1' AND plate='%2'",_pid , _plate, _chip];
      private _queryResult = [_query,2] call DB_fnc_asyncCall;
      Code: config.cpp
      class TON_System {
      tag = "TON";
      class Systems {
      file = "\life_server\Functions\Systems";
      [...]
      class updateVehChip{};
      Code: CfgRemoteExec.hpp
      F(TON_fnc_updateVehChip,SERVER)
    • Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall

      • Harry Knueller
      • 7. Juni 2023 um 09:33
      Zitat von Henne

      Dann schau mal in die Serverlog was dort ausgegeben wird.

      Vor allem auch in die extDB-Log.

      Bin im Serverlog fündig geworden:

      Code
      2023/06/07,  9:25:38 Scripting function 'db_fnc_asynccall' is not allowed to be remotely executed
      2023/06/07,  9:25:38 User Harald Knueller (76561198255301431) tried to remoteExec a disabled function
    • Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall

      • Harry Knueller
      • 7. Juni 2023 um 09:27
      Zitat von Henne

      Dein Script befindet sich in der Mission und wird Clientseitig ausgeführt. Du möchtest dann aber eine Funktion aufrufen, die sich nur Serverseitig befindet und somit der Client nicht kennt. Daher kommt richtigerweiße eine Fehlermeldung.

      Du musst also dem Server mitteilen, dass er die Funktion aufrufen soll. Das ist mit remoteExec möglich.

      Nach dem ändern der Zeile, sollte alles richtig funktionieren.

      Code
      _query = format ["UPDATE vehicles SET chip='%3' WHERE pid='%1' AND plate='%2'",_owner , _plate, _chip];
      _thread = [_query,2] remoteExec ['DB_fnc_asyncCall',2];

      Jetzt ist der Scriptfehler zwar weg, aber kein Datenbankupdate - Jetzt herrscht komplette Verwirrung ?(^^

      Zitat von thechosen1one1

      Oder einfach _query oben in private []; hinzufügen? :D

      private ["_vehicle","_chip","_thread","_cpRate","_title","_progressBar","_titleText","_cp","_ui","_plate","_owner","_query"];

      Hat nichts geändert...

    • Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall

      • Harry Knueller
      • 7. Juni 2023 um 08:50
      Zitat von Henne

      Dein Script befindet sich in der Mission und wird Clientseitig ausgeführt. Du möchtest dann aber eine Funktion aufrufen, die sich nur Serverseitig befindet und somit der Client nicht kennt. Daher kommt richtigerweiße eine Fehlermeldung.

      Du musst also dem Server mitteilen, dass er die Funktion aufrufen soll. Das ist mit remoteExec möglich.

      Nach dem ändern der Zeile, sollte alles richtig funktionieren.

      Vielen Dank für die super schnelle Rückmeldung. Was mich jetzt aber nach deiner Aussage wundert, ist das die anderen Scripts ohne remoteExec laufen - Ich bin etwas verwirrt.

      Ich teste es schnell und werde gleich berichten !

    • Fahrzeugwerte anpassen.

      • Harry Knueller
      • 7. Juni 2023 um 08:15

      Da hast du verschiedene Möglichkeiten:

      Config > https://community.bistudio.com/wiki/CfgVehicles_Config_Reference


      Script > https://community.bistudio.com/wiki/setMaxLoad

      Script > https://community.bistudio.com/wiki/maxLoad

    • Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall

      • Harry Knueller
      • 7. Juni 2023 um 08:00

      Moin Moin,

      ich bin sonst eigentlich hier nur der stille Mitleser, aber aktuell stehe ich irgendwie auf dem Schlauch... ein simples Datenbankupdate raubt mir zur Zeit den Nerv.

      Möchte gerne folgende Funktion für das DB Update nutzen, da diese auch in sämtlichen anderes Scripts ohne Probleme genutzt wird... Da ich dachte, ich hätte irgendwas bei den Variablen vertauscht, habe ich mir die Variablen im SystemChat ausgegeben - Das passt soweit alles. :/

      Code
      _query = format ["UPDATE vehicles SET chip='%3' WHERE pid='%1' AND plate='%2'",_owner , _plate, _chip];
      
      _thread = [_query,2] call DB_fnc_asyncCall;



      Das komplette Script:

      Code: fn_tuningkit_V4.sqf
      #include "..\..\script_macros.hpp"
      /*
      File: fn_tuningkit_V4.sqf
      Author: Harry Knueller
      
      Description:
      Tuningchip for edit acceleration and maxspeed.
      */
      private ["_vehicle","_chip","_thread","_cpRate","_title","_progressBar","_titleText","_cp","_ui","_plate","_owner"];
      
      _vehicle = cursorObject;
      _vehInfo = _vehicle getVariable ["dbinfo",[]];
      _vehChip = _vehicle getVariable ["chip",[]];
      _owner = _vehInfo select 0;
      _plate = _vehInfo select 1;
      
      if (isNull cursorObject) exitWith {["Aktion","Wo soll der Chip eingebaut werden?","error"] spawn cplus_notification_fnc_notification;};
      if (player distance _vehicle > 5) exitWith {["Aktion","Du bist zu weit vom Fahrzeug weg!","error"] spawn cplus_notification_fnc_notification;};
      if (!(_vehicle isKindOf "car")) exitWith {["Aktion","Der Chip kann nicht an diesem Fahrzeugtypen angebracht werden!","error"] spawn cplus_notification_fnc_notification;};
      if (count _vehInfo isEqualTo 0) exitWith {["Aktion","Der Chip kann nicht an einem Mietfahrzeug angebracht werden!","error"] spawn cplus_notification_fnc_notification;};
      //if (playerSide in [independent, west]) exitWith {["Aktion","Du kannst diesen Chip nicht verwenden!","error"] spawn cplus_notification_fnc_notification;};
      if (!(_owner isEqualto getPlayerUid player)) exitWith {["Aktion","Das ist nicht dein Fahrzeug!","error"] spawn cplus_notification_fnc_notification;};
      if (!(alive _vehicle)) exitWith {["Aktion","Das Fahrzeug ist zerstört","error"] spawn cplus_notification_fnc_notification;};
      if (_vehChip > 0) exitWith {["Aktion","Du musst den bereits montierten Chip ausbauen!","error"] spawn cplus_notification_fnc_notification;};
      if (life_inv_tuningkit_V4 < 1) exitWith {["EXPLOIT","Bugusing ist strengstens verboten!","error"] spawn cplus_notification_fnc_notification;};
      
      life_action_inUse = true;
      
      disableSerialization;
      _title = "Chip wird montiert...";
      "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;
      _cpRate = 0.0036;
      
      
      for "_i" from 0 to 1 step 0 do {
      if (animationState player != "AinvPknlMstpSnonWnonDnon_medic_1") then {
      [player,"AinvPknlMstpSnonWnonDnon_medic_1",true] remoteExecCall ["life_fnc_animSync",RCLIENT];
      player switchMove "AinvPknlMstpSnonWnonDnon_medic_1";
      player playMoveNow "AinvPknlMstpSnonWnonDnon_medic_1";
      };
      uiSleep 0.18;
      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 {};
      if (life_isknocked) exitWith {};
      if (life_interrupted) exitWith {};
      };
      
      "progressBar" cutText ["","PLAIN"];
      player playActionNow "stop";
      if (!alive player || life_istazed || life_isknocked) exitWith {};
      if (player getVariable ["restrained",false]) exitWith {};
      if (life_interrupted) exitWith {life_interrupted = false; titleText[localize "STR_NOTF_ActionCancel","PLAIN"]; life_action_inUse = false;};
      
      life_action_inUse = false;
      
      _vehicle setVariable ["chip",4,true];
      
      [false,"tuningkit_V4",1] call life_fnc_handleInv;
      ["Aktion","Du hast den Chip am Fahrzeug montiert!","success"] spawn cplus_notification_fnc_notification;
      
      _chip = _vehicle getVariable ["chip",[]];
      
      systemChat format["UID: %1 - Kennzeichen: %2 - Chip: %3", _owner, _plate, _chip];
      
      _query = format ["UPDATE vehicles SET chip='%3' WHERE pid='%1' AND plate='%2'",_owner , _plate, _chip];
      
      _thread = [_query,2] call DB_fnc_asyncCall;
      Alles anzeigen


      .rpt - Ausschnitt

      Code
      _thread = [_query,2] call DB_fnc_asyncCall;>
      7:48:42   Error position: <DB_fnc_asyncCall;>
      7:48:42   Error Nicht definierte Variable in Ausdruck: db_fnc_asynccall
      7:48:42 File mpmissions\__CUR_MP.Altis\core\items\fn_tuningkit_V4.sqf..., line 78

      Ich hoffe, ihr könnt mir weiter helfen.

      Liebe Grüße

      Dateien

      Arma3_x64_2023-06-07_07-16-40.rpt 125,23 kB – 85 Downloads
    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 21:51
      Zitat von Deathman

      naja du hast die datei noch nicht einmal ausgeführt weil sonst wehre ja der diag_log da

      Code
      21:49:22 "fn_returnVente - UID NOW: 76561198255301431 | UID OLD: "
      Code
      #include "..\script_macros.hpp"
      /*
          File: fn_returnVente.sqf
          Author: Joaquine
          Description :
          Tous est finalisé, Donc on dit au vendeur sont dut !
      */
      params [
          ["_unit",objNull,[objNull]],
          ["_vehicle",objNull,[objNull]],
          ["_value",0,[0]]
      ];
      
      diag_log format["fn_returnVente - UID NOW: %1 | UID OLD: %2",(getPlayerUID player),(getPlayerUID _ownerLast)];
      
      private _uidAcheteur             = (getPlayerUID _unit);
      private _nameAcheteur             = name _unit;
      CASH = CASH + _value;
      [0] call SOCK_fnc_updatePartial;
      life_vehicles = life_vehicles - [_vehicle];
      _vehicle setVariable ["vehicle_info_owners",[[_uidAcheteur,_nameAcheteur]],true];
      private _dbInfo                 = _vehicle getVariable "dbInfo";
      private _plate                     = (_dbInfo select 1);
      _vehicle setVariable ["dbInfo",[_uidAcheteur,_plate],true];
      private _vehName                = getText(configFile >> "CfgVehicles" >> (typeof _vehicle) >> "displayName");
      hint parseText format  ["<t color='#42f456'>Du hast dein Fahrzeug verkauft. </br>%1</t></br><t color='#f48941'>Käufer: %2 </t></br><t color='#f44141'>Verkaufspreis: %3</t>",_VehName,_nameAcheteur,_value];
      Alles anzeigen
      Code
      #include "..\script_macros.hpp"
      /*
          File: fn_receivedVeh.sqf
          Author: Joaquine
          Description :
          Tous est finalisé, Donc on dit au vendeur sont dut !
      */
      params [
          ["_ownerLast",objNull,[objNull]],
          ["_vehicle",objNull,[objNull]],
          ["_value",0,[0]]
      ];
      
      diag_log format["fn_receivedVeh - UID NOW: %1 | UID OLD: %2",(getPlayerUID player),(getPlayerUID _ownerLast)];
      
      
      // Recupere le nom du véhicule
      _vehName = getText(configFile >> "CfgVehicles" >> (typeof _vehicle) >> "displayName");
      // Demande si oui ou non il veux acheter
      // Flic & Médic
      if (playerSide in [west,independent]) exitWith {
          hint "Du kannst diese Aktion nicht ausführen !";
      };
      _action = [
              format ["%1 möchte seinen %2 für %3$ verkaufen.",name _ownerLast,_vehName,[_value] call life_fnc_numberText],
                   "Achat de véhicule",
              localize "STR_Global_Yes",
              localize "STR_Global_No"
      ] call BIS_fnc_guiMessage;
      //Si oui
          //Check si assez de sous sur lui
          if (CASH < _value) exitWith {
              hint parseText format ["<t color='#f44141'>Du hast nicht genug Bargeld. </br> Dir fehlt %1$</t>",_value];
          };
      if (_action) then {
          //Envoie info au vendeur
          [player,_vehicle,_value] remoteExecCall ["life_fnc_returnVente",_ownerLast];
          //Déduction cash + save
          CASH = CASH - _value;
          [0] call SOCk_fnc_updatePartial;
          //Ajout des clefs au porte clefs
          if (!(_vehicle in life_vehicles)) then {
              life_vehicles pushBack _vehicle;
              _dbInfo = _vehicle getVariable "dbInfo";
              _plate = (_dbInfo select 1);
              //Always handle key management by the server
              [getPlayerUID player,playerSide,_vehicle,1] remoteExecCall ["TON_fnc_keyManagement",2];
              //Envoie pour preparez la requete pour changer owner du véhicule en DB
              [_plate,(getPlayerUID player),(getPlayerUID _ownerLast),(typeof _vehicle)] remoteExecCall ["DB_fnc_changeVehKey",2];
      
              hint parseText format ["<t color='42f456'>Du Bist der Besitzer eines: %1</t>", _vehName];
          };
      } else {
          // Si non :
          hint format ["Du hast den %1 von %2 nicht gekauft.", _vehName, name _ownerLast];
      };
      Alles anzeigen

      Hatte in beide sqf mal die diag_log eingefügt.

      Dateien

      Arma3_x64_2021-03-29_21-46-21.rpt 65,02 kB – 117 Downloads
    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 21:16
      Zitat von Deathman

      im Client RPT log

      Ok habs. Lade dir den Hoch, steht aber gar nichts drinne :/

      Mache nochmal einen, habe bei einer sqf den diaglog vergessen zu speichern...

      Dateien

      Arma3_x64_2021-03-29_21-02-26.rpt 64,89 kB – 136 Downloads
    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 21:09
      Zitat von Deathman

      Klar wirst du auf jeden fall eine zweite Person dazu brauchen aber du kannst das ganze ja erstmal so weit testen, dass du das Skript bzw. die Parameter für das Überschreiben von Keys erfüllst.

      Ich würde erstmal gucken, ob das mit dem diag_log alles passt, weil du gehst ja von dem Verkäufer zu den Käufer.

      Das heißt, das ganze findet so Sinnbildlich

      Habe es jetzt einmal ausgeführt. Wo finde ich jetzt den Diag_log ?

    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 20:42

      Hier mal die Datein

      Dateien

      fn_receivedVeh.sqf 2,07 kB – 92 Downloads fn_returnVente.sqf 1,01 kB – 99 Downloads fn_venteVeh.sqf 3,87 kB – 99 Downloads
    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 20:20

      Stempel mich jetzt bitte nicht als doof ab, aber wie kann ich alleine das script ausführen? Ich bräuchte ja einen zweiten, dem ich die Verkaufanfrage stellen muss oder ?

      Und beim Verkauf die Variablen in der Debugkonsole abfragen oder ?

      Code
      #include "..\script_macros.hpp"
      
      /*
          File: fn_returnVente.sqf
          Author: Joaquine
          Description :
          Tous est finalisé, Donc on dit au vendeur sont dut !
      
      */
      
      params [
          ["_ownerLast",objNull,[objNull]],
          ["_vehicle",objNull,[objNull]],
          ["_value",0,[0]]
      
      ];
      
       diag_log format["UID NOW: %1 | UID OLD: %2",(getPlayerUID player),(getPlayerUID _ownerLast)];
      Alles anzeigen

      Oder den diag_log einfügen und Script testen ? Und gucken was er ausspuckt dabei ?


      Deathman , ich sehe gerade, das ich ausversehen die falsche fn_returnVente.sqf eingefügt habe. Ich editiere das mal im ersten Post.

      Das ist die korrekte fn_returnVente.sqf:

      Code
      #include "..\script_macros.hpp"
      /*
          File: fn_returnVente.sqf
          Author: Joaquine
          Description :
          Tous est finalisé, Donc on dit au vendeur sont dut !
      */
      params [
          ["_unit",objNull,[objNull]],
          ["_vehicle",objNull,[objNull]],
          ["_value",0,[0]]
      ];
      private _uidAcheteur             = (getPlayerUID _unit);
      private _nameAcheteur             = name _unit;
      CASH = CASH + _value;
      [0] call SOCK_fnc_updatePartial;
      life_vehicles = life_vehicles - [_vehicle];
      _vehicle setVariable ["vehicle_info_owners",[[_uidAcheteur,_nameAcheteur]],true];
      private _dbInfo                 = _vehicle getVariable "dbInfo";
      private _plate                     = (_dbInfo select 1);
      _vehicle setVariable ["dbInfo",[_uidAcheteur,_plate],true];
      private _vehName                = getText(configFile >> "CfgVehicles" >> (typeof _vehicle) >> "displayName");
      hint parseText format  ["<t color='#42f456'>Du hast dein Fahrzeug verkauft. </br>%1</t></br><t color='#f48941'>Käufer: %2 </t></br><t color='#f44141'>Verkaufspreis: %3</t>",_VehName,_nameAcheteur,_value];
      Alles anzeigen
    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 19:19
      Zitat von Deathman

      Naja du willst ja was in der DB Ändern oder also sollte die

      fn_changeVehKey.sqf

      in der life_server sein um an diese heranzukommen musst du zum Server ein Remoteexec machen du hast ja so weit auch alles richtig gemacht nur das hier

      F(db_fnc_changevehkey,CLIENT) muss so aussehen F(db_fnc_changevehkey,SERVER).

      RPT Log ist unverändert...

      Code
      19:06:36 Error in expression <"_plate","",[""]],
      ["_uidnew","",[""]],
          ["_uidold","",[""]],
          ["_>
      19:06:36   Error position: <    ["_uidold","",[""]],
          ["_>
      19:06:36   Error Invalid number in expression
      19:06:36 File \life_server\Functions\MySQL\fn_changeVehKey.sqf [DB_fnc_changeVehKey]..., line 10
      19:06:36 Error in expression <"_plate","",[""]],
      ["_uidnew","",[""]],
          ["_uidold","",[""]],
          ["_>
      19:06:36   Error position: <    ["_uidold","",[""]],
          ["_>
      19:06:36   Error Invalid number in expression
      Alles anzeigen
    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 18:58
      Zitat von Deathman

      Naja du willst ja was in der DB Ändern oder also sollte die

      fn_changeVehKey.sqf

      in der life_server sein um an diese heranzukommen musst du zum Server ein Remoteexec machen du hast ja so weit auch alles richtig gemacht nur das hier

      F(db_fnc_changevehkey,CLIENT) muss so aussehen F(db_fnc_changevehkey,SERVER).

      Jetzt wo du es sagst, klingt das ganz logisch. Ich melde mich binnen weniger Minuten zurück !

    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 18:42
      Zitat von Deathman

      Du ist aber der CLIENTeingetragen und nicht der SERVER

      Zitat von Deathman

      Korrigiert mich, wen ich falsch liege aber

      remoteExecCall ["DB_fnc_changeVehKey",2];<--- Die 2


      2 = SERVER

      1 = CLIENT

      0 = ANYONE

      HC_LIFE = HC

      Alles anzeigen

      Soll ich es mal auf Client anpassen oder Server ? :/

    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 18:25
      Zitat von Deathman

      Musst aber auch aufpassen das du DB_fnc_changeVehKey in der CfgRemoteExec.hpp mit eingetragen ist.

      Dort ist es eingetragen.

      Code
      F(db_fnc_changevehkey,CLIENT)
      Zitat von Deathman

      Aber an sich brauchst du nicht den Type des Vehicles mit übergeben es reicht dort die Plate ID <<--- Die gibt es ja nur einmal bei jedem Fahrzeug.

      Gut, dann werde ich das rausnehmen.

      Zitat von Deathman

      Guck doch mal was er dir bei _uidold und _uidnew, überhaupt ausgibt.

      Das werde ich mal nachschauen.

      Vielen Dank schonmal !

    • Fahrzeughandel - DB Updatefehler

      • Harry Knueller
      • 29. März 2021 um 10:07

      Moin, Moin, liebe Sportsfreunde,

      Bin mal wieder auf ein Problem gestoßen und komme nicht wirklich weiter.
      Habe hier im Forum folgendes Script gefunden: Fahrzeughandel (Autos an Spieler weiterverkaufen)

      Die vorgeschlagenen Fixes habe abgeändert. Aber, im RPT taucht ein Fehler zum Updaten der DB auf.

      Eventuell kann mal jeman drüber schauen?

      Hier der Ausschnitt des Logs:

      Code
       9:53:28 Error in expression <"_plate","",[""]],
      ["_uidnew","",[""]],
          ["_uidold","",[""]],
          ["_>
       9:53:28   Error position: <    ["_uidold","",[""]],
          ["_>
       9:53:28   Error Invalid number in expression
       9:53:28 File \life_server\Functions\MySQL\fn_changeVehKey.sqf [DB_fnc_changeVehKey]..., line 10
       9:53:28 Error in expression <"_plate","",[""]],
      ["_uidnew","",[""]],
          ["_uidold","",[""]],
          ["_>
       9:53:28   Error position: <    ["_uidold","",[""]],
          ["_>
       9:53:28   Error Invalid number in expression
       9:53:28 File \life_server\Functions\MySQL\fn_changeVehKey.sqf [DB_fnc_changeVehKey]..., line 10
      Alles anzeigen

      fn_changeVehKey.sqf

      Code
      /*
          File: fn_changeVehKey.sqf
          Author: Joaquine
          Description:
          Fahrzeug DB aktuallisieren
      */
      params [
          ["_plate","",[""]],
          ["_uidnew","",[""]],
          ["_uidold","",[""]],
          ["_type","",[""]]
      ];
      _query = format ["UPDATE vehicles SET pid='%2' WHERE plate='%1' and pid ='%3' and classname = '%4'", _plate,_uidnew,_uidold,_type]; 
      [_query,1] call DB_fnc_asyncCall;
      Alles anzeigen

      fn_returnVente.sqf

      Code
      #include "..\script_macros.hpp"
      /*
          File: fn_returnVente.sqf
          Author: Joaquine
          Description :
          Tous est finalisé, Donc on dit au vendeur sont dut !
      */
      params [
          ["_unit",objNull,[objNull]],
          ["_vehicle",objNull,[objNull]],
          ["_value",0,[0]]
      ];
      private _uidAcheteur             = (getPlayerUID _unit);
      private _nameAcheteur             = name _unit;
      CASH = CASH + _value;
      [0] call SOCK_fnc_updatePartial;
      life_vehicles = life_vehicles - [_vehicle];
      _vehicle setVariable ["vehicle_info_owners",[[_uidAcheteur,_nameAcheteur]],true];
      private _dbInfo                 = _vehicle getVariable "dbInfo";
      private _plate                     = (_dbInfo select 1);
      _vehicle setVariable ["dbInfo",[_uidAcheteur,_plate],true];
      private _vehName                = getText(configFile >> "CfgVehicles" >> (typeof _vehicle) >> "displayName");
      hint parseText format  ["<t color='#42f456'>Du hast dein Fahrzeug verkauft. </br>%1</t></br><t color='#f48941'>Käufer: %2 </t></br><t color='#f44141'>Verkaufspreis: %3</t>",_VehName,_nameAcheteur,_value];
      Alles anzeigen

      fn_receivedVeh.sqf

      Code
      #include "..\script_macros.hpp"
      /*
          File: fn_receivedVeh.sqf
          Author: Joaquine
          Description :
          Tous est finalisé, Donc on dit au vendeur sont dut !
      */
      params [
          ["_ownerLast",objNull,[objNull]],
          ["_vehicle",objNull,[objNull]],
          ["_value",0,[0]]
      ];
      
      diag_log format["UID NOW: %1 | UID OLD: %2",(getPlayerUID player),(getPlayerUID _ownerLast)];
      
      // Recupere le nom du véhicule
      _vehName = getText(configFile >> "CfgVehicles" >> (typeof _vehicle) >> "displayName");
      // Demande si oui ou non il veux acheter
      // Flic & Médic
      if (playerSide in [west,independent]) exitWith {
          hint "Du kannst diese Aktion nicht ausführen !";
      };
      _action = [
              format ["%1 möchte seinen %2 für %3$ verkaufen.",name _ownerLast,_vehName,[_value] call life_fnc_numberText],
                   "Achat de véhicule",
              localize "STR_Global_Yes",
              localize "STR_Global_No"
      ] call BIS_fnc_guiMessage;
      //Si oui
          //Check si assez de sous sur lui
          if (CASH < _value) exitWith {
              hint parseText format ["<t color='#f44141'>Du hast nicht genug Bargeld. </br> Dir fehlt %1$</t>",_value];
          };
      if (_action) then {
          //Envoie info au vendeur
          [player,_vehicle,_value] remoteExecCall ["life_fnc_returnVente",_ownerLast];
          //Déduction cash + save
          CASH = CASH - _value;
          [0] call SOCk_fnc_updatePartial;
          //Ajout des clefs au porte clefs
          if (!(_vehicle in life_vehicles)) then {
              life_vehicles pushBack _vehicle;
              _dbInfo = _vehicle getVariable "dbInfo";
              _plate = (_dbInfo select 1);
              //Always handle key management by the server
              [getPlayerUID player,playerSide,_vehicle,1] remoteExecCall ["TON_fnc_keyManagement",2];
              //Envoie pour preparez la requete pour changer owner du véhicule en DB
              [_plate,(getPlayerUID player),(getPlayerUID _ownerLast),(typeof _vehicle)] remoteExecCall ["DB_fnc_changeVehKey",2];
      
              hint parseText format ["<t color='42f456'>Du Bist der Besitzer eines: %1</t>", _vehName];
          };
      } else {
          // Si non :
          hint format ["Du hast den %1 von %2 nicht gekauft.", _vehName, name _ownerLast];
      };
      Alles anzeigen


      Spoiler anzeigen

      EDIT: Über die Debugkonsole ausprobiert... ohne Fehler

      Code
      _plate = "115516"; 
      _uidnew = "76561198255301431"; 
      _uidold = "76561198001565601"; 
      _type = "O_Truck_03_device_F"; 
       
      _query = format ["UPDATE vehicles SET pid='%2' WHERE plate='%1' and pid ='%3' and classname = '%4'", _plate,_uidnew,_uidold,_type];  
      [_query,1] call DB_fnc_asyncCall;

      So viel bleibt ja dann eigentlich nicht mehr über... Dann kann es ja eigentlich nur noch an den params liegen?

    • Neue Farmroute -> Verarbeiten funktioniert nicht.

      • Harry Knueller
      • 27. März 2021 um 20:35

      Alles klar, danke schön !

    • Neue Farmroute -> Verarbeiten funktioniert nicht.

      • Harry Knueller
      • 27. März 2021 um 20:30
      Zitat von Deathman

      this addAction[localize"STR_Process_paket",life_fnc_processAction,"paket",0,false,false,"",' life_inv_paket_unrefined > 0 && !life_is_processing && !life_action_inUse',5]; this addAction[format ["%1 ($%2)",localize (getText(missionConfigFile >> "Licenses" >> "paket" >> "displayName")), [(getNumber(missionConfigFile >> "Licenses" >> "paket" >> "price"))] call life_fnc_numberText],life_fnc_buyLicense,"paket",0,false,false,"",' !license_civ_paket && playerSide isEqualTo civilian ',5];

      Zitat von Deathman

      Ich mache es immer so das diese class ->> paket_refined mit der variable = "paket_refined"; Über ein Stimmt und nicht verschieden ist das verwird meiner Meinung nach bissel

      Bitte Pass auch auf das du das ganze auch richtig in die Stringtable einträgst

      Vielen Dank für deine Hilfe ! Hat super geklappt.

      Für was steht die "5" am ende der Action?

      Code
      [...]playerSide isEqualTo civilian ',5]; 

      Kaum war die 5 drinne und die Variablen leicht angepasst ging es... 8|

    • Neue Farmroute -> Verarbeiten funktioniert nicht.

      • Harry Knueller
      • 27. März 2021 um 18:18

      Nabend zusammen,

      ich wende mich an euch, da ich so langsam den Wald vor lauter Bäumen nicht mehr sehen kann.

      Es wird mit Sicherheit nur eine Kleinigkeit verkehrt sein, aber ich sehe es einfach nicht...

      - Abbauen funktioniert
      - Lizenz kaufen funkioniert
      - verarbeitete Items verkaufen funktioniert

      - Verarbeiten funktioniert nicht
      - - Add Action wird nicht mal angezeigt

      Hoffe ihr könnt mir weiterhelfen ;(



      Hier mal meine Schnipsel:

      stringtable.xml

      Code
              <Key ID="STR_Item_paket_unrefined">
                  <Original>paket unrefined</Original>
                  <German>leeres Paket</German>
              </Key>
              <Key ID="STR_Item_paket_refined">
                  <Original>paket refined</Original>
                  <German>verpacktes Paket</German>
              </Key>
      
      ...
      
              <Key ID="STR_Shops_paket">
                  <Original>paket Trader</Original>
                  <German>Paketstation</German>
              </Key>
      
      ...
      
              <Key ID="STR_MAR_Paket_Trader">
                  <Original>Paket Trader</Original>
                  <German>Paketstation</German>
              </Key>
      Alles anzeigen

      Config_vItems.hpp

      Code
          class paket_unrefined {
              variable = "paketUnrefined";
              displayName = "STR_Item_paket_unrefined";
              weight = 3;
              buyPrice = -1;
              sellPrice = -1;
              illegal = false;
              edible = -1;
              icon = "icons\ico_sand.paa";
          };
          class paket_refined {
              variable = "paketRefined";
              displayName = "STR_Item_paket_refined";
              weight = 1;
              buyPrice = -1;
              sellPrice = 3200;
              illegal = false;
              edible = -1;
              icon = "icons\ico_sand.paa";
          };    
      Alles anzeigen

      Config_Licenses.hpp

      Code
          class paket {
              variable = "paket";
              displayName = "STR_License_paket";
              price = 20000;
              illegal = false;
              side = "civ";
          };

      Config_Gather.hpp

      Code
              class paket_unrefined {
                  amount = 3;
                  zones[] = { "paket_1" };
                  item = "";
                  zoneSize = 15;
              };

      Config_Process.hpp

      Code
          class paket {
              MaterialsReq[] = {{"paket_unrefined",1}};
              MaterialsGive[] = {{"paket_refined",1}};
              Text = "STR_Process_paket";
              //ScrollText = "Process Oil";
              NoLicenseCost = 1200;
          };

      Händler

      Code
      this allowDamage false; this enableSimulation false; this addAction[localize"STR_MAR_paket_Trader",life_fnc_virt_menu,"paket"];

      Verarbeiter

      Code
      this allowDamage false; this enableSimulation false; this addAction[localize"STR_Process_paket",life_fnc_processAction,"paket",0,false,false,"",'life_inv_paketUnrefined > 0 && !life_is_processong && !life_action_inUse']; this addAction[format ["%1 ($%2)",localize (getText(missionConfigFile >> "Licenses" >> "paket" >> "displayName")), [(getNumber(missionConfigFile >> "Licenses" >> "paket" >> "price"))] call life_fnc_numberText],life_fnc_buyLicense,"paket",0,false,false,"",'!license_civ_paket && playerSide isEqualTo civilian'];

      Dateien

      arma3server_x64_2021-03-27_14-52-06.rpt 85,45 kB – 113 Downloads

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von Native-Servers.com? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Benutzerkonto erstellen

    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. Verhaltensregeln
    3. Datenschutzerklärung
    4. Impressum
    5. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™