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

    Unerklärliche Performance Probleme

    • Sebi
    • 10. Januar 2016 um 22:32
    • Geschlossen
    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 15:43
      • #21

      Ab 16 Uhr starte ich mit diesen Parametern:
      start "arma3" /min /high "arma3server.exe" -port=2302 "-config=C:\arma3serverconfig\config.cfg" "-cfg=C:\arma3serverconfig\[lexicon]basic.cfg[/lexicon]" "-profiles=C:\arma3serverconfig" "-BEPath=C:\Games\A3Master\Battleye" -name=root "-mod=@[lexicon]extDB[/lexicon];@life_server;@ASM;" -loadMissionToMemory -maxMem=8096 -enableHT

      Spyclass entfernung hat ne ganze Ecke Client FPS gebracht, aber serverseitig hat sich nicht viel getan.

      Siehe Bild.

      Bilder

      • lop2.PNG
        • 22,63 kB
        • 1.230 × 232
        • 212
    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 16:21
      • #22

      Also momentan sieht es sehr gut aus, zumindest deutlich besser als vorher.

      Ich hatte in den alten Startparametern noch cpuCount 5 drin stehen. Das hatte ich ja jetzt rausgenommen,
      problem jetzt. bei 46 Spieler ist der Cpu laut Taskmanager bei 67% Auslastung oO


      Hab paar Bilder reingepackt, Bilder sind benannt

      Bilder

      • 5 min nach restart.PNG
        • 31,69 kB
        • 1.230 × 238
        • 163
      • 16.30 Uhr.PNG
        • 33,6 kB
        • 1.241 × 223
        • 200
      • 32 spieler.PNG
        • 26,5 kB
        • 1.222 × 219
        • 192
    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 20:20
      • #23

      RPT Log, musste Ihn bei uns hochladen da er zu groß ist: http://www.lostofparadise.de/arma3server_20…11_16-01-34.rpt

      Screenshot direkt die ersten 20 Min. nach Server Restart

      Bilder

      • 50 player nach restart.PNG
        • 31,39 kB
        • 1.230 × 236
        • 201
    • Xylometachlorid
      Nerd
      Reaktionen
      402
      Trophäen
      11
      Beiträge
      584
      • 11. Januar 2016 um 21:08
      • #24

      lol da stimmt was nicht. Irgendwas ist in deiner DB broken.

      Ich habe mir die RPT grad nur per Handy angesehen. Wenn ich heute abend daheim bin kann ich dir noch helfen.

      Grüße
      Xylometachlorid

      extDB2 Tutorial: extDB2 Einrichten - so geht's richtig

    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 21:19
      • #25

      Ok vielen dank schon mal.

    • #Provokan
      Anfänger
      Reaktionen
      10
      Trophäen
      11
      Beiträge
      54
      • 11. Januar 2016 um 21:39
      • #26

      Am besten fangt ihr an in euer Stringtable alle Sprachen zu löschen und das <German></German> in <Original></Original> umzuändern um solche Fehler zu vermeiden

      Fehler #1

      Spoiler anzeigen
      Code
      16:01:45 Item STR_Item_HenRaw listed twice
      16:01:45 Item STR_Item_RoosterRaw listed twice
      16:01:45 Item STR_Item_GoatRaw listed twice
      16:01:45 Item STR_Item_SheepRaw listed twice
      16:01:45 Item STR_NOTF_Gather_Success listed twice
      16:01:45 Item STR_NOTF_GatherVeh listed twice
      16:01:45 Item STR_NOTF_NoLootingPerson listed twice
      16:01:45 Item STR_vInAct_Unflip listed twice
      16:01:45 Unsupported language English in stringtable
      16:01:45 Item STR_Item_HenRaw listed twice
      16:01:45 Item STR_Item_RoosterRaw listed twice
      16:01:45 Item STR_Item_GoatRaw listed twice
      16:01:45 Item STR_Item_SheepRaw listed twice
      16:01:45 Item STR_NOTF_Gather_Success listed twice
      16:01:45 Item STR_NOTF_GatherVeh listed twice
      16:01:45 Item STR_NOTF_NoLootingPerson listed twice
      16:01:45 Item STR_vInAct_Unflip listed twice
      16:01:45 Unsupported language English in stringtable
      Alles anzeigen



      Fehler #2

      Spoiler anzeigen
      Code
      Error in expression <",[""]] call BIS_fnc_fetchDeadGear>
      _oldGear = [life_corspe] call life_fnc_fetchDeadGear>
      
      
      
      
      Error position: <life_corspe] call life_fnc_fetchDeadGear
      Error undefined variable in expression: life_corpse
      File Mpmission\cur_mp.Altis\core\medical\fn_revived.sqf, line 10

      Tip von mir, lasst euch nicht alle Client Query Request loggen,
      das zieht auch bissl am Server

      Fehler #3 KA warum er das ausgibt

      Spoiler anzeigen
      Code
      19:10:42 StreamSource: a3\map_altis\altis.wrp; TellGFromOffset: 8; WantedOffset: 153621397; WantedSize: 180; ReadedID: 1174423801; MapGrid: (267,775); ReadedIndex: 1116438924
      19:10:42 StreamSource: a3\map_altis\altis.wrp; TellGFromOffset: 8; WantedOffset: 153621397; WantedSize: 180; ReadedID: 1174423801; MapGrid: (267,775); ReadedIndex: 1116438924
    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 22:04
      • #27

      Stringtable hab ich ebend gefixt...

      Beim 2ten Fehler steh ich grad vor nen Rätsel und weiß nicht was genau gemeint ist.

      C: fn_revived.sqf
      /*
      	File: fn_revived.sqf
      	Author: Bryan "Tonic" Boardwine
      	Description:
      	THANK YOU JESUS I WAS SAVED!
      */
      private["_medic","_dir"];
      _medic = [_this,0,"Unknown Medic",[""]] call BIS_fnc_param;
      _oldGear = [life_corpse] call life_fnc_fetchDeadGear;
      [_oldGear] spawn life_fnc_loadDeadGear;
      life_corpse setVariable["realname",nil,true]; //Should correct the double name sinking into the ground.
      [[life_corpse],"life_fnc_corpse",nil,FALSE] spawn life_fnc_MP;
      _dir = getDir life_corpse;
      hint format[localize "STR_Medic_RevivePay",_medic,[(call life_revive_fee)] call life_fnc_numberText];
      
      
      
      
      closeDialog 0;
      life_deathCamera cameraEffect ["TERMINATE","BACK"];
      camDestroy life_deathCamera;
      
      
      
      
      //Take fee for services.
      if(life_atm5cash > (call life_revive_fee)) then {
      	life_atm5cash = life_atm5cash - (call life_revive_fee);
      } else {
      	life_atm5cash = 0;
      };
      
      
      
      
      //Retexturing of units clothing, vanilla files only retexture the EMS unit.
      switch(playerSide) do {
      	case independent: {[[player,0,"textures\medic_uniform.paa"],"life_fnc_setTexture",true,false] spawn life_fnc_MP;};
      };
      
      
      
      
      //Bring me back to life.
      player setDir _dir;
      player setPosASL (visiblePositionASL life_corpse);
      life_corpse setVariable["Revive",nil,TRUE];
      life_corpse setVariable["name",nil,TRUE];
      [[life_corpse],"life_fnc_corpse",true,false] spawn life_fnc_MP;
      hideBody life_corpse;
      
      
      
      
      player setVariable["Revive",nil,TRUE];
      player setVariable["name",nil,TRUE];
      player setVariable["Reviving",nil,TRUE];
      [] call life_fnc_hudUpdate; //Request update of hud.
      Alles anzeigen
      C: fn_loadDeadGear.sqf
      /*
      	File: fn_loadDeadGear.sqf
      	Author: Bryan "Tonic" Boardwine
      	Description:
      	BLAH
      */
      private["_allowedItems","_loadout","_primary","_launcher","_handgun","_magazines","_uniform","_vest","_backpack","_items","_primitems","_secitems","_handgunitems","_uitems","_vitems","_bitems","_handle"];
      _loadout = [_this,0,[],[[]]] call BIS_fnc_param;
      
      
      
      
      _primary = _loadout select 0;
      _launcher = _loadout select 1;
      _handgun = _loadout select 2;
      _magazines = _loadout select 3;
      _uniform = _loadout select 4;
      _vest = _loadout select 5;
      _backpack = _loadout select 6;
      _items = _loadout select 7;
      _primitems = _loadout select 8;
      _secitems = _loadout select 9;
      _handgunitems = _loadout select 10;
      _uitems = _loadout select 11;
      _vitems = _loadout select 12;
      _bitems = _loadout select 13;
      _headgear = _loadout select 14;
      _goggles = _loadout select 15;
      
      
      
      
      //Strip the unit down
      RemoveAllWeapons player;
      {player removeMagazine _x;} foreach (magazines player);
      removeUniform player;
      removeVest player;
      removeBackpack player;
      removeGoggles player;
      removeHeadGear player;
      {
      	player unassignItem _x;
      	player removeItem _x;
      } foreach (assignedItems player);
      
      
      
      
      //Add the gear
      if(_uniform != "") then {_handle = [_uniform,true,false,false,false] spawn life_fnc_handleItem; waitUntil {scriptDone _handle};};
      if(_vest != "") then {_handle = [_vest,true,false,false,false] spawn life_fnc_handleItem; waitUntil {scriptDone _handle};};
      if(_backpack != "") then {_handle = [_backpack,true,false,false,false] spawn life_fnc_handleItem; waitUntil {scriptDone _handle};};
      {
      	_handle = [_x,true,false,false,false] spawn life_fnc_handleItem;
      	waitUntil {scriptDone _handle};
      } foreach _magazines;
      
      
      
      
      if(_primary != "") then {[_primary,true,false,false,false] spawn life_fnc_handleItem;};
      if(_launcher != "") then {[_launcher,true,false,false,false] spawn life_fnc_handleItem;};
      if(_handgun != "") then {[_handgun,true,false,false,false] spawn life_fnc_handleItem;};
      
      
      
      
      {_handle = [_x,true,false,false,false] spawn life_fnc_handleItem; waitUntil {scriptDone _handle};} foreach _items;
      {[_x,true,false,false,true] call life_fnc_handleItem;} foreach (_uitems);
      {[_x,true,false,false,true] call life_fnc_handleItem;} foreach (_vitems);
      {[_x,true,true,false,false] call life_fnc_handleItem;} foreach (_bitems);
      {[_x,true,false,true,false] call life_fnc_handleItem;} foreach (_primitems);
      {[_x,true,false,true,false] call life_fnc_handleItem;} foreach (_secitems);
      {[_x,true,false,true,false] call life_fnc_handleItem;} foreach (_handgunitems);  
      
      
      
      
      if(_headgear != "") then {player addHeadGear _headgear};
      if(_goggles != "") then {player addGoggles _goggles};
      Alles anzeigen
      C: fn_fetchDeadGear.sqf
      /*
      	File: fn_fetchDeadGear.sqf
      	Author: Bryan "Tonic" Boardwine
      	Description:
      	Fetches gear off of a body.
      */
      private["_primary,_launcher","_handgun","_magazines","_uniform","_vest","_backpack","_items","_primitems","_secitems","_handgunitems","_uitems","_vitems","_bitems","_headgear","_goggles","_unit"];
      _unit = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
      if(isNull _unit) exitWith {};
      _primitems = [];
      _secitems = [];
      _handgunitems = [];
      _primary = primaryWeapon _unit;
      _launcher = secondaryWeapon _unit;
      _handgun = handGunWeapon _unit;
      _magazines = [];
      _uniform = uniform _unit;
      _vest = vest _unit;
      _backpack = backpack _unit;
      _items = assignedItems _unit;
      if(primaryWeapon _unit != "") then {_primitems = primaryWeaponItems _unit;};
      if(handgunWeapon _unit != "") then {_handgunItems = handgunItems _unit;};
      _headgear = headgear _unit;
      _goggles = goggles _unit;
      _uitems = [];
      _vitems = [];
      _bitems = [];
      if(_uniform != "") then {{_uitems pushBack _x;} foreach (uniformItems _unit);};
      if(_vest != "") then {{_vitems pushBack _x;} foreach (vestItems _unit);};
      if(_backpack != "") then {{_bitems pushBack _x;} foreach (backPackItems _unit);};
      if(primaryWeapon _unit != "") then
      {
      	_unit selectWeapon (primaryWeapon _unit);
      	if(currentMagazine _unit != "") then
      	{
      		_magazines pushBack currentMagazine _unit;
      	};
      };
      if(secondaryWeapon _unit != "") then
      {
      	_unit selectWeapon (secondaryWeapon _unit);
      	if(currentMagazine _unit != "") then
      	{
      		_magazines pushBack currentMagazine _unit;
      	};
      };
      if(handgunWeapon _unit != "") then
      {
      	_unit selectWeapon (handgunWeapon _unit);
      	if(currentMagazine _unit != "") then
      	{
      		_magazines pushBack currentMagazine _unit;
      	};
      };
      _unit selectWeapon (primaryWeapon _unit);
      
      
      
      
      if(isNil "_handgunItems") then {_handgunItems = ["","",""];};
      [_primary,_launcher,_handgun,_magazines,_uniform,_vest,_backpack,_items,_primitems,_secitems,_handgunitems,_uitems,_vitems,_bitems,_headgear,_goggles];
      Alles anzeigen

      Einmal editiert, zuletzt von Sebi (11. Januar 2016 um 22:22)

    • #Provokan
      Anfänger
      Reaktionen
      10
      Trophäen
      11
      Beiträge
      54
      • 11. Januar 2016 um 22:34
      • #28

      Also, das mit dem FetchDeadGear, habe ich einfach ausdeklariert, weil
      warum soll ein Toter nach seiner Wiederbelebung direkt mit seinen Sachen aufstehen und diese nicht manuel aufheben müssen.

    • Larry
      Gast
      • 11. Januar 2016 um 22:48
      • #29

      Vlt weil man, wenn man stirbt, net einfach die Kleider vom Leib gerissen bekommt?

    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 22:53
      • #30

      Joa bei uns ist das Looten unterbunden von toten und wenn ich wiederbelebt werde, liegt mein Z Inventar aufen Boden und das wars... Klamotten hab ich an.

    • Larry
      Gast
      • 11. Januar 2016 um 22:55
      • #31

      Aso, dann passt das ja, meinte nur dass die Kleidung dann immernoch auf dem Boden liegt

    • #Provokan
      Anfänger
      Reaktionen
      10
      Trophäen
      11
      Beiträge
      54
      • 11. Januar 2016 um 23:16
      • #32

      Nene du kannst das ruhig ausdeklarieren das FetchDeadGear ist nur dazu da, um dem Spieler dann die waffen direkt wieder anzuziehen, was ich bissl blöd finde.

    • Sebi
      Frischling
      Reaktionen
      4
      Trophäen
      10
      Beiträge
      21
      • 11. Januar 2016 um 23:19
      • #33

      ok ich werds morgen mal aufen tester testen.

      Also einfach Zeile 10 auskommentieren...

    • #Provokan
      Anfänger
      Reaktionen
      10
      Trophäen
      11
      Beiträge
      54
      • 11. Januar 2016 um 23:25
      • #34

      nein in der core/init.sqf einfach die spawn ............. fetchdedgear ausdeklarieren also mit //

    • dero
      Gast
      • 11. Januar 2016 um 23:57
      • #35

      Xylo, du erzählst unfundierten Schwachsinn höchster Güte. Eine Schleife, die vom Client ausgeführt wird ist irrelevant für den Server. Falls du Gegenteiliges behauptest, schaffst du es, dich öffentlich als inkompetent darzustellen.

    • RawrImATiger
      Frischling
      Reaktionen
      9
      Trophäen
      11
      Beiträge
      13
      • 12. Januar 2016 um 05:22
      • #36

      Xylo ich will keine unnötige diskussion aber ich kann dir viele wege zeigen einen Server zu killen aber um gottes willen nicht mit Client site schleifen Dafuq lol dash

      "Client Side" du hast den fehler selbst geschrieben die sind clientside d.h. die werden von dem Client Gerechnet und verarbeitet
      "Server Side" Komplettes gegenteil

      de9d4ea7df9961a3ba1d9d1250a2e8df.png

    • dero
      Gast
      • 12. Januar 2016 um 07:26
      • #37

      Wie auch immer, ich denke Xylo ist schon gefrustet genug (wer wird schon gerne aus seinem eigenen Projekt geworfen).

      Als Erstes:
      Server von der SSD runter und ab auf ne Ramdisk.

      Wieso holt ihr euch eine sonst überdimensionierte Maschine? Wollt ihr damit aufm Mond landen? Da könnt ihr locker 100 € sparen, wenn ich euch ein billigeres Modell holt.

      -loadMissionToMemory ist ein Performancekiller.
      Wieso so eine alte [lexicon]extDB[/lexicon]-Version?

      SpyGlass raus, ihr habt BE-Filter

      Zu ausführliche BE-Filter wirken sich auch auf die Client-Performance aus.

      Wie viele Spieler habt ihr? Solche Werte sind komplett normal bei einem vollen Server.

      Ich wurde die Mission gerne mal sehen. Muss ja wohl hyper optimiert sein, wenn ihr so überzeugt seid. Habt ihr das Trunk-System neu geschrieben? Das wäre schon mal der erste Schritt.

      Eure [lexicon]Basic.cfg[/lexicon] ist einfach auch komplett leer.

      Sorry, bitte informiert euch doch ein bisschen, bevor ihr nen Server aufmacht. Am Ende müssen es dann immer andere richten.

      Haltet euch vor allem nicht mit der Stringtable auf, wie oben empfohlen, das ist komplett irrelevant. Sucht einfach die doppelten Einträge und löscht diese raus.

    • Xylometachlorid
      Nerd
      Reaktionen
      402
      Trophäen
      11
      Beiträge
      584
      • 12. Januar 2016 um 08:06
      • #38
      Zitat von RawrImATiger

      Xylo ich will keine unnötige diskussion aber ich kann dir viele wege zeigen einen Server zu killen aber um gottes willen nicht mit Client site schleifen Dafuq lol dash

      "Client Side" du hast den fehler selbst geschrieben die sind clientside d.h. die werden von dem Client Gerechnet und verarbeitet
      "Server Side" Komplettes gegenteil

      Pardon, das war am Handy getippt und ich habe hier auch nur Zitiert. Das man mit Mission Side Schleifen nicht - oder nur sehr schwer - einen Server killen kann weiß ich auch :D

      Grüße
      Xylo

      extDB2 Tutorial: extDB2 Einrichten - so geht's richtig

    • Xylometachlorid
      Nerd
      Reaktionen
      402
      Trophäen
      11
      Beiträge
      584
      • 12. Januar 2016 um 08:09
      • #39
      Zitat von dero

      Wie auch immer, ich denke Xylo ist schon gefrustet genug (wer wird schon gerne aus seinem eigenen Projekt geworfen).

      Noch so nen Spruch und du fliegst hier raus. Egal gegen wen.

      Mag sein dass du für dein Ego brauchst, andere zu diffamieren. Aber dann bitte nicht in einem Forum in dem wir uns gegenseitig Helfen!

      Mit freundlichen Grüßen
      Xylometachlorid

      extDB2 Tutorial: extDB2 Einrichten - so geht's richtig

    • dero
      Gast
      • 12. Januar 2016 um 08:14
      • #40

      Helfen bedeutet vor allem keine fachlich falsche Aussagen zu treffen. Also kannst du dich wegen deinen eigenen Aussagen entfernen oder dein Ego mit deinem Moderator-Badge vergrößern

    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™