[Release] v15 Files

08/06/2015 03:22 Sedrika#91
@Ace: Was willst du denn für die FPS genaues machen?
08/06/2015 08:44 - DK#92
Quote:
Originally Posted by Sedrika View Post
@Ace: Was willst du denn für die FPS genaues machen?
Da ich über mehre Geräte das Spiel testen kann, kann ich mal schauen wie sie drauf reagieren und schauen wo ich etwas mehr FPS rausholen kann, wie auch FPS Drops kille.
08/06/2015 20:14 Wanetrain#93
Quote:
Originally Posted by Gentros' View Post
Um so etwas leichter zufixen sollte man sich die Source auf eine aktuelle Version von Visual Studio hoch ziehen. Wie z.B. auf Visual Studio 2013.
Da dort der Debugger und das Compilieren der Files um einiges schneller geht.

Man sollte sich nur damit auskennen. (neue Pointer, usw).

Des weiteren sollte man bevor man die Performance noch weiter kaputt macht durch irgendwelche Custom Shit scheiße, die aktuelle Performance fixen.

Dazu gehören nicht nur die FPS Drop Downs sondern auch noch weitere probleme
Okay. Gut. Danke.

Erkläre mir mal was "neue Pointer" sind?

Wie macht man "Performance" kaputt? durch die "Systeme" wo ihr einbaut? nope das auch wieder Falsch.

Wo ist der Unterschied zwischen Vs 2012, 2013 & 2015? solange du das nicht weißt lass die Finger davon und Arbeite mit 2003 weiter, zum wohle der Allgemeinheit.

Quote:
Source ist auf 2013 geupdatet genauso ist die Datenbank auf 2012 am laufen ..
Ich werde nicht nochmal den selben Fehler machen wie vorher und costum shit einbauen, sondern mich rein um die Fixes wie auch FPS kümmern.. Dementsprechend fallen auch schon vorhandene Systeme weg.

Also ;D Das war mein Statement, ich hoffe ich versteht was ich meine und damit noch einen schönen Abend

Greetings ACE ;*
Nun.. FlyFF hat keine sichtlichen FPS Drops. Du weißt nicht wie die FlyFF FPS zustande kommt.. Die FlyFF FPS ist grundlegend auf 60 (62) Frames gebunden, woran liegt das wohl? achja... damit ist ja das ganze Client Timing geregelt von wegen Animationen & Game Compute, stimmt ja, wenn du das alles überarbeiten magst, viel Spaß dabei. Dabei noch mit einer Alten DirectX Version, völliges TIME WASTING..

Quote:
Vor na woche Clean v15 Source auf VS2013 gebracht
Du hast dir extra die Arbeit gemacht? DU? ich mein, guess what ich hab ein Source V15 (Official, ohne Änderungen) auf Vs 12, 13 & 15 Released. Ihr Installiert einfach Vs 12+, Compiled mit Fehlern und denkt "Hey muss ich fixxen!"? Lustig ist nur, ist ein Source bereits bei C++ 11 (Vs 12+) angekommen, kannst du das ganze mit 13 auf Compilen. Das 15er Update wird für euch verdammt schwer da ihr euch einfach nicht mit Visual Studio genug beschäftigt damit ihr wisst was sich ändert.

Quote:
Ich mach das alles nur Privat für mich.
Sprich werde diese nicht für andere Entwickeln.
Du Entwickelst in FlyFF sowieso nichts, genau wie der Rest von euch, evtl. Sedrika kann bissel was, aber sonst nutzt ihr nur Strukturen seitens Gala Lab, keine Kunst da etwas rein zu machen. Wer was anderes sagt lügt einfach nur wie gedruckt, da ich bei jedem Server immer den selben Code sehen & daher weiß was abgeht.


Jungs lasst dieses Game liegen, es bringt nichts. (Kenn das iwo her.. wa Dome?)

