[SHOW] Tabbed Inventory und Shopsystem

01/16/2012 22:11 Krustenkäse#1
Hi Elitepvperzzzzzz...

ich bin fast mit der Programmierung des Tabbed Inventorys fertig und wollte euch einfach mal zeigen, dass auch eine Privatperson und ein sogenannter "theoretischer" Programmierer in der Lage ist ein solches System zu programmieren.

[Only registered and activated users can see links. Click Here To Register...]

...das System ist noch weit davon entfernt bugfrei zu sein:
-das Speichern funktioniert noch nicht ganz ( der SQLString wird abgeschnitten )
-kleiner Bug durch schlampige Programmierung in der CWndItemCtrlKlasse
-ubekannte Bugs :D

Des weiteren habe ich auch bereits das Shoppingsystem fertig programmiert :D

[Only registered and activated users can see links. Click Here To Register...]

Ps: Ich verkaufe keines dieser Systeme und werde sie auch nicht releasen...

01/16/2012 22:17 Liebeskeks#2
Sieht ganz schön aus ^-^
bekommst einen thx


Aber, wenn du es nicht verkaufst oder Releast (was ich gut finde) wieso dann? ;)
01/16/2012 22:18 Flash!#3
Nice, super Arbeit.

Besonders dass du auch bei den "Extra Tabs" runterscrollen kannst und somit mehr Platz
hast finde ich schon um einiges besser als bei Offi.

Das Shopping Cart System ist halt nett wenn man es programmiert hat
aber Ingame totaler Mist und macht es nur noch umständlicher und alles dauert länger :S

Edit: @ Liebeskeks: Weil er es den Leuten zeigen will wie er bereits schon erwähnte ??
01/16/2012 22:20 マリブ#4
Wenigstens mal einer der was Zeigt und nicht so wie unsere Flyff "Queen" Yannick :p
01/16/2012 22:31 Jopsi332#5
nachmacher (tabbed invi;D) ne spaß

das shopping is doch nicht so schwer oder ? einfach nen item container reinklatschen die items speichern , in nem static die gesamtkosten und dann alle kaufen die gespeichert wurden.

sieht aber nice aus
01/16/2012 22:31 Deda94#6
Quote:
Originally Posted by Marvin! View Post
Nice, super Arbeit.

Besonders dass du auch bei den "Extra Tabs" runterscrollen kannst und somit mehr Platz
hast finde ich schon um einiges besser als bei Offi.

Das Shopping Cart System ist halt nett wenn man es programmiert hat
aber Ingame totaler Mist und macht es nur noch umständlicher und alles dauert länger :S

Edit: @ Liebeskeks: Weil er es den Leuten zeigen will wie er bereits schon erwähnte ??
Also umständlich ist das nun nicht, das Einkaufen geht so schneller & besser. Da musst du nicht jedes Item einzeln kaufen, dort wird ausgesucht & alles kommt ins Inventar :awesome:

@Threadersteller:

Schaut echt Super aus, weiter so! :awesome:
01/17/2012 01:17 yannickFlyff#7
Quote:
Originally Posted by Malibux33 View Post
Wenigstens mal einer der was Zeigt und nicht so wie unsere Flyff "Queen" Yannick :p
Ich zeig nichts?

Entschuldige das ich kein 24/7 Virtuelles leben habe und max. auf 1 Stunde "coding" zeit komme am Tag.

Desweiteren hab ich eigene Systeme Progammiert für Flyff und keine Noobigen erweiterungen wie Tabbed Invi Shopping System oder andere Systeme die ihr als Schwer ansieht.

Dazu kommt das ich Datenbanken von jedem Offizielen Server habe. Dank mir sind Offi Files im umlauf (und durch die wurden auch default logins zu den Offizielen Servern gefunden die zum Source geführt haben).

PiPaPo kurzum: Ohne mich würdet ihr noch auf euren Caali Servern versauen.


Zum ShoppingCart System:

Ziemlich einfach zu verwirklichen. Anstatt das Item direkt zu einzukaufen packst du es in den Speicher und renderst es unten rein (kann man sich z.b vom Inventory klauen).

