[Guide] DayZ Standalone Server HowTo's und FAQ für Server Admins
-
-
Hey,
Ich habe ein kleines Problem mit meiner Init.
Ich habe alles so, wie ich es haben will, nur es spawnen einfach nicht die 6 Rags in dem Inventar [boom]
Eigentlich sollten diese da spawnen, da alles korrekt eingegeben ist..
Kann mir vllt. einer weiterhelfen ?
Ich hänge mal meine init an.
Code
Alles anzeigenvoid main() { //INIT WEATHER BEFORE ECONOMY INIT------------------------ //All to set to null give always sunshine, no fog, and less clouds Weather weather = g_Game.GetWeather(); weather.MissionWeather(false); // false = use weather controller from Weather.c weather.GetOvercast().Set( Math.RandomFloatInclusive(0, 0), 0, 0); weather.GetRain().Set( 0, 0, 0); weather.GetFog().Set( Math.RandomFloatInclusive(0, 0), 0, 0); //INIT ECONOMY-------------------------------------- Hive ce = CreateHive(); if ( ce ) { ce.InitOffline(); } //DATE RESET AFTER ECONOMY INIT------------------------- int year; int month; int day; int hour; int minute; GetGame().GetWorld().GetDate(year, month, day, hour, minute); if (((month <= 2) && (day < 5)) || ((month >= 11) && (day > 20))) { month = 6; day = 15; GetGame().GetWorld().SetDate(2018, 4, 25, 12, 00); } } class CustomMission: MissionServer { void SetRandomHealth(EntityAI itemEnt) { if ( itemEnt ) { int rndHlt = Math.RandomInt(55,100); itemEnt.SetHealth("","",rndHlt); } } override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName) { Entity playerEnt; playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player Class.CastTo(m_player, playerEnt); GetGame().SelectPlayer(identity, m_player); return m_player; } override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { //RemoveAllItems player.RemoveAllItems(); //Give universal gear in inventory ItemBase.Cast(player.GetInventory().CreateInInventory("FurImprovisedBag")); ItemBase.Cast(player.GetInventory().CreateInInventory("WorkingGloves_Beige")); ItemBase.Cast(player.GetInventory().CreateInInventory("CargoPants_Beige")); ItemBase.Cast(player.GetInventory().CreateInInventory("TacticalShirt_Tan")); ItemBase.Cast(player.GetInventory().CreateInInventory("SportGlasses_Black")); ItemBase.Cast(player.GetInventory().CreateInInventory("MilitaryBoots_Beige")); ItemBase.Cast(player.GetInventory().CreateInInventory("BaseballCap_Beige")); player.GetHumanInventory().CreateInHands("FNX45"); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Canteen")); ItemBase.Cast(player.GetInventory().CreateInInventory("Rice")); ItemBase.Cast(player.GetInventory().CreateInInventory("CombatKnife")); ItemBase.Cast(player.GetInventory().CreateInInventory("Rag")).SetQuantity(6); ItemBase.Cast(player.GetInventory().CreateInInventory("Morphine")); } }; Mission CreateCustomMission(string path) { return new CustomMission(); }
-
Hey,
Ich habe ein kleines Problem mit meiner Init.
Ich habe alles so, wie ich es haben will, nur es spawnen einfach nicht die 6 Rags in dem Inventar [boom]
Eigentlich sollten diese da spawnen, da alles korrekt eingegeben ist..
Kann mir vllt. einer weiterhelfen ?
Ich hänge mal meine init an.
Code
Alles anzeigenvoid main() { //INIT WEATHER BEFORE ECONOMY INIT------------------------ //All to set to null give always sunshine, no fog, and less clouds Weather weather = g_Game.GetWeather(); weather.MissionWeather(false); // false = use weather controller from Weather.c weather.GetOvercast().Set( Math.RandomFloatInclusive(0, 0), 0, 0); weather.GetRain().Set( 0, 0, 0); weather.GetFog().Set( Math.RandomFloatInclusive(0, 0), 0, 0); //INIT ECONOMY-------------------------------------- Hive ce = CreateHive(); if ( ce ) { ce.InitOffline(); } //DATE RESET AFTER ECONOMY INIT------------------------- int year; int month; int day; int hour; int minute; GetGame().GetWorld().GetDate(year, month, day, hour, minute); if (((month <= 2) && (day < 5)) || ((month >= 11) && (day > 20))) { month = 6; day = 15; GetGame().GetWorld().SetDate(2018, 4, 25, 12, 00); } } class CustomMission: MissionServer { void SetRandomHealth(EntityAI itemEnt) { if ( itemEnt ) { int rndHlt = Math.RandomInt(55,100); itemEnt.SetHealth("","",rndHlt); } } override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName) { Entity playerEnt; playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player Class.CastTo(m_player, playerEnt); GetGame().SelectPlayer(identity, m_player); return m_player; } override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { //RemoveAllItems player.RemoveAllItems(); //Give universal gear in inventory ItemBase.Cast(player.GetInventory().CreateInInventory("FurImprovisedBag")); ItemBase.Cast(player.GetInventory().CreateInInventory("WorkingGloves_Beige")); ItemBase.Cast(player.GetInventory().CreateInInventory("CargoPants_Beige")); ItemBase.Cast(player.GetInventory().CreateInInventory("TacticalShirt_Tan")); ItemBase.Cast(player.GetInventory().CreateInInventory("SportGlasses_Black")); ItemBase.Cast(player.GetInventory().CreateInInventory("MilitaryBoots_Beige")); ItemBase.Cast(player.GetInventory().CreateInInventory("BaseballCap_Beige")); player.GetHumanInventory().CreateInHands("FNX45"); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Canteen")); ItemBase.Cast(player.GetInventory().CreateInInventory("Rice")); ItemBase.Cast(player.GetInventory().CreateInInventory("CombatKnife")); ItemBase.Cast(player.GetInventory().CreateInInventory("Rag")).SetQuantity(6); ItemBase.Cast(player.GetInventory().CreateInInventory("Morphine")); } }; Mission CreateCustomMission(string path) { return new CustomMission(); }
Für mich sieht das auch gut aus, kann es sein das du kein freien Inventarplatz hast? Füg mal ein Rucksack hinzu und schau ob es mit spawnt.
-
Hallo ! Das Problem wurde nicht gelöst, es war nicht möglich, das zu korrigieren, was ich im letzten Beitrag geschrieben habe.
Ich habe dir in Discord geschrieben aber du hast nicht mehr geantwortet.
-
Habe nun anstatt des Improvised Bags, den größten (Field/Alice Backpack) eingefügt und die Rags spawnen immernoch nicht im Inv [moon][boom]
Kann es sein, dass die Rags nur in einem bestimmten Slot spawnen und wenn dieser Slot durch z.B in meinem Fall die Mags für die Pistol belegt ist, die Rags dann gar nicht spawnen ?
-
Habe nun anstatt des Improvised Bags, den größten (Field/Alice Backpack) eingefügt und die Rags spawnen immernoch nicht im Inv [moon][boom]
Kann es sein, dass die Rags nur in einem bestimmten Slot spawnen und wenn dieser Slot durch z.B in meinem Fall die Mags für die Pistol belegt ist, die Rags dann gar nicht spawnen ?
Das könnte sein bin ich aber nicht sicher, hatte das Problem noch nicht. Am besten du tauschst mal Zeile 61 mit 74
-
Aktuell ist es mit den Rags wirklich etwas verhext. Wenn Du die Rags in die Init.c mit aufnimmst, bekommst Du diese in den HandSlot gelegt sofern dieser nicht besetzt ist.
Kleiner Workaround könnte man mit Bandagen machen. Diese werden ins Inventar gelegt.
In der Init solltet Ihr dann statt Rag einfach "BandageDressing" nehmen. Wenn Ihr den Füllstand dazu nehmt, sollte der Wert 2 eine volle Bangage sein.
Gruß,
[moon]
-
Habe grade etliche versuche gemacht und mir ist aufgefallen, dass wenn ich die FNX45 Gun im Inv., statt in der Hand spawnen lasse, die Rags automatisch in der Hand spawnen.. Obwohl ich die Rags als "CreateInInventory" deklariert habe.
Das ist sehr komisch..
Vielleicht spawnen die Rags standartmäßig in der Hand und wenn man etwas anderes in der Hand spawnen lässt, verschwinden die Rags komplett.
Aber das macht gar keinen Sinn, wenn ich die Rags im Inv. create
-
-
-
Thanks! What value should be set to rain and clouds on the server?
-
//If all is set to null give always sunshine, no fog, and less clouds - Weather weather = g_Game.GetWeather();
- weather.GetOvercast().SetLimits( 0.0 , 0.0 );
- weather.GetRain().SetLimits( 0.0 , 0.0 );
- weather.GetFog().SetLimits( 0.0 , 0.0 );
- weather.GetOvercast().SetForecastChangeLimits( 0.0, 0.0 );
- weather.GetRain().SetForecastChangeLimits( 0.0, 0.0 );
- weather.GetFog().SetForecastChangeLimits( 0.0, 0.0 );
- weather.GetOvercast().Set( 0, 0, 0);
- weather.GetRain().Set( 0, 0, 0);
- weather.GetFog().Set( 0, 0, 0);
- weather.SetWindMaximumSpeed(0);
- weather.SetWindFunctionParams(0.0, 0.0, 0);
-
-
Code
Weather weather = g_Game.GetWeather(); weather.MissionWeather(false); // false = use weather controller from Weather.c weather.GetOvercast().Set( Math.RandomFloatInclusive(0.4, 0.6), 1, 0); weather.GetRain().Set( 0, 0, 1); weather.GetFog().Set( Math.RandomFloatInclusive(0.05, 0.1), 1, 0); weather.GetRain().SetLimits( 0, 0.1 );
take this instead, you can take all between 0 and 1
-
Hey ich versuche schon seit gestern den ganzen Tag den Mod Winter_Chernarus auf meinem neuen server zu installieren und komme da einfach nicht weiter
zuerst hatte es garnicht geladen wegen falschen parametern bzw. flüchtigkeitsfehlern
und wie es jetzt geladen hat werde ich gekickt wegen mission files & Schnee sieht man auch keinen
Also, ist ein gehosteter Server und in der start.bat (run.bat) Datei steht:
cd gameserver
DayZServer_x64 -port=%gport% -config=serverDZ.cfg -scrAllowFileWrite -profiles=%cd%\gameserver\profiles -cpuCount=2 -netlog -dologs -adminlog -freezecheck "-mod=@DayZ-SA-Tomato;@Winter_Chernarus;@SnowClothing;"
Launch Parameter in DZSA Launcher: -mod@DayZ-SA-Tomato;-mod=@Winter_Chernarus;-mod=@SnowClothing;
.Bikey keys sind im Key folder
Ich habe sogar in die dayzsettings.xml folgendes eingetragen: (setzte sich aber nach dem kopieren wieder auf standart)
<executable path="DayZIntDX11.exe" parameters="-noPause -window -x=1280 -y=720 -mod=@Winter_Chernarus"
Ich habe den Server jetzt auch schon neu aufgesetzt und mal nur den Winter Mod installiert und es geht nicht
Hat jemand ne Ahnung? Bei anderen geht es ja auch problemlos was misse ich hier?
-
Hey ich versuche schon seit gestern den ganzen Tag den Mod Winter_Chernarus auf meinem neuen server zu installieren und komme da einfach nicht weiter
zuerst hatte es garnicht geladen wegen falschen parametern bzw. flüchtigkeitsfehlern
und wie es jetzt geladen hat werde ich gekickt wegen mission files & Schnee sieht man auch keinen
Also, ist ein gehosteter Server und in der start.bat (run.bat) Datei steht:
cd gameserver
DayZServer_x64 -port=%gport% -config=serverDZ.cfg -scrAllowFileWrite -profiles=%cd%\gameserver\profiles -cpuCount=2 -netlog -dologs -adminlog -freezecheck "-mod=@DayZ-SA-Tomato;@Winter_Chernarus;@SnowClothing;"
Launch Parameter in DZSA Launcher: -mod@DayZ-SA-Tomato;-mod=@Winter_Chernarus;-mod=@SnowClothing;
.Bikey keys sind im Key folder
Ich habe sogar in die dayzsettings.xml folgendes eingetragen: (setzte sich aber nach dem kopieren wieder auf standart)
<executable path="DayZIntDX11.exe" parameters="-noPause -window -x=1280 -y=720 -mod=@Winter_Chernarus"
Ich habe den Server jetzt auch schon neu aufgesetzt und mal nur den Winter Mod installiert und es geht nicht
Hat jemand ne Ahnung? Bei anderen geht es ja auch problemlos was misse ich hier?
Versuch mal:
- "-mod=@DayZ-SA-Tomato;@Winter_Chernarus;@SnowClothing;" - Am Ende das Semikolon weg.
- den normalen DayZ Launcher zu nehmen und da die Mods zu laden.
- in der dayzsettings.xml sollte das -mod nicht stehen
Wenn du den DZSAL Launcher nutzen willst solltest du auch dafür sorgen das die mods automatisch geladen werden dazu schau dir mal am besten das hier an: Link
-
Danke für diesen ausführlichen Beitrag!
Wie kann ich an deine Version von Start Spawn Gear nochmal eins dran hängen?
Also ich bräuchte im override void StartingEquipSetup so zusagen ein extra else?Admins, Spieler, Sonstige*
*Sonstige sollen eigene Spawnpunkte für Spieler-Gruppen sein, bis ich weiß wie ich dafür einen Ingame befehl schreiben kann.
Diese coordinaten bzw player Id's würde ich bevorzugt gerne in .txt oder .json lagern. Aber auch da, keine ahnung... -
Danke für diesen ausführlichen Beitrag!
Wie kann ich an deine Version von Start Spawn Gear nochmal eins dran hängen?
Also ich bräuchte im override void StartingEquipSetup so zusagen ein extra else?Admins, Spieler, Sonstige*
*Sonstige sollen eigene Spawnpunkte für Spieler-Gruppen sein, bis ich weiß wie ich dafür einen Ingame befehl schreiben kann.
Diese coordinaten bzw player Id's würde ich bevorzugt gerne in .txt oder .json lagern. Aber auch da, keine ahnung...C
Alles anzeigen//Admins const string a_uid1 = "xxxxxxxxxxxxx"; const string a_uid2 = "xxxxxxxxxxxxx"; //Players const string p_uid1 = "xxxxxxxxxxxxx"; const string p_uid2 = "xxxxxxxxxxxxx"; const string p_uid3 = "xxxxxxxxxxxxx"; //cache the uid string uid = player.GetIdentity().GetPlainId(); //Booleans bool isAdmin = false; bool IsPlayer = false; bool IsCasualPlayer = false; if (uid == a_uid1 || uid == a_uid2) { IsAdmin = true; } else if(uid == p_uid1 || uid == p_uid2 || uid == p_uid3) { IsPlayer = true; } else { IsCasualPlayer = true; } if(isAdmin) { player.RemoveAllItems(); //GearStuff } if(IsPlayer) { player.RemoveAllItems(); //GearStuff } if(IsCasualPlayer) { player.RemoveAllItems(); //GearStuff }
-
-
Oder wird er automatisch zu IsCasualPlayer sobald keine Spieler-ID passt?
Richtig, wenn keine uid passt die du da eingetragen hast wird er automatisch zum casual player bzw wird die variable auf true gesetzt.
-
Ok also ich hab nun mal versucht daraus was zu stricken, ich möchte das ganze extern als spawn.c includen.
Code
Alles anzeigenvoid StartingEquipSetup(PlayerBase player, bool clothesChosen) { //Entitys EntityAI gun_fnx45; EntityAI gun_j70; EntityAI hunterknife; EntityAI walki; EntityAI kopflampe; EntityAI binde; EntityAI feldflasche; EntityAI wasserflasche; EntityAI bohnenoffen; EntityAI itemEnt; ItemBase itemBs; //Admins const string a_uid1 = "xxxxxxxxxxxxx"; const string a_uid2 = "xxxxxxxxxxxxx"; const string a_uid3 = "xxxxxxxxxxxxx"; const string a_uid4 = "xxxxxxxxxxxxx"; //Gruppe 1 const string g1_uid1 = "xxxxxxxxxxxxx"; const string g1_uid2 = "xxxxxxxxxxxxx"; const string g1_uid3 = "xxxxxxxxxxxxx"; const string g1_uid4 = "xxxxxxxxxxxxx"; const string g1_uid5 = "xxxxxxxxxxxxx"; //Gruppe 2 const string g2_uid1 = "xxxxxxxxxxxxx"; const string g2_uid2 = "xxxxxxxxxxxxx"; const string g2_uid3 = "xxxxxxxxxxxxx"; const string g2_uid4 = "xxxxxxxxxxxxx"; const string g2_uid5 = "xxxxxxxxxxxxx"; //Gruppe 3 const string g3_uid1 = "xxxxxxxxxxxxx"; const string g3_uid2 = "xxxxxxxxxxxxx"; const string g3_uid3 = "xxxxxxxxxxxxx"; const string g3_uid4 = "xxxxxxxxxxxxx"; const string g3_uid5 = "xxxxxxxxxxxxx"; //Gruppe 4 const string g4_uid1 = "xxxxxxxxxxxxx"; const string g4_uid2 = "xxxxxxxxxxxxx"; const string g4_uid3 = "xxxxxxxxxxxxx"; const string g4_uid4 = "xxxxxxxxxxxxx"; const string g4_uid5 = "xxxxxxxxxxxxx"; //Gruppe 5 const string g5_uid1 = "xxxxxxxxxxxxx"; const string g5_uid2 = "xxxxxxxxxxxxx"; const string g5_uid3 = "xxxxxxxxxxxxx"; const string g5_uid4 = "xxxxxxxxxxxxx"; const string g5_uid5 = "xxxxxxxxxxxxx"; //cache the uid string uid = player.GetIdentity().GetPlainId(); //Booleans bool isAdmin = false; bool IsGroup1 = false; bool IsGroup2 = false; bool IsGroup3 = false; bool IsGroup4 = false; bool IsGroup5 = false; bool IsCasualPlayer = false; if (uid == a_uid1 || uid == a_uid2 || uid == a_uid3 || uid == a_uid4) { IsAdmin = true; } else if(uid == g1_uid1 || uid == g1_uid2 || uid == g1_uid3 || uid == g1_uid4 || uid == g1_uid5) { IsGroup1 = true; } else if(uid == g2_uid1 || uid == g2_uid2 || uid == g2_uid3 || uid == g2_uid4 || uid == g2_uid5) { IsGroup2 = true; } else if(uid == g3_uid1 || uid == g3_uid2 || uid == g3_uid3 || uid == g3_uid4 || uid == g3_uid5) { IsGroup3 = true; } else if(uid == g4_uid1 || uid == g4_uid2 || uid == g4_uid3 || uid == g4_uid4 || uid == g4_uid5) { IsGroup4 = true; } else if(uid == g5_uid1 || uid == g5_uid2 || uid == g5_uid3 || uid == g5_uid4 || uid == g5_uid5) { IsGroup5 = true; } else { IsCasualPlayer = true; } if(isAdmin) { player.RemoveAllItems(); //Rucksack und Klamotten ItemBase.Cast(player.GetInventory().CreateInInventory("ImprovisedBag")); ItemBase.Cast(player.GetInventory().CreateInInventory("HuntingVest")); ItemBase.Cast(player.GetInventory().CreateInInventory("HuntingJacket_Summer")); ItemBase.Cast(player.GetInventory().CreateInInventory("HunterPants_Summer")); ItemBase.Cast(player.GetInventory().CreateInInventory("CombatBoots_Green")); ItemBase.Cast(player.GetInventory().CreateInInventory("BoonieHat_Flecktran")); //Equipment hunterknife = player.GetInventory().CreateInInventory("HuntingKnife"); walky = player.GetHumanInventory().CreateInHands("PersonalRadio"); ItemBase.Cast(player.GetInventory().CreateInInventory("Battery9V")); if (itemEnt.HasEnergyManager() && itemEnt.GetCompEM().CanSwitchOn()) itemEnt.GetCompEM().SwitchOn(); kopflampe = player.GetInventory().CreateInInventory("Headtorch_Black"); ItemBase.Cast(player.GetInventory().CreateInInventory("Battery9V")); //Trinken und Essen feldflasche = player.GetInventory().CreateInInventory("Canteen"); bohnenoffen = player.GetInventory().CreateInInventory("BakedBeansCan_Opened"); //Medizin binde = player.GetInventory().CreateInInventory("Bandage"); //Waffe und Magazine gun_fnx45 = player.GetInventory().CreateInInventory("FNX45"); gun_fnx45.GetInventory().CreateAttachment("PistolSuppressor"); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_FNX45_15Rnd")); //Spawnpunkt player.SetPosition("6067.9 179.1 4032.1"); //Spawn-Cherno-Wald //Aktionsslot player.SetQuickBarEntityShortcut(hunterknife, 0, true); player.SetQuickBarEntityShortcut(gun_fnx45, 1, true); player.SetQuickBarEntityShortcut(walky, 9, true); player.SetQuickBarEntityShortcut(binde, 8, true); player.SetQuickBarEntityShortcut(feldflasche, 7, true); player.SetQuickBarEntityShortcut(bohnenoffen, 6, true); player.SetQuickBarEntityShortcut(kopflampe, 5, true); } if(IsGroup1) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup2) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup3) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup4) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup5) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsCasualPlayer) { player.RemoveAllItems(); //Rucksack und Klamotten ItemBase.Cast(player.GetInventory().CreateInInventory("CourierBag")); ItemBase.Cast(player.GetInventory().CreateInInventory("Raincoat_Green")); ItemBase.Cast(player.GetInventory().CreateInInventory("Jeans_Brown")); ItemBase.Cast(player.GetInventory().CreateInInventory("HikingBoots_Brown")); //Equipment hunterknife = player.GetInventory().CreateInInventory("HuntingKnife"); walky = player.GetHumanInventory().CreateInHands("PersonalRadio"); ItemBase.Cast(player.GetInventory().CreateInInventory("Battery9V")); if (itemEnt.HasEnergyManager() && itemEnt.GetCompEM().CanSwitchOn()) itemEnt.GetCompEM().SwitchOn(); kopflampe = player.GetInventory().CreateInInventory("Headtorch_Black"); ItemBase.Cast(player.GetInventory().CreateInInventory("Battery9V")); //Trinken und Essen wasserflasche = player.GetInventory().CreateInInventory("WaterBottle"); bohnenoffen = player.GetInventory().CreateInInventory("BakedBeansCan_Opened"); //Medizin binde = player.GetInventory().CreateInInventory("Bandage"); //Waffe und Magazine gun_j70 = player.GetInventory().CreateInInventory("MakarovIJ70"); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_IJ70_8Rnd")); ItemBase.Cast(player.GetInventory().CreateInInventory("Mag_IJ70_8Rnd")); //Spawnpunkt //Aktionsslot player.SetQuickBarEntityShortcut(hunterknife, 0, true); player.SetQuickBarEntityShortcut(gun_j70, 1, true); player.SetQuickBarEntityShortcut(walky, 9, true); player.SetQuickBarEntityShortcut(binde, 8, true); player.SetQuickBarEntityShortcut(wasserflasche, 7, true); player.SetQuickBarEntityShortcut(bohnenoffen, 6, true); player.SetQuickBarEntityShortcut(kopflampe, 5, true); } }
/EDIT
Also als teil der init.c funktioniert das ganze nun, also spawn.c nicht... (Da passiert dann einfach nix)Wenn ich das ganze in der init.c habe spawnen die leute mit gear. Aber nicht alles... die Flasche und die Bandage fehlen.
-
K3l3g also hab mal was für dich gebastelt. Kann sein das Fehler drin sind hab nur mit N++ gearbeitet Falls welche drin sind sag Bescheid.
Also schreibe das #include ganz oben in die init.c und den Rest in den Abschnitt class CustomMission: MissionServer
C: init.c
Alles anzeigen#include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\StartEqSetup.c" class CustomMission: MissionServer { //<--- StartEqSetup ---> ref StartEqSetup ses; void CustomMission() { ses = new StartEqSetup; } //<!--- StartEqSetup ---> override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { //Call func in StartEqSetup.c ses.CreateStartEqSetup(player, clothesChosen); } }
und das hier ist deine neue Klasse StartEqSetup.c am besten du übernimmst sie auch 1:1, das mit den Bandages sollte jetzt laufen,
C: StartEqSetup.c
Alles anzeigenclass StartEqSetup { void StartEqSetup() { } void ~StartEqSetup() { } void CreateStartEqSetup(PlayerBase player, bool clothesChosen) { //Entitys EntityAI gun_fnx45; EntityAI gun_j70; EntityAI hunterknife; EntityAI walki; EntityAI kopflampe; EntityAI binde; EntityAI feldflasche; EntityAI wasserflasche; EntityAI bohnenoffen; EntityAI improBag; EntityAI hunterVest; EntityAI hunterJacket; EntityAI hunterPants; EntityAI combatBoots; EntityAI boonieHat; EntityAI fnx45_light; EntityAI courierBag; EntityAI raincoatGr; EntityAI jeansBr; EntityAI hikingBoots; //Admins const string a_uid1 = "xxxxxxxxxxxxx"; const string a_uid2 = "xxxxxxxxxxxxx"; const string a_uid3 = "xxxxxxxxxxxxx"; const string a_uid4 = "xxxxxxxxxxxxx"; //Gruppe 1 const string g1_uid1 = "xxxxxxxxxxxxx"; const string g1_uid2 = "xxxxxxxxxxxxx"; const string g1_uid3 = "xxxxxxxxxxxxx"; const string g1_uid4 = "xxxxxxxxxxxxx"; const string g1_uid5 = "xxxxxxxxxxxxx"; //Gruppe 2 const string g2_uid1 = "xxxxxxxxxxxxx"; const string g2_uid2 = "xxxxxxxxxxxxx"; const string g2_uid3 = "xxxxxxxxxxxxx"; const string g2_uid4 = "xxxxxxxxxxxxx"; const string g2_uid5 = "xxxxxxxxxxxxx"; //Gruppe 3 const string g3_uid1 = "xxxxxxxxxxxxx"; const string g3_uid2 = "xxxxxxxxxxxxx"; const string g3_uid3 = "xxxxxxxxxxxxx"; const string g3_uid4 = "xxxxxxxxxxxxx"; const string g3_uid5 = "xxxxxxxxxxxxx"; //Gruppe 4 const string g4_uid1 = "xxxxxxxxxxxxx"; const string g4_uid2 = "xxxxxxxxxxxxx"; const string g4_uid3 = "xxxxxxxxxxxxx"; const string g4_uid4 = "xxxxxxxxxxxxx"; const string g4_uid5 = "xxxxxxxxxxxxx"; //Gruppe 5 const string g5_uid1 = "xxxxxxxxxxxxx"; const string g5_uid2 = "xxxxxxxxxxxxx"; const string g5_uid3 = "xxxxxxxxxxxxx"; const string g5_uid4 = "xxxxxxxxxxxxx"; const string g5_uid5 = "xxxxxxxxxxxxx"; //cache the uid string uid = player.GetIdentity().GetPlainId(); //Booleans bool isAdmin = false; bool IsGroup1 = false; bool IsGroup2 = false; bool IsGroup3 = false; bool IsGroup4 = false; bool IsGroup5 = false; bool IsCasualPlayer = false; if (uid == a_uid1 || uid == a_uid2 || uid == a_uid3 || uid == a_uid4) { IsAdmin = true; } else if(uid == g1_uid1 || uid == g1_uid2 || uid == g1_uid3 || uid == g1_uid4 || uid == g1_uid5) { IsGroup1 = true; } else if(uid == g2_uid1 || uid == g2_uid2 || uid == g2_uid3 || uid == g2_uid4 || uid == g2_uid5) { IsGroup2 = true; } else if(uid == g3_uid1 || uid == g3_uid2 || uid == g3_uid3 || uid == g3_uid4 || uid == g3_uid5) { IsGroup3 = true; } else if(uid == g4_uid1 || uid == g4_uid2 || uid == g4_uid3 || uid == g4_uid4 || uid == g4_uid5) { IsGroup4 = true; } else if(uid == g5_uid1 || uid == g5_uid2 || uid == g5_uid3 || uid == g5_uid4 || uid == g5_uid5) { IsGroup5 = true; } else { IsCasualPlayer = true; } if(isAdmin) { player.RemoveAllItems(); //Rucksack und Klamotten improBag = player.GetInventory().CreateInInventory("ImprovisedBag"); hunterVest = player.GetInventory().CreateInInventory("HuntingVest"); hunterJacket = player.GetInventory().CreateInInventory("HuntingJacket_Summer"); hunterPants = player.GetInventory().CreateInInventory("HunterPants_Summer"); combatBoots = player.GetInventory().CreateInInventory("CombatBoots_Green"); boonieHat = player.GetInventory().CreateInInventory("BoonieHat_Flecktran"); //Equipment hunterknife = combatBoots.GetInventory().CreateInInventory("HuntingKnife"); walky = hunterJacket.GetHumanInventory().CreateInHands("PersonalRadio"); walky.GetInventory().CreateInInventory("Battery9V"); kopflampe = player.GetInventory().CreateInInventory("Headtorch_Black"); kopflampe.GetInventory().CreateInInventory("Battery9V"); //Trinken und Essen feldflasche = improBag.GetInventory().CreateInInventory("Canteen"); bohnenoffen = improBag.GetInventory().CreateInInventory("BakedBeansCan_Opened"); //Medizin binde = improBag.GetInventory().CreateInInventory("BandageDressing"); //Waffe und Magazine gun_fnx45 = player.GetHumanInventory().CreateInHands("FNX45"); gun_fnx45.GetInventory().CreateAttachment("PistolSuppressor"); fnx45_light = gun_fnx45.GetInventory().CreateInInventory("TLRLight"); fnx45_light.GetInventory().CreateAttachment("Battery9V"); hunterVest.GetInventory().CreateInInventory("Mag_FNX45_15Rnd"); hunterVest.GetInventory().CreateInInventory("Mag_FNX45_15Rnd"); hunterVest.GetInventory().CreateInInventory("Mag_FNX45_15Rnd"); //Aktionsslot player.SetQuickBarEntityShortcut(hunterknife, 0, true); player.SetQuickBarEntityShortcut(gun_fnx45, 1, true); player.SetQuickBarEntityShortcut(walky, 9, true); player.SetQuickBarEntityShortcut(binde, 8, true); player.SetQuickBarEntityShortcut(feldflasche, 7, true); player.SetQuickBarEntityShortcut(bohnenoffen, 6, true); player.SetQuickBarEntityShortcut(kopflampe, 5, true); //Spawnpunkt player.SetPosition("6067.9 179.1 4032.1"); //Spawn-Cherno-Wald } if(IsGroup1) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup2) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup3) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup4) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsGroup5) { player.RemoveAllItems(); //Ausruestung //Spawnpunkt player.SetPosition("13355.4 6.01242 6446.85"); //Spawn-??? } if(IsCasualPlayer) { player.RemoveAllItems(); //Rucksack und Klamotten courierBag = player.GetInventory().CreateInInventory("CourierBag"); raincoatGr = player.GetInventory().CreateInInventory("Raincoat_Green"); jeansBr = player.GetInventory().CreateInInventory("Jeans_Brown"); hikingBoots = player.GetInventory().CreateInInventory("HikingBoots_Brown"); //Equipment hunterknife = jeansBr.GetInventory().CreateInInventory("HuntingKnife"); walky = raincoatGr.GetHumanInventory().CreateInHands("PersonalRadio"); walky.GetInventory().CreateInInventory("Battery9V"); kopflampe = player.GetInventory().CreateInInventory("Headtorch_Black"); kopflampe.GetInventory().CreateInInventory("Battery9V"); //Trinken und Essen wasserflasche = courierBag.GetInventory().CreateInInventory("WaterBottle"); bohnenoffen = courierBag.GetInventory().CreateInInventory("BakedBeansCan_Opened"); //Medizin binde = courierBag.GetInventory().CreateInInventory("BandageDressing"); //Waffe und Magazine gun_j70 = player.GetHumanInventory().CreateInHands("MakarovIJ70"); raincoatGr.GetInventory().CreateInInventory("Mag_IJ70_8Rnd"); raincoatGr.GetInventory().CreateInInventory("Mag_IJ70_8Rnd"); //Spawnpunkt //Aktionsslot player.SetQuickBarEntityShortcut(hunterknife, 0, true); player.SetQuickBarEntityShortcut(gun_j70, 1, true); player.SetQuickBarEntityShortcut(walky, 9, true); player.SetQuickBarEntityShortcut(binde, 8, true); player.SetQuickBarEntityShortcut(wasserflasche, 7, true); player.SetQuickBarEntityShortcut(bohnenoffen, 6, true); player.SetQuickBarEntityShortcut(kopflampe, 5, true); } } }