Lustig wie sogar Clemi mir das erst vor 3 Tagen sagte das ihr einfach nur Zeit verschwendet, da wir es zu 2. Nicht hinbekommen haben soviel aus dem Source zu holen. Mag evtl. daran liegen das alle DirectX steuer Einheiten, sprich das ganze Rendering etc. aus einem Buch 1zu1 Kopiert ist..mhm.

Soviel zu mir.

Schöne Grüße von
Crasy, Clemi.
08/07/2015 10:49 -Venom'#94
Quote:
Originally Posted by Wanetrain View Post
Wo ist der Unterschied zwischen Vs 2012, 2013 & 2015? solange du das nicht weißt lass die Finger davon und Arbeite mit 2003 weiter, zum wohle der Allgemeinheit.
Ok. Mein guter Wanetrain.

Unterschiede C++ 2003 und dem heutigen C++ 11:
  • Range-Based "for" schleife
  • Lambda - Funktionen
  • Rvalue (neue Move Semantik)
  • Generische Programmierung
  • "decltype" - Neue Rückgabesyntax
  • "constexpr"
  • Neue Standardbibliothek
  • Reguläre Ausdrüke
  • Zeitbibliothek wie z.B. Zeitdauer "duration"
  • Smart Pointer, wie z.B. "shared_ptr oder weak_ptr"
  • Multithreading
*Wenn etwas fehlt verbessert mich bitte.

Beispiele:
● Range-Based "for" schleife

Code:
vector<int> werte { 111, 222, 333, 444 };
for( auto elem : werte ) {
cout << elem << endl;
}
int rawArray[4] { 111, 222, 333, 444 }; 
for( auto elem : rawArray ) {
cout << elem << endl;
}
● Lambda - Funktionen

Code:
inline void gerade(const int val){
if(!(val%2)) count << val << endl;)
}
vector<int> werte { 111, 222, 333, 444, 555 };
for_each( begin(werte), end(werte), gerade);

for_each( begin(werte), end(werte),
[] (int val) {
if(!(val%2)) count << val << entl;
}
};

Quelle: C++: Das umfassende Handbuch, aktuell zum Standard C++11
- Ja ich lese ein Buch man glaubt es kaum.

Komm mir bitte nicht mit Abgeschrieben aus einem Buch.
Denn die Code stellen sind nicht aus diesem Buch kannst du gerne Kaufen und nachlesen.

Ich weiß zwar nicht alles aber ich versuche es zu Lernen.
08/07/2015 14:16 xTwiLightx#95
Quote:
Originally Posted by Gentros' View Post
Ok. Mein guter Wanetrain.

Unterschiede C++ 2003 und dem heutigen C++ 11:
  • Range-Based "for" schleife
  • Lambda - Funktionen
  • Rvalue (neue Move Semantik)
  • Generische Programmierung
  • "decltype" - Neue Rückgabesyntax
  • "constexpr"
  • Neue Standardbibliothek
  • Reguläre Ausdrüke
  • Zeitbibliothek wie z.B. Zeitdauer "duration"
  • Smart Pointer, wie z.B. "shared_ptr oder weak_ptr"
  • Multithreading
*Wenn etwas fehlt verbessert mich bitte.

Beispiele:
● Range-Based "for" schleife

Code:
vector<int> werte { 111, 222, 333, 444 };
for( auto elem : werte ) {
cout << elem << endl;
}
int rawArray[4] { 111, 222, 333, 444 }; 
for( auto elem : rawArray ) {
cout << elem << endl;
}
● Lambda - Funktionen

Code:
inline void gerade(const int val){
if(!(val%2)) count << val << endl;)
}
vector<int> werte { 111, 222, 333, 444, 555 };
for_each( begin(werte), end(werte), gerade);

for_each( begin(werte), end(werte),
[] (int val) {
if(!(val%2)) count << val << entl;
}
};
Quelle: C++: Das umfassende Handbuch, aktuell zum Standard C++11
- Ja ich lese ein Buch man glaubt es kaum.

Komm mir bitte nicht mit Abgeschrieben aus einem Buch.
Denn die Code stellen sind nicht aus diesem Buch kannst du gerne Kaufen und nachlesen.

