Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Die Zwingfeste in Thorwal
(22.02.2026, 19:30)siebenstreich schrieb: Über das gs_groups_x_target hatte ich mich auch gewundert und es als potentielle zweite Schwachstelle (neben der Unsicherheit über das Inventargewicht) abgespeichert. Aber ich hatte es erstmal weggeschoben, weil es mich schmerzlich daran erinnerte, dass ich die deinen Exploit mit der framegenauen Eingabe noch nicht verstanden hatte.
Ok, ich wollte hier nochmal kurz mein Verständnis des Exploits darlegen. Vielleicht hilft das dir, siebenstreich, oder anderen, den Mechanismus besser einzuordnen bzw. die Rahmenbedingungen sauber zu bestimmen.

Ich verstehe aktuell noch nicht vollständig, warum „Vorwärts (↑) gedrückt halten“ nur manchmal zuverlässig greift (bei niedrigen Cycles oft konsistenter, bei hohen teils gar nicht). Aber der grundlegende Mechanismus im Code sieht für mich so aus:

Das Spiel läuft in einer Schleife, in der grob zwei Dinge passieren:

1) Input-Handling (Key lesen -> Action setzen -> ggf. Bewegung ausführen)

2) Dungeon/Event-Handling (pro Tick, unabhängig von Input)

Dass der Eventhandler in jedem Tick läuft, erklärt die Notwendigkeit von gs_dng_handled_pos. Damit soll verhindert werden, dass ein Event auf derselben Kachel im nächsten Tick sofort erneut feuert. Events sollen idealerweise nur beim „frischen Betreten“ einer Kachel abgearbeitet werden.

Im Folgenden habe ich den Exploit samt Codestellen tabellarisch als Gist formatiert (mein Versuch, das hier sauber als Tabelle zu formatieren, scheiterte u. a. an der maximalen Linkanzahl pro Post):
https://gist.github.com/cmsautter/a5e3c1...6d9419ae29

Runde 1 ist das erste „Betreten“ des Geröllfeldes.

Runde 2 ist dann geteilt:

a) Ohne Exploit bzw. ohne sofortige neue Vorwärts-Eingabe landet man effektiv wieder auf dem Feld vor dem Geröll.

b) Mit Exploit (↑ im richtigen Timing bzw. „Spam“) kann man auf dem Geröllfeld verbleiben bzw. darüber hinwegkommen, weil der Rollback-Block nicht mehr triggert.

Der Kern des Exploits ist (so wie ich es aktuell verstehe):

In Runde 1 läuft der Geröll-Block und setzt die Gruppe per Rollback wieder auf die vorherige Position (*_bak) zurück.

ABER: gs_dng_handled_pos wird am Ende trotzdem auf pos gesetzt, und pos ist zu diesem Zeitpunkt noch die Event-Kachel (Geröllfeld), nicht die zurückgesetzte *_bak-Position.

Damit ist handled_pos danach „Geröll“, obwohl die Gruppe effektiv wieder vor dem Geröll steht.

Wenn dann in Runde 2 sofort wieder „Vorwärts“ gelesen wird, ist pos erneut „Geröll“. Da handled_pos ebenfalls „Geröll“ ist, greift die Guard-Bedingung (pos != handled_pos) nicht mehr. Dadurch wird der Rollback-Branch übersprungen, und man bleibt auf dem Geröllfeld stehen (bzw. kann darüber hinaus).

Ich hoffe, das macht klar, warum der Bug sich schwer an einer einzelnen Codestelle ablesen lässt. Es ist keine reine „Ein-Zeile-ist-falsch“-Sache, sondern eine Art falsche Schleifeninvariante bzw. Annahme über zwei Iterationen hinweg. Rollback und handled_pos-Update sind inkonsistent, wenn im nächsten Tick sofort wieder Input verarbeitet wird.

Damit ist auch nicht ganz eindeutig, wie das Ganze am besten gefixt wird. Mein Vorschlag wäre:

gs_dng_handled_pos sollte nur dann auf pos gesetzt werden, wenn pos nach der Eventbehandlung auch wirklich der aktuellen Gruppenposition entspricht. Wenn per Rollback auf *_bak zurückgesetzt wurde, sollte handled_pos entsprechend auf die *_bak-Position (oder auf ein invalides Feld) gesetzt werden.

