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
Sa: 17 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. Tutorials & Releases

    Playertags / Player Menü nur für bekannte Personen sichtbar

      • Altis Life
    • moeck
    • 16. März 2017 um 08:54
    • SilentF0x
      Profi
      Reaktionen
      266
      Trophäen
      10
      Beiträge
      1.246
      Dateien
      5
      • 2. Juni 2017 um 22:04
      • #41

      Habe es so in der CfgRemoteExec.hpp | 5.0

      Code
      /* Functions for everyone */
              F(BIS_fnc_effectKilledAirDestruction,ANYONE)
              F(BIS_fnc_effectKilledSecondaries,ANYONE)
              F(life_fnc_animSync,ANYONE)
              F(life_fnc_broadcast,ANYONE)
              F(life_fnc_colorVehicle,ANYONE)
              F(life_fnc_corpse,ANYONE)
              F(life_fnc_demoChargeTimer,ANYONE)
              F(life_fnc_flashbang,ANYONE)
              F(life_fnc_jumpFnc,ANYONE)
              F(life_fnc_lockVehicle,ANYONE)
              F(life_fnc_pulloutVeh,ANYONE)
              F(life_fnc_say3D,ANYONE)
              F(life_fnc_setFuel,ANYONE)
              F(life_fnc_simDisable,ANYONE)
              F(SPY_fnc_notifyAdmins,ANYONE)
              F(life_fnc_Ausweissehen,ANYONE)
      Alles anzeigen

      ✌

      Aktuelle Dateien:

      Altis | Krankenhaus | Modded

      Mercedes E Klasse | Rettungswagen | Mod

      Altis | Kupferhandel | No Mods

      Altis Markplatz | No Mods

    • powerafro2
      Profi
      Reaktionen
      357
      Trophäen
      11
      Beiträge
      1.342
      Dateien
      1
      Bilder
      4
      • 2. Juni 2017 um 22:06
      • #42

      Ich meine in der fn_Ausweiszeigen.sqf

      Mfg powerafro2

    • SilentF0x
      Profi
      Reaktionen
      266
      Trophäen
      10
      Beiträge
      1.246
      Dateien
      5
      • 2. Juni 2017 um 22:10
      • #43
      Code
      //Author: PierreAmyf ### Some edits by Lost of Paradise (Sebi, Oktas, moeck) 
      if(isServer)exitWith{};
      private["_ziel", "_rang", "_marke", "_org", "_message", "_rang","_name"];
      if(vehicle player != player )exitWith{};
      _ziel = cursorTarget;
      if(isNull _ziel) then {_ziel = player;}; 
      if(!(_ziel isKindOf "Man")) then {_ziel = player;}; 
      if(!(alive _ziel)) then {_ziel = player;};
      if(player distance _ziel > 6) exitWith {hint parseText format ["<t color='#FFFF00'>Deine Arme sind viel zu kurz um den Ausweis zu zeigen! Geh näher ran.</t>"]}; // Nix mehr mit auf 500m Ausweis zeigen.
      switch(playerSide)do{
       case west:{
       switch (call life_coplevel) do{
       case 1: { _rang = "Paradise Police Dept."; };
       case 2: { _rang = "Zoll"; };
       case 3: { _rang = "Paradise Police Dept."; };
       case 4: { _rang = "Paradise Police Dept."; };
       case 5: { _rang = "Paradise Police Dept."; };
       case 6: { _rang = "Paradise Police Dept."; };
       case 7: { _rang = "Paradise Police Dept."; };
       default { _rank = "Error";};
       };
       _marke = "marke_cop";
       _org = "Polizei Altis";
       };
       case east:{
       switch (call life_adaclevel) do{
       case 1: { _rang = "ADAC Praktikant"; };
       case 2: { _rang = "ADAC Azubi"; };
       case 3: { _rang = "ADAC Geselle"; };
       case 4: { _rang = "ADAC Techniker"; };
       case 5: { _rang = "ADAC Meister"; };
       case 6: { _rang = "ADAC Co.Chef"; };
       case 7: { _rang = "ADAC Chef"; };
       case 8: { _rang = "Leitung"; };
       };
       _marke = "marke_ziv";
       _org = "ADAC Altis";
       };
       case independent:{
       switch (call life_mediclevel) do{
       case 1: { _rang = "Ersthelfer"; };
       case 2: { _rang = "Rettungshelfer"; };
       case 3: { _rang = "Rettungsanitäter"; };
       case 4: { _rang = "Notfallsanitäter"; };
       case 5: { _rang = "ARS"; }; 
       case 6: { _rang = "Lehrrettungsassistent"; }; 
       case 7: { _rang = "ÄrztlicherLeiter"; }; 
       default { _rank = "Error";};
       };
       _marke = "marke_medic";
       _org = "Altis Rescue Service";
       };
       case civilian:{
       if(playerSide == civilian)then{
       _rang = "Zivilist";
       _org = "Republik Altis";
       _marke = "marke_ziv";
       if ((license_civ_group) && (name player find "Group" != -1)) then { _marke = "marke_group"; _org = "Group";};
       
       }else{
       _rang = "Zivilist";
       _marke = "marke_abi";
       _org = "Republik Altis";
       }; 
       };
      };
      _message = format["<img size='10' color='#FFFFFF' image='icons\%1.paa'/><br/><br/><t size='2.5' color='#F4FA58'>%2</t><br/><t size='1.8'>%3</t><br/><t size='1'>%4</t>",_marke, name player, _rang, _org];
      [[player, _message],"life_fnc_Ausweissehen",_ziel,false] spawn life_fnc_MP;
      Alles anzeigen

      So sieht meine Datei aus.

      ✌

      Aktuelle Dateien:

      Altis | Krankenhaus | Modded

      Mercedes E Klasse | Rettungswagen | Mod

      Altis | Kupferhandel | No Mods

      Altis Markplatz | No Mods

    • powerafro2
      Profi
      Reaktionen
      357
      Trophäen
      11
      Beiträge
      1.342
      Dateien
      1
      Bilder
      4
      • 2. Juni 2017 um 22:11
      • #44

      EDIT: Unnötig

      Hier so sollte es gehen.

      Code
      //Author: PierreAmyf ### Some edits by Lost of Paradise (Sebi, Oktas, moeck) 
      if(isServer)exitWith{};
      private["_ziel", "_rang", "_marke", "_org", "_message", "_rang","_name"];
      if(vehicle player != player )exitWith{};
      _ziel = cursorTarget;
      if(isNull _ziel) then {_ziel = player;}; 
      if(!(_ziel isKindOf "Man")) then {_ziel = player;}; 
      if(!(alive _ziel)) then {_ziel = player;};
      if(player distance _ziel > 6) exitWith {hint parseText format ["<t color='#FFFF00'>Deine Arme sind viel zu kurz um den Ausweis zu zeigen! Geh näher ran.</t>"]}; // Nix mehr mit auf 500m Ausweis zeigen.
      switch(playerSide)do{
       case west:{
       switch (call life_coplevel) do{
       case 1: { _rang = "Paradise Police Dept."; };
       case 2: { _rang = "Zoll"; };
       case 3: { _rang = "Paradise Police Dept."; };
       case 4: { _rang = "Paradise Police Dept."; };
       case 5: { _rang = "Paradise Police Dept."; };
       case 6: { _rang = "Paradise Police Dept."; };
       case 7: { _rang = "Paradise Police Dept."; };
       default { _rank = "Error";};
       };
       _marke = "marke_cop";
       _org = "Polizei Altis";
       };
       case east:{
       switch (call life_adaclevel) do{
       case 1: { _rang = "ADAC Praktikant"; };
       case 2: { _rang = "ADAC Azubi"; };
       case 3: { _rang = "ADAC Geselle"; };
       case 4: { _rang = "ADAC Techniker"; };
       case 5: { _rang = "ADAC Meister"; };
       case 6: { _rang = "ADAC Co.Chef"; };
       case 7: { _rang = "ADAC Chef"; };
       case 8: { _rang = "Leitung"; };
       };
       _marke = "marke_ziv";
       _org = "ADAC Altis";
       };
       case independent:{
       switch (call life_mediclevel) do{
       case 1: { _rang = "Ersthelfer"; };
       case 2: { _rang = "Rettungshelfer"; };
       case 3: { _rang = "Rettungsanitäter"; };
       case 4: { _rang = "Notfallsanitäter"; };
       case 5: { _rang = "ARS"; }; 
       case 6: { _rang = "Lehrrettungsassistent"; }; 
       case 7: { _rang = "ÄrztlicherLeiter"; }; 
       default { _rank = "Error";};
       };
       _marke = "marke_medic";
       _org = "Altis Rescue Service";
       };
       case civilian:{
       if(playerSide == civilian)then{
       _rang = "Zivilist";
       _org = "Republik Altis";
       _marke = "marke_ziv";
       if ((license_civ_group) && (name player find "Group" != -1)) then { _marke = "marke_group"; _org = "Group";};
       
       }else{
       _rang = "Zivilist";
       _marke = "marke_abi";
       _org = "Republik Altis";
       }; 
       };
      };
      _message = format["<img size='10' color='#FFFFFF' image='icons\%1.paa'/><br/><br/><t size='2.5' color='#F4FA58'>%2</t><br/><t size='1.8'>%3</t><br/><t size='1'>%4</t>",_marke, name player, _rang, _org];
      [player, _message] remoteExec ["life_fnc_Ausweissehen",_ziel];
      Alles anzeigen

      Mfg powerafro2

    • SilentF0x
      Profi
      Reaktionen
      266
      Trophäen
      10
      Beiträge
      1.246
      Dateien
      5
      • 2. Juni 2017 um 22:12
      • #45

      Tanoa Life 5.0

      ✌

      Aktuelle Dateien:

      Altis | Krankenhaus | Modded

      Mercedes E Klasse | Rettungswagen | Mod

      Altis | Kupferhandel | No Mods

      Altis Markplatz | No Mods

    • powerafro2
      Profi
      Reaktionen
      357
      Trophäen
      11
      Beiträge
      1.342
      Dateien
      1
      Bilder
      4
      • 2. Juni 2017 um 22:13
      • #46

      Habe es oben geupdatet.

      Mfg powerafro2

    • SilentF0x
      Profi
      Reaktionen
      266
      Trophäen
      10
      Beiträge
      1.246
      Dateien
      5
      • 2. Juni 2017 um 22:15
      • #47

      Ok, danke! Werde es gleich versuchen.

      ✌

      Aktuelle Dateien:

      Altis | Krankenhaus | Modded

      Mercedes E Klasse | Rettungswagen | Mod

      Altis | Kupferhandel | No Mods

      Altis Markplatz | No Mods

    • SilentF0x
      Profi
      Reaktionen
      266
      Trophäen
      10
      Beiträge
      1.246
      Dateien
      5
      • 3. Juni 2017 um 12:44
      • #48

      Die Fehlermeldung kommt leider immer noch. Genau die gleiche wie ich oben geschrieben hab.

      Meine Version ist die Tanoa Life 5.0.

      Bild

      ✌

      Aktuelle Dateien:

      Altis | Krankenhaus | Modded

      Mercedes E Klasse | Rettungswagen | Mod

      Altis | Kupferhandel | No Mods

      Altis Markplatz | No Mods

      Einmal editiert, zuletzt von SilentF0x (3. Juni 2017 um 13:02)

    • deepofficer71
      Fortgeschrittener
      Reaktionen
      12
      Trophäen
      9
      Beiträge
      265
      • 28. Juni 2017 um 16:44
      • #49

      Wie sieht das ganze ingame aus mit den ausweiss ?

      Hi

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 1. Juli 2017 um 00:45
      • #50

      so wer lesen kann ist klar im vorteil ^^

      Zitat von moeck

      // Gruppen spezifische Ausweise, wenn man möchte kann man Gruppierungsausweise hinterlegen. Die funktionieren nur, wenn man die Lizenz besitzt und einen entsprechenden Clantag oder Nachnamen trägt!
      if ((license_civ_group) && (name player find "Group" != -1)) then { _marke = "marke_group"; _org = "Group";};

      diese zeile müsst ihr ändern falls ihr gruppen spezifische ausweise verwenden wollt. ansonsten auskommentieren.

      Code
      //if ((license_civ_group) && (name player find "Group" != -1)) then { _marke = "marke_group"; _org = "Group";};

      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 ?

      Einmal editiert, zuletzt von moeck (1. Juli 2017 um 00:51)

    • joacheim
      Anfänger
      Reaktionen
      6
      Trophäen
      9
      Beiträge
      75
      Bilder
      1
      • 5. September 2017 um 18:57
      • #51

      habe das das ausweis script wie beschrieben eingefügt jedoch habe ich keine Möglichkeit bei scroll kann nichts auswählen verwende die Version 4.5

      Dateien

      fn_Ausweissehen.sqf 240 Byte – 141 Downloads fn_Ausweiszeigen.sqf 3,3 kB – 166 Downloads fn_keyMenu.sqf 2,02 kB – 164 Downloads fn_p_updateMenu.sqf 2,55 kB – 108 Downloads fn_playerTags.sqf 6,29 kB – 98 Downloads
    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 5. September 2017 um 18:58
      • #52

      was sagen den logs?

      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 ?

    • joacheim
      Anfänger
      Reaktionen
      6
      Trophäen
      9
      Beiträge
      75
      Bilder
      1
      • 5. September 2017 um 19:16
      • #53

      Die Logs zeigen keine Fehler

      man kann wenn man auf einen spieler visiert und scrollt nichts auswählen

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 5. September 2017 um 19:33
      • #54

      da fehlt der eintrag in der setupAction,

      C
      life_actions = life_actions + [player addAction["<t color='#FFFF00'>Ausweis zeigen</t>",life_fnc_Ausweiszeigen,"",1,false,true,"",'!isNull cursorTarget && cursorTarget isKindOf "Man"']];

      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 ?

    • joacheim
      Anfänger
      Reaktionen
      6
      Trophäen
      9
      Beiträge
      75
      Bilder
      1
      • 5. September 2017 um 19:34
      • #55
      Code
      /*
          File: fn_setupActions.sqf
          Author:
      Description:
          Master addAction file handler for all client-based actions.
      */
      switch (playerSide) do {
          case civilian: {
              //Drop fishing net
              life_actions = [player addAction[localize "STR_pAct_DropFishingNet",life_fnc_dropFishingNet,"",0,false,false,"",'
              (surfaceisWater (getPos vehicle player)) && (vehicle player isKindOf "Ship") && life_carryWeight < life_maxWeight && speed (vehicle player) < 2 && speed (vehicle player) > -1 && !life_net_dropped ']];
              //Rob person
              life_actions = life_actions + [player addAction[localize "STR_pAct_RobPerson",life_fnc_robAction,"",0,false,false,"",'
              !isNull cursorObject && player distance cursorObject < 3.5 && isPlayer cursorObject && animationState cursorObject == "Incapacitated" && !(cursorObject getVariable ["robbed",false]) ']];    };switch (playerSide) do{ case civilian: {   //Ausweis
        life_actions = life_actions + [player addAction["<t color='#FFFF00'>Ausweis zeigen</t>",life_fnc_Ausweiszeigen,"",1,false,true,"",'!isNull cursorTarget && cursorTarget isKindOf "Man"']];
      
      
      
       }; case west: {   //Ausweis
        life_actions = life_actions + [player addAction["<t color='#FFFF00'>Ausweis zeigen</t>",life_fnc_Ausweiszeigen,"",1,false,true,"",'!isNull cursorTarget && cursorTarget isKindOf "Man"']]; }; case independent: {  //Ausweis
        life_actions = life_actions + [player addAction["<t color='#FFFF00'>Ausweis zeigen</t>",life_fnc_Ausweiszeigen,"",1,false,true,"",'!isNull cursorTarget && cursorTarget isKindOf "Man"']]; }; case east: {  //Ausweis
        life_actions = life_actions + [player addAction["<t color='#FFFF00'>Ausweis zeigen</t>",life_fnc_Ausweiszeigen,"",1,false,true,"",'!isNull cursorTarget && cursorTarget isKindOf "Man"']]; };};
      Alles anzeigen

      hatte ich so wie ich es jetzt reingeschickt habe drinne

    • joacheim
      Anfänger
      Reaktionen
      6
      Trophäen
      9
      Beiträge
      75
      Bilder
      1
      • 5. September 2017 um 19:59
      • #56

      eigentlich dürfte dort nirgendwo ein Fehler vorhanden sein .

    • blackfisch
      Legende
      Reaktionen
      2.944
      Trophäen
      9
      Beiträge
      5.966
      Dateien
      6
      Bilder
      63
      • 5. September 2017 um 20:01
      • #57

      life_actions = [];

      Das mal bitte in deine configuration.sqf einfügen

      #MakeArmaNotWar

      Kein Support via PN & Steam! / No Support via DM & Steam!


      Mit freundlichen Grüßen
      blackfisch
      ______________________

      Web: blackfisch.me

      GitHub: GitHub.com/blackfisch

      Mail: [email protected]

      ______________________
      Wichtige Links:
      [Erklärung|Leitfaden] Code Optimierung

      [Tutorial] life_fnc_MP zu remoteExec

      Ohne Logs & entsprechende Dateien kein Support!

      ______________________

    • joacheim
      Anfänger
      Reaktionen
      6
      Trophäen
      9
      Beiträge
      75
      Bilder
      1
      • 5. September 2017 um 20:02
      • #58

      hatte ich auch gemacht, wie gesagt ich bin das Tutorial derweil 3 mal durchgegangen, mir ist aber kein Fehler bekannt, auch die Logs spucken nichts aus.

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 5. September 2017 um 20:16
      • #59

      so deine setupActions ist komplett falsch gewesen

      C
      /*
       File: fn_setupActions.sqf
       Author:
      Description:
       Master addAction file handler for all client-based actions.
      */
      life_actions = life_actions + [player addAction["<t color='#FFFF00'>Ausweis zeigen</t>",life_fnc_Ausweiszeigen,"",1,false,true,"",'!isNull cursorTarget && cursorTarget isKindOf "Man"']];
      switch (playerSide) do {
          case civilian: {
              //Drop fishing net
              life_actions = [player addAction[localize "STR_pAct_DropFishingNet",life_fnc_dropFishingNet,"",0,false,false,"",'(surfaceisWater (getPos vehicle player)) && (vehicle player isKindOf "Ship") && life_carryWeight < life_maxWeight && speed (vehicle player) < 2 && speed (vehicle player) > -1 && !life_net_dropped ']];
              //Rob person
              life_actions = life_actions + [player addAction[localize "STR_pAct_RobPerson",life_fnc_robAction,"",0,false,false,"",'!isNull cursorObject && player distance cursorObject < 3.5 && isPlayer cursorObject && animationState cursorObject == "Incapacitated" && !(cursorObject getVariable ["robbed",false]) ']];
             };
          case west: { 
          };
          case independent: { 
                  };
          case east: {
          };
       };
      Alles anzeigen

      hier mal die korrigierte version das kannst nämlich unabhängig von der spieler seite einfügen ^^

      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 ?

    • joacheim
      Anfänger
      Reaktionen
      6
      Trophäen
      9
      Beiträge
      75
      Bilder
      1
      • 5. September 2017 um 20:21
      • #60

      ich versuche es jetzt nochmal

    Registrieren oder Einloggen

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

    Benutzerkonto erstellen

    Ähnliche Themen

    • [Tutorial] Polizeimarke zeigen

      • Noldy
      • 9. August 2015 um 03:55
      • Tutorials & Releases
    • Z Menü kann Personen nicht mehr auswählen

      • AvirexDE
      • 24. Juli 2017 um 21:37
      • Hilfeforum
    • Ich suche ein Ausweis Script

      • ArmA3Designs ~ MrRetroxX
      • 27. April 2017 um 12:41
      • Hilfeforum
    • Bugusing gleich Cheaten

      • Bane_TM
      • 3. April 2017 um 16:53
      • Offtopic
    • Playertags / Player Menü nur für bekannte Personen sichtbar

      • moeck
      • 9. März 2017 um 14:51
      • Hilfeforum

    Benutzer online in diesem Thema

    • 1 Besucher

    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™