Ich weiß zwar nicht alles aber ich versuche es zu Lernen.
Das mag ja alles korrekt sein, nur hast du weiter oben nicht zwischen C++11 und C++2003 (was es nicht als deklarierten Standard gibt, sondern nur ein alternativer Name für einen ISO-Standard ist), sondern zwischen Visual Studio 2003 und 2013 unterschieden.

Dass das Kompilieren der Files in VS Versionen > 2003 schneller gehen soll, würde ich gerne mal sehen.
Es mag ja sein, dass ein neuerer Compiler "besseren" Code generieren kann, aber wenn der Quellcode völlig verhunzt ist, bringt dir der beste Compiler nichts :P

Im übrigen sind diese "neuen" Pointer, wie du sie nennst, schon lange in der Boost Libary integriert, wurden nur mit C++11 zum Standard hinzugefügt. ^^


Crasy musst du Lambda-Funktionen nicht beibringen, er ritt schon vor Jahren auf dem Lambda-Hypetrain herum. ;)
08/07/2015 23:12 Wanetrain#96
Quote:
Originally Posted by Gentros' View Post
Ok. Mein guter Wanetrain.

Unterschiede C++ 2003 und dem heutigen C++ 11:
  • Range-Based "for" schleife
  • Lambda - Funktionen
  • Rvalue (neue Move Semantik)
  • Generische Programmierung
  • "decltype" - Neue Rückgabesyntax
  • "constexpr"
  • Neue Standardbibliothek
  • Reguläre Ausdrüke
  • Zeitbibliothek wie z.B. Zeitdauer "duration"
  • Smart Pointer, wie z.B. "shared_ptr oder weak_ptr"
  • Multithreading
*Wenn etwas fehlt verbessert mich bitte.

Beispiele:
● Range-Based "for" schleife

Code:
vector<int> werte { 111, 222, 333, 444 };
for( auto elem : werte ) {
cout << elem << endl;
}
int rawArray[4] { 111, 222, 333, 444 }; 
for( auto elem : rawArray ) {
cout << elem << endl;
}
● Lambda - Funktionen

Code:
inline void gerade(const int val){
if(!(val%2)) count << val << endl;)
}
vector<int> werte { 111, 222, 333, 444, 555 };
for_each( begin(werte), end(werte), gerade);

for_each( begin(werte), end(werte),
[] (int val) {
if(!(val%2)) count << val << entl;
}
};

Quelle: C++: Das umfassende Handbuch, aktuell zum Standard C++11
- Ja ich lese ein Buch man glaubt es kaum.

Komm mir bitte nicht mit Abgeschrieben aus einem Buch.
Denn die Code stellen sind nicht aus diesem Buch kannst du gerne Kaufen und nachlesen.

Ich weiß zwar nicht alles aber ich versuche es zu Lernen.
Runde 2! :3

Quote:
[*]Multithreading
Hö? Is ja nicht so als Existiert das bereits schon seit Jahren..

Quote:
[*]"decltype" - Neue Rückgabesyntax
"Rückgabesyntax" also, okay. Nennt sich auch Auto, sollte man eigentlich nur bei Pointern benutzen ansonsten ein Template für Funktionen anlegen.

Quote:
[*]Neue Standardbibliothek
Hö?!

Quote:
[*]"constexpr"
Kam erst komplett mit C++ 14.

Quote:
[*]Reguläre Ausdrüke[*]Neue Standardbibliothek
Hast du das nur hingeschrieben weil somit die Liste länger ist?

Quote:
[*]Rvalue (neue Move Semantik)
Gibt es eigtl. schon lange. (STL)

Quote:
[*]Smart Pointer, wie z.B. "shared_ptr oder weak_ptr"
Bevor man damit was macht, sollte man wissen was "dynamic", "static", "reinterpret" und "const" Casts machen.

Nun TwiLight hat eigentlich recht, du findest verdammt viel im Boost Library was das ganze übernimmt. Somit ist ein neue Visual Studio + Boost eigtl. für die Katz.