Wenn man nun paar Items in den Einkaufswagen reingepackt hat und es kauft machst du dir ein Packet mit [Header][ItemCount]loop([itemid][itemanzahl]).
Beim Empfangen kannst ItemCount dazu nehmen alle Items aus dem Packet auszulesen und loopst so einfach durch liest sie aus, fügst sie dem User hinzu und ziehst in die Penya ab (kann man sich ebenfalls ausm Shopping System klauen).

Beim Tabbed Inventory ist es auch nicht gerade schwer dies zu machen.

Du änderst in der Datenbank / im Source das er das Equiment nun nichtmehr mit dem Inventory zusammen benutzt.
Erstellst also sozusagen 5 "Inventorys".
1 für das Equiment die anderen 4 für die Tabs.

Nun musst du halt haufenweise codezeilen im Source bearbeiten. Deswegen ist das Tabbed Inventory nur eine Pure Zeitinvestition und überhaupt nicht Schwer.


@Krustenkäse was willst du durch den Thread erreichen? Dicke Eier? Sagen das du "coden" könntest?

Dann prahl mal mit deinen Eier und code das Item Linking System nach. Wenn du es hast kriegst von mir ne Überweisung von 500€ direkt auf dein Konto.
01/17/2012 09:22 Krustenkäse#8
und hier kommt wieder der Hypokritiker^^

Quote:
Desweiteren hab ich eigene Systeme Progammiert für Flyff und keine Noobigen erweiterungen wie Tabbed Invi Shopping System oder andere Systeme die ihr als Schwer ansieht.

Dazu kommt das ich Datenbanken von jedem Offizielen Server habe. Dank mir sind Offi Files im umlauf (und durch die wurden auch default logins zu den Offizielen Servern gefunden die zum Source geführt haben).

PiPaPo kurzum: Ohne mich würdet ihr noch auf euren Caali Servern versauen.
Deine Leistungen hat niemand angezweifelt :D... lediglich, dass du ständig an allem rummeckerst, das was du aber kritisierst nicht besser machst, bzw. zeigst, wie es besser geht.

Quote:
Ziemlich einfach zu verwirklichen. Anstatt das Item direkt zu einzukaufen packst du es in den Speicher und renderst es unten rein (kann man sich z.b vom Inventory klauen).
Dann mach mal :D

Quote:
Wenn man nun paar Items in den Einkaufswagen reingepackt hat und es kauft machst du dir ein Packet mit [Header][ItemCount]loop([itemid][itemanzahl]).
Beim Empfangen kannst ItemCount dazu nehmen alle Items aus dem Packet auszulesen und loopst so einfach durch liest sie aus, fügst sie dem User hinzu und ziehst in die Penya ab (kann man sich ebenfalls ausm Shopping System klauen).
Dann mach das mal... du wirst dich schwer wundern, warum immer nur ein Item vom ganzen Array gekauft wird :D... Die Entwickler haben da eine Zeitsperre reingeproggt, die zu schnelles kaufen in zu kurzer Zeit verhindert^^

Quote:
Beim Tabbed Inventory ist es auch nicht gerade schwer dies zu machen.

Du änderst in der Datenbank / im Source das er das Equiment nun nichtmehr mit dem Inventory zusammen benutzt.
Erstellst also sozusagen 5 "Inventorys".
1 für das Equiment die anderen 4 für die Tabs.

Nun musst du halt haufenweise codezeilen im Source bearbeiten. Deswegen ist das Tabbed Inventory nur eine Pure Zeitinvestition und überhaupt nicht Schwer.
Wer das so macht ist selber schuld, dass er lange braucht :D...
Wie man es wesentlich weniger Zeitaufwendig macht habe ich bereits in einem anderen Thead beschrieben und jetzt auch endlich mal umgesetzt

Quote:
@Krustenkäse was willst du durch den Thread erreichen? Dicke Eier? Sagen das du "coden" könntest?
Ich wollte deine Reaktion sehen :D
außerdem bist du es immer, der dicke Eier beweißen muss, weil du ständig den größten scheiss kritisierst und den Leuten damit die Lust nimmst irgendwas mal zu erklären, da sie sowieso immer nur ne scheiss Replik kriegen^^

