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: 22 Mai 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • 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. Forum
    3. Gameserver & Hosting
    4. ArmA Series - ArmA 3 / Reforger
    5. Hilfeforum

    Mit einer Lizenz 2 Verarbeiter nutzen 4.4.R4

    • Christian
    • 18. September 2018 um 23:06
    • Geschlossen
    • Erledigt
    • Christian
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      59
      • 18. September 2018 um 23:06
      • #1

      Servus NN Community,

      da die Suchfunktion nix ergeben hat, wollte ich mal Nachfragen ob einer von euch weiß wie man mit einer Lizenz 2 Verarbeiter nutzen kann?

      Ich nutze die Version 4.4.r4

      ich habe folgendes versucht.

      Spoiler anzeigen

      In der Config_Process.hpp

      class brennmeister {

      MaterialsReq[] = {{"apfelsaft",1},{"flasche",1}};

      MaterialsGive[] = {{"apfelschnaps",1}};

      Text = "STR_Process_apfelschnaps";

      NoLicenseCost = 1200;

      };

      class brennmeister1 {

      MaterialsReq[] = {{"pfirsichsaft",1},{"flasche",1}};

      MaterialsGive[] = {{"pfirsichschnaps",1}};

      Text = "STR_Process_pfirsigschnaps";

      NoLicenseCost = 1200;

      };

      In der Config_Licenses.hpp

      class brennmeister { //A&P Alk

      variable = "brennmeister";

      displayName = "STR_License_Brennmeister";

      price = 2;

      illegal = false;

      side = "civ";

      };

      class brennmeister1 { //A&P Alk

      //variable = "brennmeister";

      // displayName = "STR_License_Brennmeister";

      price = 2;

      illegal = false;

      side = "civ";

      };

      Ich hoffe das mir vielleicht einer weiterhelfen kann.

    • anonop
      Schüler
      Reaktionen
      18
      Trophäen
      9
      Beiträge
      106
      • 18. September 2018 um 23:20
      • #2

      pfirsigschnaps ?? denke das soll pfirsichschnaps heißen :/:D

    • Julian
      Nerd
      Reaktionen
      76
      Trophäen
      8
      Beiträge
      820
      • 18. September 2018 um 23:23
      • #3

      Du musst was in der fn_processAction.sqf anpassen sonst wird das nicht funktionieren :)

      Mit freundlichen Grüßen,

      Julian


      Bitte erst Denken und dann Fragen


      Hier lesen: das Heilige Buch der Arma3 Scripter

    • Christian
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      59
      • 18. September 2018 um 23:51
      • #4

      anonop oh man ja wtf. Danke.

      Julian hmm da gibt es so nix mehr anzupassen wie in der 3.1.4.8.

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 19. September 2018 um 00:22
      • #5

      da hier muss in die processaction natürlich in angepasster form

      Code
      _license= call {
       if (_type in ["benzin","diesel"]) exitWith {"fuel"};
       if (_type in ["turtlecan","fishcan"]) exitWith {"cannedfood"};
       if (_type in ["nuclear","brennstoff"]) exitWith {"nuclearfuel"};
       if (_type in ["destille"]) exitWith {"whiskey"};
       _type;
      };

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    • Christian
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      59
      • 19. September 2018 um 02:29
      • #6

      So habe dieses nun eingefügt.

      Code
      _license= call {
      if (_type in ["apfelsaft","pfirsichsaft"]) exitWith {"saftpresse"};
      _type;
      };
      Apfelsaft und Pfirsichsaft braucht folgende Licens Saftpresse.
      Habe ich das jetzt so richtig verstanden??

      processAction.sqf

      Spoiler anzeigen

      #include "..\..\script_macros.hpp"

      /*

      File: fn_processAction.sqf

      Author: Bryan "Tonic" Boardwine

      Modified : NiiRoZz

      Description:

      Master handling for processing an item.

      NiiRoZz : Added multiprocess

      */

      private["_license","_vendor","_type","_itemInfo","_oldItem","_newItemWeight","_newItem","_oldItemWeight","_cost","_upp","_hasLicense","_itemName","_oldVal","_ui","_progress","_pgText","_cP","_materialsRequired","_materialsGiven","_noLicenseCost","_text","_filter","_totalConversions","_minimumConversions"];

      _vendor = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;

      _type = [_this,3,"",[""]] call BIS_fnc_param;

      //Error check

      if (isNull _vendor || _type isEqualTo "" || (player distance _vendor > 10)) exitWith {};

      life_action_inUse = true;//Lock out other actions during processing.

      if (isClass (missionConfigFile >> "ProcessAction" >> _type)) then {

      _filter = false;

      _materialsRequired = M_CONFIG(getArray,"ProcessAction",_type,"MaterialsReq");

      _materialsGiven = M_CONFIG(getArray,"ProcessAction",_type,"MaterialsGive");

      _noLicenseCost = M_CONFIG(getNumber,"ProcessAction",_type,"NoLicenseCost");

      _text = M_CONFIG(getText,"ProcessAction",_type,"Text");

      } else {_filter = true;};

      if (_filter) exitWith {life_action_inUse = false;}

      ;

      << Extra eingefügt

      _license= call {

      if (_type in ["apfelsaft","pfirsichsaft"]) exitWith {"saftpresse"};

      _type;

      };

      _itemInfo = [_materialsRequired,_materialsGiven,_noLicenseCost,(localize format["%1",_text])];

      if (count _itemInfo isEqualTo 0) exitWith {life_action_inUse = false;};

      //Setup vars.

      _oldItem = _itemInfo select 0;

      _newItem = _itemInfo select 1;

      _cost = _itemInfo select 2;

      _upp = _itemInfo select 3;

      _exit = false;

      if (count _oldItem isEqualTo 0) exitWith {life_action_inUse = false;};

      _totalConversions = [];

      {

      _var = ITEM_VALUE(_x select 0);

      if (_var isEqualTo 0) exitWith {_exit = true;};

      if (_var < (_x select 1)) exitWith {_exit = true;};

      _totalConversions pushBack (floor (_var/(_x select 1)));

      } forEach _oldItem;

      if (_exit) exitWith {life_is_processing = false; hint localize "STR_NOTF_NotEnoughItemProcess"; life_action_inUse = false;};

      if (_vendor in [mari_processor,coke_processor,heroin_processor]) then {

      _hasLicense = true;

      } else {

      _hasLicense = LICENSE_VALUE(_type,"civ");

      };

      _cost = _cost * (count _oldItem);

      _minimumConversions = _totalConversions call BIS_fnc_lowestNum;

      _oldItemWeight = 0;

      {

      _weight = ([_x select 0] call life_fnc_itemWeight) * (_x select 1);

      _oldItemWeight = _oldItemWeight + _weight;

      } count _oldItem;

      _newItemWeight = 0;

      {

      _weight = ([_x select 0] call life_fnc_itemWeight) * (_x select 1);

      _newItemWeight = _newItemWeight + _weight;

      } count _newItem;

      _exit = false;

      if (_newItemWeight > _oldItemWeight) then {

      _netChange = _newItemWeight - _oldItemWeight;

      _freeSpace = life_maxWeight - life_carryWeight;

      if (_freeSpace < _netChange) exitWith {_exit = true;};

      _minimumConversions = floor(_freeSpace / _netChange);

      };

      if (_exit) exitWith {hint localize "STR_Process_Weight"; life_is_processing = false; life_action_inUse = false;};

      //Setup our progress bar.

      disableSerialization;

      5 cutRsc ["life_progress","PLAIN"];

      _ui = uiNamespace getVariable "life_progress";

      _progress = _ui displayCtrl 38201;

      _pgText = _ui displayCtrl 38202;

      _pgText ctrlSetText format["%2 (1%1)...","%",_upp];

      _progress progressSetPosition 0.01;

      _cP = 0.01;

      life_is_processing = true;

      if (_hasLicense) then {

      for "_i" from 0 to 1 step 0 do {

      sleep 0.28;

      _cP = _cP + 0.01;

      _progress progressSetPosition _cP;

      _pgText ctrlSetText format["%3 (%1%2)...",round(_cP * 100),"%",_upp];

      if (_cP >= 1) exitWith {};

      if (player distance _vendor > 10) exitWith {};

      };

      if (player distance _vendor > 10) exitWith {hint localize "STR_Process_Stay"; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};

      {

      [false,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;

      } count _oldItem;

      {

      [true,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;

      } count _newItem;

      5 cutText ["","PLAIN"];

      if (_minimumConversions isEqualTo (_totalConversions call BIS_fnc_lowestNum)) then {hint localize "STR_NOTF_ItemProcess";} else {hint localize "STR_Process_Partial";};

      life_is_processing = false; life_action_inUse = false;

      } else {

      if (CASH < _cost) exitWith {hint format[localize "STR_Process_License",[_cost] call life_fnc_numberText]; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};

      for "_i" from 0 to 1 step 0 do {

      sleep 0.9;

      _cP = _cP + 0.01;

      _progress progressSetPosition _cP;

      _pgText ctrlSetText format["%3 (%1%2)...",round(_cP * 100),"%",_upp];

      if (_cP >= 1) exitWith {};

      if (player distance _vendor > 10) exitWith {};

      };

      if (player distance _vendor > 10) exitWith {hint localize "STR_Process_Stay"; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};

      if (CASH < _cost) exitWith {hint format[localize "STR_Process_License",[_cost] call life_fnc_numberText]; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};

      {

      [false,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;

      } count _oldItem;

      {

      [true,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;

      } count _newItem;

      5 cutText ["","PLAIN"];

      if (_minimumConversions isEqualTo (_totalConversions call BIS_fnc_lowestNum)) then {hint localize "STR_NOTF_ItemProcess";} else {hint localize "STR_Process_Partial";};

      CASH = CASH - _cost;

      life_is_processing = false; life_action_inUse = false;

      };

      Config_Licenses.hpp

      Spoiler anzeigen

      /*

      * class:

      * variable = Variable Name

      * displayName = License Name

      * price = License Price

      * illegal = Illegal License

      * side = side indicator

      */

      class Licenses {

      //Civilian Licenses

      class saftpresse { //A&P Saft

      variable = "saftpresse";

      displayName = "STR_License_saftpresse";

      price = 2;

      illegal = false;

      side = "civ";

      };

      };

      Config_Process.hpp

      Spoiler anzeigen

      /*

      * class:

      * MaterialsReq (Needed to process) = Array - Format -> {{"ITEM CLASS",HOWMANY}}

      * MaterialsGive (Returned items) = Array - Format -> {{"ITEM CLASS",HOWMANY}}

      * Text (Progess Bar Text) = Localised String

      * NoLicenseCost (Cost to process w/o license) = Scalar

      *

      * Example for multiprocess:

      *

      * class Example {

      * MaterialsReq[] = {{"cocaine_processed",1},{"heroin_processed",1}};

      * MaterialsGive[] = {{"diamond_cut",1}};

      * Text = "STR_Process_Example";

      * //ScrollText = "Process Example";

      * NoLicenseCost = 4000;

      * };

      */

      class ProcessAction {

      class apfelsaft {

      MaterialsReq[] = {{"apple",1}};

      MaterialsGive[] = {{"apfelsaft",1}};

      Text = "STR_Process_apfelsaft";

      NoLicenseCost = 350;

      };

      class pfirsichsaft {

      MaterialsReq[] = {{"peach",1}};

      MaterialsGive[] = {{"pfirsichsaft",1}};

      Text = "STR_Process_pfirsichsaft";

      NoLicenseCost = 350;

      };

      };

      PS. ich nutze die Version 4.4.R4

      Danke für eure Hilfe.

      2 Mal editiert, zuletzt von Christian (19. September 2018 um 02:38)

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 19. September 2018 um 07:52
      • #7

      so eine kleine Änderung musste noch gemacht werden

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_processAction.sqf
          Author: Bryan "Tonic" Boardwine
          Modified : NiiRoZz
          Description:
          Master handling for processing an item.
          NiiRoZz : Added multiprocess
      */
      
      private["_license","_vendor","_type","_itemInfo","_oldItem","_newItemWeight","_newItem","_oldItemWeight","_cost","_upp","_hasLicense","_itemName","_oldVal","_ui","_progress","_pgText","_cP","_materialsRequired","_materialsGiven","_noLicenseCost","_text","_filter","_totalConversions","_minimumConversions"];
      _vendor = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
      _type = [_this,3,"",[""]] call BIS_fnc_param;
      //Error check
      if (isNull _vendor || _type isEqualTo "" || (player distance _vendor > 10)) exitWith {};
      life_action_inUse = true;//Lock out other actions during processing.
      if (isClass (missionConfigFile >> "ProcessAction" >> _type)) then {
          _filter = false;
          _materialsRequired = M_CONFIG(getArray,"ProcessAction",_type,"MaterialsReq");
          _materialsGiven = M_CONFIG(getArray,"ProcessAction",_type,"MaterialsGive");
          _noLicenseCost = M_CONFIG(getNumber,"ProcessAction",_type,"NoLicenseCost");
          _text = M_CONFIG(getText,"ProcessAction",_type,"Text");
      } else {_filter = true;};
      if (_filter) exitWith {life_action_inUse = false;};
      
      //Eine Lizenz für 2 Verarbeiter
      _license= call {
          if (_type in ["apfelsaft","pfirsichsaft"]) exitWith {"saftpresse"};
          _type;
      };
      
      _itemInfo = [_materialsRequired,_materialsGiven,_noLicenseCost,(localize format["%1",_text])];
      if (count _itemInfo isEqualTo 0) exitWith {life_action_inUse = false;};
      
      //Setup vars.
      _oldItem = _itemInfo select 0;
      _newItem = _itemInfo select 1;
      _cost = _itemInfo select 2;
      _upp = _itemInfo select 3;
      _exit = false;
      if (count _oldItem isEqualTo 0) exitWith {life_action_inUse = false;};
      _totalConversions = [];
      {
          _var = ITEM_VALUE(_x select 0);
          if (_var isEqualTo 0) exitWith {_exit = true;};
          if (_var < (_x select 1)) exitWith {_exit = true;};
          _totalConversions pushBack (floor (_var/(_x select 1)));
      } forEach _oldItem;
      
      if (_exit) exitWith {life_is_processing = false; hint localize "STR_NOTF_NotEnoughItemProcess"; life_action_inUse = false;};
      if (_vendor in [mari_processor,coke_processor,heroin_processor]) then {
          _hasLicense = true;
      } else {
          _hasLicense = LICENSE_VALUE(_license,"civ");
      };
      
      _cost = _cost * (count _oldItem);
      _minimumConversions = _totalConversions call BIS_fnc_lowestNum;
      _oldItemWeight = 0;
      {
          _weight = ([_x select 0] call life_fnc_itemWeight) * (_x select 1);
          _oldItemWeight = _oldItemWeight + _weight;
      } count _oldItem;
      
      _newItemWeight = 0;
      {
          _weight = ([_x select 0] call life_fnc_itemWeight) * (_x select 1);
          _newItemWeight = _newItemWeight + _weight;
      } count _newItem;
      _exit = false;
      if (_newItemWeight > _oldItemWeight) then {
          _netChange = _newItemWeight - _oldItemWeight;
          _freeSpace = life_maxWeight - life_carryWeight;
          if (_freeSpace < _netChange) exitWith {_exit = true;};
          _minimumConversions = floor(_freeSpace / _netChange);
      };
      if (_exit) exitWith {hint localize "STR_Process_Weight"; life_is_processing = false; life_action_inUse = false;};
      
      //Setup our progress bar.
      disableSerialization;
      5 cutRsc ["life_progress","PLAIN"];
      _ui = uiNamespace getVariable "life_progress";
      _progress = _ui displayCtrl 38201;
      _pgText = _ui displayCtrl 38202;
      _pgText ctrlSetText format["%2 (1%1)...","%",_upp];
      _progress progressSetPosition 0.01;
      _cP = 0.01;
      
      life_is_processing = true;
      if (_hasLicense) then {
          for "_i" from 0 to 1 step 0 do {
              sleep 0.28;
              _cP = _cP + 0.01;
              _progress progressSetPosition _cP;
              _pgText ctrlSetText format["%3 (%1%2)...",round(_cP * 100),"%",_upp];
              if (_cP >= 1) exitWith {};
              if (player distance _vendor > 10) exitWith {};
          };
          if (player distance _vendor > 10) exitWith {hint localize "STR_Process_Stay"; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};
          {
              [false,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;
          } count _oldItem;
          {
              [true,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;
          } count _newItem;
          5 cutText ["","PLAIN"];
          if (_minimumConversions isEqualTo (_totalConversions call BIS_fnc_lowestNum)) then {hint localize "STR_NOTF_ItemProcess";} else {hint localize "STR_Process_Partial";};
          life_is_processing = false; life_action_inUse = false;
      
      } else {
          if (CASH < _cost) exitWith {hint format[localize "STR_Process_License",[_cost] call life_fnc_numberText]; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};
          for "_i" from 0 to 1 step 0 do {
              sleep 0.9;
              _cP = _cP + 0.01;
              _progress progressSetPosition _cP;
              _pgText ctrlSetText format["%3 (%1%2)...",round(_cP * 100),"%",_upp];
              if (_cP >= 1) exitWith {};
              if (player distance _vendor > 10) exitWith {};
          };
          if (player distance _vendor > 10) exitWith {hint localize "STR_Process_Stay"; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};
      
          if (CASH < _cost) exitWith {hint format[localize "STR_Process_License",[_cost] call life_fnc_numberText]; 5 cutText ["","PLAIN"]; life_is_processing = false; life_action_inUse = false;};
      
          {
              [false,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;
          } count _oldItem;
      
          {
              [true,(_x select 0),((_x select 1)*(_minimumConversions))] call life_fnc_handleInv;
          } count _newItem;
          5 cutText ["","PLAIN"];
          if (_minimumConversions isEqualTo (_totalConversions call BIS_fnc_lowestNum)) then {hint localize "STR_NOTF_ItemProcess";} else {hint localize "STR_Process_Partial";};
          CASH = CASH - _cost;
          life_is_processing = false; life_action_inUse = false;
      };
      Alles anzeigen

      bitte verwende zukünftig den Code Tag und nicht den Spoiler ;)

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    • Christian
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      59
      • 19. September 2018 um 13:25
      • #8

      Danke für deine Hilfe. Ich werde es heute Abend gleich testen.

      Ok werde den Code Tag ab jetzt nutzen.?

    • Christian
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      59
      • 20. September 2018 um 03:59
      • #9

      Guten Morgen moeck,

      ich wollte mich nochmal für deine Hilfe bedanken.

      Hat alles geklappt wie es sollte.

      Hast du vielleicht noch eine Ahnung ob es ein Script gibt womit man Pflanzen anpflanzen kann und später ernten kann?

    • Julian
      Nerd
      Reaktionen
      76
      Trophäen
      8
      Beiträge
      820
      • 20. September 2018 um 08:00
      • #10

      Das Script gibt es auf The Programmer

      Das ganze Ding heißt

      Growing System

      und ist für 14.99 Euro erhältlich

      Mit freundlichen Grüßen,

      Julian


      Bitte erst Denken und dann Fragen


      Hier lesen: das Heilige Buch der Arma3 Scripter

    • Christian
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      59
      • 21. September 2018 um 02:41
      • #11

      Danke für die Info Julian.


      Also meinerseits Kann das Thema hiermit Geschlossen werden.

      Nochmals Danke für eure Hilfe.

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Ähnliche Themen

    • 4.4 Altis Life

      • Christian
      • 10. Juni 2018 um 01:13
      • Hilfeforum

    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™