1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Di: 08 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. DerL30N

    Beiträge von DerL30N

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 26. Februar 2018 um 00:40
      Zitat von Stig

      Unterschätze Arma nicht :P https://community.bistudio.com/wiki/Category:Command_Group:_Math

      https://community.bistudio.com/wiki/sqrt

      https://community.bistudio.com/wiki/a_%5E_b

      Quadrieren könntest du übrigens auch mit a*a, dafür braucht man dann nicht umbedingt einen zusätzlichen Scriptbefehl für ^^

      Danke, habe ich Gestern Morgen auch schon bei Google gefunden, Arma hat ja richtig was auf Kasten :thumbup:

      Zitat von blackfisch

      Überfordere die Leute nicht ^^ Trend und Arithmetisches Mittel reichen - denk doch auch mal an den Otto-Normal-User :D^^

      Hahahaha, ja die Grenzwerte sind ja nicht zum Farmen gedacht, wobei sie eine gute Übersicht gibt, wie weit der Preis denn vom Durchschnitt abweichen wird. Natürlich auf Basis der letzen Werte gemessen. Jede Minute macht der Server einen Eintrag, den der User sich mit dem "einloggen" holen kann. Ja, wenn du den Börsendialog öffnest, melde ich dich via Script beim Server an, dass du Infos erhalten möchtest ^^. Nur habe ich aktuell ein Problem und zwar möchte ich all diese Dinge temporär lassen, sprich nicht in eine DB hauen, demnach habe ich keinen verlässlichen Zeitstempel in Bezug auf Echtzeit. Ich könnte es natürlich in die DB haun und dann da den Zeitstempel drüber laufen lassen, aber dass muss nun wirklich nicht sein...

      Naja lange Rede kurzer Sinn, ich arbeite mit diag_tickTime, nur kann man eine erfasste Zeit mit diag_tickTime nicht von der diag_tickTime abziehen, bzw. kann man schon, nur kommen da verwirrende Ergebnisse raus, mit denen ich nicht mehr arbeiten kann...

      Ich möchte nur ungerne ein eigenes Zeitsystem schaffen, weil ich den Server nicht unnötig belasten will...

      Also das Menü sieht mittlerweile auch schon wieder etwas anders aus... ist noch etwas kleines hinzugekommen... eine "Spielerei" :D

      Also ich arbeite wie folgt... Hier wird die aktuelle Zeit für einen Trade erfasst ( schon Serverseitig, der Client schickt nur das notwendigste )

      Code: Hier passiert die Anmeldung des Trades vom Server am Börsen Markt
      {        
              private _resource = _this select 2;
              private _moneySet = _this select 3;
              private _trend = _this select 4;
              if((isNil "_resource") OR (isNil "_moneySet")) exitWith {};
              
              private _index = -1; 
              
              { 
                  _index = _index + 1;
                  if(_resource isEqualTo (_x select 0)) exitWith {}; 
                  
              } forEach DYNMARKET_sellarraycopy; 
              
              private _startValue = (DYNMARKET_sellarraycopy select _index)select 1;
              if((isNil "_startValue") or !(_startValue isEqualType 0)) exitWith {};
              
              private _tradeID = 1 + (TRADE_IDs select ((count TRADE_IDs) - 1));
              TRADE_IDs pushBack _tradeID;
              ACTIVE_TRADES pushBack [(diag_tickTime),[_trader,(owner _trader),_resource,_startValue,_moneySet,_tradeID,_trend]];
              diag_log format["### DYNMARKET >> Trade #%7 opened: %1 (%2): %3 $%4 for $%5 trend %6",(name _trader),(getPlayerUID _trader),_resource,_startValue,_moneySet,_trend,_tradeID];
          };
      Alles anzeigen

      Wie man sieht nehme ich die diag_tickTime, wenn ich mit dieser Festgehaltenen Zeit nun im Anschluss rechen/arbeiten möchte, wird diese zur aktuellen Zeit. Ich komme mir dabei extrem verarscht vor, aber gut. Ich habe das mal ausgelesen, dann steht bei der im array z.B. 1200 und die aktuelle diag_tickTime sagt auch 1200. Wobei die aus dem array aber eigentlich zum Zeitpunkt 1100 festgehalten wurde, nur so als Beispiel.

      Code: Hier geht der Server die aktuellen Trades durch und soll gucken, wann welcher ausläuft
      {
              _index = _index + 1;
              private _startTime = _x select 0;
              private _info = _x select 1;
              _diff = _startTime - (diag_tickTime);
              _diff2 = _diff / 1000 + 300;
              _diff3 = round _diff2;
              
              if(_diff3 isEqualTo 0) then {
                  [3,(_info select 0),(_info select 1),(_info select 2),(_info select 3),(_info select 4),(_info select 5),(_info select 6)] call TON_fnc_updateTrader;
                  ACTIVE_TRADES deleteAt _index;
                  diag_log "### DYNMARKET >> calculation heart >> removed index";
              } else {
                  [4,_diff3,(_info select 2),(_info select 6),(_info select 3),(_info select 4)] remoteExec ["life_fnc_update",(_info select 1)];
                  diag_log format["#%1 %2s",(_info select 5),_diff3];
              };
          } forEach ACTIVE_TRADES;
      Alles anzeigen

      nunja, um zusehen, was in dem Array wo sitzt, werft einen Blick in die vorletzte Zeile über der abschließenden geschweiften Klammer... wie man sieht versuche ich hier verzweifelt in unnötig viele Schritten zu verhindern, dass er die Zeit aus dem Array einfach überschreibt. Aber er tut es trotzdem :(

      Ob er sie wirklich überschreibt kann ich nicht sagen, vlt muss ich es mal mit floor probieren statt mit round. Ich habe herausgefunden, dass beim runden das Ergebnis beim Substrahieren 0 ist, hingegen ohne runden aber so klein im Nachkommabereich, dass ich es nicht nutzen kann.

      Erläuterung zum Dividieren durch 1000 und addieren mit 300: Ich beschränke den Trade auf 5 Minuten, also 300 Sekunden. Später kann man das vlt. selber einstellen, ist mir dann aber aktuell doch zu komplex. Naja und um von ms auf sec zu kommen muss man die ms durch 1000 teilen ^^

      Naja also wie man sieht muss ich mir etwas einfallen lassen. Ich habe mir das ganze als Wochenendprojekt vorgestellt aber dieses Problem hat mich voll und ganz aus der Bahn geworfen.

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 25. Februar 2018 um 01:47
      Zitat von Lucian

      ArmaAtWar hatte ein Script was einen FPS Graphen Zeichnet.

      Kannst ja mal bei denen im SrcCode schauen.

      Danke, aber ich glaube, dass ich vorerst keine Graphen machen möchte, möchte erstmal eine vernünftige Basis schaffen. Als nächster Schritt kommt ja jetzt erstmal ein Tradingsystem... wenn dass dann alles läuft, schau ich mir das vlt. mal an...

      Aber trotzdem Danke!

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 25. Februar 2018 um 00:12

      So ich habe mich heute mal ran gesetzt und den ersten Teil vom Dialog erstellt, indem ich einen Teil vom oben genannten Marktsystem übernommen und verändert habe. Desweiteren habe ich die Datenverarbeitung für den Marktverlauf fertiggestellt, sodass auf diese vernünftig zugegriffen werden kann.

      Ich lasse einfach mal Bilder sprechen, dann seht ihr schon direkt, was sich geändert hat, bzw. welche neuen Funktionen hinzu gekommen sind.

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 24. Februar 2018 um 13:36

      Ich möchte mal ein Update zum Fortschritt der Entwicklung geben.

      Auf Basis des Scripts [TUTORIAL][Altis Life 4.4r3] RyanTTs Dynamic Market System habe ich es schon so hingehend erweitert/verändert, dass ein neuer Array mit Daten über die Preise genutzt wird, um entsprechend ein Diagramm aus einer Tabelle zu erstellen.

      D.H. ich greife mit diesem neuen Array die Verkaufspreise auf, um diese dann entsprechend analytisch zu verarbeiten, sodass man hinterher eine schöne Tabelle bekommt, aus der man dann den Preisverlauf lesen kann und zusätzlich noch weitere Interessante Informationen bekommt.

      Wobei ich mir hier nicht sicher bin, in wie Fern man im SQF-Bereich komplexe mathematische Funktionen oder Gleichungen lösen kann. Interessant für mich wäre dabei, dass man die Wurzel ziehen kann und auch mit einem beliebigen Exponenten entsprechend Hochrechnen kann.

      Ich plane also, dass folgende Informationen mathematisch ermittelt werden.

      Median - sprich Mittelwert (bin mir hier aber unsicher, ob man ihn überhaupt benötigt, da Punkt 3 viel präzisere Angaben gibt)

      Arithmetisches Mittel auch Durchschnitt genannt - zeigt einen Grenzwert auf längere Zeit auf, an dem man sich orientieren kann, ob der Preis steigen oder fallen wird. Mathematisch am einfachsten umzusetzen.

      Empirische Standardabweichung - gibt Informationen zur "Streuung" an, sprich eine Abweichung in zwei Richtungen vom Durchschnitt.

      Beim letzen Punkt muss ich auf die Quadratwurzel und das Quadrieren selber zurückgreifen, jedoch bin ich mir nicht sicher, ob sich das in Arma überhaupt machen lässt.

      Also das ist der Stand der Dinge zum jetzigen Zeitpunkt. Wenn jemand Ideen hat, oder weiß wie genau man in Arma Quadrieren kann und ob man das überhaupt kann, wäre ich über eine Rückmeldung sehr Dankbar.

      VG Leon

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 24. Februar 2018 um 11:25
      Zitat von Stig

      Du könntest einen Dialog erstellen, der aus vielen kleinem Rechtecken besteht die genau die Größe und Position der Pixel vom Screen haben. Dann kannst du sozusagen auf einzelne Pixel malen, indem du die Farbe der Controls änderst.

      Okay danke für die Idee. Ist finde ich nur extrem umständlich, da ich es ja automatisieren möchte. Ich könnte mir vorstellen, dass es gut was an Performance wegzieht, wenn man so oft, so viele Kästchen generieren/rechnen muss...

      Aber die Idee mit den Balken finde ich Toll! ich könnte natürlich auch ein Balkendiagramm erstellen. Danke!

    • [TUTORIAL][V1.1] "Professional" Loading und Spawn Screen mit Costum Background

      • DerL30N
      • 24. Februar 2018 um 01:26
      Zitat von blackfisch

      Ich schau die Tage nochmal drüber, hab da gestern selbst paar Fehler gemerkt ;) Schau mal durch die Kommentare, alle Probleme müssten dort aber gefixt worden sein :P

      Ja die Kommentare habe ich selber schon alle durch ^^ Nunja, es war meine eigene Dummheit, jetzt läuft alles. Eintrag in der init.sqf in der live_server vergessen. Habe nur 2 Stunden gebraucht um das zu bemerken... ich war auch schon mal besser hahahaha

    • [TUTORIAL][V1.1] "Professional" Loading und Spawn Screen mit Costum Background

      • DerL30N
      • 24. Februar 2018 um 01:14
      Zitat von Kuchenplatte

      Laut Recherche ist alles jetzt gut angekommen von dir :)

      Ich ziehe meinen Hut ;)

      Danke, besten Dank dafür! leider bekomme ich das [TUTORIAL][Altis Life 4.4r3] RyanTTs Dynamic Market System nicht zum laufen :( ich möchte auf dieser Basis eine Börse bauen, an der man dann wie ein Broker Geld verdienen kann... nur will das Script einfach nicht laufen... :(

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 23. Februar 2018 um 23:22
      Zitat von taker9999

      Das ist ne tolle idde. Wenn das möglich ist wird es dann hier im Forum veröffentlicht also das Komplette System?

      Ja klar, auf jeden Fall wird es das! Nur müsste man erstmal ein Diagramm erstellen können....

      Aber als Basis würde ein System wie DynMarket dienen

    • Diagramme und Graphen im Arma 3 entw. v. erweitertem Marktsystem aka. Börse

      • DerL30N
      • 23. Februar 2018 um 23:15

      Guten Abend,

      mir ist gerade eben eine Idee gekommen, womit man auf eine völlig neue Weise in Altis Life Geld verdienen könnte. Jedoch benötige ich, bzw. wäre es von Vorteil, wenn man eine art Graphen zeichnen könnte oder eine art Diagramm.

      Grundfunktion des Scripts:

      Ich nehme mal ein dynamisches Marktsystem als Beispiel. Spieler farmen Geld mit den verschiedensten Rohstoffen, desto mehr Einheiten von einem Rohstoff im Umlauf sind, desto weniger ist dieser Rohstoff wert. Umgekehrt wäre es eine Wertsteigerung.

      Nun werden alle Änderungen gespeichert, zum Beispiel von den letzen 25 Minuten. Nun möchte ich eine art Diagramm oder Graph erstellen, welcher z.B. in 1min. Schritten den Wert von dem Rohstoff angibt.

      Siehe Bild:

      Nun komme ich aber zu meiner Frage, ist möglich, eine art Graph in Arma 3 zu erstellen oder darzustellen ? oder überhaupt eine art Diagramm ? Es müssten ja lediglich Linien erstellt werden, welche z.B. die Punkte P1 (0|30) und P2 (1|27) verbinden.

      Ich würde mich über Antworten sehr freuen.

    • [TUTORIAL][V1.1] "Professional" Loading und Spawn Screen mit Costum Background

      • DerL30N
      • 23. Februar 2018 um 21:53

      Kuchenplatte Danke! Auch wenn ich das vor knapp einem Jahr erstellt habe, freut es mich doch zu sehen, dass gut ankommt.

    • [TUTORIAL][V1.1] "Professional" Loading und Spawn Screen mit Costum Background

      • DerL30N
      • 23. Februar 2018 um 21:17
      Zitat von Kuchenplatte

      Gibt es davon ein Screenshot ?

      Zitat von DerL30N

      sind doch oben 6 Stück angehängt

    • [TUTORIAL][V1.1] "Professional" Loading und Spawn Screen mit Costum Background

      • DerL30N
      • 23. Februar 2018 um 20:14
      Zitat von powerafro2

      Es fehlt die fontM. Sonst funktioniert es super! Danke für das Tutorial :)

      Danke, habe das Problem behoben, habe die Zip-Datei schon geupdatet. Gehe in die pro_loading.hpp, Zeile 69 und 82 steht font = FontM; dies kannst du mit // auskommentieren oder löschen.

    • [TUTORIAL][V1.1] "Professional" Loading und Spawn Screen mit Costum Background

      • DerL30N
      • 23. Februar 2018 um 18:55

      Hallo liebe Community!

      Ich möchte euch heute ein Script von mir vorstellen, welches ich vor einiger Zeit auf Anfrage erstellt habe. Dieses Script wurde auf der Basis von Altis Life 5.0 erstellt und verwendet. Es ist aber rein theoretisch auf allen Versionen einbaubar.

      Was bietet euch mein Script: Wenn ihr den Server betretet, dann habt ihr nun einen professionell wirkenden Ladebildschirm, welcher dem User Feedback gibt. Anstelle des schwarzen Hintergrunds erscheint nun ein völlig neues Menü. Dieses Menü ist auch passend zum mitgeliefertem Spawnmenü. Diese beiden Menüs sind aufeinander abgestimmt.

      Der Ladebildschirm ist funktionell!! Er spiegelnd (sofern korrekt installiert) den Ladevorgang vom Script "Altis Life" oder "Tanoa Life" wieder.

      Wenn der Client also nun fertig geladen ist, so kann der Spieler zum Spawnmenü vorrücken oder direkt wieder ins Leben einsteigen.

      Ich lasse hier mal ein paar Bilder sprechen lassen...


      Installationsanleitung: An einigen Stellen wird die Installation sehr umfangreich, von daher IMMER vorher ein BACKUP MACHEN!!

      Ich habe im Anhang eine Zip-Datei hochgeladen, diese beinhaltet alle nötigen Files.

      1. Schritt: Ergänzt folgenden Code-Schnipsel in eurer description.ext irgendwo zwischen der 1. und 4. Zeile.

      Code: description.ext
      Briefing = 0; // Add these at the top of the file !! somewhere between first and fifth line!

      2. Schritt Functions.hpp fügt die Klasse "Dialog_Controls" bei "tag = "life";" ein

      Code: Functins.hpp
      class Life_Client_Core {
          tag = "life";
          
          class Dialog_Controls {
              file = "dialog\function";
              class proLoading {};
              class proLoadingText {};
          };
      };

      3. Schritt InitPlayerLocal.sqf fügt folgendes über [] execVM "core\init.sqf"; ein

      Code: initPlayerLocal.sqf
      [] execVM "dialog\function\pro_loading.sqf"; // <- These line is Important ! Add it above init.sqf!!

      Sollte dann so aussehen:

      Code: initPlayerLocal.sqf
      #include "script_macros.hpp"
      /*
          File: initPlayerLocal.sqf
          Author:
      
          Description:
          Starts the initialization of the player.
      */
      if (!hasInterface && !isServer) exitWith {
          [] call compile preprocessFileLineNumbers "\life_hc\initHC.sqf";
      }; //This is a headless client.
      
      #define CONST(var1,var2) var1 = compileFinal (if (var2 isEqualType "") then {var2} else {str(var2)})
      #define LIFE_SETTINGS(TYPE,SETTING) TYPE(missionConfigFile >> "Life_Settings" >> SETTING)
      
      CONST(BIS_fnc_endMission,BIS_fnc_endMission);
      if (LIFE_SETTINGS(getNumber,"spyGlass_toggle") isEqualTo 1) then {[] execVM "SpyGlass\fn_initSpy.sqf";};
      
      [] execVM "dialog\function\pro_loading.sqf"; // <- These line is Important ! Add it above init.sqf!!
      [] execVM "core\init.sqf";
      Alles anzeigen

      4. Schritt script_macros.hpp fügt folgendes ein

      Code: script_macros.hpp
      //ProLoading Macros
      #define LDGBSE (uiNamespace getVariable "pro_loading")
      #define LDGBAR(var) (LDGBSE displayCtrl 44201)progressSetPosition var;
      #define LDGRED (LDGBSE displayCtrl 44201)ctrlSetTextColor [0.79,0,0,0.7];
      #define LDGTXT(var) (LDGBSE displayCtrl 38501)ctrlSetStructuredText parseText format["<t align='center'>%1...</t>",var];
      #define LDGVAR(var1,var2) LDGBAR(var1); LDGTXT(var2);
      #define LDGEXT(var) (LDGBSE displayCtrl 2400)ctrlEnable var;

      5. Schritt stringtable.xml fügt folgendes Paket zum Projekt "Altis Life RPG" hinzu

      Code: stringtable.xml
      <Package name="pro_loading">
              <Key ID="STR_lloading_exit">
                  <Original>Abort</Original>
                  <Czech></Czech>
                  <Spanish>Espalda</Spanish>
                  <Russian></Russian>
                  <German>Abbrechen</German>
                  <Italian>Indietro</Italian>
                  <French>Arrière</French>
                  <Portuguese>Costas</Portuguese>
                  <Polish></Polish>
              </Key>
              <Key ID="STR_lloading_ready">
                  <Original>Ready to go</Original>
                  <Czech></Czech>
                  <Spanish></Spanish>
                  <Russian></Russian>
                  <German>Bereit zum Spielen</German>
                  <Italian></Italian>
                  <French></French>
                  <Portuguese></Portuguese>
                  <Polish></Polish>
              </Key>
          </Package>
      Alles anzeigen

      Folgende Files beinhalten originalen Alits Life 5.0.0 standart code, welcher an einigen passagen geändert wurde!

      Ich empfehle hier kein blindes copy & paste sondern kluges kopieren, FALLS andere Scripts vorinstalliert sind!

      Ab hier können die Datein aus der Zip File genutzt werden, ich empfehle aber dem Tutorial weiter zu folgen...

      Wer sich die Dateien aber selber anschauen möchte, kann dies tun, alle zu ergänzenden Code-Schnipsel sind mit "// Add these line" markiert

      \core

      6. Schritt fn_initCiv.sqf füge folgendes in Zeile 22 und 38 ein

      Code: fn_initCiv.sqf
      closeDialog 1;// Add these line

      7. Schritt fn_initCop.sqf füge folgendes in die Zeilen 12-14 und 21-23 ein

      Code: fn_initCop.sqf
      closeDialog 1; // Add These 3 Lines : 12,13,14
          0 cutText["","BLACK FADED"];
          0 cutFadeOut 9999999;

      es sollte dann wie folgt aussehen

      Code: fn_initCop.sqf
      #include "..\script_macros.hpp"
      /*
          File: fn_initCop.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Cop Initialization file.
      */
      waitUntil {!(isNull (findDisplay 46))};
      
      if (life_blacklisted) exitWith {
          closeDialog 1; // Add These 3 Lines : 12,13,14
          0 cutText["","BLACK FADED"];
          0 cutFadeOut 9999999;
          ["Blacklisted",false,true] call BIS_fnc_endMission;
          sleep 30;
      };
      
      if (!(str(player) in ["cop_1","cop_2","cop_3","cop_4"])) then {
          if ((FETCH_CONST(life_coplevel) isEqualTo 0) && (FETCH_CONST(life_adminlevel) isEqualTo 0)) then {
              closeDialog 1; // Add These 3 Lines : 21,22,23
              0 cutText["","BLACK FADED"];
              0 cutFadeOut 9999999;
              ["NotWhitelisted",false,true] call BIS_fnc_endMission;
              sleep 35;
          };
      };
      
      player setVariable ["rank",(FETCH_CONST(life_coplevel)),true];
      [] call life_fnc_spawnMenu;
      waitUntil{!isNull (findDisplay 38500)}; //Wait for the spawn selection to be open.
      waitUntil{isNull (findDisplay 38500)}; //Wait for the spawn selection to be done.
      Alles anzeigen

      8. Schritt fn_initMedic.sqf füge folgendes in Zeile 12-14 ein

      Code: fn_initMedic.sqf
      closeDialog 1; // Add These 3 Lines : 12,13,14
          0 cutText["","BLACK FADED"];
          0 cutFadeOut 9999999;

      sollte dann wie folgt aussehen

      Code: fn_initMedic.sqf
      #include "..\script_macros.hpp"
      /*
          File: fn_initMedic.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Initializes the medic..
      */
      waitUntil {!(isNull (findDisplay 46))};
      
      if ((FETCH_CONST(life_medicLevel)) < 1 && (FETCH_CONST(life_adminlevel) isEqualTo 0)) exitWith {
          closeDialog 1; // Add These 3 Lines : 12,13,14
          0 cutText["","BLACK FADED"];
          0 cutFadeOut 9999999;
          ["Notwhitelisted",false,true] call BIS_fnc_endMission;
          sleep 35;
      };
      
      [] call life_fnc_spawnMenu;
      waitUntil{!isNull (findDisplay 38500)}; //Wait for the spawn selection to be open.
      waitUntil{isNull (findDisplay 38500)}; //Wait for the spawn selection to be done.
      Alles anzeigen

      9. Schritt init.sqf Diese datei ist extrem unüberschaubar, aber als Faustregel gillt: 0 cutText[localize "STR_Init_ClientSetup","BLACK FADED"]; und 0 cutFadeOut 9999999; wurden durch ähnlichen code ersetzt: LDGVAR((0.20),(localize "STR_Init_ClientSetup"));

      Ersetzt folgendes in der Init.sqf, sodass es nachher so ausschaut wie im Beispiel

      Code: init.sqf
      #include "..\script_macros.hpp"
      Code: init.sqf
      LDGVAR((0.20),(localize "STR_Init_ClientSetup"));
      Code: init.sqf
      LDGVAR((0.40),(localize "STR_Init_ServerReady"));
      Code: init.sqf
      if (life_server_extDB_notLoaded) exitWith {
          //(LOADINGBSE displayCtrl 44201)ctrlSetTextColor [0.79,0,0,0.7];
          LDGVAR((1),(localize "STR_Init_ExtdbFail"));
          LDGRED;
      };
      Code: init.sqf
      LDGVAR((0.90),(localize "STR_Init_ClientFinish"));
      Code: init.sqf
      LDGVAR((1),(localize "STR_lloading_ready"));

      Beispiel findet ihr in der Zip-Datei, ich habe maximal 20.000 Zeichen zur Verfügung.

      \core\session

      10. Schritt fn_dataQuery.sqf fügt folgendes in Zeile 16 ein

      Code: fn_dataQuery.sqf
      LDGBAR(0.60); // These two lines are new !! 16,17
      (LDGBSE displayCtrl 44202)ctrlSetStructuredText parseText format["<t align='center'>%1...</t>",(format[localize "STR_Session_Query",_uid])];

      sollte dann so aussehen

      Code: fn_dataQuery.sqf
      #include "..\..\script_macros.hpp"
      /*
          File: fn_dataQuery.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Starts the 'authentication' process and sends a request out to
          the server to check for player information.
      */
      private ["_uid","_side","_sender"];
      if (life_session_completed) exitWith {}; //Why did this get executed when the client already initialized? zensiert arma...
      _sender = player;
      _uid = getPlayerUID _sender;
      _side = playerSide;
      
      LDGBAR(0.60); // These two lines are new !! 16,17
      (LDGBSE displayCtrl 44202)ctrlSetStructuredText parseText format["<t align='center'>%1...</t>",(format[localize "STR_Session_Query",_uid])];
      
      if (life_HC_isActive) then {
          [_uid,_side,_sender] remoteExec ["HC_fnc_queryRequest",HC_Life];
      } else {
          [_uid,_side,_sender] remoteExec ["DB_fnc_queryRequest",RSERV];
      };
      Alles anzeigen

      11. Schritt fn_insertPlayerInfo.sqf füge folgendes in Zeile 12

      Code: fn_insertPlayerInfo.sqf
      LDGVAR((0.85),(localize "STR_Session_QueryFail")); // Add These line !!!

      sollte dann so aussehen

      Code: fn_insertPlayerInfo.sqf
      if (life_session_completed) exitWith {}; //Why did this get executed when the client already initialized? zensiert arma...
      
      LDGVAR((0.85),(localize "STR_Session_QueryFail")); // Add These line !!!
      
      private ["_bank"];
      
      switch (playerSide) do {
          case west: {
              _bank = LIFE_SETTINGS(getNumber,"bank_cop");
          };

      12. Schritt fn_requestReceived.sqf füge folgendes in Zeile 15-19 ein

      Code: fn_requestReceived.sqf
      if (life_session_tries > 3) exitWith {
          LDGVAR((1),(localize "STR_Session_Error")); // Add these two Line 15,16
          LDGRED;
      };
      
      LDGVAR((0.80),(localize "STR_Session_Received")); // Add these line !!

      sollte dann so aussehen

      Code: fn_requestReceived.sqf
      ....
      private _count = count _this;
      life_session_tries = life_session_tries + 1;
      if (life_session_completed) exitWith {}; //Why did this get executed when the client already initialized? zensiert arma...
      if (life_session_tries > 3) exitWith {
          LDGVAR((1),(localize "STR_Session_Error")); // Add these two Line 15,16
          LDGRED;
      };
      
      LDGVAR((0.80),(localize "STR_Session_Received")); // Add these line !!
      
      //Error handling and junk..
      if (isNil "_this") exitWith {[] call SOCK_fnc_insertPlayerInfo;};
      if (_this isEqualType "") exitWith {[] call SOCK_fnc_insertPlayerInfo;};
      ....
      Alles anzeigen

      \dialog

      13. Schritt MasterHandler.hpp Codeschnipsel bitte direkt nach der commen.hpp einfügen

      Code: MasterHandler.hpp
      #include "pro_loading.hpp"

      14. Schritt pro_loading.hpp ist teil der neuen Dateien, welche durch das Script dazu kommen. Bitte es der Zip-Datei in das Verzeichnis "\dialog" kopieren.

      15. Schritt spawnSelection.hpp Diese Datei löschen und aus der MasterHandler.hpp entfernen

      \dialog\function

      16. Schritt

      Folgende Dateien kommen neu hinzu und können daher direkt aus der Zip-Datei kopiert werden.

      fn_proLoading.sqf

      fn_proLoading,sqf Hier könnt ihr euren anzuzeigenden Text bearbeiten

      pro_loading.sqf

      fn_spawnConfirm.sqf

      fn_spawnMenu.sqf

      fn_spawnPointSelected.sqf

      27. Schritt alles speichern nachdem ihr zuvor ein Backup gemacht habt :) und mir dann schreiben, welche Version ihr nutzt.

      In der Zip-Datei ist auch extra noch mal eine Installations-Anleitung enthalten, falls diese im Forum nicht verständlich ist.

      Ich wünsche euch ein schönes Wochenende und viel Spaß mit dem Script!!!

      Bei Fragen oder Problemen bitte einfach hier im Beitrag melden, Danke!

      Dateien

      pro_loadingscreen.zip 16,83 kB – 755 Downloads
    • [Tutorial][Message System][V1.1] Alternative für Hints & Co.

      • DerL30N
      • 5. Februar 2018 um 20:05
      Zitat von Leopart1

      Hey,

      ist es auch möglich, dass sich die Nachrichten übereinander legen können?

      Mir geht es hierbei um z.B. das Farmen von Stoffen, da ich derzeit ja jede einzelne Nachricht abwarten muss, um zehen ob mein Inventar voll ist.

      Ja das ist tatsächlich ein Problem.... ein Prioritätensystem hatte ich mir nie Überlegt, wobei es einfach und simpl einzubauen wäre...o.A. eine Funktion nachrichten als unwichtig zu markieren, sodass man sie skippen kann...

      Also ich kann dir empfehlen es mit TitleText löst oder halt mit systemChat.

      Aber vlt bastel ich hier noch mal etwas dran rum... bin aber halt schon seit einer weile etwas busy und das Hobby kommt da leider kurz.

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

      • DerL30N
      • 31. Januar 2018 um 22:29

      Webix kein Problem gerne. Freut mich, dass es jetzt läuft.

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

      • DerL30N
      • 31. Januar 2018 um 22:00

      Webix okay ich habe dir gerade einen Komplexen Lösungsansatz geschickt, aber eine simple Frage, hast du das Update gemacht ?

      Falls nicht schau


      Zitat von DerL30N

      Behebt das Problem, dass das HUD nach einiger Zeit oder durch Unfälle verschwindet

      Geht dazu in das Missionsverzeichnis und öffnet die Datei fn_fisVehInfo.sqf im Ordner derleon und dann vis

      Ersetzt dort die Zeile 86 mit 18 cutRsc["vehInfo","PLAIN"]; und die Zeile 274 mit 18 cutText ["","PLAIN"];


      2.

      Geht in die fn_vis_setup.sqf, dort in Line 20 steht folgendes :


      [0,false] spawn life_fnc_vis_vehInfo;


      warum auch immer ist das die alte Variante, die neue sieht so aus :


      [0,false] spawn life_fnc_visVehInfo;

      Alles anzeigen

      Denn genau das hat ein ähnliches Problem behoben...

    • [Tutorial] VIS Vehicle Information System | Script für Infos über Tankinformationen, Reichweite, Ø Verbrauch, etc.

      • DerL30N
      • 28. Januar 2018 um 13:00
      Zitat von MiamiRize

      warum ist realtiv einfach ich habe nicht gewusst das es 2 threads gibt und heute morgen um 2 habe ich nicht wirklich drauf geachtet als in google 2 einträge kamen und ich den ersten welcher nicht die V2 ist genommen habe.

      war nicht mit absicht ^^

      Ne alles gut, ich war nur etwas irritiert ^^

    • [Tutorial] VIS Vehicle Information System | Script für Infos über Tankinformationen, Reichweite, Ø Verbrauch, etc.

      • DerL30N
      • 27. Januar 2018 um 19:55
      Zitat von vinc55555

      ähm ja sorry hatte schon die version nur hab ich nicht das update eingefügt :)

      okay kurze Frage, warum nutzt du dann diesen Thread und nicht den von der V2 ? Muss ich jetzt nicht verstehen. Ich gehe nämlich davon aus, wenn du hier was schreibst, dann es dann auch um das Script geht, welches hier beschrieben ist...

      Ich

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

      • DerL30N
      • 27. Januar 2018 um 15:29
      Zitat von anonop

      Bei 11.000 fahrzeugen ein bisschen aufwendig ...

      Es gibt funktionen.... du kannst in der DB ganz einfach für alle einen bestimmten wert ändern... du musst nicht jeden eintrag manuell ändern, sonst wäre das ja ne sisyphusarbeit

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

      • DerL30N
      • 27. Januar 2018 um 11:48
      Zitat von Lassi262612

      ich meine ich habe ja bei mir noch andere fehler drin ich schaue mal ob der fehler evtl dadurch ausgelöst wurde.

      Ich muss mir das mal bei Gelegenheit anschauen, wobei es eigentlich funktionieren sollte, sie denn BI hat irgendwas am Code verändert... da haben die ja spaß drann...

    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™