Quote:
Dann prahl mal mit deinen Eier und code das Item Linking System nach. Wenn du es hast kriegst von mir ne Überweisung von 500€ direkt auf dein Konto.
Halt die 500€ schon mal bereit, denn nach dem Abi werde ich mich darum kümmern^^
01/17/2012 11:47 yannickFlyff#9
Quote:
Originally Posted by Krustenkäse View Post
Deine Leistungen hat niemand angezweifelt :D... lediglich, dass du ständig an allem rummeckerst, das was du aber kritisierst nicht besser machst, bzw. zeigst, wie es besser geht.
[/qoute] Ich tu ausschlieslich nur Kritisieren?
Seltsam das ich die Codesnippets von einigen leuten wie Jopsi etc tausendmal ausgebessert habe.

Hier seh ich natürlich keine CodeSnippets weswegen ich nichts ausbessern kann.

[qoute=Krustenkäse;14832568]Dann mach das mal... du wirst dich schwer wundern, warum immer nur ein Item vom ganzen Array gekauft wird :D... Die Entwickler haben da eine Zeitsperre reingeproggt, die zu schnelles kaufen in zu kurzer Zeit verhindert^^
Mal abgesehen davon das ich zu v16 (kurz vor v17) aus testgründen Packete wie das ONBUYING gespammt habe also im millisekunden takt items gekauft habe und nichts gesperrt wurde.

Auch beim Sourcedurchschauen hab ich überhaupt keine Abfrage gefunden die regelt das du im zeitraum x nur y Einkäufe tätigen kannst.

Bestätigt aber nur meine Theorie das du alles Copypastest und nur das machen das schon bereits in ähnlicher form in Source zur verfügung steht.

Denn wenn du nicht die einzelne Buy funktion vom Shop geklaut hättest würdest du wissen das DU bestimmen kann ob er ein Item kriegt oder nicht (sind ja nur haufenweise kontrollen und das aufrechnen Tax rate und am ende das Createitem / abziehen der Penyas).




Quote:
Originally Posted by Krustenkäse View Post
Ich wollte deine Reaktion sehen :D
außerdem bist du es immer, der dicke Eier beweißen muss, weil du ständig den größten scheiss kritisierst und den Leuten damit die Lust nimmst irgendwas mal zu erklären, da sie sowieso immer nur ne scheiss Replik kriegen^^
Wenn sie vernünftigen Code posten würden hätte ich ja nichts zu kritisieren.

Schau dir Jopsis releasten Auctionshaus code an. Findest du den ehrlich gut?


Quote:
Originally Posted by Krustenkäse View Post
Halt die 500€ schon mal bereit, denn nach dem Abi werde ich mich darum kümmern^^
Sind überweis bereit. Schreib mir einfach dann wenn du fertig bist.
01/17/2012 13:39 .Tear#10
Quote:
Originally Posted by yannickFlyff View Post
Mal abgesehen davon das ich zu v16 (kurz vor v17) aus testgründen Packete wie das ONBUYING gespammt habe also im millisekunden takt items gekauft habe und nichts gesperrt wurde.

Auch beim Sourcedurchschauen hab ich überhaupt keine Abfrage gefunden die regelt das du im zeitraum x nur y Einkäufe tätigen kannst.

Bestätigt aber nur meine Theorie das du alles Copypastest und nur das machen das schon bereits in ähnlicher form in Source zur verfügung steht.

Denn wenn du nicht die einzelne Buy funktion vom Shop geklaut hättest würdest du wissen das DU bestimmen kann ob er ein Item kriegt oder nicht (sind ja nur haufenweise kontrollen und das aufrechnen Tax rate und am ende das Createitem / abziehen der Penyas).






Wenn sie vernünftigen Code posten würden hätte ich ja nichts zu kritisieren.

Schau dir Jopsis releasten Auctionshaus code an. Findest du den ehrlich gut?




Sind überweis bereit. Schreib mir einfach dann wenn du fertig bist.
Das Auktionshaus ist von Pumbaa.. was aber auch schon öfters gesagt worden ist..

