@bugmenot: Du hast beim Quickpatch jetzt irrtümlich den 2k-Offset bei der Höhe verwendet. Übrigens würd ich statt "04" (was hexadezimal wäre und daher Nichttechniker bei höheren Zahlen verwirren könnte) "%4" schreiben. (% ist 1 Byte, # sind 4 Bytes und zwar beides dezimal angegeben).

Ich würd das ja überhaupt so machen

AllowInfiniteMessageLines=4C760F,90E9,4AC773,9090,4AC7AB,9090

Mit 4AC91F,9090 wären auch Choices > 4 Lines erlaubt, da braucht man allerdings noch einigen Zusatzcode um die Cancel-Zeile sonderzubehandeln die der Maker als ID 5 einfügt.
Mit diesem Tool kann man diese überlangen Messages auch in den Maker eingeben und bearbeiten: http://share.cherrytree.at/showfile-...revmsgedit.exe

Mit der Position ist es etwas mehr tricky weil da nicht viel Platz im Code für Eigenkonstrukte ist.

4C72A0 << Position im Kampf
4C734D << Position auf der Map

Jeweils ecx = y, edx = x. Und zwar wird hier die Messageboxposition (0 = oben, 1 = mittig, 2 = unten) mit 80 multipliziert:

(auf Map)

mov ecx, [ebx+8c] << Position laden
shl ecx, 4 << mal 16
lea ecx, [ecx+ecx*4] << mal 5

xor edx, edx << X auf 0 setzen

Man kann die ecx-Berechnung mit einem Trick verändern

mov eax, [ebx+8c] << Position laden, diesmal in eax
mov cl, 50 << Zahl 80 in cl laden
mul cl << Multipliziert al mit cl und speichert das Ergebnis in ax
mov ecx, eax << Und wieder in ecx kopieren

Braucht genausoviel Bytes, aber man kann den Multiplikator direkt angeben!

MessageBoxYPosMultiplier=4C734E,83,4C7353,B1,4C7354,%80,4C7355,F6E18BC8

Mehr Erweiterungnen (wie z.B. X ungleich 0, Y-Offset zur Berechnung dazu) geht ohne Code Cave nicht gut in den Platz rein.

Aber man kann sie natürlich in der Größe ändern:

MessageBoxSize=4C733E,#320,4C7343,%80

Im Kampf haben wir aber mehr Platz, da die Berechnung (weil Position immer = 0) dort noch mehr vereinfacht werden kann. Man kann die ganze Berechnung in 4C72A9-4C72B2 mit

mov edx, 1234 << X-Position
mov ecx, 5678 << Y-Position

ersetzen, was genau gleich viel Bytes braucht. (Breite und Höhe für Kampf findet man ab 4C72A0)

BattleMessageBoxPos=4C72A9,BA,4C72AA,#0,4C72AE,B9,4C72AF,#0
BattleMessageBoxSize=4C72A1,#320,4C72A6,%80

Hier noch das was du auch gesucht hast: Maximale Textbreite in Pixeln bevor der Text abgeschnitten wird.

MaxMessageWidthWithFace=4C7FAE,#227
MaxMessageWidthWithoutFace=4C7FCA,#299

Dich könnte auch hier dieser ASM-Code des nicht fertiggestellten Revolution Patches interessieren: http://share.cherrytree.at/showfile-10139/patch.asm