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

    [Tutorial] ADAC (Opfor) einfügen extDB

      • Altis Life
    • Noldy
    • 9. August 2015 um 02:51
    • Noldy
      Amateur
      Reaktionen
      100
      Trophäen
      11
      Beiträge
      166
      • 9. August 2015 um 02:51
      • #1

      Hallo GG Community,


      Hier ein funktionierendes Script, was euch ermöglicht die 4. Fraktion einzufügen.


      Hier wird komplett aller erklärt. 4. Fraktion inkl Markt Genstore Clothing Auto/Heli Shop und Garage.


      Vorher bitte ein Backup machen!


      MPMissions


      1. Erstellt im Ordner core einen neuen Ordner namens adac


      2. Erstellt im Ordner core\adac eine neue sqf namens fn_adacLoadout.sqf mit folgendem inhallt:

      Code
      /*
      File: fn_adacLoadout.sqf
      Author: Bryan "Tonic" Boardwine
      Edited: Itsyuka
       
      Description:
      Loads the ADAC out with the default gear.
      */
      private["_handle"];
      _handle = [] spawn life_fnc_stripDownPlayer;
      waitUntil {scriptDone _handle};
       
      //Load player with default adac gear.
      player forceAddUniform "U_Rangemaster";
       
      /* ITEMS */
      player addItem "ItemMap";
      player assignItem "ItemMap";
      player addItem "ItemCompass";
      player assignItem "ItemCompass";
      player addItem "ItemWatch";
      player assignItem "ItemWatch";
      player addItem "ItemGPS";
      player assignItem "ItemGPS";
      player addItem "ItemRadio";
      player assignItem "ItemRadio";
       
      [] call life_fnc_saveGear;
      Alles anzeigen

      3. Erstellt im Ordner core\adac eine neue sqf namens fn_adacMarkers.sqf mit folgendem Inhallt: (Dies müsst ihr nicht unbedingt machen, aber ihr dürft)

      Code
      /*
      File: fn_adacMarkers.sqf
      Author: Bryan "Tonic" Boardwine
      Description:
      Marks cops on the map for other cops. Only initializes when the actual map is open.
      */
      private["_markers","_adac"];
      _markers = [];
      _adac = [];
      sleep 0.5;
      if(visibleMap) then {
      {if(side _x == east) then {_adac pushBack _x;}} foreach playableUnits; //Fetch list of cops / blufor
      //Create markers
      {
      _marker = createMarkerLocal [format["%1_marker",_x],visiblePosition _x];
      _marker setMarkerColorLocal "ColorGreen";
      _marker setMarkerTypeLocal "Mil_dot";
      _marker setMarkerTextLocal format["%1", name _x];
      _markers set[count _markers,[_marker,_x]];
      } foreach _adac;
      while {visibleMap} do
      {
      {
      private["_marker","_unit"];
      _marker = _x select 0;
      _unit = _x select 1;
      if(!isNil "_unit") then
      {
      if(!isNull _unit) then
      {
      _marker setMarkerPosLocal (visiblePosition _unit);
      };
      };
      } foreach _markers;
      if(!visibleMap) exitWith {};
      sleep 0.02;
      };
      {deleteMarkerLocal (_x select 0);} foreach _markers;
      _markers = [];
      _adac = [];
      };
      Alles anzeigen

      4. Öffnet euren core Ordner, und erstellt darin eine neue sqf namens fn_initAdac.sqf mit folgendem Inhallt:

      Code
      #include <macro.h>
      /*
      	File: fn_initAdac.sqf
      	Author: Bryan "Tonic" Boardwine
      
      	Description:
      	Initializes the PMC
      */
      private["_end"];
      player addRating 99999999;
      waitUntil {!(isNull (findDisplay 46))};
      
      
      
      
      
      
      
      if((__GETC__(life_adaclevel)) < 1) exitWith {
      	["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

      5. Öffnet euren core\vehicle Ordner, und erstellt darin eine neue sqf namens fn_adacVInteractionMenu.sqf mit folgendem Inhallt:

      Code
      /*
      	File: fn_adacVInteractionMenu.sqf
      	Author: Bryan "Tonic" Boardwine
      
      	Description:
      	Replaces the mass addactions for various vehicle actions
      */
      #define Btn1 37450
      #define Btn2 37451
      #define Btn3 37452
      #define Btn4 37453
      #define Btn5 37454
      #define Btn6 37455
      #define Title 37401
      private["_display","_curTarget","_Btn1","_Btn2","_Btn3","_Btn4","_Btn5","_Btn6"];
      if(!dialog) then {
      	createDialog "vInteraction_Menu";
      };
      disableSerialization;
      _curTarget = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
      if(isNull _curTarget) exitWith {closeDialog 0;}; //Bad target
      _isVehicle
      = if((_curTarget isKindOf "landVehicle") OR (_curTarget isKindOf
      "Ship") OR (_curTarget isKindOf "Air")) then {true} else {false};
      if(!_isVehicle) exitWith {closeDialog 0;};
      _display = findDisplay 37400;
      _Btn1 = _display displayCtrl Btn1;
      _Btn2 = _display displayCtrl Btn2;
      _Btn3 = _display displayCtrl Btn3;
      _Btn4 = _display displayCtrl Btn4;
      _Btn5 = _display displayCtrl Btn5;
      _Btn6 = _display displayCtrl Btn6;
      life_vInact_curTarget = _curTarget;
      
      
      
      
      
      
      
      //Button 1 - Set vehicle repair action
      _Btn1 ctrlSetText localize "STR_vInAct_Repair";
      _Btn1 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_repairTruck;";
      
      
      
      
      
      
      
      if("ToolKit" in (items player) && (damage _curTarget < 1)) then 
      {
          _Btn1 ctrlEnable true;
      } else {
          _Btn1 ctrlEnable false;
      };
      
      
      
      
      
      
      
      //Button 2 - Set pushboat action if curTarget is a boat else if curTarget is a kart displays some kart actions
      if(_curTarget isKindOf "Ship") then 
      {
      	_Btn2 ctrlSetText localize "STR_vInAct_PushBoat";
      	_Btn2 buttonSetAction "[] spawn life_fnc_pushObject; closeDialog 0;";
      	if(_curTarget isKindOf "Ship" && {local _curTarget} && {count crew _curTarget == 0}) then 
      	{ 
      		_Btn2 ctrlEnable true;
      	} else {
      	    _Btn2 ctrlEnable false
      	};
      } else {
      	if(typeOf (_curTarget) in ["C_Kart_01_Blu_F","C_Kart_01_Red_F","C_Kart_01_Fuel_F","C_Kart_01_Vrana_F"]) then 
      	{
      		_Btn2 ctrlSetText localize "STR_vInAct_GetInKart";
      		_Btn2 buttonSetAction "player moveInDriver life_vInact_curTarget; closeDialog 0;";
      		if(count crew _curTarget == 0 && {canMove _curTarget} && {locked _curTarget == 0}) then 
      		{
      		    _Btn2 ctrlEnable true;
      		} else {
      			_Btn2 ctrlEnable false
      		};
      	} else {
      		_Btn2 ctrlSetText localize "STR_vInAct_Unflip";
      _Btn2 buttonSetAction "life_vInact_curTarget setPos [getPos
      life_vInact_curTarget select 0, getPos life_vInact_curTarget select 1,
      (getPos life_vInact_curTarget select 2)+0.5]; closeDialog 0;";
      		if(count crew _curTarget == 0 && {canMove _curTarget}) then 
      		{ 
      			_Btn2 ctrlEnable false;
      		} else {
      			_Btn2 ctrlEnable true;
      		};
      	};
      };
      
      
      
      
      
      
      
      //Button 3 - undefined
      _Btn3 ctrlShow false;
      //Button 4 - undefined
      _Btn4 ctrlShow false;
      //Button 5 - undefined
      _Btn5 ctrlShow false;
      //Button 6 - undefined
      _Btn6 ctrlShow false;
      Alles anzeigen

      6. Öffnet eure function.h und sucht nach class Master_Directory und fügt folgendes darunter in die { };

      Code
      class initAdac {};

      Nun sucht ihr class Vehicle und fügt folgendes in die { };

      Code
      class adacVInteractionMenu {};

      danach fügt ihr am besten unter class Dialog_Controls folgendes hinzu: (Bitte eine neue class anlegen, nicht in die { }; von class Dialog_Controls)

      Code
      class Adac
          {
              file = "core\adac";
              class adacLoadout {};
              class adacMarkers {};;
          };

      Das ganze müsste so aussehen:

      Spoiler anzeigen

      class Dialog_Controls
      {
      file = "dialog\function";
      class setMapPosition {};
      class displayHandler {};
      class spawnConfirm {};
      class spawnMenu {};
      class spawnPointCfg {};
      class spawnPointSelected {};
      class progressBar {};
      class impoundMenu {};
      class unimpound {};
      class sellGarage {};
      class bankDeposit {};
      class bankWithdraw {};
      class bankTransfer {};
      class garageLBChange {};
      class safeInventory {};
      class safeOpen {};
      class safeTake {};
      class safeFix {};
      class vehicleGarage {};
      class gangDeposit {};
      class introScreen {};
      };

      class Adac
      {
      file = "core\adac";
      class adacLoadout {};
      class adacMarkers {};;
      };


      7. Öffnet eure core\functions\fn_actionKeyHandler.sqf und sucht nach if(_isVehicle) then {if(!dialog) then { das müsste etwa linie 76 sein und fügt folgenden Text darunter:

      Code
      if(playerSide
      == east && player distance _curTarget < (((boundingBox
      _curTarget select 1) select 0) + 2)) then {
      			    [_curTarget] call life_fnc_adacVInteractionMenu;
      			};

      Das ganze müsste so aussehen:

      Spoiler anzeigen

      //It's a vehicle! open the vehicle interaction key!
      if(_isVehicle) then {
      if(!dialog) then {
      if(playerSide == east && player distance _curTarget <
      (((boundingBox _curTarget select 1) select 0) + 2)) then {
      [_curTarget] call life_fnc_adacVInteractionMenu;
      };
      if(player distance _curTarget < ((boundingBox _curTarget select 1) select 0) + 2) then {
      [_curTarget] call life_fnc_vInteractionMenu;
      };
      };


      8. Öffnet eure core\init.sqf und fügt folgendes dazu:

      Code
      case east:
      	{
      		//Initialize ADAC
      		_handle = [] spawn life_fnc_initAdac;
      		waitUntil {scriptDone _handle};
      	};

      9. Öffnet eure configuration.sqf und fügt folgendes dazu:

      Code
      case east:
      	{
      		life_atmcash = 50000; //Starting Bank Money
      		life_paycheck = 2000; //Paycheck Amount
      	};

      10. Öffnet eure core\functions\fn_loadGear.sqf und fügt folgendes hinzu:

      Code
      case east: {
      			[] call life_fnc_adacLoadout;
      		};

      11. Öffnet eure core\functions\fn_saveGear.sqf und fügt folgendes hinzu:

      Code
      || playerSide == east

      Das ganze sollte so aussehen:

      Spoiler anzeigen

      if(playerSide == west playerSide == civilian playerSide == east && {(call life_save_civ)}) then {


      12. Öffnet eure core\shops\fn_atmMenu.sqf und fügt folgendes hinzu:

      Code
      case east: {_type = "Adac"};

      13. Öffnet eure core\pmenu/fn_cellphone.sqf und fügt folgendes hinzu:

      Code
      case east: {_type = "Adac"};

      14. Öffnet eure core\medical\fn_respawned.sqf und fügt folgendes hinzu:

      Code
      case east: {
      		_handle = [] spawn life_fnc_adacLoadout;
      	};

      15. Öffnet eure description.ext und fügt folgendes ganz unten ein:

      Code
      class AdacMessage
          {
              title = "Adac Message";
              iconPicture = "icons\messagenew.paa";
              description = "%1";
              duration = 10;
              priority = 5;
          };

      16. Öffnet eure dialog\cell_phone.hpp und fügt folgendes unter class EMSRequest : life_RscButtonMenu ein:

      Code
      class AdacRequest : life_RscButtonMenu
      		{
      			idc = 3023;
      			text = "$STR_CELL_AdacRequest";
      colorBackground[] = {"(profilenamespace getvariable
      ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable
      ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable
      ['GUI_BCG_RGB_B',0.8862])", 0.5};
      			onButtonClick = "[] call TON_fnc_cell_adacrequest";
      
      			x = 0.32;
      			y = 0.45;
      			w = 0.2;
      			h = (1 / 25);
      		};
      Alles anzeigen

      17. Öffnet eure stringable.xml und fügt folgendes unter "STR_CELL_EMSRequest" ein:

      Code
      <Key ID="STR_CELL_AdacRequest">
      			<Original>Request Adac</Original>
      		</Key>

      Das ganze sollte so aussehen: (Dürft ihr natürlich gerne auch auf Deutsch schreiben)

      Spoiler anzeigen

      <Key ID="STR_CELL_EMSRequest">
      <Original>Request EMS</Original>
      </Key>
      <Key ID="STR_CELL_AdacRequest">
      <Original>Request ADAC</Original>
      </Key>


      18. Öffnet eure dialog\function\fn_spawnPointCfg.sqf und fügt folgendes hinzu:

      Code
      case east: 
      	{
      		_return = [
      			["adac_spawn_1","ADAC Kavala","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      		];
      	};

      19. Öffnet eure core\session\fn_updateRequest.sqf und fügt folgendes hinzu:

      Code
      case east: {"adac"};

      20. Öffnet eure core\session\fn_updatePartial.sqf und fügt folgendes hinzu:

      Code
      case east: {"adac"};

      21. Öffnet eure core\session\fn_requestReceived.sqf und fügt folgende sachen ein:
      Unter case west

      Code
      __CONST__(life_adaclevel,0);

      Unter case civilian

      Code
      __CONST__(life_adaclevel,0);

      Unter case independent

      Code
      __CONST__(life_adaclevel,0);

      Und zum schluß eine neue case anlegen:

      Code
      case east: {
      		__CONST__(life_adaclevel, parseNumber(_this select 7));
      		__CONST__(life_coplevel,0);
      		__CONST__(life_medicLevel,0);
      	};

      Das ganze sollte so aussehen:

      Spoiler anzeigen

      switch(playerSide) do {
      case west: {
      __CONST__(life_coplevel, parseNumber(_this select 7));
      __CONST__(life_medicLevel,0);
      __CONST__(life_adaclevel,0); //ADD THIS
      life_blacklisted = _this select 9;
      };

      case civilian: {
      life_is_arrested = _this select 7;
      __CONST__(life_coplevel, 0);
      __CONST__(life_medicLevel, 0);
      __CONST__(life_adaclevel,0); //ADD THIS
      life_houses = _this select 9;
      {
      _house = nearestBuilding (call compile format["%1", _x select 0]);
      life_vehicles pushBack _house;
      } foreach life_houses;

      life_gangData = _This select 10;
      if(count life_gangData != 0) then {
      [] spawn life_fnc_initGang;
      };
      [] spawn life_fnc_initHouses;
      };

      case independent: {
      __CONST__(life_medicLevel, parseNumber(_this select 7));
      __CONST__(life_coplevel,0);
      __CONST__(life_adaclevel,0); //ADD THIS
      };

      case east: {
      __CONST__(life_adaclevel, parseNumber(_this select 7));
      __CONST__(life_coplevel,0);
      __CONST__(life_medicLevel,0);
      };
      };


      22. Öffnet eure core\pmenu\fn_p_openMenu.sqf und fügt folgendes dazu:

      Code
      case east:
      	{
      		ctrlShow[2011,false];
      	};

      23. Öffnet eure core\pmenu\fn_p_updateMenu.sqf und fügt folgendes bei _side hinzu:

      Code
      case east:{"adac"};

      So sollte das aussehen:

      Spoiler anzeigen

      _side = switch(playerSide) do {case west:{"cop"}; case civilian:{"civ"}; case independent:{"med"}; case east:{"adac"};};


      Life_Server


      1. Öffnet eure init.sqf und fügt folgendes unter life_medicLevel = 0; dazu:

      Code
      life_adaclevel = 0;

      etwas weiter unten das hier:

      Code
      life_radio_east = radioChannelCreate [[0, 0.95, 1, 0.8], "Side Channel", "%UNIT_NAME", []];

      2.Öffnet eure functions.sqf und fügt nach TON_fnc_cell_adminmsgall dazu:

      Code
      TON_fnc_cell_adacrequest = 
      compileFinal "
      private[""_msg"",""_to""];
          ctrlShow[3023,false];
          _msg = ctrlText 3003;
          _to = ""ADAC Units"";
          if(_msg == """") exitWith {hint ""You must enter a Message!"";ctrlShow[3023,true];};
      
          [[_msg,name player,6],""TON_fnc_clientMessage"",east,false] spawn life_fnc_MP;
          [] call life_fnc_cellphone;
          hint format[""You have sent a message to all ADAC Units."",_to,_msg];
          ctrlShow[3022,true];
      ";
      Alles anzeigen

      Direkt darunter das hier einfügen:

      Code
      publicVariable "TON_fnc_cell_adacrequest";

      Und zum schluß, eine neue case anlegen:

      Code
      case 6: {
      			private[""_message""];
      			_message = format[""!!!ADAC REQUEST: %1"",_msg];
      hint parseText format [""<t color='#FFCC00'><t
      size='2'><t align='center'>ADAC
      Request<br/><br/><t color='#33CC33'><t
      align='left'><t size='1'>To: <t
      color='#ffffff'>You<br/><t color='#33CC33'>From: <t
      color='#ffffff'>%1<br/><br/><t
      color='#33CC33'>Message:<br/><t
      color='#ffffff'>%2"",_from,_msg];
      
      			[""TextMessage"",[format[""ADAC Request from %1"",_from]]] call bis_fnc_showNotification;
      		};
      Alles anzeigen

      3. Öffnet eure Functions\MySQL\fn_insertRequest.sqf und überschreibt folgendes:

      Code
      _query
      = format["INSERT INTO players (playerid, name, cash, bankacc, aliases,
      cop_licenses, med_licenses, adac_licenses, civ_licenses, civ_gear,
      cop_gear, med_gear, adac_gear) VALUES('%1', '%2', '%3', '%4',
      '%5','""[]""','""[]""','""[]""','""[]""','""[]""','""[]""','""[]""','""[]""')",

      4. Öffnet eure Functions\MySQL\fn_queryRequest.sqf und fügt folgendes hinzu:

      Code
      case
      east: {_returnCount = 9; format["SELECT playerid, name, cash, bankacc,
      adminlevel, donatorlvl, adac_licenses, adaclevel, adac_gear FROM players
      WHERE playerid='%1'",_uid];};

      5. Öffnet eure Functions\MySQL\fn_updatePartial.sqf und fügt folgendes unter case 2 hinzu:

      Code
      case east: {_query = format["UPDATE players SET adac_licenses='%1' WHERE playerid='%2'",_value,_uid];};

      Das unter case 3:

      Code
      case east: {_query = format["UPDATE players SET adac_gear='%1' WHERE playerid='%2'",_value,_uid];};

      6. Öffnet eure Functions\MySQL\fn_updateRequest.sqf und fügt folgendes hinzu:

      Code
      case
      east: {_query = format["UPDATE players SET name='%1', cash='%2',
      bankacc='%3', adac_licenses='%4', adac_gear='%6' WHERE
      playerid='%5'",_name,_cash,_bank,_licenses,_uid,_gear];};

      7. Öffnet eure Functions\Systems\fn_getVehicles.sqf und fügt folgendes dazu:

      Code
      case east: {"adac"};

      8. Öffnet eure Functions\Systems\fn_vehicleCreate.sqf und fügt folgendes dazu:

      Code
      case east: {"adac"};

      9. Öffnet eure Functions\Systems\fn_managesc.sqf und füge folgendes hinzu:

      Code
      case east:
      	{
      		if(_bool) then
      		{
      			life_radio_east radioChannelAdd [_unit];
      		}
      			else
      		{
      			life_radio_east radioChannelRemove [_unit];
      		};
      	};
      Alles anzeigen

      Arma 3 Editor


      1. Nun platzieren wir die Fraktion east. Platziert eine east Einheit auf eure Spawninsel:
      SEITE: Opfor


      GRUPPIERUNG: CSAT
      KLASSE: Männer
      EINHEIT: Sanitäter
      SPEZIELL: Keine
      NAME: adac_1
      KONTROLLE: Spielbar
      BESCHREIBUNG: Whitelist | ADAC 1


      Die 2. Einheit genau gleich, ausser bei Name: adac_2 und bei Beschreibung Whitelist | ADAC 2
      Wenn ihr 6 Einheiten erstellt, habt ihr auch 6 Slots für den ADAC auf eurer Map.
      (Kopiert die Einheiten nicht. DIe müssen alle verbunden sein. Immer selber ohne copy paste eine EInheit setzen)




      2. Erstellt auf eurer Map irgentwo wo ihr wollt einen Marker namens:

      Code
      adac_spawn_1


      Speichern, und den Editor verlassen.


      Logt euch in eurer Datenbank ein, und klickt eure Datenbank an. Klickt auf sql und fügt folgenden Code ein:

      Code
      ALTER TABLE  `players` ADD (
      `adac_licenses` TEXT NULL DEFAULT NULL
      );
      
      
      
      
      
      
      
      ALTER TABLE  `players` ADD (
      `adac_gear` TEXT NOT NULL
      );
      
      
      
      
      
      
      
      ALTER TABLE  `players` ADD (
      `adaclevel` enum('0','1','2','3','4','5') NOT NULL DEFAULT '0'
      );
      Alles anzeigen

      Hier noch ein Bild dazu:

      Adac Kleidershop


      1. Öffnet eure core\config und erstellt eine neue sqf namens fn_clothing_adac mit folgendem Inhallt:

      Code
      /*
          File: fn_clothing_adac.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Master configuration file for adac Outfits.
      */
      private["_filter"];
      _filter = [_this,0,0,[0]] call BIS_fnc_param;
      //Classname, Custom Display name (use nil for Cfg->DisplayName, price
      
      
      
      
      
      
      
      //Shop Title Name
      ctrlSetText[3103,"Adac Kleidershop"];
      
      
      
      
      
      
      
      switch (_filter) do
      {
          //Uniforms
          case 0:
          {
              [
              ["U_C_Poloshirt_blue","Poloshirt Blue",250],
              ["U_C_Poloshirt_burgundy","Poloshirt Burgundy",275],
              ["U_C_Poloshirt_redwhite","Poloshirt Red/White",150],
              ["U_C_Poloshirt_salmon","Poloshirt Salmon",175]
              ];
          };
      
          //Hats
          case 1:
          {
              [
                  ["H_Bandanna_camo","Camo Bandanna",120],
                  ["H_Bandanna_surfer","Surfer Bandanna",130],
                  ["H_Bandanna_gry","Grey Bandanna",150],
                  ["H_Bandanna_cbr",nil,165],
                  ["H_Bandanna_surfer",nil,135]
              ];
          };
      
          //Glasses
          case 2:
          {
              [
                  ["G_Shades_Black",nil,25],
                  ["G_Shades_Blue",nil,20],
                  ["G_Sport_Blackred",nil,20]
              ];
          };
      
          //Vest
          case 3:
          {
              [
              ];
          };
      
          //Backpacks
          case 4:
          {
              [
                  ["B_AssaultPack_cbr",nil,2500],
                  ["B_Kitbag_mcamo",nil,4500],
                  ["B_TacticalPack_oli",nil,3500]
              ];
          };
      };
      Alles anzeigen

      Eine Kleiderliste findet ihr hier: Arma 3 CfgWeapons Equipment - Bohemia Interactive Community


      2. Öffnet eure core\shops\fn_clothingFilter und fügt folgendes hinzu:

      Code
      case "adac": {[_selection] call life_fnc_clothing_adac;};

      3. Öffnet eure core\config\fn_clothingMenu und fügt folgendes hinzu:

      Code
      if((_this
      select 3) in ["adac"] && playerSide != east) exitWith {hint "Du
      bist kein ADAC!"; closeDialog 0;};

      4. Öffnet eure function.h uund fügt folgendes unter class Config ein:

      Code
      class clothing_adac {};

      5. NPC Init:

      Code
      this allowDamage false; this enableSimulation false; this addAction["Kleidung Shop",life_fnc_clothingMenu,"adac"];

      Auto/Heli Shop inkl Garage


      1. Öffnet eure core\config\fn_vehicleListCfg und fügt folgendes hinzu:

      Code
      case "adac_car":
          {
              _return =
              [
                  ["C_SUV_01_F",35000],
                  ["B_Truck_01_transport_F",275000],
                  ["B_Truck_01_mover_F",250000],
                  ["C_Offroad_01_F",1500]
              ];
          };
      
          case "adac_air":
          {
              _return =
              [
                  ["O_Heli_Light_02_unarmed_F",100000],
                  ["I_Heli_Transport_02_F",100000]
              ];
          };
      Alles anzeigen

      Eine komplette Auto/Heliliste findet ihr hier: ARMA 3 Vehicles - 7th Cavalry Regiment Wiki


      2. Erstellt 2 Marker:

      Code
      adac_car_1
      Code
      adac_air_1

      3. NPC Init:

      Code
      this
      enableSimulation false;   this allowDamage false; this
      addAction[format["%1 ($%2)",["license_adac_car"] call
      life_fnc_varToStr,[(["car"] call life_fnc_licensePrice)] call
      life_fnc_numberText],life_fnc_buyLicense,"car",0,false,false,"",'
      !license_adac_car && playerSide == east '];      this
      addAction[format["%1 ($%2)",["license_adac_air"] call
      life_fnc_varToStr,[(["air"] call life_fnc_licensePrice)] call
      life_fnc_numberText],life_fnc_buyLicense,"air",0,false,false,"",'
      !license_adac_air && playerSide == east '];   this
      addAction["Auto
      Shop",life_fnc_vehicleShopMenu,["adac_car",east,"adac_car_1","adac","ADAC
      Autoshop"]];  this addAction["Helicopter
      Shop",life_fnc_vehicleShopMenu,["adac_air",east,"adac_air_1","adac","ADAC
      Helicopter Shop"]];     this addAction["Auto Garage",  {
      [[getPlayerUID
      player,playerSide,"Car",player],"TON_fnc_getVehicles",false,false] spawn
      life_fnc_MP;   createDialog "Life_impound_menu";
      disableSerialization;   ctrlSetText[2802,"Fetching Vehicles...."];
      life_garage_sp = "adac_car_1"; life_garage_type = "Car";
      },"",0,false,false,"",'playerSide == east'];   this
      addAction["Helicopter Garage",  {   [[getPlayerUID
      player,playerSide,"Air",player],"TON_fnc_getVehicles",false,false] spawn
      life_fnc_MP;   createDialog "Life_impound_menu";
      disableSerialization;   ctrlSetText[2802,"Fetching Vehicles...."];
      life_garage_sp = "adac_air_1"; life_garage_type = "Air";
      },"",0,false,false,"",'playerSide == east'];   this addAction["Fahrzeug
      einparken",life_fnc_storeVehicle,"",0,false,false,"",'!life_garage_store'];
      Alles anzeigen

      Adac Markt und Genstore:


      1. Öffnet eure core\congif\fn_virt_shops und fügt folgendes hinzu:

      Code
      case "adacmarkt": {["ADAC Markt",["apple","peach","tbacon","rabbit","water","redgull","fuelF"]]};

      2. Öffnet eure core\congif\fn_weaponShopCfg und fügt folgendes hinzu:

      Code
      case "adacgen":
          {
              switch(true) do    
              {
                  case (playerSide != east): {"Du bist kein ADAC!"};
                  default
                  {
                      ["ADAC Zubehör",
                          [
                              ["Binocular",nil,150],
                              ["ItemGPS",nil,100],
                              ["ToolKit",nil,250],
                              ["FirstAidKit",nil,150],
                              ["NVGoggles",nil,2000]
                          ]
                      ];
                  };
              };
          };
      Alles anzeigen

      3. NPC Init:

      Code
      this
      enableSimulation false;   this allowDamage false;  this addAction["ADAC
      Markt",life_fnc_virt_menu,"adacmarkt"]; this addAction["ADAC Zubehör
      Shop",life_fnc_weaponShopMenu,"adacgen"];

      Adac Lizenz:


      1. Öffnet eure Configuration.sqf und fügt unter life_licenses = folgendes ein:

      Code
      ["license_adac_car","adac"],
          ["license_adac_air","adac"]

      Achtet hier auf das ,


      2. Öffnet eure core\config\fn_licenseType.sqf und fügt folgendes bei case 0: ein:

      Code
      case "car": {_var = "license_adac_car"};
                  case "air": {_var = "license_adac_air"};

      unter case 1: das hier:

      Code
      case "license_adac_car": {_var = "car"};
                  case "license_adac_air": {_var = "air"};

      3. Öffnet eure core\config\fn_licensePrice.sqf und fügt folgendes hinzu:

      Code
      case "car": {500};
          case "air": {5000};

      Hier könnt ihr natürlich selbst der Preis bestimmen.


      4. Öffnet eure core\congif\fn_varToStr.sqf und fügt folgendes unter //License Block ein:

      Code
      case "license_adac_car": {"ADAC Führerschein"};
          case "license_adac_air": {"ADAC Pilotenschein"};

      5. Öffnet eure core\congif\fn_vehShopLicenses.sqf und fügt folgendes unter case "reb_car": {_ret = license_civ_rebel;}; ein:

      Code
      case "adac_car": {_ret = license_adac_car;};
          case "adac_air": {_ret = license_adac_air;};

      6. Init des NPCs steht schon beim Auto/Heli Shop mitbei.


      Nun sind wir am ende angekommen.


      Falls ich etwas vergessen habe, bitte bescheid geben.


      Viel spaß mit der 4. Fraktion.


      MfG
      Noldy

    • Wulp
      Frischling
      Trophäen
      10
      Beiträge
      1
      • 3. Dezember 2015 um 00:18
      • #2

      Moin,
      meine Missionsdatei lädt nach 39% nichtmehr.. wer ne Idee wo der fehler ist..? ^^

    • Lassi262612
      Nerd
      Reaktionen
      55
      Trophäen
      11
      Beiträge
      730
      • 3. Dezember 2015 um 18:03
      • #3

      rpt log sagt was?!

    • Baker
      Anfänger
      Reaktionen
      1
      Trophäen
      11
      Beiträge
      55
      • 7. Dezember 2015 um 22:24
      • #4

      Hallo zusammen...leider funktioniert es bei mir nicht der Server kann keine Informationen zu der GUID finden und sie auch nicht eintragen.


      RPT :

      Spoiler anzeigen
      Code
      22:05:42 Unable to get file version size: C:\arma3\a3master\@extDB\extDB.dll
      22:05:42 "extDB: Version: 35"
      22:05:42 "extDB: Connected to Database"
      22:05:42 Unknown attribute shadown
      22:06:48 "<infiSTAR.de>ConnectLog| 92h 39min | Connected: SteamName: Tristan - IngameName: Dieter Baker(76561198220189656) - time: 66.634 - serverFPS: 50 (v0226C)"
      22:06:49 "------------- Client Query Request -------------"
      22:06:49 "QUERY: true"
      22:06:49 "Time to complete: 0.000999451 (in seconds)"
      22:06:49 "Result: _INVALID_SQL_STMT"
      22:06:49 "------------------------------------------------"
      22:06:49 "------------- Insert Query Request -------------"
      22:06:49 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:49 "Time to complete: 0.0209961 (in seconds)"
      22:06:49 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:49 "------------------------------------------------"
      22:06:49 "------------- Client Query Request -------------"
      22:06:49 "QUERY: true"
      22:06:49 "Time to complete: 0 (in seconds)"
      22:06:49 "Result: _INVALID_SQL_STMT"
      22:06:49 "------------------------------------------------"
      22:06:50 "------------- Insert Query Request -------------"
      22:06:50 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:50 "Time to complete: 0.0410004 (in seconds)"
      22:06:50 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:50 "------------------------------------------------"
      22:06:50 "------------- Client Query Request -------------"
      22:06:50 "QUERY: true"
      22:06:50 "Time to complete: 0.000999451 (in seconds)"
      22:06:50 "Result: _INVALID_SQL_STMT"
      22:06:50 "------------------------------------------------"
      22:06:50 "------------- Insert Query Request -------------"
      22:06:50 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:50 "Time to complete: 0.0210037 (in seconds)"
      22:06:50 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:50 "------------------------------------------------"
      22:06:51 "------------- Client Query Request -------------"
      22:06:51 "QUERY: true"
      22:06:51 "Time to complete: 0.0019989 (in seconds)"
      22:06:51 "Result: _INVALID_SQL_STMT"
      22:06:51 "------------------------------------------------"
      22:06:51 "------------- Insert Query Request -------------"
      22:06:51 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:51 "Time to complete: 0.0400009 (in seconds)"
      22:06:51 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:51 "------------------------------------------------"
      22:06:51 "------------- Client Query Request -------------"
      22:06:51 "QUERY: true"
      22:06:51 "Time to complete: 0.000999451 (in seconds)"
      22:06:51 "Result: _INVALID_SQL_STMT"
      22:06:51 "------------------------------------------------"
      22:06:52 "------------- Insert Query Request -------------"
      22:06:52 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:52 "Time to complete: 0.0400009 (in seconds)"
      22:06:52 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:52 "------------------------------------------------"
      22:06:52 "<infiSTAR.de> RequestToken: Dieter Baker(76561198220189656) Requested a Token!   _clientID: 3"
      22:06:52 "<infiSTAR.de>ConnectLog| 92h 39min | Runtime: 1m 10s | SENT TOKEN [mospdui4yeq9tsfpz] TO ID [Dieter Baker(76561198220189656) - 3] (v0226C)"
      22:06:52 "<infiSTAR.de> server_setToken: SENT TOKEN [mospdui4yeq9tsfpz] TO Dieter Baker(76561198220189656)"
      22:06:52 "------------- Client Query Request -------------"
      22:06:52 "QUERY: true"
      22:06:52 "Time to complete: 0.000999451 (in seconds)"
      22:06:52 "Result: _INVALID_SQL_STMT"
      22:06:52 "------------------------------------------------"
      22:06:52 "------------- Insert Query Request -------------"
      22:06:52 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:52 "Time to complete: 0.0400009 (in seconds)"
      22:06:52 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:52 "------------------------------------------------"
      22:06:53 "------------- Client Query Request -------------"
      22:06:53 "QUERY: true"
      22:06:53 "Time to complete: 0.000999451 (in seconds)"
      22:06:53 "Result: _INVALID_SQL_STMT"
      22:06:53 "------------------------------------------------"
      22:06:53 "------------- Insert Query Request -------------"
      22:06:53 "QUERY: SELECT playerid, name FROM players WHERE playerid='76561198220189656'"
      22:06:53 "Time to complete: 0.0189972 (in seconds)"
      22:06:53 "Result: ["76561198220189656","Dieter Baker"]"
      22:06:53 "------------------------------------------------"
      Alles anzeigen
    • Larry
      Gast
      • 7. Dezember 2015 um 22:27
      • #5

      im life_server alles richtig eingetragen?

    • Baker
      Anfänger
      Reaktionen
      1
      Trophäen
      11
      Beiträge
      55
      • 7. Dezember 2015 um 22:35
      • #6

      Ja alles 3 mal durchgegangen :/


      Edit: Fehler gefunden. Da war ich wohl mit dem Post etwas zu voreelig tut mir leid.
      Dennoch danke für die Hilfe !

      Einmal editiert, zuletzt von Baker (8. Dezember 2015 um 15:24)

    • dingo
      Anfänger
      Reaktionen
      8
      Trophäen
      11
      Beiträge
      43
      • 2. März 2016 um 23:24
      • #7

      was war der Fehler

    • Saturin78
      Profi
      Reaktionen
      409
      Trophäen
      10
      Beiträge
      1.340
      • 6. März 2016 um 19:34
      • #8

      Funktioniert das auch bei altis Life 4.0?

      Tapse mich wieder ins Arma3 xxx-Life rein :D

    • Sacha
      Schüler
      Reaktionen
      35
      Trophäen
      11
      Beiträge
      105
      • 6. März 2016 um 20:31
      • #9

      Nicht 1 zu 1 du müstest einige Dinge an die 4.0 anpassen. Nicht alles ist gleich geblieben.

    • Play4Life
      Anfänger
      Reaktionen
      2
      Trophäen
      11
      Beiträge
      58
      • 20. März 2016 um 23:26
      • #10

      Hallo,
      Ich habe so ein Kleines Problem. Wenn ich eine Naricht an den ADAC schreiben will kommt das keiner im Dienst ist wohl einer im Dienst ist.
      Mein Zweites Problem ist das der wo als ADAC weder als Civ oder Cop oder so angezeigt wird sondern als Unknow .

      Warum ?


      MFG

    • Xylometachlorid
      Nerd
      Reaktionen
      402
      Trophäen
      11
      Beiträge
      584
      • 22. März 2016 um 15:11
      • #11
      Zitat von ZockerServer

      Warum ?

      Let me google that for you

      Spaß bei Seite:

      Du musst schon mit ein paar mehr Informationen kommen, wie zum Beispiel RPT Logs oder weitere Informationen. Sonst kann dir hier keiner helfen.

      Grüße
      Xylometachlorid

      extDB2 Tutorial: extDB2 Einrichten - so geht's richtig

    • Play4Life
      Anfänger
      Reaktionen
      2
      Trophäen
      11
      Beiträge
      58
      • 22. März 2016 um 19:58
      • #12

      Hier ist RPT Log

      Dateien

      arma3server_2016-03-20_23-07-08.rar 16,67 kB – 139 Downloads
    • Jabberwocky
      Frischling
      Trophäen
      9
      Beiträge
      1
      • 10. April 2016 um 11:25
      • #13

      Moin habe das Tutorial gemacht doch jetzt komme ich nicht mehr auf den Server also ich bleibe im ersten Ladescreen hängen. Ich füg einfach mal meine Log bei vlt seht ihr das problem.
      LG Jabber

      Dateien

      arma3server_2016-04-10_10-57-12.txt 35,27 kB – 308 Downloads
    • Atavis
      Frischling
      Trophäen
      10
      Beiträge
      18
      • 12. Mai 2016 um 18:04
      • #14

      Hello. In the file configuration.sqf is worth the initial sum of 30000. But when logging in 2500. Help please.

    • powerafro2
      Profi
      Reaktionen
      357
      Trophäen
      11
      Beiträge
      1.342
      Dateien
      1
      Bilder
      4
      • 21. Mai 2016 um 14:10
      • #15

      Hallo, Ich habe das Problem wenn ich als ADAC joine. Kommt ein Blackscreen mit Empfange Daten vom Server... Überprüfe...

      Mfg powerafro2

    • Cold
      Anfänger
      Reaktionen
      12
      Trophäen
      10
      Beiträge
      30
      Dateien
      1
      • 21. Mai 2016 um 15:44
      • #16
      Zitat von powerafro2

      Hallo, Ich habe das Problem wenn ich als ADAC joine. Kommt ein Blackscreen mit Empfange Daten vom Server... Überprüfe...

      Das selbe Problem habe ich auch

    • dingo
      Anfänger
      Reaktionen
      8
      Trophäen
      11
      Beiträge
      43
      • 27. Mai 2016 um 12:19
      • #17

      ihr habt dann in der @live was falsch

    • Paddy55555
      Anfänger
      Trophäen
      11
      Beiträge
      33
      • 5. Juni 2016 um 17:16
      • #18

      Ich habe den ADAC eingebaut. Doch ich habe immer noch diesen Fehler ADAC und Polizeirundfunk

    • PrideGame
      Schüler
      Reaktionen
      21
      Trophäen
      9
      Beiträge
      111
      Bilder
      3
      • 19. Juni 2016 um 20:11
      • #19

      Was muss ich den beachten wenn ich das auf v4.0 anwenden möchte?

      Jeffry ist das lebende PAWN-Lexikon.
      Quini  :love:
      Server Teamspeak 5.189.163.112

    • Monstersquad
      Frischling
      Trophäen
      9
      Beiträge
      4
      • 20. Oktober 2016 um 21:03
      • #20

      Bei mir kommen zwar keine Fehlermeldungen und co., aber wenn ich kurz vorm joinen bin und er die Datenbank abfragt, steht da die ganze Zeit nur "Setting up client, please wait."
      Ich habe in dem @live_server auch alles 1:1 so gemacht.

      Falls mir einer weiterhelfen könnte wäre das echt super!

    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

    • [Sammelthread] Scripts/Links/Tutorials/Anleitungen ArmA 3

      • Stig
      • 2. September 2016 um 18:29
      • Tutorials & Releases
    • Fehler beim Opfor slot einfügen

      • dfrtcvzf
      • 2. Februar 2017 um 13:29
      • Hilfeforum
    • 4 Fraktion geht nicht

      • dfrtcvzf
      • 29. Januar 2017 um 16:21
      • Hilfeforum
    • Inventar lädt nicht

      • Lurack
      • 3. November 2016 um 23:19
      • Hilfeforum
    • Inventar wird nicht geladen

      • Lurack
      • 21. Oktober 2016 um 13:47
      • Hilfeforum

    Tags

    • adac
    • adac tutorial
    • opfor tutorial
    • opfor
    • adac extdb

    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™