Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
Hallo liebe NLT-Freunde,
Nachdem wir schon in Schicksalsklinge und Sternenschweif Würfelproben loggen können,
wollte ich auch Riva etwas Liebe zukommen lassen,
und habe ein paar Abfragen zu den Proben zusammengebastelt.
Geloggt wird innerhalb einer modifizierten DosBox, die die Würfe im Spiel im Blick hält und auswertet.
Für Eigenschafts- / Talent- und Zauberproben gibt sie auch schon zusätzliche Details aus,
wie Wer macht die Probe, welches Talent und welche Eigenschaften zu tragen kommen.
Bei anderen zufälligen Ereignissen sieht man bisher nur die Würfel und ihre Ergebnisse, aber da kommt noch mehr.
Wir können hier gerne über versteckte Proben reden, und Manches zusammentragen.
Hier mal kurz ein Überblick, wie aktuell die Daten des Loggers ausgegeben werden:
// Eigenschafts, und Talentproben:
I/RoA/1f98ce/1 W20: 9
Eigenschaftsprobe von Jalma auf KL:9 +8 | Gewürfelt: 9 | 9 - 8 - 9 = -8 => Missglückt
I/RoA/1f98ce/1 W20: 13
Eigenschaftsprobe von Eriu auf KL:13 +8 | Gewürfelt: 13 | 13 - 8 - 13 = -8 => Missglückt
I/RoA/1f98ce/1 W20: 1
Eigenschaftsprobe von Marno auf KL:9 +8 | Gewürfelt: 1 | 9 - 8 - 1 = 0 => Gelungen
I/RoA/1f9d82/1 W20: 20
I/RoA/1f9d82/1 W20: 5
I/RoA/1f9d82/1 W20: 19
TProbe von Jalma auf Zechen +7 [KL:9 IN:13 KK:23] mit TW 5 | Gewürfelt: 44 | 45 - 44 - 7 + 5 = -1 => Missglückt
//Kampf:
I/RoA/1f992f/1 W20: 16
I/RoA/1f992f/1 W20: 4
I/RoA/1f992f/1 W20: 5
ZProbe von Eriu auf Fulminictus +0 [KL:13 GE:18 KK:21] mit ZW 15 | Gewürfelt: 25 | 52 - 25 + 0 + 15 = 42 => Gelungen
I/RoA/2c3f76/3 3W6+0: 2 + 2 + 5 = 9
... // Unparierbarer Angriff
I/RoA/23cf30/1 W20: 10
I/RoA/1e50f9/3 1W6+5: 4 + 5 = 9
... // Noch ein Zauber
I/RoA/1f992f/1 W20: 19
I/RoA/1f992f/1 W20: 11
I/RoA/1f992f/1 W20: 5
ZProbe von Huldraan auf Horriphobus +19 [MU:16 IN:10 CH:16] mit ZW 11 | Gewürfelt: 35 | 42 - 35 - 19 + 11 = -1 => Missglückt
//Generierung
//Eigenschaften
I/RoA/24bb04/0 W6+7: 1 + 7 = 8
I/RoA/24bb04/0 W6+7: 5 + 7 = 12
I/RoA/24bb04/0 W6+7: 3 + 7 = 10
I/RoA/24bb04/0 W6+7: 2 + 7 = 9
I/RoA/24bb04/0 W6+7: 4 + 7 = 11
I/RoA/24bb04/0 W6+7: 2 + 7 = 9
I/RoA/24bb04/0 W6+7: 3 + 7 = 10
I/RoA/24bb5e/0 W6+1: 1 + 1 = 2
I/RoA/24bb5e/0 W6+1: 6 + 1 = 7
I/RoA/24bb5e/0 W6+1: 1 + 1 = 2
I/RoA/24bb5e/0 W6+1: 3 + 1 = 4
I/RoA/24bb5e/0 W6+1: 3 + 1 = 4
I/RoA/24bb5e/0 W6+1: 3 + 1 = 4
I/RoA/24bb5e/0 W6+1: 4 + 1 = 5
//Größe etc.
I/RoA/1efe7c/1 W100: 52
I/RoA/1efe7c/1 W100: 88
I/RoA/1efe7c/1 W100: 98
I/RoA/1efe7c/1 W100: 12
I/RoA/24a2c4/0 W6+2: 6 + 2 = 8
I/RoA/24a30a/0 W34+163: 9 + 163 = 172
I/RoA/24a34b/1 W20: 8
I/RoA/24a55d/0 W51+9: 11 + 9 = 20
I/RoA/24a58d/1 W12: 8
// Steigerungen.
// Verstehe die W100 Würfe nicht..
I/RoA/24c640/0 W11+1: 6 + 1 = 7
I/RoA/1efe7c/1 W100: 100
I/RoA/24c640/0 W11+1: 4 + 1 = 5
I/RoA/24c640/0 W11+1: 10 + 1 = 11
I/RoA/24c640/0 W11+1: 8 + 1 = 9
I/RoA/1efe7c/1 W100: 65
I/RoA/24c640/0 W11+1: 1 + 1 = 2
I/RoA/24c640/0 W11+1: 1 + 1 = 2
I/RoA/24c640/0 W11+1: 5 + 1 = 6
I/RoA/24c640/0 W11+1: 6 + 1 = 7
I/RoA/24c640/0 W11+1: 4 + 1 = 5
I/RoA/24c640/0 W11+1: 3 + 1 = 4
I/RoA/24c9d7/0 W11+1: 10 + 1 = 11
I/RoA/24c9d7/0 W11+1: 11 + 1 = 12
Wenn Würfel gerollt werden, wird noch ein Code mit angezeigt, der angibt, wo ich, oder andere Programmierer, den Sinn der Würfe ablesen können.
Es gibt über 300 verschiedene Aufrufe dieser Zufallsfunktionen, die man nur peu à peu entziffern kann.
Wenn euch manche der Würfe interessieren, fragt ruhig nach, und gebt dabei am Besten die Spielsituation und den Code an, der entweder mit I/RoA/ oder I/NLT/ beginnt.
Mir sind bei den Proben schon zwei Merkwürdigkeiten aufgefallen:
- Bei den Talent u. Zauberproben werden alle Würfelaugen addiert, und von der Summe der Eigenschaften, des Talentwertes, und einer möglichen Erleichterung abgezogen.
Falls etwas negatives rauskommt, ist einem die Probe misslungen.
War das schon immer so in DSA3? Ich bin hauptsächlich mit DSA4 aufgewachsen, und dort hat man jeden Würfel einzelnd mit einer Eigenschaft verglichen.
- Bei den Talent u. Zauberwertsteigerung wird statt den erwarteten 2W6 ein W11+1 benutzt, vermutlich später analog W16+2 statt 3W6.. Finde ich garnicht so schlecht.
Der Talentwert 12, und dann die ab 15 sind so leichter zu knacken.
Die modifizierte DosBox und den Quellcode stelle ich gerne in den nächsten Wochen zur Verfügung.
Falls es jetzt jemandem in den Fingern brennt, das sofort auszuprobieren, oder das Spiel damit nochmal durchzuspielen, geht es auch früher.
Ich möchte aber gerne vorher noch Feedback von euch haben.
Habt ihr Tips, wie man die Proben etwas übersichtlicher darstellen könnte, oder schon eine spezielle Probe oder Spielsituation im Kopf, zu der noch Infos ausgegeben werden sollen?
Und noch ein paar Fragen an alle Technik-Experten hier: - Wie viele Versionen von Schatten über Riva, bzw. Shadows over Riva gibt es eigentlich? Sind die .exe in den verschiedenen Ausgaben (GoG, Heldenedition, etc.) einer Sprache identisch?
- Das Auswerten des IP (Befehlszeiger) funktioniert momentan nur im DosBox Modus core=full, der deprecated, und ein Stück langsamer ist.
Im normalen Modus funktioniert es komischerweise nur, wenn ich mit dem Debugger über die Zeile springe. Wieso ist das so?
PS: Und noch ein rießen Danke an Henne und Co.,
die mit BrightEyes Einblicke in die wohl verwendeten Zufallsalgorithmen gegeben haben. Und an W20, auch 0x14 genannt
Beiträge: 12.415
Themen: 406
Registriert seit: Aug 2006
Bewertung:
78
(15.03.2023, 23:46)cmfrydos schrieb: - Wie viele Versionen von Schatten über Riva, bzw. Shadows over Riva gibt es eigentlich? Sind die .exe in den verschiedenen Ausgaben (GoG, Heldenedition, etc.) einer Sprache identisch?
Von der deutschen Version gibt es zwei. Die ungepatchte V1.00 und die gepatchte V1.12
Von der englischen gibt es nur eine, es gibt dafür auch keinen Patch.
Die Heldenedition dürfte die V1.12 sein, darauf wurde Wert gelegt. Alle anderen deutschen Verkaufsversionen müssten die V1.00-Versionen sein.
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
OK danke!
Ich habe gerade bei meinen GOG Versionen geschaut, und besitze dort die Versionen "Master V1.01 - UK" und "Master V1.12 - Deutsch"
Um alle, also die beiden, gegebenenfalls eine US, und auch die deutsche V1.00 Version zu unterstützen, wird die modifizierten DosBox die .exe beim ersten Start kurz untersuchen,
und die Ergebnisse für die nächsten Starts abspeichert. Ich hoffe das klappt, vielleicht kann das dann jemand mal mit einer V1.00 testen, die ich leider nicht mehr habe.
Beiträge: 2.166
Themen: 31
Registriert seit: Mar 2013
Bewertung:
14
Mir fehlt für ein wirkliches Verständnis dieser Abläufe einfach der entsprechende Background - ich lese aber aufmerksam Deine Berichte und was Du so alles herausgefunden hast.
Das finde ich wirklich spannend - und auch toll, dass Du Deine Erkenntnisse dann hier teilst und sie angenehm zu lesen formulierst.
Zumindest diese Art von Feedback kann ich geben.
"Alrik war durstig und hat getrunken."
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
Das, was man, um mir hier zu helfen, an Background braucht, ist eigentlich nur DSA Pen&Paper Wissen, oder Wissen zu Schatten über Riva.
Mich interessiert gerade, wo überall gewürfelt wird, bzw. wo Zufall eine Rolle spielt. Und dann dort, welche Infos dort wichtig sein könnten.
ZB. gibt es Zufallevents, wenn man bestimmte Positionen der Karte betritt. Kämpfe, Textboxen (Käsetoast, ...).
Hier wäre zB interessant auszulesen, wie hoch die Wahscheinlichkeit ist, also bei welchen Würfelergebnissen ein Event auftritt.
An anderen Stellen wird z.B. ein Held zur Probe zufällig? ausgewählt. Hier wäre wohl noch interessant zu wissen, wie dieser bestimmt wird.
Und weil ich selbst Riva bestimmt nur 2-3 mal durchgespielt habe, und teilweise auch strikt nach Lösungsbuch, und nicht frei erkundend, fehlt mir so ein bisschen die Übersicht über diese Dinge.
Wenn ihr Ideen habt, oder das Forum zB. besser als ich verfolgt habt, wisst ihr vielleicht noch ein paar Sachen, die Manche hier noch herausfinden wollten.
Eine weitere Hilfe wäre dann natürlich mit der modifizierten DosBox das Spiel zu spielen, und damit Proben (und Erschwernisse) herauszufinden.
Sobald da jemand drauf Lust hätte, stelle ich die DosBox gerne bereit. Ich selbst habe erst die letzten Monate die NLT durchgespielt, und habe nicht wirklich die Motivation, das in Kürze erneut zu tun.
Da macht mir das Programmieren einfach mehr Spaß.
Beiträge: 37
Themen: 2
Registriert seit: Mar 2019
Bewertung:
0
Der Probenmechanismus in DSA3 und DSA4 hat sich unterschieden. Was du oben beschreibst, wäre noch etwas drittes.
DSA 4: Erleichterung und TaW werden verrechnet. Ist der Wert <0, wird er bei *allen* drei Würfen vom Würfelergebnis abgezogen. Positive Punkte können einmalig verwendet werden, um ein Würfelergebnis zu verbessern. Werden auf diese Weise alle drei Eigenschaften unterwürfelt, ist die Probe gelungen.
DSA 3: Genauso, aber ein negativer Wert (TaW-Erschwernis) muss nur *einmal* abgezogen werden. Das kann auch über mehrere Würfe verteilt geschehen. Negative und positive Werte werden also gleich behandelt. (Negative Talentwerte waren in DSA3 auch sehr viel häufiger, in DSA4 echte Ausnahmen (oder gab es sie gar nicht? Mir war so, als könne eine "Unfähigkeit" da hinführen, aber ich weiß es gerade nicht mehr.).)
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
(17.03.2023, 09:15)Alrik Normalpaktierer schrieb: DSA 3: Genauso, aber ein negativer Wert (TaW-Erschwernis) muss nur *einmal* abgezogen werden.
Stimmt, auch das ist anders. Das macht die Proben mit negativen Werten, oder starken Erschwernissen, in DSA3 deutlich einfacher.
Ich suche gerade schon für einige Zeit nach der Probe vom Kampfzauber "Blitz dich find".
Ich dachte erst, dass mir hier vielleicht eine Zufallsfunktion und Probe entgangen ist.
Aber so langsam, und Tests mit einem Druiden mit Blitz auf -1, kommt mir der starke Verdacht,
dass der Zauber einfach immer glückt.
Eventuell spielt TWP* - MR eine Rolle, das habe ich noch nicht überprüft. Aber bisher finde ich keine Würfel.
Ist der Blitz schonmal jemandem misslungen? Also bis auf bei den Gegnern, die sowieso immun sind?
Und dabei habe ich den, in meiner Meinung, wichtigsten Kampfzauber immer schön auf >10 gelevelt,
will man doch keinen Blitz vermasseln, und den gefährlichen gegnerischen Magiern eventuell eine zweite Runde geben..
Beiträge: 2.316
Themen: 52
Registriert seit: Aug 2013
Bewertung:
14
nicht nur beim Blitz, es ist auch so dass auch bei einem Wert von -5 auch andere Zauber immernoch viel zu häufig gelingen, da die Zauberproben günstiger als in den offiziellen Regeln abgeprüft werden.
Du kannst ja mal hergehen den Wert auf -5 bringen und die positiven Eigenschaften die dafür relevant sind weit nach unten setzen. Gelingt der Zauber dann immer noch so gut dann scheint tatsächlich keine Probe stattzufinden. Dennoch glaube ich eher daran dass die Proben insgesamt zu leicht sind. Außerdem ist der Zauber auch viel zu mächtig, 3 Angriffe aussetzen ist nicht das was der Spruch eigentlich bewirken sollte.
Aber du hast recht, Zauber die nicht gegen die MR gehen auf über 10 zu steigern ist Energieverschwendnung, Blitz ist bei jedem Helden hoch genug und muss gar nicht gesteigert werden, hohe Werte sind dagegen bei Beherrschungszaubern wichtig, da die MR des Gegners noch überwunden werden muss
Hacke Tau, Kumpels!
Ihr seid Freunde der alten NLT? Freunde des Mikromanagements? Ihr sucht eine neue Herausforderung, weil euch die NLT zu leicht war?
Dann spielt doch mal Schicksalsklinge HD 1.36 von Crafty Studios!
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
18.03.2023, 11:02
(Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2023, 11:04 von cmfrydos.)
(18.03.2023, 01:47)Lippens die Ente schrieb: Du kannst ja mal hergehen den Wert auf -5 bringen und die positiven Eigenschaften die dafür relevant sind weit nach unten setzen. Gelingt der Zauber dann immer noch so gut dann scheint tatsächlich keine Probe stattzufinden. Dennoch glaube ich eher daran dass die Proben insgesamt zu leicht sind. Außerdem ist der Zauber auch viel zu mächtig, 3 Angriffe aussetzen ist nicht das was der Spruch eigentlich bewirken sollte.
Super Idee, denn damit kann ich die Probe ausschließen.
Mein Held mit allen Eigenschaften auf 1 und Blitz auf -5 schafft es nicht, die "Probe" zu vergeigen. Da es bisher der einzigste Zauber/Talent ist, bei dem ich keine Probe in der Konsole sehe, gehe ich davon aus, dass es auch keine (andere) gibt. Ich finde gerade keine weiteren Zauber, bei denen das so ist, aber gleiche das mal mit dem Code ab. Ich vermute da könnte soetwas wie "Wenn Zauber Blitz, dann überspringe Probe" oder so drinstehen.
Weitere bemerkenswerte Zauber:
- Dämonen zu Beschwören erfordert 2 Proben. Wahrscheinlich die zweite, ob der Dämon sich direkt schon gegen einen stellt. Bei Feuerelementaren gibt es dagegen nur eine Probe.
- Beherschung brechen hat immer eine Probe, egal ob das der Bezauberte das braucht. Falls nicht, aber die Probe gelang, kann man direkt danach eine andere Aktion für die Runde wählen. Falls die Probe aber misslungen ist, verliert der Zaubernde seine Runde.
Ich würde "Blitz" und "Beherschung brechen" damit als verbuggt einstufen. Kann mir nicht vorstellen, dass das absichtlich so gelöst wurde.
Beiträge: 37
Themen: 2
Registriert seit: Mar 2019
Bewertung:
0
Kontrollprobe für Dämonen gab es IMHO auch im Regelwerk (DSA 3 ist echt lange her ...)
Verrückter Bug, das mit dem Blitz.
Was du zu Beherrschung brechen schreibst, habe ich dagegen auch beim dritten Mal nicht verstanden. Meinst du, dass man den Zauber auch auf Gruppenmitglieder sprechen kann, die gar nicht beherrscht sind? Dann bin ich mir nicht sicher, ob das ein Bug ist. Ich weiß nicht, ob es am Tisch Regeln dafür gab, "auf Verdacht" Antimagiezauber zu sprechen. Dass durch den Versuch eine Runde verloren geht, wäre jedenfalls nicht unplausibel.
Beiträge: 14.466
Themen: 94
Registriert seit: Sep 2006
Bewertung:
45
(18.03.2023, 11:02)cmfrydos schrieb: Mein Held mit allen Eigenschaften auf 1 und Blitz auf -5 schafft es nicht, die "Probe" zu vergeigen. Da es bisher der einzigste Zauber/Talent ist, bei dem ich keine Probe in der Konsole sehe, gehe ich davon aus, dass es auch keine (andere) gibt. Eine sehr interessante Entdeckung, cmfrydos.
Sollte jemals jemand einen "NRS-Patch für Riva" schreiben, würde die Behebung dieses Fehlers sicher an eine der ersten Stellen gehören. Ich kann mir jedenfalls auch nicht vorstellen, dass das so sein soll.
"Haut die Säbel auffe Schnäbel."
Beiträge: 302
Themen: 2
Registriert seit: Oct 2012
Bewertung:
3
(15.03.2023, 23:46)cmfrydos schrieb: Die modifizierte DosBox und den Quellcode stelle ich gerne in den nächsten Wochen zur Verfügung. Hast du das "Original" genommen? Eine Alternative wäre Dosbox-X, da geht meiner Erfahrung nach das Debuggen besser und schneller.
Habe dafür auch mal eine Art Adapter-Programm geschrieben, das die ganzen Registerwerte und -änderungen anzeigen kann.
(15.03.2023, 23:46)cmfrydos schrieb: Das Auswerten des IP (Befehlszeiger) funktioniert momentan nur im DosBox Modus core=full, der deprecated, und ein Stück langsamer ist.
Im normalen Modus funktioniert es komischerweise nur, wenn ich mit dem Debugger über die Zeile springe. Wieso ist das so? Das liegt AFAIK daran, dass nur der volle Kern alle Instruktionen emuliert. Die anderen Kerne machen irgendwelche Dinge, um Teile der Berechnungen nicht zu emulieren, sondern direkt auf der Host-CPU auszuführen. Daher sind die auch schneller. Da kann ich mir aber gut vorstellen, dass der IP mal verloren gehen kann, wenn moderne Pipelines und Co. darauf arbeiten.
Dass der Full-Core deprecated ist, muss nicht unbedingt schlecht sein. Hatte mit RIVA.EXE in der Dosbox nie Probleme, daher kann man ja vorsichtig vermuten, dass die notwendigen Dinge alle korrekt emuliert werden.
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
18.03.2023, 13:34
(Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2023, 13:38 von cmfrydos.)
(18.03.2023, 11:40)Alrik Normalpaktierer schrieb: Kontrollprobe für Dämonen gab es IMHO auch im Regelwerk (DSA 3 ist echt lange her ...)
Verrückter Bug, das mit dem Blitz.
Was du zu Beherrschung brechen schreibst, habe ich dagegen auch beim dritten Mal nicht verstanden. Meinst du, dass man den Zauber auch auf Gruppenmitglieder sprechen kann, die gar nicht beherrscht sind? Dann bin ich mir nicht sicher, ob das ein Bug ist. Ich weiß nicht, ob es am Tisch Regeln dafür gab, "auf Verdacht" Antimagiezauber zu sprechen. Dass durch den Versuch eine Runde verloren geht, wäre jedenfalls nicht unplausibel.
Ja das mit der zweiten Probe habe ich glaube ich auch mal in meinem DSA4 Liber Cantiones gelesen.
Das mit dem Beherrschung brechen fiel mir etwas schwer zu formulieren. Ich versuche es nochmal:
Spricht man den Zauber, wird dieser direkt geprobt.
1. Scheitert die Probe, kann der Zaubernde nichts mehr die Runde tun (wie es nach einem Zauber immer sein sollte)
2. Gelingt die Probe, wird geschaut ob das Ziel überhaupt beherrscht wird.
2a) Wenn das Ziel beherscht wird, ist es danach nicht mehr beherrscht, und der Zaubernde kann die Runde nichts mehr tun.
2b) Wenn es nicht beherrscht wird, kommt entsprechende Meldung, aber der Zaubernde kann sich für die Runde etwas anderes aussuchen, als hätte er den Zauber nie gesprochen.
Man kann das jetzt so interpretieren, dass für einen geübten Zauberer ein kurzer Blick reicht, um zu erkennen, dass der Zauber unnötig wäre.
Aber ich denke eher, dass man die zwei Abfragen umdrehen müsste. Also erst prüfen, ob das Ziel beherscht wird, und wenn ja, dann eine Probe würfeln.
(18.03.2023, 11:59)Zurgrimm schrieb: (18.03.2023, 11:02)cmfrydos schrieb: Mein Held mit allen Eigenschaften auf 1 und Blitz auf -5 schafft es nicht, die "Probe" zu vergeigen. Da es bisher der einzigste Zauber/Talent ist, bei dem ich keine Probe in der Konsole sehe, gehe ich davon aus, dass es auch keine (andere) gibt. Eine sehr interessante Entdeckung, cmfrydos.
Sollte jemals jemand einen "NRS-Patch für Riva" schreiben, würde die Behebung dieses Fehlers sicher an eine der ersten Stellen gehören. Ich kann mir jedenfalls auch nicht vorstellen, dass das so sein soll. Ja, und ich finde, dass der Blitz auch gegen die MR gehen sollte. Irgendwer hat mal irgendwo geschrieben, dass in DSA2 (denke das Regelwerk, nicht Sternenschweif) MR wohl keine Bedeutung für den Blitz hatte, aber in DSA3 dann schon. Während der Entwicklung von "Die Schicksalsklinge" sei wohl von DSA2 auf DSA3 umgeschwenkt worden, aber das mit dem Blitz wurde vergessen.
Ich kenne mich zu wenig mit den Regelwerken DSA2 und DSA3 sowie der Entwicklung der Spieleserie aus, um das zu bestätigen, klingt aber plausibel.
In der letzten Stunde habe ich eine Liste an Zaubern im Code gefunden, bei denen die sofortige "Standardprobe" nach einem Zauberbefehl übersprungen wird.
Hier mal die Liste zur Doku:
// Antimagie
"Gardianum",
// Beherrschung
"Böser Blick",
// Dämonologie
"Furor Blut",
"Heptagon",
// Elementarmagie
"Elementar herbeirufen",
"Nihilatio Gravitas",
"Solidrid Farbenspiel",
// Bewegung
"Foramen",
"Motoricus",
"Spurlos, Trittlos",
// Heilung
"Balsam",
"Hexenspeichel",
"Tiere heilen",
// Hellsicht
"Analüs",
// Kampf
"Blitz",
"Ecliptifactus",
"Ignifaxius",
"Hexenblick",
// Verständigung
"Nekropathia",
// Verwandlung
"Armatrutz",
"Mutabili",
"See & Fluss",
"Visibili",
// Veränderung
"Aeolitus",
"Brenne",
"Claudibus",
"Erstarre",
"Schmelze" Das ist etwa die Hälfte der Zauber. Eventuell reicht es, Blitz hier raus zu nehmen, aber das müsste man testen, ob der Zauber danach noch funktioniert.
Die anderen Zauber implementieren ihre Proben dann an späterer Stelle irgendwie selbst, das wurde aber wohl beim Blitz vergessen.
Ob die Probe noch bei einem anderen dieser Zauber vergessen wurde, überlasse ich mal fleißigen Testern xD.
Jetzt wird es etwas technisch :
(18.03.2023, 12:29)Shihan schrieb: (15.03.2023, 23:46)cmfrydos schrieb: Die modifizierte DosBox und den Quellcode stelle ich gerne in den nächsten Wochen zur Verfügung. Hast du das "Original" genommen? Eine Alternative wäre Dosbox-X, da geht meiner Erfahrung nach das Debuggen besser und schneller.
Habe dafür auch mal eine Art Adapter-Programm geschrieben, das die ganzen Registerwerte und -änderungen anzeigen kann.
(15.03.2023, 23:46)cmfrydos schrieb: Das Auswerten des IP (Befehlszeiger) funktioniert momentan nur im DosBox Modus core=full, der deprecated, und ein Stück langsamer ist.
Im normalen Modus funktioniert es komischerweise nur, wenn ich mit dem Debugger über die Zeile springe. Wieso ist das so? Das liegt AFAIK daran, dass nur der volle Kern alle Instruktionen emuliert. Die anderen Kerne machen irgendwelche Dinge, um Teile der Berechnungen nicht zu emulieren, sondern direkt auf der Host-CPU auszuführen. Daher sind die auch schneller. Da kann ich mir aber gut vorstellen, dass der IP mal verloren gehen kann, wenn moderne Pipelines und Co. darauf arbeiten.
Ich verwende momentan DosBox Staging, v.A. weil es hieß, dass die alle Dependencies selber baut, und das halt bequem war, weil ich lange nichts mehr mit C++ gemacht habe.
Der Debugger dort zeigt mir dort schon alle Register an, und markiert sie, falls sie in der letzten Anweisung verändert wurden.
Vielleicht macht dein Tool noch mehr, und ich habe das falsch verstanden.
Was mir im Debugger fehlt, ist ein schneller Zugriff auf den Stack, dh. die Daten im Bereich SS:ESP anzuzeigen, und außerdem wäre ein Stack/Calltrace mega hilfreich.
Da habe ich mich noch nicht rangetraut, weil ich die verschiedenen Call-Konventionen noch nicht verinnerlicht habe, und falls da was nicht 1:1 stimmt, kommt natürlich bei der Auswertung des Stackes, der dort liegenden Rücksprungadressen und dem Verfolgen im Codesegment B*llsh*t raus xD ....
Beim Schreiben kam mir jetzt die Idee, vielleicht CALL und RET Instruktionen schon während der Ausführung abzugreifen, und mir so einen Backtrace zu halten ..
Das mit der (fehlenden) Emulation hört sich sinnig an, wobei in der Doku eigentlich geschrieben steht, dass auch bei Core=Normal die Instruktionen 1:1 durchlaufen werden. Vll forsche ich hier noch etwas, und schaue mir, ob zu mindest an manchen Stellen der IP gesetzt wird, um dann eventuell schon bei der Stelle kurz vor den aktuellen Abgreifpunkten zu stoppen.
Beiträge: 14.466
Themen: 94
Registriert seit: Sep 2006
Bewertung:
45
(18.03.2023, 13:34)cmfrydos schrieb: Ja, und ich finde, dass der Blitz auch gegen die MR gehen sollte. Irgendwer hat mal irgendwo geschrieben, dass in DSA2 (denke das Regelwerk, nicht Sternenschweif) MR wohl keine Bedeutung für den Blitz hatte, aber in DSA3 dann schon. Während der Entwicklung von "Die Schicksalsklinge" sei wohl von DSA2 auf DSA3 umgeschwenkt worden, aber das mit dem Blitz wurde vergessen. Der Irgendwer war Hendrik und das Irgendwo hier:
https://www.crystals-dsa-foren.de/showth...3#pid25633
Allerdings war das mit dem Umschwenken von DSA2 auf DSA3 während der Entwicklung eher eine Vermutung von Hendrik. Es kann auch sein, dass die Entwickler von Schick insoweit bei den DSA2-Regeln bleiben wollten. Vor diesem Hintergrund bin ich skeptisch, dass Blitz in Riva unbedingt gegen die MR gehen muss. Denn jedenfalls sollte das für alle drei Teile von DSA einheitlich geregelt sein. D.h. wenn es für Schick eine bewusste Entscheidung war, insoweit DSA2-Regeln anzuwenden, dann sollte das auch für Schweif und Riva beibehalten werden. Ein offensichtlicher Bug besteht insoweit nicht.
Gelingt der Blitz zaubernden Gegnern in Riva eigentlich auch immer? Oder ist das an anderer, nicht verbuggter Stelle im Code geregelt?
"Haut die Säbel auffe Schnäbel."
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
18.03.2023, 14:29
(Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2023, 20:18 von cmfrydos.
Bearbeitungsgrund: Verhalten, wenn Gegner Blitz zaubern, hinzugefügt
)
(18.03.2023, 13:52)Zurgrimm schrieb: (18.03.2023, 13:34)cmfrydos schrieb: Ja, und ich finde, dass der Blitz auch gegen die MR gehen sollte. Irgendwer hat mal irgendwo geschrieben, dass in DSA2 (denke das Regelwerk, nicht Sternenschweif) MR wohl keine Bedeutung für den Blitz hatte, aber in DSA3 dann schon. Während der Entwicklung von "Die Schicksalsklinge" sei wohl von DSA2 auf DSA3 umgeschwenkt worden, aber das mit dem Blitz wurde vergessen.
Der Irgendwer war Hendrik und das Irgendwo hier:
https://www.crystals-dsa-foren.de/showth...3#pid25633
Allerdings war das mit dem Umschwenken von DSA2 auf DSA3 während der Entwicklung eher eine Vermutung von Hendrik. Es kann auch sein, dass die Entwickler von Schick insoweit bei den DSA2-Regeln bleiben wollten. Vor diesem Hintergrund bin ich skeptisch, dass Blitz in Riva unbedingt gegen die MR gehen muss. Denn jedenfalls sollte das für alle drei Teile von DSA einheitlich geregelt sein. D.h. wenn es für Schick eine bewusste Entscheidung war, insoweit DSA2-Regeln anzuwenden, dann sollte das auch für Schweif und Riva beibehalten werden. Ein offensichtlicher Bug besteht insoweit nicht. OK, da stimme ich dann doch zu. Das mit der MR wäre dann eher etwas für einen Balancing-Patch, und keinen Bugfix. Ersteres fände ich (irgendwann mal) auch ganz gut, ist Riva doch für eine importierte Gruppe viel zu einfach (kam bei bis auf 1-2 Kämpfe mit dem Computerkampf durch), und für eine auf Stufe 6 doch ziemlich schwer (zumindest als ich mit 8J Riva erkundet habe ).
(18.03.2023, 13:52)Zurgrimm schrieb: Gelingt der Blitz zaubernden Gegnern in Riva eigentlich auch immer? Oder ist das an anderer, nicht verbuggter Stelle im Code geregelt?
Gute Frage, dem gehe ich gerne noch auf den Grund.
Edit: Pergor als Kampfmagier (beim ersten Zusammentreffen mit ihm in dieser Form) würfelt definitiv mit seinen Eigenschaften und Zauberwert gegen die MR der Helden. Und das bei allen Zaubern. Dass heißt er macht die Probe "3W20+MR <= Summe der drei Eigenschaften + TWP?". Meistens darf da maximal soetwas um die 45 rauskommen, damit der Zauber bei ihm klappt.
(Vorher wirft er eine Münze, ob er angreift oder zaubert, und bei letzterem einen Würfel welchen der Zauber er spricht. Sein Repertoire ist Fulminictus, Versteinerung, Blitz, ? (hier würfelt er nochmals. evtl. Balsam oder etwas situationsabhängiges), und Horriphobus.)
Zum Blitz-Bugfix: Habe Blitz mal testweise aus der erwähnten Liste herausgenommen, und jetzt findet eine Probe statt, und der Effekt bleibt der gleiche (wenn Probe gelungen). Scheint also zu funktionieren. Die MR wird dann immer noch nicht abgefragt, egal ob man den Zauber gegen Gegner oder eigene Party spricht. D.h. die MR spielt nur bei zaubernden Gegnern eine Rolle. So richtig konsequent ist die Regel dann (in allen drei Teilen) aber auch nicht
Man muss in der Riva-Exe nach den Hexwerten "12 00 31 00 53 00 4D 00" suchen, und die 31 mit einer am Besten davorliegenden ZauberID ersetzen (Maximal 14 Zauber davor, dh. 28 Bytes vorher, da fängt die Liste an ). Dh. zB mit der 12: "12 00 12 00 53 00 4D 00". Ein bisschen lehne ich mich hier aus dem Fenster, weil ich nicht weiß, ob die Liste an anderer Stelle benutzt wird, aber ich vermute dass ziemlich sicher nicht.
Wenn man noch mehr Bugs findet, kann man dafür später auch einen automatischen Patcher schreiben.
EDIT: Etwas sicherer wäre wohl die 31 mit dem "Dummy"-Zauber 00 zu ersetzen. Die ID's aller Zauber bekommt man übrigends hier
https://github.com/Henne/Bright-Eyes/blo...k.cpp#L286
durch Abzählen, falls man später noch einen Zauber findet, der eigentlich nicht in die Liste gehört (weil er sonst keine Probe hat)
Beiträge: 166
Themen: 3
Registriert seit: Jul 2016
Bewertung:
6
Ich kann noch ergänzen, dass der Blitz-Zauber in Sternenschweif ganz genauso funktioniert. Zaubert ihn ein Held, gelingt er probenlos immer. Zaubert in ein Gegner, wird geprobt und die MR mit einbezogen.
Übrigens lässt er den Gegner nicht nur 3 Runden lang aussetzen sondern senkt für diesen Zeitraum auch noch seine AT- und PA-Wert um 6 Punkte! (Zumindest in Sternenschweif)
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
(19.03.2023, 13:53)Tiefhusen schrieb: Ich kann noch ergänzen, dass der Blitz-Zauber in Sternenschweif ganz genauso funktioniert. Zaubert ihn ein Held, gelingt er probenlos immer. Zaubert in ein Gegner, wird geprobt und die MR mit einbezogen.
Übrigens lässt er den Gegner nicht nur 3 Runden lang aussetzen sondern senkt für diesen Zeitraum auch noch seine AT- und PA-Wert um 6 Punkte! (Zumindest in Sternenschweif)
Gute Info! Ich habe mich schon gefragt, wie es in den anderen Teilen aussieht, zumal das meiste an Code ja über die Teile mitgenommen wurde.
Wie funktioniert Blitz denn in der Schicksalsklinge? Habe gerade kein BrightEyes installiert, da wäre es super, wenn das noch jemand checken könnte, ob da eine Probe im Logger auftaucht.
Da stellt sich mir die Frage, ob das mit der fehlenden Probe nicht vielleicht doch Absicht war.
Es ist irgendwie unwahrscheinlich, dass das über mehrere Teile nicht aufgefallen ist, zumal die Entwickler ja sicherlich ähnliche Debug-Tools hatten.
Beiträge: 14.466
Themen: 94
Registriert seit: Sep 2006
Bewertung:
45
19.03.2023, 17:07
(Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2023, 17:11 von Zurgrimm.)
(18.03.2023, 14:29)cmfrydos schrieb: Edit: Pergor als Kampfmagier (beim ersten Zusammentreffen mit ihm in dieser Form) würfelt definitiv mit seinen Eigenschaften und Zauberwert gegen die MR der Helden. Und das bei allen Zaubern. Dass heißt er macht die Probe "3W20+MR <= Summe der drei Eigenschaften + TWP?". Meistens darf da maximal soetwas um die 45 rauskommen, damit der Zauber bei ihm klappt.
(Vorher wirft er eine Münze, ob er angreift oder zaubert, und bei letzterem einen Würfel welchen der Zauber er spricht. Sein Repertoire ist Fulminictus, Versteinerung, Blitz, ? (hier würfelt er nochmals. evtl. Balsam oder etwas situationsabhängiges), und Horriphobus.) Dann würde ich - wie auch bei Schick - zumindest die Ungleichheit zwischen Helden- und Gegnerzaubern als Fehler werten. Wenn die Gegner gegen die MR würfeln, müsste das auch für die Helden (die natürlich überhaupt erstmal würfeln müssten) gelten. Oder die Gegner dürften auch keinen MR-Malus beim Blitz erleiden.
Zu seinem Zauberrepertoire: Er kann ja auf jeden fall noch verschiedene Monstertypen beschrören. Fíonlaighrí hat hier kürzlich Gargoyles, Feuerelementare, Golems, Ghule, Hundemenschen, Hesthotim, Skelette, Zwerge (untot) und Golems erwähnt.
(19.03.2023, 13:53)Tiefhusen schrieb: Ich kann noch ergänzen, dass der Blitz-Zauber in Sternenschweif ganz genauso funktioniert. Zaubert ihn ein Held, gelingt er probenlos immer. Zaubert in ein Gegner, wird geprobt und die MR mit einbezogen. Hast Du das mittels Logger oder empirisch ermittelt?
(19.03.2023, 13:53)Tiefhusen schrieb: Übrigens lässt er den Gegner nicht nur 3 Runden lang aussetzen sondern senkt für diesen Zeitraum auch noch seine AT- und PA-Wert um 6 Punkte! (Zumindest in Sternenschweif) Wenn der Gegner 3 Runden aussetzt, inwieweit spielt in diesem Zeitraum denn sein AT-Wert überhaupt eine Rolle?
"Haut die Säbel auffe Schnäbel."
Beiträge: 202
Themen: 2
Registriert seit: May 2020
Bewertung:
13
19.03.2023, 17:36
(Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2023, 17:49 von cmfrydos.)
(19.03.2023, 17:07)Zurgrimm schrieb: Dann würde ich - wie auch bei Schick - zumindest die Ungleichheit zwischen Helden- und Gegnerzaubern als Fehler werten. Wenn die Gegner gegen die MR würfeln, müsste das auch für die Helden (die natürlich überhaupt erstmal würfeln müssten) gelten. Oder die Gegner dürften auch keinen MR-Malus beim Blitz erleiden.
Ja das ist so ein typisches Problem, bei dem man weiß, das was nicht stimmt, aber man wohl, ohne die Entwickler zu fragen, die richtige Lösung nicht kennt. Also ob Blitz jetzt nach DSA2 oder DSA3 Regeln funktionieren soll.
(19.03.2023, 17:07)Zurgrimm schrieb: Zu seinem Zauberrepertoire: Er kann ja auf jeden fall noch verschiedene Monstertypen beschrören. Fíonlaighrí hat hier kürzlich Gargoyles, Feuerelementare, Golems, Ghule, Hundemenschen, Hesthotim, Skelette, Zwerge (untot) und Golems erwähnt.
Das erwartet einen dann im zweiten Kampf gegen ihn, ich glaube das ist der, direkt am Anfang der obersten Ebene.
Ich meinte den ersten Kampf gegen ihn, gerade, wenn man den Turm betritt.
Der zweite Kampf ist wohl auch so verbuggt, dass, wenn man Pergor keinen Freiraum zum Beschwören gibt, das Spiel hängen bleiben kann.
Das wäre so einer der Bugs, der so "nahe" an den Würfelwürfen liegt, dass ich mir zutraue, ihn bei Zeit zu beheben.
Beiträge: 3.787
Themen: 17
Registriert seit: Jan 2007
Bewertung:
19
(19.03.2023, 17:36)cmfrydos schrieb: Ja das ist so ein typisches Problem, bei dem man weiß, das was nicht stimmt, aber man wohl, ohne die Entwickler zu fragen, die wirkliche Absicht nicht kennt. Also ob Blitz jetzt nach DSA2 oder DSA3 Regeln funktionieren soll.
Abgesehen von Regeltreue könnte bei so etwas auch das Balancing eine Rolle spielen. Vielleicht haben sie da eine Hausregel eingebaut, um das Spiel etwas leichter zu machen.
Great people care.
|