Elexier der Bewegung
Elexier der Bewegung
Es handelt sich hier um eine Unsauberkeit im Code, die in der Form schon vor längerer Zeit von einem User an mich herangetragen wurde. Die Sache verlief damals im Sand, da ich der Ansicht war, es sei ein gewollter Effekt, der User schrieb damals auch keinen Bugreport - mittlerweile denke ich anders darüber, da es keinerlei Sinn für die Code-Struktur beim Elexier der Bewegung gibt.
Konkret geht es um folgendes:
Elexier der Bewegung wird - laut Sotrax - gelöscht, wenn man sich ausloggt, das heißt, beim Relogin ist der Zustand nicht mehr aktiv.
In der Praxis zeigt sich jedoch, dass der Zustand nicht beim Ausloggen, sondern bei einem neuerlichen Login gelöscht wird.
http://lorana.lo.funpic.de/all/elexier.jpg
In diesem Beispiel habe ich ein Elexier verwendet, Firefox abgeschossen, Firefox neu geöffnet und mich wieder eingeloggt - Erfolg: Elexier ade.
Für diese Vorgehensweise gibt es keine logische Erklärung - im Gegenteil, jeder, der PC-Probleme hat, wird diese Struktur verdammen. Warum wird der Zustand gelöscht, wenn man sich neu einloggt? Es macht keinen Sinn, daher dieser Thread.
Konkret geht es um folgendes:
Elexier der Bewegung wird - laut Sotrax - gelöscht, wenn man sich ausloggt, das heißt, beim Relogin ist der Zustand nicht mehr aktiv.
In der Praxis zeigt sich jedoch, dass der Zustand nicht beim Ausloggen, sondern bei einem neuerlichen Login gelöscht wird.
http://lorana.lo.funpic.de/all/elexier.jpg
In diesem Beispiel habe ich ein Elexier verwendet, Firefox abgeschossen, Firefox neu geöffnet und mich wieder eingeloggt - Erfolg: Elexier ade.
Für diese Vorgehensweise gibt es keine logische Erklärung - im Gegenteil, jeder, der PC-Probleme hat, wird diese Struktur verdammen. Warum wird der Zustand gelöscht, wenn man sich neu einloggt? Es macht keinen Sinn, daher dieser Thread.
Lorana ...
Das Lumpenpack hat geschrieben:Harry Potter ist für ihn ein Kinderbuch.
Äußerliche Zustimmung, innerlich Cruciatus-Fluch.
Re: Elexier der Bewegung
Was ist denn, wenn man F5 drückt und damit auch den Ort neu betritt? Ist es dann auch weg?
Re: Elexier der Bewegung
In diesem Fall bleibt der Zustand bestehen.
Lorana ...
Das Lumpenpack hat geschrieben:Harry Potter ist für ihn ein Kinderbuch.
Äußerliche Zustimmung, innerlich Cruciatus-Fluch.
Re: Elexier der Bewegung
Habs auch gerade getestet - funktioniert
Das ganze ist aber verzwickter als man anfangs denkt oO
Ich hab mich im FF eingelogt und vom Elixier getrunken, danach habe ich mich im Opera eingelogt und nachgeschaut, dort war die Wirkung weg und ich brauchte 6 Sekunden pro Feld. So weit so gut. Dann allerdings hab ich im FF geschaut, während ich im Opera eingelogt war, hier jedoch brauchte ich nur 5 Sekunden pro Feld - auch nach F5 drücken. Nach dem Schließen des Opera-Fensters ist die Wirkung immer noch da oO
Komisch
Das ganze ist aber verzwickter als man anfangs denkt oO
Ich hab mich im FF eingelogt und vom Elixier getrunken, danach habe ich mich im Opera eingelogt und nachgeschaut, dort war die Wirkung weg und ich brauchte 6 Sekunden pro Feld. So weit so gut. Dann allerdings hab ich im FF geschaut, während ich im Opera eingelogt war, hier jedoch brauchte ich nur 5 Sekunden pro Feld - auch nach F5 drücken. Nach dem Schließen des Opera-Fensters ist die Wirkung immer noch da oO
Komisch
- -=Baphomet=-
- großer Laubbär
- Beiträge: 3899
- Registriert: 31. Okt 2006, 17:00
- Wohnort: Welt 4
Re: Elexier der Bewegung
Da scheint wohl das Elixier an die Session-ID geknüpft zu sein. Also manchmal würde ich schon gerne mal den Quellcode von freewar zu sehen kriegen, scheint echt an manchen Stellen spannend zu seinSchmiddi hat geschrieben:Habs auch gerade getestet - funktioniert
Das ganze ist aber verzwickter als man anfangs denkt oO
Ich hab mich im FF eingelogt und vom Elixier getrunken, danach habe ich mich im Opera eingelogt und nachgeschaut, dort war die Wirkung weg und ich brauchte 6 Sekunden pro Feld. So weit so gut. Dann allerdings hab ich im FF geschaut, während ich im Opera eingelogt war, hier jedoch brauchte ich nur 5 Sekunden pro Feld - auch nach F5 drücken. Nach dem Schließen des Opera-Fensters ist die Wirkung immer noch da oO
Komisch

