Mehrspieler Coding - Die erste Modifikation
Du hast dich also entschieden, eine erste Modifkation für den Elite Force Multiplayer zu erstellen, weisst aber nicht genau wie du anfangen musst? Dann bist du hier richtig!

Was benötigt wird:

- Kenntnisse in der Programmiersprache C
- Den Elite Force Holomatch Sourcecode
- Einen Texteditor
- Spass daran haben ;)

Wer will, kann natürlich auch mit Visual C++ arbeiten, benötigt wird das Programm jedoch nicht unbedingt.


Es geht los!

Der Elite force Holomatch Sourcecode muss heruntergeladen werden und danach den Ordner "stvoy" in das Hauptverzeichnis der Festplatte entpacken. ("C:\stvoy")
Die .zip Datei am Besten in den stvoy Ordner verschieben, so hat man immer den unveränderten Sourcecode zur Verfügung.


Der Aufbau des Codes

In dem Code-DM Ordner wirst du nun 3 weitere wichtige Ordner auffinden.

- cgame
- game
- ui

In cgame befindet sich der Code für die Clientseite, also alles für den Spieler.
Im game Ordner jedoch befindet sich der Code der Serverseite, alles für den Spieleserver.
Und schliesslich noch ui, das gesamte Interface bzw. alle Menüs.


Die Modifizierung

Okay, da wir für den Anfang erstmal etwas kleineres verändern möchten, fangen wir doch mal mit den Eigenschaften der Waffen an. Wie wäre es mit einem aufgebessertem Photonenstoß? ;)

Wir werden hier nur Serverseitigen Code verändern, heisst also es werden nur Dateien in dem game Ordner gebraucht. Öffne nun g_weapon.c mit einem Texteditor.

Schon ein paar Zeilen weiter unten lesen wir etwas von dem Photonenstoß (auf Englisch - Quantum Burst):
(Ungefähr ab Zeile 59)
// Quantum Burst
#define QUANTUM_DAMAGE 140 // 85 // 100
#define QUANTUM_SPLASH_DAM 140 // 85 // 128
#define QUANTUM_SPLASH_RAD 160
#define QUANTUM_ALT_DAMAGE 140 // 75 // 100
#define QUANTUM_ALT_SPLASH_DAM 140 // 75 // 128
#define QUANTUM_ALT_SPLASH_RAD 80


Hier wurden für einfachen Zugriff die gesamten Schadenszahlen des Photonenstoßes eingefügt.
Vielleicht können wir den Schaden der angerichtet wird etwas erhöhen...

(Ungefähr ab Zeile 59)
// Quantum Burst
#define QUANTUM_DAMAGE 240 // 85 // 100
#define QUANTUM_SPLASH_DAM 240 // 85 // 128
#define QUANTUM_SPLASH_RAD 260
#define QUANTUM_ALT_DAMAGE 240 // 75 // 100
#define QUANTUM_ALT_SPLASH_DAM 240 // 75 // 128
#define QUANTUM_ALT_SPLASH_RAD 80


Ich habe mal die Werte ( ROT markiert) um 100 erhöht, du kannst die Werte aber so ändern wie du möchtest ;)

Nun noch eine kleinere Modifikation an der Schussgeschwindigkeit, dazu müssen wir erstmals die Stelle finden an der das geregelt wird...
(Zeile 1306)
/*
----------------------------------------------
QUANTUM BURST
----------------------------------------------
*/

#define QUANTUM_VELOCITY 1100
#define QUANTUM_SIZE 3

#define QUANTUM_ALT_VELOCITY 550
#define QUANTUM_ALT_THINK_TIME 300
#define QUANTUM_ALT_SEARCH_TIME 100
#define QUANTUM_ALT_SEARCH_DIST 4096


Und das ändern wir jetzt...


/*
----------------------------------------------
QUANTUM BURST
----------------------------------------------
*/

#define QUANTUM_VELOCITY 2200
#define QUANTUM_SIZE 5

#define QUANTUM_ALT_VELOCITY 1100
#define QUANTUM_ALT_THINK_TIME 300
#define QUANTUM_ALT_SEARCH_TIME 100
#define QUANTUM_ALT_SEARCH_DIST 4096


Somit hat das Photonenstoßfeuer nun die doppelte Geschwindigkeit (QUANTUM_VELOCITY) und ist auch ein bisschen größer als vorher (QUANTUM_SIZE). Das Alternativfeuer hat nun ebenfalls eine doppelte Geschwindigkeit (QUANTUM_ALT_VELOCITY).
Das sollte für den Anfang erstmals reichen, weiter gehts mit dem Compilieren.


Die Dateien Compilieren

Da die Engine von Elite Force (Q3-Engine) mit den Textdateien nicht sonderlich viel anfangen kann, müssen wir diese erst in ein "lesbares" Format für die Engine bringen. Dies sollte ziemlich zügig gehen, vorrausgesetzt man hat keine Fehler in den Textdateien gemacht. ;D

Im "game" Ordner sollte sich zum Compilieren der "game" Dateien eine game.bat befinden. Diese startet alle nötigen Vorgänge um die Textdateien des "game" Ordners in das richtige Format zu compilieren.
Schon gestartet, öffnet sich das Eingabefenster und es geht los...

Nun solltest du, sofern keine Fehler aufgetreten sind, in dem baseef/vm Ordner von stvoy (c:/stvoy/baseef/vm) eine qagame.qvm vorfinden. Diese Datei ist nun unser "Endprodukt".
Wir verschieben sie nun in einen neuen "Modunterordner" unseres STVEF Verzeichnisses
(z.B. C:/Programme/Star Trek Voyager Elite Force/DASTESTMODVERZEICHNIS/VM)
Also noch einen VM Ordner in dem Modunterordner erstellen und dort die Datei rein - Fertig.

Schließlich die Mod laden und spielen. :D


Sollte mal etwas nicht klappen oder Fragen entstanden sein, einfach schreiben.

© 2007 Anleitung erstellt von Borggamer
Bitte NICHT ohne meine Erlaubnis auf anderen Webseiten veröffentlichen oder kopieren.


Comments
Nun noch eine kleinere Modifikation an der Schussgeschwindigkeit, dazu müssen wir erstmals die Stelle finden an der das geregelt wird...


wo bist da bitte?

[ Comment by Sorbet :: ]


Wäre Zeile 1306, habs mal dazugeschrieben.

[ Comment by Borggamer :: ]


bei mir geht das compilieren auch nicht...

E:\EF Maps\stvoy\Code-DM\game\game.bat

ist der pfad zur bat datei, wenn ich die starte passsiert nix.

[ Comment by Sorbet :: ]


Der Elite force Holomatch Sourcecode muss heruntergeladen werden und danach den Ordner "stvoy" in das Hauptverzeichnis der Festplatte entpacken. ("C:\stvoy")


Und da du wahrscheinlich nicht Microsoft Visual C++ oder Linux verwendest, solltest du das hier statt der anderen Version verwenden. Ist speziell für Windowsbenutzer eingestellt worden, um ohne irgendwelche Zusätze den Sourcecode compilieren zu können.

(Die alte g_weapon.c kannst du natürlich mit der neuen überschreiben, damit du es nicht nochmal machen musst ;))

[ Comment by Borggamer :: ]


also muss der pfad zu c stimmen, sonst läuft das programm garned? hmm solltest rot markieren und unterstreichen muha

[ Comment by Sorbet :: ]





You must be logged in to make comments on this site - please log in, or if you are not registered click here to signup