Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Flyff > Flyff Private Server
You last visited: Today at 00:13

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



FlyFF Quest erstellen

Discussion on FlyFF Quest erstellen within the Flyff Private Server forum part of the Flyff category.

Closed Thread
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2011
Posts: 29
Received Thanks: 1
FlyFF Quest erstellen



Guides | Flyff.a und Flyff.b

Hi liebe Community.

Mir is grade langweilig und ich wollte eigentlich einen Guide zum Thema Costum Pets machen, leider hab ich selbst noch net rausgefunden wie das geht darum schreib ich jetzt erstmal einen Guide für Costum Quests^^.


Vorwort

In den Offi files werden (normale) Quests in folgenden Datein definiert:



Es ist relativ egal welche dieser Drei Questdatein(+Sprechtext) ihr benutzt.
Ich nehme jetzt als Beispiel propQuest-RequestBox.inc & propQuest-RequestBox.txt.txt.


Schritt für Schritt


1.Öffnet zuerst die .inc Datei mit einem Editor (notepad, wordpad, etc)
2.Nun könnt ihr euren Eintrag machen, hier ein Beispieleintrag:




Rot = Quest Funktionen
Grün = Dialogdefinition
Hellblau = Questname
Orange = Quest ID (die Quest ID muss immer eine andere sein, darf also nur einmal in der Datei vorkommen.)
(Ich komme später zu der Erklärung von Funktionen usw).


3.Nun geht in in die .txt Datei. Hier wird der Sprechtext definiert.
Hier der dazugehörige Text für meine Quest :


Wie man sehen kann arbeitet die .inc zusammen mit der .txt.
Beispiel:

inc:

txt:
.

Das bedeutet wenn man den Quest NPC anspricht ohne die Vorraussetzungen der Quest erfüllt zu haben komtm der text der nach IDS_PROPQUEST_INC_GENESIS7 in der txt kommt.


Erklärung der Funktionen


In den Funktionen einer Quest wird der Hauptbestand der Quest definiert.
Wie z.b Belohnung, erwartetes item, Monster das besiegt werden muss und viele weitere Optionen.








Ich erkläre jetzt alle Funktionen genau^^.

SetRepeat

Diese Funktion ist dafür da um zu definieren ob die Quest wiederholt werden kann oder nicht.
SetRepeat(1); bedeutet die Quest kann wiederholt werden, wenn sie nur einmal gemacht werden soll dann lösche einfach SetRepeat(1); aus der Quest.


SetCharacter

Hier wird definiert welcher NPC die Quest "anbietet".
Um die Quest einem NPC zuzuteilen musst du diese Funktion wie folgt in deine Quest eintragen :

SetCharacter( "NPCNAME" );
z.b SetCharacter( "MaFl_Ryupang_Dead" );

es handelt sich hierbei jedoch nicht um den normalen NPC namen sondern um den vollen NPC namen aus der character.inc.
Um diesen Namen herauszufinden gehst du in die chracter.txt.txt und suchst nach dem normalen Namen des NPCs, ich suche jetzt z.b Juria.
Und siehe da da ist Juria :

Nun gehe in die Character.inc und suche nach der variable die vor dem NPC Namen steht, in diesme Fall also IDS_CHARACTER_INC_000057.
Ein wenig über dem eintrag (IDS_CHARACTER_INC_000057) steht nun der volle namen : MaFl_Juria also müsste in der Quest
SetCharacter( "MaFl_Juria" ); stehen wenn Juria die Quest anbieten soll.


SetBeginCondLevel

Mit dieser Funktione wird definiert in welchem Levelbereich man die Quest annehmen kann.

SetBeginCondLevel( 100, 150 );

Blau = Minimales Level
Grün = Maximales Level (150 bedeutet es gibt kein Max Level)

Also ist die Quest in diesem Fall ab Level 100 annehmbar.


SetBeginCondParty

Diese Funktion habe ich noch nicht getestet, jedoch nehme ich stark an dass hier das Party Level definiert wird und eventuell auch die Party Member Anzahl wie ich der Gilden erstellen Quest.


SetBeginCondJob

