You are not logged in.

  • Login
Bitte besucht unser neues Forum unter https://forum.nitrado.net | Please visit our new Forum at https://forum.nitrado.net

Dear visitor, welcome to Nitrado.net Prepaid Gameserver Community-Support - Archiv. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

evildad

User / Kunde

  • "evildad" started this thread

Posts: 80

Thanks: 6

  • Send private message

1

Monday, July 13th 2015, 5:08pm

Arma 3 epoch Server einrichten, Tutorial für Einsteiger

Arma 3 epoch Server einrichten. Tutorial für Einsteiger

Von Anfänger für Anfänger Teil 1

(Ich arbeite noch an den
Tutorial und werde immer versuchen es zu verbessern V. 0.4 V. 0.6 V. 0.8)

Einleitung:

Vor ein Paar Monaten habe ich mir gedacht: "hay wäre ja toll einen eigenen epoch Server zu haben".
Gesagt, getan. Den Server gemietet, installiert und... Schicht.
Ich bin davon ausgegangen das ich mit meinen vor Kenntnissen aus dem Web
Bereich (PHP) leichtes Spiel haben würde. Dem wahr allerdings nicht so.
Also habe ich mich Tag für Tag durch die Foren gelesen und gefragt. An
und für sich wurde mir auch gut geholfen. Allerdings habe ich oft nur
Bahnhof verstanden da viele, ich sag mal "Sachen", für die alt
eingesessenen selbstverständlich waren. Für mich aber nicht. Also
scheiterte es sogar bei den simpelsten arbeiten wie die Fahrzeuge anpassen.
Prompt hatte ich die schn... voll und habe mir jemanden
gesucht der die arbeiten für mich erledigt. Nach zwei Monaten erschien
ein update und wie es kommen musste habe ich mal wider mein Server zerschossen.
Und? Nichts... Mein Programmierer hat mich sitzen
lassen. Nach drei Wochen der Verzweiflung habe ich mir einen Ruck
gegeben und es solange versucht bis es geklappt hat.
Und siehe da. Server anpassen, Scripts einfügen und einstellen geht ohne Fehler.
Nun habe ich mir gedacht, ich teile meine Erfahrungen mit denjenigen die
genau so wie ich vor ein Riesen Haufen verwirrenden nicht
zusammenhängenden Buchstaben und Zeichen stehen.
Ich werde hier komplett bei 0 anfangen. Bei der Grundinstallation, und alles was ich weiß schritt für schritt erklären.

Ps. An die Profis. Sollte es was zu ergänzen geben oder Verbesserungen würde ich mich über eure Kommentare sehr freuen.

1. Programme, Grundwissen, was mich erwartet

1.1 Was erwartet mich

Spoiler Spoiler

Ich möchte hier niemanden die Euphorie nehmen, oder ihn vergraulen, aber es ist sehr viel Arbeit!
Wenn ihr erwartet habt das ihr den Server installiert und alles mit ein paar
Häkchen einstellt und verändert, muss ich euch Enttäuschen. Es gibt
quasi nichts was ihr einfach so verändern könnt. Es wird alles direkt im Code eingestellt.
Das heißt nicht unbedingt das ihr die Programmiersprache/n vollständig lernen müsst, aber ihr solltet euch
doch schon die Grundlagen aneignen.
Des weiteren wäre Englisch von Vorteil, da alles in Englisch ist. Es geht auch ohne ist aber deutlich
schwerer. Zu guter Letzt kommt die zeit die ihr mit lesen verbringen
werdet. Das wird die meiste zeit in Anspruch nehmen. Zusammen mit
schreiben, Fehlersuche und Daten sichern. Im Forum kann euch nicht einer
alles erklären. Daher werdet ihr viel durch verschiedene Foren wandern,
euch schlau machen über Neuerungen & co. Oder nach Fehlern suchen.
Lasst euch aber nicht unter kriegen. Es lohnt sich. Wenn ihr es einmal hinbekommt wird es Bald wie von selbst gehen :)

1.2 Programme

Spoiler Spoiler

Als erstes solltet ihr euch drei Programme runter laden. Sie vereinfachen
euch die Arbeit enorm und und verschaffen euch eine deutlich bessere übersieht.

FileZilla
wäre da als erstes.
Es ist ein FTP Client, welcher sich mit euren Server verbindet und die
Ordner und Dateien ähnlich wie der Windows explorer darstellt.
http://www.chip.de/downloads/FileZilla_13011076.html

PBO Manager

ist das nächste Programm. Er dient zum öffnen der .pbo Dateien welche
ähnlich sind wie ein zip oder rar Archiv. Wenn ihr später Scripts
einfügen möchtet ist er ein muss.
http://www.armaholic.com/page.php?id=16369