Gibt auch noch das lustige "std::function":
Quote:
void ForVisibilityChunkRange( _In_ CUser* pUser, _In_ std::function< void ( _Out_ IChunkSection*, _Out_ int, _Out_ int ) > f )
Dazu kommt bei Visual Studio Änderungen die euch allerdings nicht betreffen:
  • ESP Stack pfüf verstärkt
  • IntelliSense versärkt mit "Fuzzy Logic"
  • Linker Optimierungen
  • uvm.

Das sind dinge die euch "evtl" jucken. Wobei ich das bezweifel.

Nun gut, magst dass ich noch mehr nachlege? :)

Mfg.
08/10/2015 10:42 Sedrika#97
Ich persönlich finde Lambda Ausdrücke eine Bereicherung. Diese sind aber jetzt nichts ohne das man nicht leben könnte.

Viele Sachen von den neuen C++ Standarts gab es schon viel früher in der Boost Library.

VS15 hätte ich mir fast gezogen um iOS Apps zu basteln, aber da die Bedingung immernoch ein Gerät mit OS X ist kann ich darauf verzichten. Man hat nicht gleich das bessere wenn man das neuste hat.
08/11/2015 10:29 killy16#98
Grening hast du skype?
08/11/2015 12:11 Grening#99
Quote:
Originally Posted by killy16 View Post
Grening hast du skype?
Nein, aber du kannst dich gerne per PN melden.
08/13/2015 17:22 ™Dryad#100
Yo @Grening,
ich habe mir mal deine v15 Files geladen,
sofern ich Nord Flaris bin habe ich son weißen quadrat um mich herum
so wie die Npc´s...

Haste n Fixx dafür?

lg
08/13/2015 22:35 Grening#101
Quote:
Originally Posted by ™Dryad View Post
Yo @Grening,
ich habe mir mal deine v15 Files geladen,
sofern ich Nord Flaris bin habe ich son weißen quadrat um mich herum
so wie die Npc´s...

Haste n Fixx dafür?

lg
Wenn du das unter deinem char meinst, dann musst du von low auf mid oder high stellen.
08/14/2015 17:33 ™Dryad#102
Quote:
Originally Posted by Grening View Post
Wenn du das unter deinem char meinst, dann musst du von low auf mid oder high stellen.
o.O
Gibs da net ne andere lösung ???
So ein Bug gabs doch davor net oder?

Edit:Boden o.O

[Only registered and activated users can see links. Click Here To Register...]
08/18/2015 05:55 cletite#103
Eigentlich bin ich ja zu alt für sowas... aber ich muss mal wieder meinen senf dazu geben^^