Mit dieser Funktion wird definiert welche Jobklassen die Quest annehmen können.
Die vollen Namen der Jobklassen findet man in der propjob.inc.
Wenn mehrere Jobs die Quest annehmen können sollen dann müssen die Jobklassen durch ein Komma voneinander getrennt sein:
[code] SetBeginCondJob( JOB_KNIGHT, JOB_BLADE)
Wenn alle Jobklassen die Quest annehmen können sollen Kopiert einfach meinen Code für diese Funktion :
Code:
SetBeginCondJob( JOB_KNIGHT, JOB_BLADE, JOB_JESTER, JOB_RANGER, JOB_RINGMASTER, JOB_BILLPOSTER, JOB_PSYCHIKEEPER, JOB_ELEMENTOR, JOB_KNIGHT_MASTER, JOB_BLADE_MASTER, JOB_JESTER_MASTER, JOB_RANGER_MASTER, JOB_RINGMASTER_MASTER, JOB_BILLPOSTER_MASTER, JOB_PSYCHIKEEPER_MASTER, JOB_ELEMENTOR_MASTER, JOB_KNIGHT_HERO, JOB_BLADE_HERO, JOB_JESTER_HERO, JOB_RANGER_HERO, JOB_RINGMASTER_HERO, JOB_BILLPOSTER_HERO, JOB_PSYCHIKEEPER_HERO, JOB_ELEMENTOR_HERO);
SetEndCondItem


Hier wird festgelegt welche Items für die Quest gebraucht werden und wieviele davon.

Beispieleintrag:



SetEndRemoveItem

Hier wird definiert welche Items beim abschließen der Quest aus dem Inventar entfernt werden sollen.
Wenn die Quest auf Repeat(1) steht ist es ratsam alle Items die für die Erfüllung der Quest benötigt werden auch löschen zu lassen da man die Quest dann ohne die Items noch einmal zu sammeln abschließen kann.

Beispiel für den Eintrag :



SetEndCondKillNPC


Hier wird festgelegt wie oft welches Monster besiegt werden muss.




SetEndRewardItem

Hier wird die Belohnung der Quest festgelegt.
Sobald die Quest abgeschlossen ist wird die Belohnung ins Inventar gesetzt.





SetEndRewardSkillPoint

Hier wird definiert wie viele Skillpoints der Charackter bekommt nachdem er die Quest abgeschlossen hat.

SetEndRewardSkillPoint(400);
bedeutet der Charackter bekommt 400 Skillpoints nach dem Abschließen der Quest.



SetEndCondGold

Hier wird festgelegt wieviel Penya benötigt werden um den Quest abzuschließen.

SetEndRemoveGold(50000000);
bedeutet man benötigt 50000000 Penya um die Quest zu beenden.


SetEndRemoveGold

Hier wir festgelegt wieviel Penya am Ende der Quest abgezogen werden.

SetEndRemoveGold(50000000);
bedeutet es werden 50000000 Penya vom Geldbetrag des Charackters entfernt.



SetEndRewardGold

Hier wird definiert wieviel Penya man nach dem Abschließen der Quest geschenkt bekommt.

SetEndRewardGold( 500, 500 );
bedeutet man erhält 500 Penya nach dem erfolgreichen Abschließen der Quest.


SetEndRewardExp

Hier wird definiert wieviel EXP der Spieler nach abschluss der Quest erhält.
Es ist nicht in % ausgedrückt, daher kann ich leider nicht sagen wieviel EXP man bei welchen Zahlen bekommt.



Sprechtexte


Wie oben schon erwähnt arbeitet die .inc mit der .txt.txt zusammen.
In der .inc werden die FUnktionen definiert und in der .txt.txt werden die Texte definiert.

In der .inc steht z.b



Orange = Das Ereignis (QSAY_BEGIN1 = Quest beginnt)
Rot = Die Variable nach der der Text steht:

In der .txt.txt steht


Das Rot markierte ist die Varbiable aus der .inc
Das bedeutet also sobald die Quest beginnt kommt dieser Text,


Ereignisse und Titel


Titel:

Der Titel ist direkt unter der Quest ID definiert.

SetTitle
(
IDS_PROPQUEST_INC_GENESIS1
);

Heißt IDS_PROPQUEST_INC_GENESIS1 in der .txt.txt ist der Titel :
IDS_PROPQUEST_INC_GENESIS1 Prüfe deine Macht (----> Titel)


Ereignisse:



