In meinem Projekt hab ich komplett andere Attribute, im neuen Projekt nicht. Hab im neuen nichts verändert, da ist alles auf C. Und die Attribut+ Zauber haben auch kein "Element" oder etwas ähnliches.
Hier mal das frische Projekt mit Beispiel Monstergruppe, da könntet ihr mal kurz reingucken.
Ich hab mal versucht das mit Resistenzen zu lösen (also den Zaubern ein magisches Attribut zu geben und den Wert auf 50% zu setzen). Das funktioniert auch nicht wirklich. xD
Wert = 3/6
Ohne Attribut = Erhöht um 6/12
Mit Attribut was den Effekt auf 50% setze = 2/6
Ja, das sind 2 und nicht 3. Und wenn ich den Wert von 3 auf 4 setze ist das eine 4... xD
9 wird übrigens zu einer 8 und 12 wieder zu einer 12. Also liegts wohl an den ungeraden Werten.
DEF- und INT-De/Buffs wurden (warum auch immer) ein mal zu oft addiert.
P.S.
Der Wert des Buffs wird anhand der Formel für den Skillschaden errechnet:
bei Atk/Int Influence = 10 und Variance = 0 gilt:
(EffectRating + [1/2]Str(user) - [1/4]Def(target) + [1/4]Int(user) - [1/8]Int(target)) x AttributeModifier
bzw. welche Koeffizienten auch immer selbst eingestellt wurden:
[1/1]EffectRating
+([1/20]Str(user) - [1/40]Def(target)) x Atk Influence
+([1/40]Int(user) - [1/80]Int(target)) x Int Influence x Attribute
Der Stat(De)Buff hat ein Minimum von BaseStat/2 *(-1) und ein Maximum von BaseStat*1, wobei BaseStat = (Wert aus Stat-Kurve in F8-Database) + (Punkte durch alle StatUp-Items) + (Werte von Waffen/Equipment).
Rein aus Interesse, da es leicht zu fixen ist:
Ich weiß nicht, ob es ein Übersetzungsproblem ist (also an der englischen version liegt) oder das im japanischen Original auch so ist. Wenn ich einem Zustand sage, dass DEF halbiert/verdoppelt werden soll, dann wird INT halbiert/verdoppelt und umgekehrt.
Der fix ist natürlich ganz einfach, den Haken im anderen Bereich setzen (wie im Bild). Ist mehr so eine Frage aus Interesse, ob das wirklich nen Fehler im Maker ist. xD
Da wurde irgendwas falsch verdrahtet / benannt. Die Sachen machen eigentlich das, was sie machen sollen (halt nur falsch benannt + an falscher Position).
Falls du es trotzdem richtig herum benannt haben willst (dafür bräuchtest du den RM2k9): download DBX.ini
Bzw. einfach das hier in eine bereits existierende uimod (welche auch in der ultimate.ini aufgelistet wurde) reinkopieren:
[FormEDStatus]
CheckBox2=Defense
CheckBox3=Intelligence
Gab ja schon einige Patches für das Überschreiben von einigen Menüpunkten mit Switches hier (z.B. Row-ATB oder SROA), was mir aber unangenehm auffällt: Wenn diese Menüpunkte angewählt werden, wird - anders als z.B. beim order_switch Plugin von PepsiOtaku - das Menü zuerst geschlossen und danach wieder geöffnet. Dadurch laufen zumindest in meiner Konfiguration Mapevents weiter, was ziemlich problematisch ist. Könnte man das irgendwie ändern?
Hatte schon versucht, das order_switch Plugin für das Row Kommando umzuschreiben, bin aber daran gescheitert, keine vernünftige Adresse dafür gefunden zu haben. oder_switch verwendet 0x4A23BC, und der kommentierte Menücode von bugmenot gibt nur Adressen für Item, Skill, Equip, Quit, Status und Order an. Vielleicht hab ich auch was übersehen. )
EDIT: Nevermind that, hatte vergessen, das Event auf AutoStart zu stellen. Heh. D:
Was diese Switch-menüpunkte angeht, habe ich einen Tipp für dich. Aus dem Menü den Punkt anwählen und die Seite per Autostart starten geht noch, aber wenn du dann zurück ins Menü willst, per CallMenu und dann wieder ins Menü gehst, bist du bei Verlassen des Menüs natürlich an der Menüaufruf Stelle im Eventcode, innerhalb des CEs vom ersten Aufruf. Wenn du mehrere Menüpunkte dieser Art hast, kann das unnötig kompliziert werden. Der Kniff ist, das Menü nicht per Esc zu öffnen, sondern per PP die Esc-Taste abzufragen, im Drückfalle ein Autostart zu aktivieren und dort das Menü manuell zu rufen. Gehst du dann per Patch aus dem Menü raus, kannst du direkt danach im Eventcode abfragen, ob und welcher Switch gedrückt ist. In Summe die einfachste Lösung, wie ich festgestellt habe.
Bugmenot! Ich hätte da mal eine Frage. Monster können sich transformieren. Ist es umfangreich rauszufinden, wie und wo das geschieht? Ich würde gerne in Eventcode den MonsterTyp ändern.
Und wegen dem anderen Thread:
Ja, RPG::actors[ID]->attributes liefert
0 = -1
1 = +0
2 = +1
Beide abgerufene Funktionen initialisieren das Array, falls list size = 0.
Nein, man kann keinen -2 Modifier setzen, weil intern nicht durchgehend mit 2-Byte-Zahlen gearbeitet wird, sondern ein zero extend in eine 4-Byte-Zahl stattfindet. So wird aus dem 0xFFFF (-1) dann einfach 65.535 in dezimal. Wäre wohl angebracht alle Resistenzen in der Database auf [A] zu haben und dann entsprechend neu zu setzen/modifizieren.
Und nein, entsprechende Funktionen und Datenstrukturen für Conditions gibt es (von Haus aus) nicht.
Hey! Danke dir! Das transformieren probiere ich mal!
Was die Attribute angeht, das klappt nun alles wie ich es will. Die Arrays initalisieren sich wohl immer nur bis zum ersten Standardabweichenden, daher frage ich nun nach size>=abgefragtem Attribut und nehme sonst an, dass der A bis E-Wert auf C und die Abweichung auf 1 ist. Soweit klappts, da muss ich auch nichts selbst initialisieren.
Hey, gibts einen Patch, der bei einem GameOver nicht den GO-Bildschirm aufruft, sondern einfach nen Switch oder so aktiviert? Wär hilfreich für 'HP Reduction can kill target' von Change Character HP. Theoretisch isses egal, was danach mit den HP passiert (falls die nicht permanent auf 0 bleiben dürfen oder so), weil das ganze für nen selbstgemachten GameOver-Screen sehr praktisch wäre. (:
DEF- und INT-De/Buffs wurden (warum auch immer) ein mal zu oft addiert.
...
Ich hatte das in Kämpfen direkt in der Database getestet und da ging alles. Das Problem: Im eigentlichen Spiel funktioniert dieser Fix nicht. Ich habe das erst jetzt gemerkt, da ich wieder am Spiel rumwerkel. Abwehr und Intelligenz werden also nach wie vor 2x addiert (+6 statt +3, wie angegeben in der Database, z.B.). Ich habe das in meinem alten Spielstand getestet, da funktioniert der Fix nicht. Ich habs mit einem neuen Spielstand getestet, da funktioniert der Fix ebenfalls nicht. Aber wenn ich Kämpfe direkt in der Database teste, da funktioniert der Fix.
Könnte sich jemand das eventuell nochmal anschauen?
2000-107
Könnte man irgendwie vielleicht einen Switch anknipsen, während irgendein xbeliebiges Event per Key
oder Touch ausgelöst wird und läuft? Oder zumindest etwas, das bei gewissen Problemen genauso
oder gar noch besser hilft.
Bin langsam ratlos, was die komplette Absicherung von nem eigenen Menü angeht, das weder vor noch
nach Events, die man überfahren/angerempelt/angequatscht oder sonstwas hat, geöffnet werden darf,
nur weil's im gleichen Frame passiert ist.
Irgendein unfehlbares Signal, das mir genau wie dem Standardmenü mitteilen kann, dass der Versuch
des Menüaufrufs gerade absolut sicher ist.
--
Solange es hier falschzitierende Ärsche gibt, dulde ich keinerlei Zitatboxen, die von mir sein sollen.
Also ich mache das "manuell": Es gibt in jedem Event am Anfang das Common Event BLOCKER und am Ende den ENT_BLOCKER, welche jeweils den PP fürs Menü on und off schalten. Habe damit eigentlich wenig Beschwerden. Ich will aber auch nicht behaupten, dass es totsicher ist. Wenn jemand das ganze Spiel hindurch auf der Esc Taste rumhämmert will ich nicht ausschließen, dass noch irgendwas komisches passiert. Der Maker ist da manchmal unberechenbar.
Mit den super-manuellen Blockern in jedem Interaktions-Event geht das relativ sicher und ich werde in dem Spiel,
für das das Menü ist, diese Arbeit auch nicht tun müssen, sondern andere, da ich mich nur um das Menü selbst
und ein bisschen was anderes kümmere. Aber ich muss denen ja nicht mehr antun (in Sachen von Extra-Arbeit
aufbrummen, die ich irgendwie rechtfertigen muss) mit Technikschwächen als unbedingt nötig ist.
--
Solange es hier falschzitierende Ärsche gibt, dulde ich keinerlei Zitatboxen, die von mir sein sollen.
Hey hey, ich wollte mal nachhacken, wo den das super Programm für den RM2k3 von Cherry hingekommen ist, welches ermöglicht hat größere Charsets zu verwenden, wie zum Beispiel beim RMxp. Bedanke mich schon mal für die Hilfe.
Da 2k nicht so meine Domäne ist:
Ist es möglich, eine variable Startposition hinzubekommen? Wie genau das passiert ist mir dabei egal, also ob ich jetzt rpg_rt.exe --position=X,Y,MAPID mache oder die tatsächliche Startposition verändere, bevor ich das Spiel starte (durch Manipulation der Maps? Kein Plan was da machbar ist).
Eine Sache würde mit einem Patch (von denen ich keine Ahnung hab) bestimmt gehen: Das Spiel auf einer schwarzen Map starten, aus einer Datei die Koordinaten und Map-ID einlesen und dann den Spieler auf die Position teleportieren.