Notepad++

ist ein Text Editor der Speziell für das Programmieren gedacht ist.
Damit erscheint der Code oder auch Text geordneter und viele Bereiche
werden Farblich hervor gehoben.
http://www.chip.de/downloads/Notepad_12996935.html
Ein Beispiel:

Text Editor:

Spoiler Spoiler

class
HSPricing {class ChainSaw {price = 125;}; class CircuitParts {price =
50;}; class ItemCoolerE {price = 50;}; class JackKit {price = 25;};
class ItemLockbox {price = 250; tax = 0.5;}; class ItemCompass {price =
3;}; class ItemGPS {price = 20;};


Notepad++ :

Spoiler Spoiler

Source code

1
2
3
4
5
6
7
8
9
class HSPricing
{
    class ChainSaw {price = 125;};
    class CircuitParts {price = 50;};
    class ItemCoolerE {price = 50;};
    class JackKit {price = 25;};
    class ItemLockbox {price = 250; tax = 0.5;};
    class ItemCompass {price = 3;};
    class ItemGPS {price = 20;};

Ihr seht es sieht deutlich übersichtlicher aus und beugt somit Fehlern vor.


1.3 Grundwissen

Spoiler Spoiler

Ihr braucht eigentlich nicht ganz so viel wissen. Erstmal. Aber das was ich
euch hier zeige solltet ihr auf jeden Fall verinnerlichen. Viele Fehler
entstehen durch Flüchtigkeit oder weil die Beschreibungen hinter dem
Code Zeilen nicht beachtet werden. Deshalb werden oft einfache
Veränderungen zum Nerventest.
Nun zu den Grundlagen:

Kommentare:
Ein jeder Code ist mit sogenannten Kommentaren gespickt. Diese vereinfachen
es bestimmte Bereiche zu finden oder auch Erklärungen einzubinden.
Diese werden allerdings nicht beim lesen des Code beachtet. Um das zu
bewerkstelligen gibt es bestimmte Zeichen die dem Server sagt. Stopp das
gehört nicht mit dazu.
Da wäre das Zeilen bezogene Kommentar. Dieses sagt dem Server das alles in der Zeile hinter ihm nicht mit gelesen werden soll.

Beispiel:

Spoiler Spoiler

Source code

1
2
3
class HSPricing {class ChainSaw {price = 125;}; 
class CircuitParts {price = 50;}; // Die beiden Släsch leiten das Kommentar ein
Hier ist es aber schon wieder zu ende da hier eine neue Zeile beginnt.


Dann gibt es noch eine weitere Möglichkeit. Allerdings beschränkt sich das
nicht nur auf eine Zeile sondern kann beliebig erweitert werden. Das ist
sehr praktisch wenn man große Beispiele im Code zeigen möchte.

Beispiel:

Spoiler Spoiler

Source code

1
2
3
4
5
6
7
class HSPricing {class ChainSaw {price = 125;}; 
/* Kommentar Anfang
Alles was jetzt hier zwischen steht ist ein Kommentar. Da werden oft Fehler gemacht weil die Leute nicht wissen was es bedeutet 
und ihre Veränderungen im Kommentar machen und nicht im eigentlichen Code.

Kommentar ende */
class HSPricing {class ChainSaw {price = 125;};


Was auch noch wichtig ist, ist zu wissen wie ein Code aufgebaut ist. Dabei
gibt es je nach Sprache und vorhaben einige unterscheide, was aber jeder
Code hat ist ein Anfang und ein ende.
Ein Beispiel wäre der Bereich aus dem Admin Tool.

Source code

1
2
3
4
5
adminMenu_Owner[] = {
{"STEAMID64","ADMINNAME1"},
{"STEAMID64","ADMINNAME2"},
{"STEAMID64","ADMINNAME3"} //<- No comma on the last entry
}; 


Hier sehen wir ein Bereich aus einem Kommentar vom Admin Tool.
Zu Anfang sehen wir adminMenu_Owner[] welches, ich nenne es einfach mal,
die Erklärung für dem Server ist welche Daten er übermittelt bekommt.
Das Gleichheitszeichen sagt ihm das alles was nachverfolgen in den
Klammern steht, in adminMenu_Owner[] gespeichert wird. So weiß der
Server Später wer ein Admin ist.
Die geschweifte klammer ist der Anfang, der zu lesenden Variablen.
Dazwischen stehen die angaben die ich übermitteln möchte. In diesen Fall die ID
und ein Namen. Diese angaben, Text oder Zahlen werden meist in
Anführungszeichen gesetzt. In Doppelten " oder auch in einfachen '.
Dabei ist zu beachten das zwischen den Anführungszeichen keine weiteren
verwendet werden dürfen da der Server sonnst denkt das dort der Text
oder Zahlen Angabe wieder aufhört. Es gibt zwar die Möglichkeit
Anführungszeichen zu verwenden. Davon rate ich aber ab, da gerade
Anfänger damit sehr viele Fehler einbauen können.
Hat man Mehrere angaben, werden diese mit Komma von einander getrennt.

Source code

1
2
adminMenu_Owner[] = {
"STEAMID64","ADMINNAME1"

Möchte ich aber jetzt dem Server mehr als nur eine Angabe machen muss ich das
dem Server übermitteln. Dies macht man in dem man einzelne angaben in
einzelne abschnitte unterteilt. Dazu setzt man die angaben in weitere
klammern. Wie zum Beispiel bei Matte. {"STEAMID64","ADMINNAME1"} Nun
weiß der Server das das ein einzelner abschnitt ist. Setze ich jetzt
noch eine weitere Angabe dazu muss diese mit ein Komma von der vorigen
getrennt werden.

Source code

1
2
{"STEAMID64","ADMINNAME1"},
{"STEAMID64","ADMINNAME1"}

Dabei ist auch noch wichtig das in ein solchen Fall nach der letzten Angabe kein Komma kommt.
Zu guter Letzt muss ich dem Server noch sagen das der Code abschnitt jetzt endet.
Dazu muss ich erst mal alle klammern schlissen die ich auch geöffnet habe.
Im ersten Beispiel sehen wir das ich die Aufzählung bereits durch eine offene Klammer begonnen habe.

Source code

1
2
3
4
5
adminMenu_Owner[] = {
{"STEAMID64","ADMINNAME1"},
{"STEAMID64","ADMINNAME2"},
{"STEAMID64","ADMINNAME3"} 
} Das heißt das hier die klammer geschlossen werden muss.


Source code

1
2
3
4
5
adminMenu_Owner[] = {offen 1
{"offen 2","geschlossen 2"},
{"offen 3","geschlossen 3"},
{"offen 4","geschlossen 4"} 
}geschlossen 1


Nun kommen wir zum ende des Bereiches. Mit der letzten klammer haben wir
dem Server lediglich gesagt das die Aufzählung zu ende ist. Würden wir
es so lassen, würde der Server denken das alles danach mit zum Bereich
adminMenu_Owner[] gehört. Um das zu verhindern sagen wir den Server mit
ein Semikolon ; das der Bereich zu ende ist und ein neuer beginnt.

Source code

1
2
3
4
5
6
7
adminMenu_Owner[] = {
{"STEAMID64","ADMINNAME1"},
{"STEAMID64","ADMINNAME2"},
{"STEAMID64","ADMINNAME3"} //<- No comma on the last entry
};
 Darauf achten das nur ein Semikolon an jedem ende ist und nciht 
versehentlich zwei oder mehr. Das kann zu Fehlern führen.


Was wir noch brauchen werden ist der begriff class. Dies definiert ein Name
eines gestandenes oder Objekt. Dieser Name ist aber nicht der, den wir
im Spiel sehen. Sondern ein gesonderter Name der nur vom Server
verwendet wird.
Beispiel:
"B_MRAP_01_F" Dieser class Name definiert einen Hunter ohne Bewaffnung.

Das Problem ist das es mehr als nur eine Variante gibt und Namen wie Hunter
1, 2, 3 würden das recht unübersichtlich machen. Daher immer die
Korrekten Namen suchen wenn ihr irgendwas einfügen möchtet, und ihr das
Wort class hört.

2. Konfigurationsdateien (Server Name, Passwörter, Willkommensnachricht)

Spoiler Spoiler

Einige der Grundeinstellungen gebt ihr bereits schon bei der Installation an. Oft werden diese angaben auch wieder geändert.
Dazu geht ihr wie folgt vor.

2.1. Bei Nitrado anmelden.
2.2. Meine Server
2.3. Webinterface Login


Nun befindet ihr euch im Herzstück eures Servers. Dem Webinterface .
Hier könnt ihr die meisten Dateien direkt bearbeiten ohne diese zuvor erst runter zu laden.
Oben links im Bild seht ihr ein Reiter Server. Geht ihr mit der Maus darüber
öffnet sich eine Auswahlliste. Geht nun auf Konfigurationsdateien.
Jetzt seit ihr in der Datei server.cfg.
Dort findet ihr die Grundeinstellungen.
In den ersten 9 Zeilen Stellt ihr
Servername, Passwort und Passwort Admin ein.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
//
// More information at: http://community.bistudio.com/wiki/server.cfg
//
// GLOBAL SETTINGS
hostname = "Zwischen den "" kommt dein Servername"; // The name of the server that shall be displayed in the public server list
password = "Hier kommt das Passwort rein, welches man eingeben muss um auf den server zu kommen"; // Password for joining, eg connecting to the server
passwordAdmin = "Und hier das Admin Passwort"; // Password to become server admin. When you're in Arma MP and connected to the server, type '#login xyz'
//reportingIP = "arma3pc.master.gamespy.com";
logFile = "server_console.log"; // Tells ArmA-server where the logfile should go and what it should be called

//Erklärung:
//Eure Eintragungen gehören zwischen den "" und nicht davor oder dahinter. 
Vermeidet es Zeichen wie "" oder ' ' zu verwenden.


Darunter kommt eure Willkommens Nachricht.

Source code

1
2
3
4
5
6
7
8
// WELCOME MESSAGE ("message of the day")
// It can be several lines, separated by comma
// Empty messages "" will not be displayed at all but are only for increasing the interval
motd[] = {
"Hier",
"da",
"und auch hier"
};


Erklärung:
Hier gilt auch wieder, immer zwischen "" schreiben. Wichtig ist auch das nach dem letzten "" kein , kommt.
Ihr könnt die Nachricht auch beliebig erweitern. Dabei ist zu beachten das jeder Bereich "", eine Zeile im Chat ist die in zeitlichen Abstand angezeigt wird.

Beispiel:

Spoiler Spoiler

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
// WELCOME MESSAGE ("message of the day")
// It can be several lines, separated by comma
// Empty messages "" will not be displayed at all but are only for increasing the interval
motd[] = {
"",
"Willkommen bei ....",
"PVP",
"Kein Basis zerstören",
"Keine Beleidigung",
"",
"HP www.meineseite.de", 
"" <--- kein Komma
};


Lehre "", können als Platzhalter genutzt werden um das Zeitintervalle zu verlängern.

Darunter könnt ihr das Intervall in Sekunden angegeben.

Source code

1
2
motdInterval = 10;
//Damit wird die Zeile alle 10 Sekunden gewechselt.


Weiter unten ist der Bereich INGAME SETTINGS.
Dort ist die Zeile persistent = 0; interessant.
Ändert ihr das in persistent = 1;
ist die Mission nach dem ersten Login bis zum nächsten Neustart
dauerhaft gestartet. Das bewirkt zb. das die Leichen nicht sofort
verschwinden wenn man alleine auf dem Server Stirbt^^
Des weiteren kann man die Zeile BattlEye = 0; einfügen um BattlEye zu deaktivieren.
(Wichtig: Es ist nicht empfehlenswert da man die Tür für Hecker öffnet.
Allerdings kann man dadurch lästige kicks und Bans abstellen wenn man
die Filter nicht einstellen kann. Dazu Später mehr)


Beispiel:

Source code

1
2
3
4
5
// INGAME SETTINGS
disableVoN = 0; // If set to 1, Voice over Net will not be available
vonCodecQuality = 5; // Quality from 1 to 10
persistent = 1; // If 1, missions still run on even after the last player disconnected.
BattlEye = 0;


Der Rest ist erst mal nicht interessant.
Zum Schluss unten auf Einstellungen Speichern.



3. Addmin tool, Fahrzeuge, Spawn, Reset Zeiten und mehr

Nun kommen wir zu den teil auf den wohl viel warten. Addmin tool und Fahrzeuge.
Zu erst müssen wir wieder die Passende Datei öffnen.
Dazu gehen wir in unser Webinterface Login und oben auf den Reiter Server.
Nun wählen wir aber Datei - Browser aus und gehen dann auf...

1. arma 3
2. @epochhive
3. epochconfig.hpp


3.1 Server Neustart:

Spoiler Spoiler

Die ersten beiden Zeilen sind für den Server Restart zuständig.
Was zuvor noch wichtig wäre sind die //. Das bedeutet das alles was danach
in der Zeile Steht, ist ein Kommentar. Kommentare werden vom Server
nicht beachtet!

Source code

1
2
3
4
5
serverRestart = false; // false steht für 
aus, off. Mit true wird der Neustart eingeschaltet. Wichtig: am ende 
muss ein ; stehen.
forceRestartTime = 14400; // Damit stellt man das 
Intervall ein. Die zahl muss in Sekunden angegeben werden. (1 Minute = 60 Sekunden // 1 Stunde = 3600 Sekunden) Standard ist 4 Stunden


Rechner: ( http://www.umrechnung.org/zeit-einheiten…n-umrechnen.htm )

Alternativ kann man den Neustart auch unter "Server" und Zeitgesteuerter Restart einstellen.


3.2 Max Slots:

Spoiler Spoiler


In den nächsten beiden Zeilen werden die Maximalen Händlerslots und Gebäudeteile (Auf der Map) eingestellt.

Source code

1
2
StorageSlotsLimit = 1500; // Max Händlerslots (Items die er im Shop haben kann)
BuildingSlotsLimit = 1500; // Max Gebäudeteile auf der Map


Serverzeit und loot:

Spoiler Spoiler

In Zeile 7 bis 11 wird die Server zeit, Zeit Multiplikator Und der Loot Multiplikator eingestellt.
Mit StaticDateTime[] = {2035,6,10,7,0}; und timeDifference = 0; habe ich
mich noch nicht mit befasst. Daher dazu keine weitere Erklärung. Nicht das ich euch was verkehrtes sage.

Source code

1
2
3
4
5
6
7
8
9
StaticDateTime[] = 
{2035,6,10,7,0}; // {0,0,0,8,0} would forces the server to start at 8am 
each time it is started while allowing the year, month and day to stay 
real time. Any values left at 0 will result in no change.
timeDifference = 0; // Server uses real time this will allow you to offset just the hour.
timeMultiplier = 4; // Hier könnt ihr den Multiplikator für die Serverzeit einstellen.
 Am besten mal ein wenig Probieren. 1 müsste Echtzeit sein :)
lootMultiplier = 0.5; // 1 = max loot. Dies bezeichnet wie viel in einen Behälter sein
 kann (Zb. in einem Sofa). 1 bezeichnet das Maximum.



3.3 Wetter und Events:

Spoiler Spoiler

In Zeile 14 kann das Wetter eingestellt werden.
WeatherStaticForecast[] = {};
Wenn ihr den Bereich Zwischen den beiden geschweiften Klammern {} leer last habt ihr variables, wechselndes Wetter. Standard.
Wenn ihr zwischen den klammern 75.5,0,{0,0,0},0,{1,1} schreibt ,als ganzes sieht das so aus...
WeatherStaticForecast[] = {75.5,0,{0,0,0},0,{1,1}};
bekommt ihr dauerhaft Sonnenschein.

Hinweis:
Der Wetterumschwung (Sonne zu Regen) hat bei mir Standbilder und
massive FPS Einbrüche ausgelöst. Daher empfehle ich die Dauersonne ;)

Als nächstes kommen die Evenrs.
Das sind:

  • Karneval
  • Erdbeben
  • Container
  • Pflanzen

Source code

1
2
3
4
5
6
events[] = {
{ 3600, "CarnivalSpawner" }, //Karneval (Die Zahl ist die Wiederholungsrate in Sekunden)
{ 1200, "EarthQuake" }, //Erdbeben
{ 1200, "ContainerSpawner" }, //Container
{ 300, "PlantSpawner" } //Pflanzen (Der letzte Eintrag ist wieder OHNE , am ende)
};


3.4 Antagonists & Player Related:

Spoiler Spoiler

Leider weiß ich hier für nicht die korrekte Übersetzung. Daher versuche ich es einfach mal zu erklären.
Zeile 23 antagonistChanceTrash = 0.09; Damit erhört ihr die Chance auf loot wenn ihr Müllhaufen oder Mülltonnen öffnet. 0.01 = 1% / 0.5 = 50% und 1.00 = 100%
antagonistChancePDeath = 0.33; Habe ich noch nicht getestet. Aber das sollte die Chance sein, wie viel ihr bei getöteten Spielern findet.
antagonistChanceLoot = 0.09; Das weiß ich nicht was es tatsächlich bewirkt. Bekomme ich aber noch raus ;)
In Zeile 28 cloneCost = 100; stellt ihr die Kosten für den Tot ein. Heißt das nach jedem Tot Geld von dem ingame Konto abgebucht wird. Standard 100.

Source code

1
2
3
4
5
6
7
// Antagonists
antagonistChanceTrash = 0.09; //9% chance when player loot a trash object
antagonistChancePDeath = 0.33; //33% chance when player was killed from a other player (selfkill doesn't count)
antagonistChanceLoot = 0.09; //9% chance when player click "SEARCH" on a loot object

// Player Related
cloneCost = 100; // debt incurred on player death


3.5 Fahrzeuge:

Spoiler Spoiler

Jetzt kommen wir zum größten Part. Die Fahrzeuge die auf der Map erscheinen können und wie oft sie das tun.
Der erste kleine Bereich beschreibt in Zeile 31 nach welcher zeit die
Fahrzeuge sich wieder Abschließen. Die Zahl gibt die zeit in Sekunden an.
vehicleLockTime = 1800;

In Zeile 32 beginnt die Fahrzeugliste.
allowedVehiclesList[] = {
};
Zwischen den geschweiften Klammern stehen die sogenannten class Namen "".
Anschließend kommt die Anzahl mit ein , getrennt. Ein jedes Fahrzeug ist noch ein mal in einer zusätzliche geschweiften Klammer gebunden.

Beispiel:
allowedVehiclesList[] = {
{"classname",Anzahl}
};
Kommt ein weiterer Fahrzeugtyp dazu werden diese mit ein Komma getrennt.
allowedVehiclesList[] = {
{"classname",Anzahl},
{"classname",Anzahl}
};
Das letzte Fahrzeug bekommt kein Komma.

Wenn ihr nun neue Fahrzeuge einfügen möchtet geht ihr wie folgt vor.
allowedVehiclesList[] = {
{"C_Offroad_01_EPOCH",12},
{"C_Quadbike_01_EPOCH",12},
{"C_Hatchback_01_EPOCH",12},
{"C_Hatchback_02_EPOCH",12},
{"C_SUV_01_EPOCH",12},
{"C_Van_01_box_EPOCH",12},
{"C_Van_01_transport_EPOCH",12},
{"B_SDV_01_EPOCH",12},
{"B_MRAP_01_EPOCH",5},
{"B_Truck_01_transport_EPOCH",8},
{"B_Truck_01_covered_EPOCH",8},
{"B_Truck_01_mover_EPOCH",8},
{"B_Truck_01_box_EPOCH",8},
{"O_Truck_02_covered_EPOCH",8},
{"O_Truck_02_transport_EPOCH",8},
{"O_Truck_03_covered_EPOCH",8},
{"O_Truck_02_box_EPOCH",8},
{"I_Heli_light_03_unarmed_EPOCH",7},
{"O_Heli_Light_02_unarmed_EPOCH",7},
{"I_Heli_Transport_02_EPOCH",7},
{"O_Heli_Transport_04_EPOCH",7},
{"O_Heli_Transport_04_bench_EPOCH",7},
{"O_Heli_Transport_04_box_EPOCH",7},
{"O_Heli_Transport_04_covered_EPOCH",7},
{"B_Heli_Transport_03_unarmed_EPOCH",7},
{"K01",2},
{"K02",2},
{"K03",2},
{"K04",2},
{"ebike_epoch",7},
{"mosquito_epoch",7}, <-- da kommt jetzt ein Komma hin (,)
{"O_Truck_02_fuel_F",7} und schreibt hier euer neues Fahrzeug rein. Kommt ein weiteres Fahrzeug, wieder ein Komma und das nächste darunter ohne Komme
};

Hier findet ihr eine liste mit den meisten Fahrzeugen und ihren classnamen.
http://wiki.7thcavalry.us/wiki/ARMA_3_Vehicles
Wichtig!!
Wenn ihr Fahrzeuge mit Bewaffnung einfügt müsst ihr die BattlEye Filter anpassen.
Dazu muss ich an den Beitrag (Link weiter unten) verweisen da ich BattlEye ausgeschaltet habe (Noch).
Eine Beschreibung wird später noch folgen.
[Info] Mein erster Arma 3 Epoch Server -- Die wichtigsten Infos für den Anfang
Unter .7 sind vier gute links zu den Thema.
Als kleiner Zusatz noch mal.
Ich habe die Erfahrung gemacht das der Server oft nicht richtig startet
wenn man die Fahrzeuganzahl zu drastisch anhebt. Daher empfehle ich die
Menge schrittweise zu erhöhen. 10 - 20 Fahrzeuge pro schritt.


3.6 Traders, Markers, Hive Related

Spoiler Spoiler

In Zeile 78 beginnt der Bereich für die Traders / Händler.
Hier könnt ihr die Preissteigerung, Start items für Händler die Max Slots
und ob sie sich bewegen sollen einstellen. Da wir aber im Bereich
Scripts auf ein Händler Script zurück greifen werden der deutlich besser
ist, würde ich hier nichts verändern. Daher werde ich auch hier nicht weiter darauf eingehen.
Mit Zeile 84 beginnt der Bereich für die Map Markierungen. Hier können wir nur AN oder AUS (true oder false) schalten.

Source code

1
2
3
4
5
showEarthQuakes = true; // Zeigt nach Erdbeben Mineralien auf der map
showShippingContainers = true; // Zeigt Pflanzen Karneval, Erdbeben, Container auf der Map
SHOW_TRADERS = true; // Markiert Händler
SHOW_JAMMERS = false; // Zeigt die Frequenzjammer
SHOW_BOATLOOT = true; // Und für Markierung von Schiff schätze im Wasser

Einer der leichteren teile ;)

Ab Zeile 92 beginnt ein auch nicht gerade uninteressanter teil.
Der Server bereinigt sich selbst nach einer bestimmten zeit. Das heißt das
die gebauten Gegenstände verschwinden, Fahrzeuge neu Spawnen oder auch
die Händler ihre items verlieren.
Diese Intervalle stellt man mit dem jetzigen Bereich ein.

Source code

1
2
3
4
5
expiresBuilding = "604800"; // Gebäude
expiresPlayer = "604800"; // Spieler
expiresBank = "604800"; // Spieler Bank
expiresVehicle = "604800"; // Fahrzeuge
expiresAIdata = "604800"; // Händler

Die Zeiten sind hier wieder in Sekunden an zu geben.
Hier noch mal ein Rechner dafür.
http://www.umrechnung.org/zeit-einheiten…n-umrechnen.htm

Den letzten teil Admin Features werden wir überspringen.

3.7 Addmin Menü

Spoiler Spoiler

Nun wählen wir wieder Datei - Browser aus und gehen dann auf

1. arma 3
2. @epochhive
3. epochah.hpp

Mit dem Anfang Antiheck konnte ich mich noch nicht auseinander setzen. Wird
aber in naher Zukunft passieren wo ich dann hier den Bereich ergänzen werde.
Aber jetzt zum interessanten teil. Das Admin Menü.
Dazu brauche wir erst mal zwei Sachen. Die Spieler ID und Namen von jeden Spieler der irgendwelche Admin rechte bekommen soll.
Die ID finden wir direkt in Arma 3 unter Konfigurieren - Profil und rechts
unter dem Avatar steht eine 64 Stellige zahl. Die schreibt ihr euch auf.
Der Name sollte ja nicht all zu Schwer sein :)
Die Einstellungen beginnen ab Zeile 23 und enden in Zeile 65.
Wenn ihr ein Stück tiefer schaut Seht ihr das gleiche noch mal. Dies ist
aber nur eine Erklärung. In Zeile 67 Seht ihr, wie zu Anfang gelehrt,
das mit /* ein Kommentar beginnt.
Nun zu den Einstellungen.
Es gibt vorgefertigte Addmin Zuordnungen.
Da wäre zu erst adminMenu_Owner welches einem Super Addmin entspricht. Dieser hat Standardmäßig die meisten rechte.
Der zweite ist ist adminMenu_High ein normaler Addmin.
Und zuletzt der adminMenu_Low. So was wie ein Moderator mit ganz wenigen Möglichkeiten.
Diese drei Bereiche sind in je Zwei Sektoren unterteilt. Einmal die Zuordnung
WEHR addmin ist, und das zweite welche rechte er hat.
adminMenu_Owner[] = {
}
;
Zwischen den geschweiften Klammern kommen wieder unsere Angabe rein. Zu erst die
ID und dann der Spieler Name. Das ganze wird wie in den
Grundkenntnissen schon erklärt zwischen zwei Anführungszeichen gesetzt
und mit ein Komma von einander getrennt.
adminMenu_Owner[] = {
"id","name"
};
Dabei macht es allerdings kein unterschied ob wir es so wie oben
untereinander oder direkt hintereinander schreiben. adminMenu_Owner[] =
{"id","name"}; Wir können auch schon den Bereich id und Name in
geschweiften klammern setzen als Vorbereitung für ein zweiten addmin.
adminMenu_Owner[] = {
{"id","name"}
};
Das Ergebnis bleibt das gleiche.
Weitere admins mit den gleichen rechten werden mit ein Komma getrennt.
{"id","name"},
{"id","name"}
Nachfolgend sehen wir die rechte der jeweiligen addmin Gruppe. Das Formart ist dort auch wieder gleich. "","" wobei hier die einzelnen rechte nicht in einer klammer gesetzt werden müssen.
Wir können auch anderen addmin Gruppen weitere rechte geben. Dazu ergänzen wir einfach die liste.

Beispiel:

adminMenu_High[] = {};
adminMenu_HighSetting[] = {
"PLAYER-TELEPORT",
"MAP-TELEPORT",
"TARGET-HEAL",
"TARGET-AMMO",
"TARGET-KILL",
"VEHICLEFLIP",
"SPAWN-MENU",
"BANPANNEL"
};
Einfach von ober Kopieren und dazwischen einfügen. Komma nicht vergessen und Speichern.
Das war es auch schon hier.
PS: Im Spiel öffnet ihr das Addmin Menü mit der Taste F1


Im zweiten teil werde ich auf das einfügen von Scripts eingehen und die
letzten Einstellungsmöglichkeiten, die noch wichtig sind, mit euch durch gehen.
Über Kritik und / oder Verbesserungsvorschläge würde ich mich freuen.

PS. An die Profis die sich das durchlesen. Es ist sicher nicht so
beschrieben wie es in den Lehrbüchern steht. Mein ziel war es allerdings
nicht ein Lehrbuch zu schreiben sondern eine Erklärung zu verfassen die
ein jeder versteht. Auch die, die noch nie in ihrem leben ein Programm
Code gesehen haben. Daher verzeiht wenn ich zb. Variablen nicht als
solche benenn. Würde mich allerdings Freuen wenn ihr trotzdem eure
Meinung dazu abgeben würdet.

This post has been edited 11 times, last edit by "evildad" (Jul 15th 2015, 11:58am) with the following reason: Überarbeitung auf v. 0.6 (Text und Form- Fehler abgepasst, Fahrzeugeinstellung eingefügt) Überarbeitung auf v. 0.8 (Text und Form weiter verbessert, Spoiler eingefügt, Addmin Menü eingefügt)


6 registered users thanked already.

Users who thanked for this post:

KiloSwiss (13.07.2015), sCorporation (05.01.2016), Gotteshand (06.01.2016), 00Swift00 (22.01.2016), Kimarik (09.05.2016), TypeO (14.11.2016)

evildad

User / Kunde

  • "evildad" started this thread

Posts: 80

Thanks: 6

  • Send private message

2

Wednesday, July 15th 2015, 11:54am

Scripts finden, einfügen und anpassen

Hier wird in den nächsten Tagen der zweite Teil meines Tutorials erscheinen.

Scripts finden, einfügen und anpassen




Ich habe zur zeit leichte Probleme mit meinen PC daher wird es leider noch ein paar tage dauern.

This post has been edited 3 times, last edit by "evildad" (Aug 2nd 2015, 11:32am)


00Swift00

User / Kunde

Posts: 7

  • Send private message

3

Sunday, November 8th 2015, 5:07pm

Super hat echt gut geholfen, nur mit den Scripts einfügen habe ich als Neuling massive Probleme freue mich schon auf ein weiteren teil. :)

sCorporation

User / Kunde

Posts: 92

  • Send private message

4

Tuesday, January 5th 2016, 6:41pm

Wann schätzt du, wird es mit dem Script weiter geführt, denn das ist das größte Problem :)

00Swift00

User / Kunde

Posts: 7

  • Send private message

5

Friday, January 22nd 2016, 6:04pm

Ich glaube hier kommt leider nix mehr dabei ist es so ein schweres thema und genau auf so ein tutorial warte ich schon ewig, ich schaffe es einfach nicht ein missions script auf mein server zu bekommen, selbst scripter die geld wollen haben mir nicht geantwortet, auf meine anfragen =( ?(

00Swift00

User / Kunde

Posts: 7

  • Send private message

6

Tuesday, January 26th 2016, 3:06pm

mitlerweile hab ich es selber geschafft scripte einzufügen, nach ein jahr und viel mühe und arbeit, hier verrät aber auch kaum einer wie das genau geht :vain:

Paradox121

User / Kunde

Posts: 644

  • Send private message

7

Tuesday, January 26th 2016, 3:58pm

Weil das nicht immer der selbe Prozess ist?

Und naja, wenn du den Aufbau nach einem Jahr erst raus hast, bemühst du dich nicht.

Und dein Profil hat 7 Beiträge :thumbup:

Also, nicht gleich auf andere schieben ;)

Liebe Grüße

Tim


Ps.: Ich Wurde von dir nicht kontaktiert.

TypeO

User / Kunde

Posts: 2

  • Send private message

8

Monday, November 14th 2016, 3:04pm

Hallo,

erstmal vielen Dank für das hilfreiche Tutorial.

Ich habe allerdings eine Frage zu Punkt 3.4 Antagonists: Du schreibst, dass die Werte die Lootchance erhöhen. Bist du dir da sicher? Ich verstehe es so, dass dies die Chance ist einen Antagonisten zu spawnen, wenn man lootet, stirbt oder etwas durchsucht. Wäre interessant zu wissen, da ich die Loot Chnace gerne erhöhe, aber nicht die Chance einen Mob zu spawnen. :)

sp4rky

Moderator

  • "sp4rky" is male

Posts: 2,096

Location: EditorCity

Occupation: Support: Epoch, Nitrado, InfiStar

Thanks: 111

  • Send private message

9

Monday, November 14th 2016, 4:12pm

antagonistChanceTrash = 0.09; //Wahrscheinlichkeit, ob ein Antagonist spawnt beim Müll-looten
antagonistChancePDeath = 0.33; //Wahrscheinlichkeit, ob ein Antagonist spawnt beim Tod eines Spielers
antagonistChanceLoot = 0.09; //Wahrscheinlichkeit, ob der Antagonist Loot bei sich hat

cheers
> GITHUB <

:gamer:

Kein Support per PN!

Bitte besucht unser neues Forum unter https://forum.nitrado.net| Please visit our new Forum at https://forum.nitrado.net