Du hast vll was drauf, aber es wird einfach immer lächerlicher..


@Te, du hast einfach das Inventory x4 genommen und dann wieder aufgespalten oder?

Wird denke ich einiges vereinfachen.. Bloß frage ich mich da wie das mit zB /gro abläuft, weil ja nur der erste Slot awaked wird, was da im ersten Slot steckt. Und ich glaube das da keine Setteile oder ähnliches sind.. o.o
01/17/2012 14:12 Krustenkäse#11
Quote:
Originally Posted by yannickFlyff View Post
Mal abgesehen davon das ich zu v16 (kurz vor v17) aus testgründen Packete wie das ONBUYING gespammt habe also im millisekunden takt items gekauft habe und nichts gesperrt wurde.

Auch beim Sourcedurchschauen hab ich überhaupt keine Abfrage gefunden die regelt das du im zeitraum x nur y Einkäufe tätigen kannst.

Bestätigt aber nur meine Theorie das du alles Copypastest und nur das machen das schon bereits in ähnlicher form in Source zur verfügung steht.

Denn wenn du nicht die einzelne Buy funktion vom Shop geklaut hättest würdest du wissen das DU bestimmen kann ob er ein Item kriegt oder nicht (sind ja nur haufenweise kontrollen und das aufrechnen Tax rate und am ende das Createitem / abziehen der Penyas).
...jetzt mal ehrlich :D hast du dir den Source angesehen?

1. Für das kaufen von Items sind PACKETTYPE_BUYITEM und PACKETTYPE_BUYCHIPITEM zuständig... wenn du dir jetzt die Funktionen des Servers ansiehst, die diese Packete handeln dann findest du folgenden Code:
Code:
#ifdef __PERIN_BUY_BUG
            if( [COLOR=Red]pUser->m_dwLastBuyItemTick + 500 > GetTickCount()[/COLOR] ) // ¾ÆÀÌÅÛ ±¸ÀԽõµ ÈÄ 0.5ÃÊÀ̳»¿¡ ´Ù½Ã ±¸ÀԽõµÇÑ °æ¿ì
            {
                Error( "CDPSrvr::OnBuyItem : __PERIN_BUY_BUG -> [PlayerId:%07d(%s)], [LastTick:%d], [CurTick:%d], [LastTryItem:%d], [Packet:%d,%d,%d,%d]",
                        pUser->m_idPlayer, pUser->GetName(), pUser->m_dwLastBuyItemTick, GetTickCount(), pUser->m_dwLastTryBuyItem, cTab, nId, nNum, dwItemId );
                //g_DPSrvr.QueryDestroyPlayer( pUser->m_Snapshot.dpidCache, pUser->m_Snapshot.dpidUser, pUser->m_dwSerial, pUser->m_idPlayer );
                return;
            }
            pUser->m_dwLastTryBuyItem = pItemElem->m_dwItemId;
           [COLOR=Red] pUser->m_dwLastBuyItemTick = GetTickCount();[/COLOR]
#endif // __PERIN_BUY_BUG
Wenn das keine Einschränkung der Käufe pro Zeiteinheit ist, dann release ich meinen kompletten Sourcecode :D

Quote:
Originally Posted by yannickFlyff View Post
Wenn sie vernünftigen Code posten würden hätte ich ja nichts zu kritisieren.

Schau dir Jopsis releasten Auctionshaus code an. Findest du den ehrlich gut?
Nein... habe ich mir nicht angesehen und an konstruktiver Kritik habe ich auch nichts auszusetzen... wenn sich aber jemand derartig aufspielt wie du, dann kotzt das den ambitionierten Veröffentlicher eines Quelltextes ernsthaft an... und ich hoffe, dass ich dir nicht erklären muss, wie man in unserer Gesellschaft miteinander umzugehen hat...