Woo woo woo! You know itKauket hat geschrieben:Ohne ist schöner =)

Re: Elexier der Bewegung
Ohja, den würd ich mir auch zu gern antun ... und natürlich noch lieber dran rumbasteln, wenn ichs könnte *denkt an die vielen unnötigen Abfragenblöcke und die teils wirklich geniale Kommentierung des Codes*
Wobei ich sagen muss, dass in diesem konkreten Fall die Session-ID zwar im ersten Augenblick nachvollziehbar, aber bereits auf den zweiten Blick ne ziemlich schlechte Lösung ist (mal vorsichtig ausgedrückt). Würde man einfach den Zustand schnelle Bewegung beim Ausführen des Logout-Links mit false belegen bzw die Zeit-Variable davon auf Null setzen, wäre das Problem ohne große Umstände gelöst und weit benutzerfreundlicher. Zudem würden so seltsame Effekte, wie von Schmiddi beschrieben, nicht mehr auftreten können.
Wobei ich sagen muss, dass in diesem konkreten Fall die Session-ID zwar im ersten Augenblick nachvollziehbar, aber bereits auf den zweiten Blick ne ziemlich schlechte Lösung ist (mal vorsichtig ausgedrückt). Würde man einfach den Zustand schnelle Bewegung beim Ausführen des Logout-Links mit false belegen bzw die Zeit-Variable davon auf Null setzen, wäre das Problem ohne große Umstände gelöst und weit benutzerfreundlicher. Zudem würden so seltsame Effekte, wie von Schmiddi beschrieben, nicht mehr auftreten können.
Lorana ...
Das Lumpenpack hat geschrieben:Harry Potter ist für ihn ein Kinderbuch.
Äußerliche Zustimmung, innerlich Cruciatus-Fluch.
Re: Elexier der Bewegung
Eigentlich denkst Du schon ein knappes Jahr anders darüber^^sgr011566 hat geschrieben:mittlerweile denke ich anders darüber
viewtopic.php?p=369438#p369438
However, der Effekt besteht immer noch. Sind sicher schon Unmengen an Elexier verschüttet worden....
- Al Capone W7
- Gelbbart-Yeti
- Beiträge: 2010
- Registriert: 21. Okt 2007, 16:03
- Wohnort: auf der sonnenseite des lebens.
Re: Elexier der Bewegung
das is mir auch mal pasiert, ich trinke es, mit einmal stürzt mein internet ab, ich log mich neu ein, und weg war es.
Seit dem dem 11.11 06 als Al Capone in W7 dabei aber so gut wie inatkiv.
- Faehrschiff
- Kopolaspinne
- Beiträge: 1149
- Registriert: 9. Jan 2005, 20:52
- Wohnort: Oblivion.
Re: Elexier der Bewegung
Ich kenn mich zwar nicht sonderlich mit dem FreeWar-Quellcode und so aus, aber wie wäre es, wenn man solche Zustände, ähnlich wie den Schutz, die KU und der Verräterstatus an die USER-ID bindet?
This is not a subliminal message.Erzwungene Erfüllung hat geschrieben:„Blütenblätter umschließen Blütenblätter, die Blütenblätter umschließen, junge Kaulquappe. Die Wahrheit liegt hinter einem Berg Illusionen verborgen.“ —Neerdiv, Merromerit
Re: Elexier der Bewegung
Da hatte ich aber kein Lust oder sonstwas, einen richtigen Thread zu machen - dachte da auch wirklich, es ist halt so programmiert worden, warum auch immer ...huwar hat geschrieben:Eigentlich denkst Du schon ein knappes Jahr anders darüber^^
viewtopic.php?p=369438#p369438