Damit wäre die ganze Klasse an „Rollback-Events mit handled_pos-Guard“ sauber gefixt.

Alternativ könnte man bei Events dieser Klasse den Guard pos != handled_pos entfernen, weil das Event durch den Rollback ohnehin „sich selbst“ verlässt. Das müsste man aber sorgfältig pro Event prüfen. In der Prem-Mine gibt es z. B. Stellen, die beabsichtigt dauerhaft freigelegt werden können. Dort existiert vermutlich zusätzliche Logik („ist Hindernis bereits entfernt?“).
Zitieren


Nachrichten in diesem Thema
Die Zwingfeste in Thorwal - von Klaun - 05.09.2006, 17:59
RE: Die alte Zwingfeste lvl 1 - von Zurgrimm - 05.09.2006, 18:16
RE: Die alte Zwingfeste lvl 1 - von Klaun - 05.09.2006, 19:44
RE: Die alte Zwingfeste lvl 1 - von Crystal - 05.09.2006, 19:56
RE: Die alte Zwingfeste lvl 1 - von Klaun - 05.09.2006, 21:48
RE: Die alte Zwingfeste lvl 1 - von Crystal - 06.09.2006, 07:53
RE: Die alte Zwingfeste lvl 1 - von Pergor - 08.09.2006, 16:34
RE: Die alte Zwingfeste lvl 1 - von Cratosch - 30.09.2006, 13:09
RE: Die alte Zwingfeste lvl 1 - von Pergor - 30.09.2006, 13:27
RE: Die Zwingfeste in Thorwal - von Fury - 22.08.2007, 11:42
RE: Die Zwingfeste in Thorwal - von Pergor - 22.08.2007, 11:54
RE: Die Zwingfeste in Thorwal - von Fury - 22.08.2007, 11:56
RE: Die Zwingfeste in Thorwal - von Pergor - 22.08.2007, 11:59
RE: Die Zwingfeste in Thorwal - von Fury - 22.08.2007, 12:03
RE: Die Zwingfeste in Thorwal - von JackyD - 22.08.2007, 12:07
RE: Die Zwingfeste in Thorwal - von Pergor - 22.08.2007, 12:47
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 22.08.2007, 13:10
RE: Die Zwingfeste in Thorwal - von Pergor - 22.08.2007, 14:00
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 22.08.2007, 14:30
RE: Die Zwingfeste in Thorwal - von Asmodean - 14.09.2007, 12:13
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 14.09.2007, 13:19
RE: Die Zwingfeste in Thorwal - von Asmodean - 14.09.2007, 13:28
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 08.12.2007, 19:25
RE: Die Zwingfeste in Thorwal - von Henne - 12.12.2007, 12:36
RE: Die Zwingfeste in Thorwal - von Fury - 12.12.2007, 17:47
RE: Die Zwingfeste in Thorwal - von Laszlo - 09.01.2008, 07:04
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 09.01.2008, 09:50
RE: Die Zwingfeste in Thorwal - von Calesca - 03.03.2008, 14:36
RE: Die Zwingfeste in Thorwal - von Crystal - 03.03.2008, 14:40
RE: Die Zwingfeste in Thorwal - von Calesca - 03.03.2008, 14:45
RE: Die Zwingfeste in Thorwal - von Asgrimm - 03.03.2008, 14:52
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 03.03.2008, 15:13
RE: Die Zwingfeste in Thorwal - von Calesca - 03.03.2008, 15:15
RE: Die Zwingfeste in Thorwal - von Calesca - 04.03.2008, 21:50
RE: Die Zwingfeste in Thorwal - von Asgrimm - 04.03.2008, 22:05
RE: Die Zwingfeste in Thorwal - von Peridor - 05.03.2008, 15:56
RE: Die Zwingfeste in Thorwal - von Calesca - 05.03.2008, 16:10
RE: Die Zwingfeste in Thorwal - von Peridor - 05.03.2008, 16:14
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 05.03.2008, 18:41
RE: Die Zwingfeste in Thorwal - von Peridor - 05.03.2008, 19:09
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 05.03.2008, 19:54
RE: Die Zwingfeste in Thorwal - von paule - 06.03.2008, 13:04
Besetztes Thorwal - von Kunar - 08.03.2008, 01:54
RE: Die Zwingfeste in Thorwal - von Tarantus - 13.03.2008, 13:51
RE: Die Zwingfeste in Thorwal - von Pergor - 13.03.2008, 13:59
RE: Die Zwingfeste in Thorwal - von Tarantus - 13.03.2008, 14:03
RE: Die Zwingfeste in Thorwal - von drexciya - 17.05.2008, 14:37
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 17.05.2008, 15:11
RE: Die Zwingfeste in Thorwal - von Peridor - 08.09.2008, 09:00
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 08.09.2008, 10:02
RE: Die Zwingfeste in Thorwal - von Hendrik - 10.09.2008, 19:37
RE: Die Zwingfeste in Thorwal - von Xep624 - 17.05.2011, 17:43
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 17.05.2011, 18:06
RE: Die Zwingfeste in Thorwal - von Xep624 - 17.05.2011, 18:22
RE: Die Zwingfeste in Thorwal - von Xep624 - 17.05.2011, 20:08
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 17.05.2011, 18:34
RE: Die Zwingfeste in Thorwal - von Esme - 17.05.2011, 20:44
RE: Die Zwingfeste in Thorwal - von Hanbastan - 18.05.2011, 22:32
RE: Die Zwingfeste in Thorwal - von Xep624 - 19.05.2011, 08:09
RE: Die Zwingfeste in Thorwal - von Hina - 07.07.2011, 10:33
RE: Die Zwingfeste in Thorwal - von Xep624 - 07.07.2011, 11:07
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 07.07.2011, 11:34
RE: Die Zwingfeste in Thorwal - von Hendrik - 07.07.2011, 12:36
RE: Die Zwingfeste in Thorwal - von Hendrik - 07.07.2011, 11:29
RE: Die Zwingfeste in Thorwal - von Hina - 07.07.2011, 13:04
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 07.07.2011, 13:42
RE: Die Zwingfeste in Thorwal - von exi - 07.07.2011, 14:39
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 07.07.2011, 14:48
RE: Die Zwingfeste in Thorwal - von Hina - 07.07.2011, 15:09
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 07.07.2011, 15:38
RE: Die Zwingfeste in Thorwal - von exi - 08.07.2011, 01:44
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 08.07.2011, 08:22
RE: Die Zwingfeste in Thorwal - von Hina - 07.07.2011, 16:05
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 07.07.2011, 16:25
RE: Die Zwingfeste in Thorwal - von Hina - 07.07.2011, 18:41
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 07.07.2011, 21:09
RE: Die Zwingfeste in Thorwal - von Hina - 08.07.2011, 19:18
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 08.07.2011, 20:17
RE: Die Zwingfeste in Thorwal - von Esme - 08.07.2011, 09:51
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 08.07.2011, 10:09
RE: Die Zwingfeste in Thorwal - von Recke - 08.07.2011, 16:37
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 08.07.2011, 17:07
RE: Die Zwingfeste in Thorwal - von Recke - 08.07.2011, 20:50
RE: Die Zwingfeste in Thorwal - von Pyromaniac - 08.07.2011, 18:34
RE: Die Zwingfeste in Thorwal - von Hina - 08.07.2011, 21:03
RE: Die Zwingfeste in Thorwal - von Recke - 09.07.2011, 17:27
RE: Die Zwingfeste in Thorwal - von Stane Novis - 27.11.2011, 00:40
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 12.03.2012, 14:10
RE: Die Zwingfeste in Thorwal - von Hellriegel - 12.03.2012, 15:49
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 12.03.2012, 15:54
RE: Die Zwingfeste in Thorwal - von Hellriegel - 12.03.2012, 19:54
RE: Die Zwingfeste in Thorwal - von Xorgor - 24.10.2013, 20:03
RE: Die Zwingfeste in Thorwal - von Crystal - 24.10.2013, 20:29
RE: Die Zwingfeste in Thorwal - von Xorgor - 24.10.2013, 20:45
RE: Die Zwingfeste in Thorwal - von Crystal - 24.10.2013, 20:57
RE: Die Zwingfeste in Thorwal - von Xorgor - 24.10.2013, 21:20
RE: Die Zwingfeste in Thorwal - von Xorgor - 25.10.2013, 08:49
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 25.10.2013, 09:35
RE: Die Zwingfeste in Thorwal - von Xorgor - 27.10.2013, 20:24
RE: Die Zwingfeste in Thorwal - von Xorgor - 25.10.2013, 13:09
RE: Die Zwingfeste in Thorwal - von Crystal - 25.10.2013, 15:51
RE: Die Zwingfeste in Thorwal - von Xorgor - 27.10.2013, 18:32
RE: Die Zwingfeste in Thorwal - von Chris82 - 27.10.2013, 19:04
RE: Die Zwingfeste in Thorwal - von Xorgor - 03.11.2013, 10:53
RE: Die Zwingfeste in Thorwal - von Xorgor - 06.11.2013, 21:38
RE: Die Zwingfeste in Thorwal - von Crystal - 07.11.2013, 00:59
RE: Die Zwingfeste in Thorwal - von Xorgor - 07.11.2013, 08:50
RE: Die Zwingfeste in Thorwal - von Silencer - 07.11.2013, 09:18
RE: Die Zwingfeste in Thorwal - von Hendrik - 07.11.2013, 13:50
RE: Die Zwingfeste in Thorwal - von Xorgor - 07.11.2013, 15:17
RE: Die Zwingfeste in Thorwal - von Hendrik - 07.11.2013, 14:52
RE: Die Zwingfeste in Thorwal - von Hendrik - 07.11.2013, 17:40
RE: Die Zwingfeste in Thorwal - von Xorgor - 07.11.2013, 21:22
RE: Die Zwingfeste in Thorwal - von El Pollo - 17.01.2019, 20:31
RE: Die Zwingfeste in Thorwal - von Asgrimm - 18.01.2019, 18:58
RE: Die Zwingfeste in Thorwal - von El Pollo - 18.01.2019, 23:17
RE: Die Zwingfeste in Thorwal - von Hindro - 19.01.2019, 20:29
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 14.02.2026, 23:26
RE: Die Zwingfeste in Thorwal - von Henne - 14.02.2026, 23:35
RE: Die Zwingfeste in Thorwal - von Henne - 15.02.2026, 00:49
RE: Die Zwingfeste in Thorwal - von Henne - 15.02.2026, 08:25
RE: Die Zwingfeste in Thorwal - von cmfrydos - 15.02.2026, 13:56
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 16.02.2026, 20:03
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 15.02.2026, 10:14
RE: Die Zwingfeste in Thorwal - von cmfrydos - 16.02.2026, 18:00
RE: Die Zwingfeste in Thorwal - von cmfrydos - 17.02.2026, 10:06
RE: Die Zwingfeste in Thorwal - von cmfrydos - 17.02.2026, 23:56
RE: Die Zwingfeste in Thorwal - von cmfrydos - 18.02.2026, 15:43
RE: Die Zwingfeste in Thorwal - von cmfrydos - 19.02.2026, 14:09
RE: Die Zwingfeste in Thorwal - von cmfrydos - 25.02.2026, 14:01
RE: Die Zwingfeste in Thorwal - von cmfrydos - 25.02.2026, 20:43
RE: Die Zwingfeste in Thorwal - von cmfrydos - 22.03.2026, 15:51
[split] Burgruine mit Grimring - von Zurgrimm - 03.03.2008, 15:48
RE: Burgruine mit Grimring - von Fury - 03.03.2008, 16:01
RE: Burgruine mit Grimring - von Asgrimm - 03.03.2008, 16:05
RE: Die Zwingfeste in Thorwal - von Zurgrimm - 03.03.2008, 16:59
RE: Burgruine mit Grimring - von Crystal - 03.03.2008, 16:22
Zwingfeste abschliessen - von Hellriegel - 12.03.2012, 11:49
RE: Zwingfeste abschliessen - von cheshire - 12.03.2012, 12:35
RE: Zwingfeste abschliessen - von Ela1971 - 12.03.2012, 12:47
RE: Zwingfeste abschliessen - von Hellriegel - 12.03.2012, 12:53
RE: Zwingfeste abschliessen - von Pyromaniac - 12.03.2012, 13:18



Benutzer, die gerade dieses Thema anschauen: 6 Gast/Gäste