Quote:
Originally Posted by .ACE. View Post
Da ich über mehre Geräte das Spiel testen kann, kann ich mal schauen wie sie drauf reagieren und schauen wo ich etwas mehr FPS rausholen kann, wie auch FPS Drops kille.
Und was willst du durch mehrere "geräte" festellen? Das es auf dem einen läuft und auf dem anderen nicht?
Falscher ansatz: Das schwächste "gerät" nehmen und versuchen da am meisten raus zu holen.
Ouhh und wo du am meisten performance killst ist bei dem warten auf den nächsten frame, weil polling.
Dann wegen dem MFC geshizzel der in der neuz hängt. Dann SCANNER, JUNGS bitte nehmt JSON oder XML aber NICHT SCANNER :(...
und dann bitte das laden über mehrere Threads verteilen... Das sollte sogar leicht zu implementieren sein.. ouuh und ein paar tolle shader würden auch nicht schaden :3


Quote:
Originally Posted by xTwiLightx View Post
Dass das Kompilieren der Files in VS Versionen > 2003 schneller gehen soll, würde ich gerne mal sehen.
Es mag ja sein, dass ein neuerer Compiler "besseren" Code generieren kann, aber wenn der Quellcode völlig verhunzt ist, bringt dir der beste Compiler nichts :P
Oh mein kleiner stephano, vs 2003 benutz nichtmal MP generation von code...
Ne kann ich dir bezeugen; der neue compiler arbeitet 1000 fach besser als der alte und woher soll der compiler bitte wissen das der flyff source verhuntzt ist?
Er erzeugt halt mehr instructions.. Aber durch optimierung könnte dadurch sogar mehr rauskommen als bei 2003... Aber das müsste man testen...



Quote:
Originally Posted by Wanetrain View Post
Wie macht man "Performance" kaputt? durch die "Systeme" wo ihr einbaut? nope das auch wieder Falsch.
Ganz einfach in dem man sinnlose loops reinknallt. Ich meine warum nicht; Pff wer braucht schon 60FPS?
>| This is for the players!(720p+30fps) = beste.

Quote:
Originally Posted by Wanetrain View Post
Nun.. FlyFF hat keine sichtlichen FPS Drops. Du weißt nicht wie die FlyFF FPS zustande kommt.. Die FlyFF FPS ist grundlegend auf 60 (62) Frames gebunden, woran liegt das wohl? achja... damit ist ja das ganze Client Timing geregelt von wegen Animationen & Game Compute, stimmt ja, wenn du das alles überarbeiten magst, viel Spaß dabei. Dabei noch mit einer Alten DirectX Version, völliges TIME WASTING..
Naja man könnte das relativ einfach umsetzten:
Du musst halt die render time des letzten frames zu der alten addieren und wenn mehr als 1000/60 elapsed sind kannste einen weiteren anim-frame abspielen.

Mit der DirectX version hat das relativ wenig zutun. Wenn man den DXCore richtig optimiert könnte man auch wesentlich mehr rausholen. Alleine wenn ihr mal endlich anfangen würdet shader zu implementieren...


Quote:
Originally Posted by Wanetrain View Post
Du hast dir extra die Arbeit gemacht? DU? ich mein, guess what ich hab ein Source V15 (Official, ohne Änderungen) auf Vs 12, 13 & 15 Released. Ihr Installiert einfach Vs 12+, Compiled mit Fehlern und denkt "Hey muss ich fixxen!"? Lustig ist nur, ist ein Source bereits bei C++ 11 (Vs 12+) angekommen, kannst du das ganze mit 13 auf Compilen. Das 15er Update wird für euch verdammt schwer da ihr euch einfach nicht mit Visual Studio genug beschäftigt damit ihr wisst was sich ändert.
Lass mal stecken digga, MFCMBS installen regelt. <hash_map> ist halt deprecated. Sonst kp... denke nicht das es großartig anders ist.

Quote:
Originally Posted by Wanetrain View Post
Du Entwickelst in FlyFF sowieso nichts, genau wie der Rest von euch, evtl. Sedrika kann bissel was, aber sonst nutzt ihr nur Strukturen seitens Gala Lab, keine Kunst da etwas rein zu machen. Wer was anderes sagt lügt einfach nur wie gedruckt, da ich bei jedem Server immer den selben Code sehen & daher weiß was abgeht.

Jungs lasst dieses Game liegen, es bringt nichts. (Kenn das iwo her.. wa Dome?)

Lustig wie sogar Clemi mir das erst vor 3 Tagen sagte das ihr einfach nur Zeit verschwendet, da wir es zu 2. Nicht hinbekommen haben soviel aus dem Source zu holen. Mag evtl. daran liegen das alle DirectX steuer Einheiten, sprich das ganze Rendering etc. aus einem Buch 1zu1 Kopiert ist..mhm.
Joa so mehr oder weniger hast du recht.
Es bringt halt nichts einfach sachen C&Pn. Jedoch schadet es nicht sich mal mit dem source zu beschäftigen, damit man ein gefühl dafür bekommt, wie man mit C++ + models = geld macht.

Auch kann ich euch nur von der idee am flyff core etwas zu ändern, abraten. Es ist sehr sehr sehr sehr viel arbeit und solltet ihr nur einen fehler machen ist alles am und im ars*h. Wenn dann gleich komplett alles neu, weil der sourcecode an so vielen stellen "bugfixes" hat, die nur auf ein bestimmtes case zutreffen und so weiter.

Aber dann ist gleich die frage ob man das überhaupt, in der heutigen zeit von grund auf oder gleich auf basis einer engine wie Unreal oder CryEngine aufbaut. (Nein Unity hat baaad performance ;) )
Aber dann müsste man das visuelle zeug neu basteln weil ich nicht glaube das terrain texturen mit 128x128 auflösung ansatzweise gut aussehen würden....


