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
Mo: 29 September 2025
  • Anmelden oder registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

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

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

    Beiträge von moeck

    • Extdb2 error with database connection Altis life 4.4r4

      • moeck
      • 21. Mai 2019 um 16:39

      weil er 4.4r4 verwendet die umstellung auf extdb3 war erst mit 5 glaube ich

    • Medic Interactions menü Ticket geben

      • moeck
      • 17. Mai 2019 um 07:59

      Grundsätzlich ist alles möglich ;) . Im ersten Schritt solltest Du die Cop Sachen kopieren und dort das mit der Wanted erntfernen. Alles weitere kann man dann natürlich entwickeln ;)

    • Kostenloses Schließfach Script

      • moeck
      • 17. Mai 2019 um 07:48

      Schau mal in das Repo von Lucian ich glaube er hatte sowas ;)

    • Wir bringen die Altis Life 6.0 Beta raus

      • moeck
      • 16. Mai 2019 um 13:46

      Moin,

      also ich habe mir das jetzt Spaßeshalber mal angeschaut. Was ich gut finde, ihr habt gewisse neue Configs angelegt um die Konfiguration zu vereinfachen. Was mir spontan auf gefallen ist, dass ihr bestimmte Sachen nicht aufgeräumt habt. Zum Beispiel das Thema gather und mine 8o . Genauso das Thema Größe der Rucksäcke oder die VehicleAnimation.

      Nur um noch eins zu nennen, hätte man auch die Chance gehabt sich der leidigen cop-, medic- und vehicleInteractionMenus entledigen können. Ich hätte mir doch tatsächlich ein schickes Nachrichtensystem (z.B. Smartphone) gewünscht.

      Bitte nicht falsch verstehen, ich persönlich finde es gut, dass man sich über eine Weiterentwicklung des Frameworks Gedanken macht. Falls ihr hier wirklich weitermachen wollte würde ich Euch empfehlen ein Git Repository anzulegen und dort den Code weiter pflegen. Es gibt hier bestimmt Leute, die sich an einer Weiterentwicklung beteiligen. Eine weitere Alternative wäre die Sachen als Feature Request an das Altis Life Framework zu geben. Auch hier gibt es Leute, die sich aktiv an der Weiterentwicklung des "Standard" Frameworks beteiligen.

      In diesem Sinne frohes Schaffen,

      moeck

    • Bohrinsel zum Öl abbauen

      • moeck
      • 16. Mai 2019 um 08:27

      Moin,

      ja das Thema ist bekannt ;) und wenn Du mal im Forum gesucht hättest wärest Du auch fündig gewurden.

      bitte um Hilfe das man ohne Lizenz nicht Verarbeiten kann

      Hier geht es zwar um das Thema unter Wasser farmen aber ist genau das selbe Thema. Ich gehe jetzt mal spontan davon aus, dass sich die Bohrinsel auf dem Wasser befindet.

      Aktuell wird halt im Framework davon ausgegangen, dass wen man sich im Wasser befindet nur Fische bzw. Schildkröten gesammelt werden.

      Code
      _isWater = surfaceIsWater (visiblePositionASL player);
      
      if (playerSide isEqualTo west && {player getVariable ["isEscorting",false]}) exitWith {
          [] call life_fnc_copInteractionMenu;
      };
      
      if (LIFE_SETTINGS(getNumber,"global_ATM") isEqualTo 1) then{
          //Check if the player is near an ATM.
          if ((call life_fnc_nearATM) && {!dialog}) exitWith {
              [] call life_fnc_atmMenu;
          };
      };
      
      if (isNull _curObject) exitWith {
          if (_isWater) then {
              _fish = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_fish")),3]) select 0;
              if (!isNil "_fish") then {
                  if (!alive _fish) then {
                      [_fish] call life_fnc_catchFish;
                  };
              };
          } else {
              _animal = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_hunting")),3]) select 0;
              if (!isNil "_animal") then {
                  if (!alive _animal) then {
                      [_animal] call life_fnc_gutAnimal;
                  };
              } else {
                  private "_handle";
                  if (playerSide isEqualTo civilian && !life_action_gathering) then {
                _whatIsIt = [] call life_fnc_whereAmI;
                      if (life_action_gathering) exitWith {};                 //Action is in use, exit to prevent spamming.
                      switch (_whatIsIt) do {
                          case "mine" : { _handle = [] spawn life_fnc_mine };
                          default { _handle = [] spawn life_fnc_gather };
                      };
                      life_action_gathering = true;
                      waitUntil {scriptDone _handle};
                      life_action_gathering = false;
                  };
              };
          };
      };
      Alles anzeigen

      heißt wenn Du immer Wasser bist kommst du nie an die Stelle wo die fn_gather aufgerufen wird. Schau dir mal den folgenden actionKeyHandler an. https://native-network.net/attachment/129…keyhandler-sqf/ da ist das Problem gelöst wurden.

      Gruß,

      moeck

    • frage :D

      • moeck
      • 16. Mai 2019 um 08:06

      Und dann schaue dir https://github.com/AsYetUntitled/…pawnVehicle.sqf und das https://github.com/AsYetUntitled/…icleAnimate.sqf an ;)

    • [Diskussion] Windows vs Linux - das überlegene System?

      • moeck
      • 15. Mai 2019 um 17:28

      Moin,

      also von mir ein klares +1 für vi(m) :P .

      Ich kann den bisherigen Meinungen zustimmmen. Grundsätzlich sollte man aber niemand an einen Server lassen, der nicht weiß was er tut ^^ . Auch wenn das jetzt ein wenig vom Thema abschweift, gibt es sogar noch eine Steigerung des Ganzen. Ich erlebe momentan ganz oft, dass Leute sich etwas in der Cloud bauen ohne auch nur ansatzweise eine Ahnung davon zu haben was sie da tun.

      Aber zurück zum Thema 8o ich habe ArmA Server sowohl auf Windows als auch Linux Servern betrieben. Klare Erkenntnis , wenn man die Einrichtung erstmal fertig hat läuft es auf beiden Systemen. Falls man einen Linux Server nutzt kann man z.B. LGSM nutzen um den ArmA aber auch andere Gameserver zu betreiben. Hier bekommt man auch gleich eine Überwachung und andere Werkzeuge mitgeliefert.

      Bei Windows kommt auch immer wieder die Thematik auf, dass ich mich durch gewisse Dialoge quälen muss um z.B. den automatisierten Restart einzustellen. Auf einem Linux System muss ich nur eine Zeile in die Crontab eintragen.

      Ok ich muss auch dazu sagen ich habe auch die entsprechenden Erfahrung im Bereich Linux Server und verzichte nur zu gern auf eine nervige GUI, wenn ich die Sachen auch auf der Shell erledigen kann.

      Man kann bestimmt mittlerweile mit Powershell auch auf Windows Systemen einige Sachen anstellen aber was Server angeht fülle ich mich einfach auf Linux deutlich wohler.

      Fazit:

      Es gibt nicht DAS Betriebssystem sondern es kommt immer auf den Einsatzzweck und die Kenntnisse des Betreibers an. Ich kann nur empfehlen sich vor der Anmietung eines Servers sich mit der Materie zu beschäftigen und vielleicht auch einfach mal einen eigenen Server bei sich zuu Hause aufzusetzen. Hier kann man auch mit den Betriebssystemen spielen z.B. mit Virtualisierung. In der Regel sind aktuelle PC's (einige Laptops) durchaus in der Lage einen virtuelles System zu hosten und zusätzlich mit dem PC auch noch zu testen.

      Gruß,

      moeck

    • "extDB3: Error with Database Connection" warum das

      • moeck
      • 10. Mai 2019 um 17:05

      ihr verwendet den falschen db user, auch hier steht alles im log

    • einzelne Gebäudetüren verschließen/öffnen

      • moeck
      • 10. Mai 2019 um 15:31

      das einfachste gehe in den editor setze das gebäude, verschließe die türen die gesperrt sein sollen und dann exportiere es als sqf

    • einzelne Gebäudetüren verschließen/öffnen

      • moeck
      • 10. Mai 2019 um 13:43

      Schaue Dir mal das https://community.bistudio.com/wiki/createVehicle/vehicles und das https://community.bistudio.com/wiki/animateSource an. Zum einen findest Du da Informationen zu den Objekten und wie man diese per animateSource bedient ;)

    • Config Fehler, den ich nicht finde

      • moeck
      • 9. Mai 2019 um 13:12

      In Zeile 456 fehlt eine "}" vor dem Komma ;)

      Dateien

      Config_Clothing.hpp.txt 29,75 kB – 93 Downloads
    • Classname vom Offraoder mit Taschen

      • moeck
      • 9. Mai 2019 um 13:07

      Moin,

      was heißt bei Dir Rebellen? Ist die Bedingung eine Lizenz oder etwas anderes?

      Gruß,

      moeck

    • Shops Reichweite

      • moeck
      • 4. Mai 2019 um 00:11

      einfach die aktuelle mission sqm aus dem git repo ziehen da ist die reichweite für alle shops auf 5 meter beschränkt

    • Shop erweiterung

      • moeck
      • 28. April 2019 um 14:01

      ne, die shops sind bei meinem framework komplett in der db 8o

    • Shop erweiterung

      • moeck
      • 28. April 2019 um 12:17

      Moin,

      ich hatte darüber nachgedacht allerdings sind die Shops nicht für die Configs gebaut sondern für das Laden der Sachen aus der DB. Momentan habe ich keinen Bock das auf die Configs umzubauen.

      Gruß,

      moeck

    • Waffen aufsätze

      • moeck
      • 25. April 2019 um 15:37

      ist ein bekanntes problem und es gibt aktuell dafür keinen fix, dazu müsste man die komplette speichermethode umschreiben

    • Waffen aufsätze

      • moeck
      • 25. April 2019 um 01:22

      bitte mal näher beschreiben. Wann sind die Aufsätze weg? Wenn man die Waffe mit Aufsätzen in der Hand hält oder mit Aufsätzen in den Rucksack packt? Des Weiteren wäre es auch hilfreich wenn du uns mal deine Version des Framework verrätst und hier auch mal die Client-, Server- und extDB Logs anhängst.

    • Wechsel von civ zu bluefor ingame

      • moeck
      • 24. April 2019 um 14:06

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

    • [Tutorial] DE100-Benachrichtigungssystem

      • moeck
      • 24. April 2019 um 13:29
      Code
      #include "..\..\script_macros.hpp"
      /*
       File: fn_notification_system.sqf
       Date: 2016-07-23 18:15:17
       Author: Patrick "Lucian" Schmidt
       Edit: EvoPanker
       Description:
       Arguments:
       0: Text <STRING>
       1: Type <STRING> Allowed RED, GREEN, BLUE, WHITE, BLACK, CYAN, YELLOW, PINK, PURPLE
       2: Speed <Number>
       ["TEXT","COLOR",TIMEinSec] spawn life_fnc_notification_system;
       5 Sec Normal
       10 Sec Error
       PINK = Info / Tipp
       RED = Error / Warnung
       GREEN = Success
       YELLOW = SCRIPT_WAIT
       BLUE = GATHER / MINE / PROCESS SUCCESS
       WHITE = ADMIN_MENU
       BLACK = NOT_USED
       CYAN = SERVER_INFORMATION aka BROADCAST
       PURPLE = SCRIPT_INFOMATION
      */
      params[
          "_text",
          ["_color","RED",[""]],
          ["_speed",5,[0]]
      ];
      private _allowedColors = ["RED","GREEN","BLUE","WHITE","BLACK","CYAN","YELLOW","PINK","PURPLE"];
      if !(_color in _allowedColors) then {_color = "RED";};
      if (isServer || !hasInterface) exitWith {};
      disableSerialization;
      _display = finddisplay 46;
      /*
      if (profileNamespace getVariable ["de100_notify",true]) then {
          playSound "HintExpand";
      };
      */
      private _headerColor = call {
          if(_color isEqualTo "RED") exitWith {[255,0,0,0.5]}; 
          if(_color isEqualTo "GREEN") exitWith {[0,255,0,0.5]}; 
          if(_color isEqualTo "BLUE") exitWith {[0,0,255,0.5]}; 
          if(_color isEqualTo "WHITE") exitWith {[255,255,255,0.5]}; 
          if(_color isEqualTo "BLACK") exitWith {[0,0,0,0.5]}; 
          if(_color isEqualTo "YELLOW") exitWith {[255,255,0,0.5]}; 
          if(_color isEqualTo "PINK") exitWith {[255,0,255,0.5]}; 
          if(_color isEqualTo "CYAN") exitWith {[0,255,255,0.5]};
          if(_color isEqualTo "PURPLE") exitWith {[130,0,255,0.5]};
          [0,0,0];
      };
      
      
      /*if (_error) then {
          [0.538433,0,0,0.8];
      } else {
          [(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843]),(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019]),(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862]),(profilenamespace getvariable ['GUI_BCG_RGB_A',0.7])];
      };*/
      if (_text isEqualType "") then {
          _text = parseText _text;
      };
      private _Header = _display ctrlCreate ["RscText", -1];
      _Header ctrlSetPosition [0.78 * safezoneW + safezoneX, 0.11 * safezoneH + safezoneY, 0.2 * safezoneW, 0.002 * safezoneH];
      _Header ctrlSetBackgroundColor _headerColor;
      _Header ctrlSetFade 1;
      _Header ctrlCommit 0;
      _Header ctrlSetFade 0;
      _Header ctrlCommit 0.4;
      private _TextField = _display ctrlCreate ["RscStructuredText", -1];
      _TextField ctrlSetStructuredText _text;
      _TextField ctrlSetPosition [0.78 * safezoneW + safezoneX, 0.112 * safezoneH + safezoneY,0.2 * safezoneW, 0.5];
      _TextField ctrlCommit 0;
      _TextField ctrlSetPosition [0.78 * safezoneW + safezoneX, 0.112 * safezoneH + safezoneY,0.2 * safezoneW, ((ctrlTextHeight _TextField)+ (0.002 * safezoneH))];
      _TextField ctrlSetBackgroundColor [0,0,0,0.75];
      _TextField ctrlSetFade 1;
      _TextField ctrlCommit 0;
      _TextField ctrlSetFade 0;
      _TextField ctrlCommit 0.4;
      [_TextField,_Header,_speed] spawn {
          disableSerialization;
          params ["_TextField","_Header","_speed"];
          uiSleep _speed;
          _TextField ctrlSetFade 1;
          _TextField ctrlCommit 0.3;
          _Header ctrlSetFade 1;
          _Header ctrlCommit 0.3;
          uiSleep 0.3;
          ctrlDelete _Header;
          ctrlDelete _TextField;
      };
      private _posText = (ctrlPosition (_TextField)) select 1;
      private _posHeader = (ctrlPosition (_Header)) select 1;
      private _textHigh = (ctrlPosition (_TextField)) select 3;
      if (count life_open_notifications > 0) then {
          private _activeNotifications = 0;
          {
              private _ctrlHeader = _x select 0;
              private _ctrlText = _x select 1;
              if (!isNull _ctrlHeader && !isNull _ctrlText) then {
                  _ctrlHeader ctrlSetPosition [0.78 * safezoneW + safezoneX, (_posHeader + _textHigh + 1.5*(0.002 * safezoneH))];
                  _ctrlText ctrlSetPosition [0.78 * safezoneW + safezoneX, (_posText + _textHigh + 1.5*(0.002 * safezoneH))];
                  _ctrlHeader ctrlCommit 0.25;
                  _ctrlText ctrlCommit 0.25;
                  _posText = (_posText + _textHigh + 1.5*(0.005 * safezoneH));
                  _posHeader = (_posHeader + _textHigh + 1.5*(0.005 * safezoneH));
                  _textHigh = (ctrlPosition (_ctrlText)) select 3;
                  if (_activeNotifications > 3) then {
                      _ctrlText ctrlSetFade 1;
                      _ctrlHeader ctrlSetFade 1;
                      _ctrlText ctrlCommit 0.2;
                      _ctrlHeader ctrlCommit 0.2;
                  };
                  _activeNotifications = _activeNotifications + 1;
              };
          } forEach life_open_notifications;
      };
      life_open_notifications = ([[_Header,_TextField]] + life_open_notifications) select {!isNull (_x select 0) && !isNull (_x select 1)}; // Add the Element to the Front of the Array and remove the deleted Arrays
      Alles anzeigen

      Achtung das kannst Du nicht eins zu eins übernehmen, da der Aufruf gegenüber dem Orginal ein wenig anders aussieht.

      Code
      ["Deine Notification","YELLOW",5] spawn life_fnc_notification_system; // 1. Deine Notification, 2. Farbe, 3. Wie lange angezeigt
    • Script alle zB 2 Wochen ausführen.

      • moeck
      • 24. April 2019 um 10:38

      Moin,

      also über missionstart wird das nicht funktionieren aber wenn du eh schon realtime nutzt sollte das kein problem sein. Theoretisch kannst du ja sogar die Position mit in der DB speichern so dass er nach 14 tagen nicht direkt wieder an der selben per random wieder spawned.

      Vom Ansatz her würde ich eine Tabelle "Map_Objects" anlegen und dort als Spalten das folgenden einfügen

      ID Typ Position / Mapmarker
      active Last_use
      1 Baustelle baustelle_1 1 2019-04-24
      2 Baustelle baustelle_2 0 2019-04-20
      3 Trader Trader_1 0 2019-03-20
      4 Trader Trader_2 1 2019-04-10

      Das kannst ja im life_server, das dann abfragen und dann per select random dir dort eine rausholen wenn die Zeit abgelaufen ist. Den Abgleich kann man über Timestamp/Date-Funktionen realisieren.

      Code
      /*
          Demoscript life_server random object spawn
          Autor: moeck
      */
      params [
          ["_type","",[""]]
          ,["_days",14,[0]]
      ];
      private _new = false;
      
      if (_type isEqualto "") exitWith { diaglog "Random object spawn: no type specified!"};
      private _query = format ["select id,type,mapmarker,active,last_use from mapobjects where type = '%1'",_type];
      
      tickTime = diag_tickTime;
      private _queryResult = [_query,2,true] call DB_fnc_asyncCall;
      
      if (EXTDB_SETTING(getNumber,"DebugMode") isEqualTo 1) then {
          diag_log "------------- Client Query Request -------------";
          diag_log format ["QUERY: %1",_query];
          diag_log format ["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
          diag_log format ["Result: %1",_queryResult];
          diag_log "------------------------------------------------";
      };
      
      if (_queryResult isEqualType "") exitWith { diaglog "no db entry existing"};
      if (count _queryResult isEqualTo 0) exitWith { diaglog "no db entry existing"};
      
      // calc the time here
      
      // finish calc
      private _lastmarker = "baustelle_1";
      _new = true; // as result of the calc
      //check time
      private _spawnmarkers = [];
      if (_new && {(count _queryResult > 1)}) then {
          { 
              if !(_x select 2 isEqualTo _lastmarker) then {_spawnmarkers pushbackUnique (_x select 2)};
          } foreach _queryResult;
          _newmarker = selectRandom _spawnmarkers;
          _query = format ["update mapobjects set active = '1' where mapmarker = '%1'",_newmarker];
          _lastmarker = _newmarker;
      };
      _lastmarker call life_fnc_spawnRandomObjects;
      Alles anzeigen

      So natürlich muss Du dann noch die Objekte auf der Karte platzieren und konfigurieren. Vielleicht hilft es als Denkanstoß.

      Gruß,

      moeck

    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™