Quote:
Originally Posted by .Tear;
Wird denke ich einiges vereinfachen.. Bloß frage ich mich da wie das mit zB /gro abläuft, weil ja nur der erste Slot awaked wird, was da im ersten Slot steckt. Und ich glaube das da keine Setteile oder ähnliches sind.. o.o
Ich bin ja noch nicht fertig mit der Programmierung, aber danke, dass du das erwähnst^^
01/17/2012 14:14 Deda94#12
yannick du wirst langsam zu Crasy², das ist ja lächerlich wie du meinst alles besser zu wissen & komischerweise immer den Code vor Augen hast obwohl es ihn hier im Thread nicht gibt :awesome:

Nebenbei denk ich das das Itemlinking doch garnicht soo schwer zu coden ist, so viel zeug steckt da nun auch wieder nicht mit drin.
01/17/2012 14:52 xFruchti.#13
Das Shopsystem ist ja mal nice ;o hat Aleo flyff oder wie der auch heisst schon aber da hab ich mal ne frage ;O ?
War es schwer es nachzucoden ? also das Shopsystem
01/17/2012 14:59 yannickFlyff#14
Quote:
Originally Posted by Krustenkäse View Post
1. Für das kaufen von Items sind PACKETTYPE_BUYITEM und PACKETTYPE_BUYCHIPITEM zuständig... wenn du dir jetzt die Funktionen des Servers ansiehst, die diese Packete handeln dann findest du folgenden Code:
Code:
#ifdef __PERIN_BUY_BUG
            if( [COLOR=Red]pUser->m_dwLastBuyItemTick + 500 > GetTickCount()[/COLOR] ) // ¾ÆÀÌÅÛ ±¸ÀԽõµ ÈÄ 0.5ÃÊÀ̳»¿¡ ´Ù½Ã ±¸ÀԽõµÇÑ °æ¿ì
            {
                Error( "CDPSrvr::OnBuyItem : __PERIN_BUY_BUG -> [PlayerId:%07d(%s)], [LastTick:%d], [CurTick:%d], [LastTryItem:%d], [Packet:%d,%d,%d,%d]",
                        pUser->m_idPlayer, pUser->GetName(), pUser->m_dwLastBuyItemTick, GetTickCount(), pUser->m_dwLastTryBuyItem, cTab, nId, nNum, dwItemId );
                //g_DPSrvr.QueryDestroyPlayer( pUser->m_Snapshot.dpidCache, pUser->m_Snapshot.dpidUser, pUser->m_dwSerial, pUser->m_idPlayer );
                return;
            }
            pUser->m_dwLastTryBuyItem = pItemElem->m_dwItemId;
           [COLOR=Red] pUser->m_dwLastBuyItemTick = GetTickCount();[/COLOR]
#endif // __PERIN_BUY_BUG
Wenn das keine Einschränkung der Käufe pro Zeiteinheit ist, dann release ich meinen kompletten Sourcecode :D
Hupps hab ich dann übersehen sorry^^

Aber wenn man sich da eine eigene Funktion zusammenkleistert ODER sich da was zusammen kopiert dann sollte man den Tick nicht beim durch loopen des Item Arrays vom Einkaufswagen checken sondern beim getätigten einkauf selbst.


Quote:
Originally Posted by ToxicLibrary™ View Post
Nebenbei denk ich das das Itemlinking doch garnicht soo schwer zu coden ist, so viel zeug steckt da nun auch wieder nicht mit drin.
Problem ist das du den Text einfach nur in einem anderen "style" auf die chatbox renderst. Mit Ondraw änderst dann den Mauszeiger so als würde er auf einen Button checken usw.. soweit sogut.

Nun find raus auf welches verlinkte Item er klickt ;] Das sit ja das schwierigste von Item Link (ich selber würde es nicht hinkriegen) und ich weis nur das es etioom hat.

Quote:
Originally Posted by Tremby View Post
Das Shopsystem ist ja mal nice ;o hat Aleo flyff oder wie der auch heisst schon aber da hab ich mal ne frage ;O ?
War es schwer es nachzucoden ? also das Shopsystem
Aleo hat offifiles also brauchen die da nicht viel "dazucoden" ^^
01/17/2012 15:02 xFruchti.#15
Quote:
Aleo hat offifiles also brauchen die da nicht viel "dazucoden" ^^
Ich rede ja nicht von Aleo sondern von ihm ob er lange dafür gebraucht hat und ob es schwer war ;O ?