Quote:
Originally Posted by Wanetrain View Post
Bevor man damit was macht, sollte man wissen was "dynamic", "static", "reinterpret" und "const" Casts machen.
Genau du splasher solltest wissen das die casting operatoren nichts mit <memory> zu tun haben...
>> shared_ptr sind für ref-counting gc.


Quote:
Nun gut, magst dass ich noch mehr nachlege?
Hihi tell me more master.
Am besten beginnst du mit future und complex :)


Quote:
Originally Posted by Sedrika View Post
Ich persönlich finde Lambda Ausdrücke eine Bereicherung. Diese sind aber jetzt nichts ohne das man nicht leben könnte.

Viele Sachen von den neuen C++ Standarts gab es schon viel früher in der Boost Library.
Lambdas sind das beste was C++ je bekommen konnte. Endlich kannst du großtenteils funktional(JavaScript + F# sagt hallo) programmieren. Für was ist das gut?

In dem flyff source gab es ja schon so was in der art. Es nennt sich FOR_VISIBILITY_RANGE(?! daneben?)
das gleiche kann man nun ganz einfach ohne macro geshizzle lösen.
Code:
pWorld->ForVisbibilityRange( [this](){
 //=> Important stuff here..
});
Auch für callbacks ist das genial. Da einfach:

xyz.h
Code:
class ...
{
   std::vector< std::function< void( void ) > > m_vecCbs;
};
dann kannste richtig easy per for each durch iterieren und gg :)

Code:
for( auto i : m_vecCbs ) 
  i();

Quote:
Originally Posted by Sedrika View Post
VS15 hätte ich mir fast gezogen um iOS Apps zu basteln, aber da die Bedingung immernoch ein Gerät mit OS X ist kann ich darauf verzichten.
Jop der Objective-C / SWIFT compiler ist halt mac only :o

Quote:
Originally Posted by Sedrika View Post
Man hat nicht gleich das bessere wenn man das neuste hat.
Stimmt leider in der Informatik scene nicht. Sonst würde niemand neue Hardware kaufen.
Alleine die ganzen neuerungen durch std sind richtig geil. (z.B. <filesystem>, <future>).
Auch wurde das größtenteils das redist erneuert.


So zum abschluss noch etwas OT:
>> Warum schon wieder ein v15 release. Ich dachte die wahren 2010 in?...

Quote:
Zusätzlich habe ich die Idee von Gentros übernommen, eine GlobalCommon.h einzusetzen, da mir dies sehr sinnvoll erschien.
Oh nein... Bitte sag mir nicht das ihr da noch mehr #define macros reinmacht.
>> Warum beendet ihr nicht einfach mal diese sinnlose macro hölle? Merkt eigentlich keiner von euch das es einfach komplett useless ist sowas zu benutzen? WEIL DAS MEISTE VON DEM CODE WELCHER DURCH DAS #ELSE von #if __ver >= xyz getrennt wird nicht funktioniert UND VORALLEM AUCH NICHT FUNKTIONIEREN SOLL!!????...
ohmann das ihr den schrott nach 5 JAHREN immer noch abfeiert zeugt nicht von großer intellenz....


Bei weiteren fragen bitte melden.
Lg: Clemi
08/20/2015 14:55 pakinglalat#104
I would like to know what is inside "AiO Pack"?
08/20/2015 14:57 xInvitcum#105
Quote:
Originally Posted by pakinglalat View Post
I would like to know what is inside "AiO Pack"?
Source, Resource, Client, DB