Questbucheintrag



Dieser Text steht dan im Questtagebuch unter "Q".






Sooooooo nächstes Thema^^.

Flyff.a und Flyff.b


Ersteinmal; für was sind Flyff.a und Flyff.b?

Die Flyff.a checkt in deinem Clienten ob an den Resourcen (.res Datein) etwas verändert wurde.
Wenn ja stürtz das Spiel noch vor dem Loginfenster ab.
Flyff.b sorgt dafür dass man Flyff.a nicht einfach löchen kann, wenn flyff.a fehlt kommt beim loginfenster die Meldung "eine Datei wurde verändert"

Nun kommen wir zum interessanten Teil^^.

Wie erstelle ich eine flyff.a und eine Flyff.b?!!?

Das ist ganz einfachm, denn Aeonsoft hat extra ein Tool dafür programmiert, welches in den Serverfiles enthalten ist.
Das Tool heißt merge2.exe und befindet sich im Resource ordner der Serverfiles.
Dieses Programm liest den inhalt von resource.txt und erstellt dann aus den Datein im Resource ordner eine Data.res eine DataSub1.res und eine Datasub2.res, zusätzlich wird eine flyff.a und eine Flyff.b erstellt.

So, zuersteinmal macht ihr euch eine richtige resource.txt
Kopiert folgenden Text in eure resource.txt im resource ordner:



So, nun geht ihr in den Neurospace ordner und erstellt einen neuen Ordner den ihr Resclient nennt.
Jetzt führt ihr merge2.exe aus.
Nun findet ihr im Resclient ordner die 3 .res Datein und die flyff.a.
Im Neurospace ordner liegt nun eine flyff.b.


Wie wende ich Flyff.a und Flyff.b an?

Hierzumusst du den Inhalt vom Resclient in deinen Flyff Ordner kopieren die Daten ersetzen lassen.
Die Flyff.b machst du in den Program ordner deiner Serverfiles.
Wenn du nun AccountServer.exe startest liest diese Flyff.b mit.



So wem die Guides gefallen haben kann mir gerne ein Thanks geben^^.

MFG Kyubinoyoko





Flyff.a/.b ist bei den releasten v15 files NICHT! vorhanden!!



Tuturial von hier:

http://chinurarete.de/home.php?inc=que
Avernak is offline  
Old 05/10/2011, 17:14   #2
 
elite*gold: 59
Join Date: Aug 2009
Posts: 1,595
Received Thanks: 490
Gibt es schon von Jusikid darum

#closerequest. ^^
.Tear is offline  
Old 05/10/2011, 17:16   #3
 
elite*gold: 0
Join Date: Dec 2010
Posts: 160
Received Thanks: 46
sach ma kopierst du alles oder bist du Kyubinoyoko? -.- wenn nicht sag ich des gleiche wie zu deinem Beast Tutorial
Dreatmaster is offline  
Old 05/10/2011, 18:24   #4
 
Pumbaaa's Avatar
 
elite*gold: 20
Join Date: Apr 2009
Posts: 804
Received Thanks: 829
1:1 kopiert.
Sehr nice, gefällt mir
Pumbaaa is offline  
Old 05/10/2011, 18:27   #5
 
Kamu*ra's Avatar
 
elite*gold: 0
Join Date: Apr 2010
Posts: 113
Received Thanks: 60
Pumbaaa dann schau mal bei beiden Threads auf die Credits.
Alle Threads die Er erstellt hat beinhalten tutorials von Kyubinoyoko, lesen, denken, lesen, nochmal denken, posten.
//edit:
Aber wie erwähnt ist es dann unnötig solche Threads zu eröffnen wenn sie bereits vorhanden sind.
Kamu*ra is offline  
Old 05/10/2011, 18:46   #6
 
elite*gold: 0
Join Date: Apr 2011
Posts: 29
Received Thanks: 1
Ich wusste nicht das diese vorhanden sind aber leider kennt niemand wirklich die Site von ihm deswegn dachte ich mir ich poste das ma mit dem Link von ihm!
ich wollte nicht machen ich wollte ihn nur mehr puplic amchen da er echt toll ist!
Entschuldigt wenn ich etwas damt gemacht habe ""
Avernak is offline  
Closed Thread




All times are GMT +1. The time now is 00:14.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.