Ich war mir aber sicher, irgendwo am Rande mal einen Kommentar dazu geschrieben zu haben, danke.
@ Faehrschiff: Genau darum gehts mir ja - das würde im schlimmsten Fall eine zusätzliche Datenbankspalte erfordern. Sollte in Zeiten der Serveraufrüstung aber kein sonderliches Problem darstellen.
Lorana ...
Das Lumpenpack hat geschrieben:Harry Potter ist für ihn ein Kinderbuch.
Äußerliche Zustimmung, innerlich Cruciatus-Fluch.
Re: Elexier der Bewegung
Dies hat interne Gründe, die nicht an der Programmierer sondern an PHP Sessions liegen. Der Zustand verfliegt, wenn PHP das ganze als neue Session betrachtet, sprich der Zustand ist an die Usersession gebunden, welche wiederum intern von PHP selbst verwaltet wird. Um das zu ändern müsste ich den Zustand in der Datenbank speichern, was ich aus Performancegründen nicht mache.
---
Sotrax
Sotrax
- vnv_nation
- Feuervogel
- Beiträge: 4533
- Registriert: 7. Mär 2004, 02:46
Re: Elexier der Bewegung
Nur so ein Gedankengang dazu:
Also steht es im Endeffekt nur in der Session, weil es sonst bei jedem Schritt einen weiteren DB-Zugriff gäbe? Dann könnte es trotzdem in die Zeittabelle und du müsstest den Status lediglich beim Re-Login noch einmal erfragen, im Erfolgsfall wird die Restzeit der neuen Session zugeschrieben. Das macht einen Zugriff mehr beim Login, bei worst case 4oo Usern, die gleichzeitig das Elixier nutzen und fliegen könnten, dürfte keine signifikante Einschränkung eintreten und der Effekt bliebe dennoch erhalten.
Also steht es im Endeffekt nur in der Session, weil es sonst bei jedem Schritt einen weiteren DB-Zugriff gäbe? Dann könnte es trotzdem in die Zeittabelle und du müsstest den Status lediglich beim Re-Login noch einmal erfragen, im Erfolgsfall wird die Restzeit der neuen Session zugeschrieben. Das macht einen Zugriff mehr beim Login, bei worst case 4oo Usern, die gleichzeitig das Elixier nutzen und fliegen könnten, dürfte keine signifikante Einschränkung eintreten und der Effekt bliebe dennoch erhalten.
Re: Elexier der Bewegung
Jetzt muss ich mich noch kurz einmischen, Elixier schreibt man doch so, oder? Und das von Sgr, Tzz 

- I'm in space.
Let's Plays und so'n Kram.
Re: Elexier der Bewegung
Kannst Du dann nicht bitte auch Vergiftung und die LP-Halbierung entsprechend Performance-sensibel nur in der Session speichern?Sotrax hat geschrieben:Dies hat interne Gründe, die nicht an der Programmierer sondern an PHP Sessions liegen. Der Zustand verfliegt, wenn PHP das ganze als neue Session betrachtet, sprich der Zustand ist an die Usersession gebunden, welche wiederum intern von PHP selbst verwaltet wird. Um das zu ändern müsste ich den Zustand in der Datenbank speichern, was ich aus Performancegründen nicht mache.

Re: Elexier der Bewegung

Naja... Ich hab bekomme ein Elexier pro Tag, würde also durchaus Luftsprünge machen wenn das anders geregelt wird... aber wenn nicht mach ich eben wenige relexiere und mehr Fischsuppen *g+
Bazinga!
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste