@Cepanks: & Shift ist Mist, weil nach jedem fünften Druck auf Shift immer diese nervige Einrastmeldung kommt. \:
@Cepanks: & Shift ist Mist, weil nach jedem fünften Druck auf Shift immer diese nervige Einrastmeldung kommt. \:
Die Einrastmeldung kann man irgendwo in den Systemeinstellungen deaktivieren. Und ich meine ab Windows 8 oder 7 gibt es die Standardmäßig nicht mehr. Keine Ahnung ob man die wieder aktivieren kann, auf jeden Fall kann ich bei meinem Win 10 Tausendmal auf die Shift-Taste drücken ohne das was kommt. Und auch bei Win 8 ging das ohne Probleme. Einige Makerspiele machen ja intensiven Gebrauch von der Shift-Taste, daher hatte ich damals nach einer Lösung dafür gesucht (und halt durch die Systemeinstellungen gefunden) und habe mich gefreut, als es das Problem bei den neueren Betriebssystemen nicht mehr gab.
@eddy: Also, bei mir kommt die Meldung für das Einrasten der Shift-Taste & ich habe Windows 8.
Naja, ich hoffe nur, dass meine Spieler die ausschalten, wenn ich den Attack jetzt auf Shift lege...
Mal abgesehen von der aufploppenden Einrastfunktion bin ich generell kein Fan der Shift-Taste für häufige Aktionen (rennen, angreifen etc.). Sie liegt einfach zu ungünstig, gemessen an den gebräuchlichen Steuerungsschemata (WASD oder SYXC). Ich muss mir dazu immer den kleinen Finger verrenken, um die Taste zu erreichen, dabei benutze ich idR vor allem Zeige-, Mittel- und Ringfinger.
--Endzeit-WIKI - Wolfenhain-WIKI!
Aphonia heroica: Unvermögen eines Helden, eigene Dialoge zu generieren. Prominente Fälle: Link (Legend of Zelda), Crono (Chrono Trigger), Edel (Hell Gates 2)
Pi = 2! ...zumindest in 1D...
Kutte benutzt Dinkelplätzchen. - Es ist sehr effektiv!
Auf dem Maker ist das gebräuchlichste Steuerschema aber doch, zumindest für Rechtshänder, die Cursortasten.
Wozu gibt's sonst eine Shift-Taste auf zwei Seiten? Die Richtungstastenhand muss die doch nicht auch noch bedienen.Zitat
Nö, ich benutz die auch. Erstens sind sie dafür da, zweitens gibt's auf jeder normalen Tastatur keinen anderen Block,Zitat
auf dem man nicht auf andere Tasten als diese 4 Richtungen verrutschen kann und vorallem nichts anderes darunter
die Finger behindert. Jedes Spiel, das mir was anderes direkt zwangsweise aufdrücken will, hat gleich verloren.
Mal von der vielleicht etwas ungünstigen Lage von Shift abgesehen, löst das Belegen von Shift als Angriffstaste nicht mein Problem.
Auch bei Druck auf Shift werden weiterhin Standardaktionen ( das Aufrufen von Textboxen, das Aktivieren von Events ) ausgeführt.
Das ist ein großes Problem, weil so auch Pages von Events aufgerufen werden, die eigentlich vom Verlauf des Spiels her passé geworden sind.
Weil ich mit rechts die Cursortasten benutze, lege ich solche Aktionen immer auf 1-0 (also die Ziffernzeile), weil meine linke Hand da eh unterwegs ist.
Das sollte aber wirklich nicht passieren. Ich denke, der Fehler könnte damit zu tun haben, dass du die "Conditional Branch" vergessen hast. Der Code muss so aussehen:Zitat
Das Problem mit der Shift-Taste kann ich nicht ganz nachvollziehen. Bei Maker-Spielen braucht man in der Regel die Leertaste und eine der Tasten ab x und rechts davon (funktionieren immer alle, weiß grad nicht bis welcher Taste). Wenn ich dann den Daumen auf die Leertaste und den Zeigefinger auf c hab liegt der kleine Finger schon ganz natürlich und automatisch auf der Shift-Taste. Ich muss da nichts verrenken, den Finger einfach nur da lassen, wo er eh schon ist. Und auch wenn die Steuerung auf w a s d liegt, komm ich ganz gut an die Shift-Taste mit dem kleinen Finger ran. ehrlich gesatg fand ich die Belegung immer recht praktisch.
Und warum die Einrastwarnung bei dir unter Win 8 noch aufploppt versteh ich grad nicht. War mir relativ sicher, dass es die da nicht mehr gibt. Vielleicht hat das ein Programm de- oder aktiviert? Oder ich irre mich grad^^
Zumindest kann ich dir Einwandfrei bestätigen, das es bei Win 10 keine Probleme damit mehr gibt. Gerade getestet![]()
@Kelven: Auch die Conditional Branch brachte keine Lösung des Problems. Du meinst das doch so:
Oder?
@Kelven: Yo, ist es.
Im weiteren Code dieses Common Events folgen eigentlich nur die relativen Koordinaten für die Hitboxen.
Ich kann mir nicht erklären, warum der Maker bei dir gleichzeitig so tut, als ob Enter gedrückt wurde. Das ist also echt so, wenn du z. B. neben einem NPC stehst, dass bei einem Druck auf Shift auch der NPC angesprochen wird?
Zumindest bei meiner Tastatur komm ich an die rechte Shift-Taste sogar noch schlechter ran, da sich diese direkt über den zur Bewegung genutzten Pfeiltasten befindet (Pfeiltasten vom Nummernblock verwende ich nicht, da die 8 und die 2 zuweit auseinanderliegen. Die Shift-Taste wäre in dieser Position mit dem Daumen ebenfalls nur sehr unbequem erreichbar). Die rechte Hand ist idR schon meine Bewegungshand, die linke dann für Aktionen, die, wie gesagt, auch gerne auf WASD liegen.
Ein Beispiel dafür, wo mir dies auch negativ aufgefallen ist, wäre jüngst "Yukiko" von Vreeky.
Liegt bei dir zwischen "Y" und Shift keine "<>"-Taste? Bei mir schon, sodass ich den kleinen Finger je nach Schema nach (unten) links abspreizen muss. Nicht bequem...Zitat von Eddy131
--Endzeit-WIKI - Wolfenhain-WIKI!
Aphonia heroica: Unvermögen eines Helden, eigene Dialoge zu generieren. Prominente Fälle: Link (Legend of Zelda), Crono (Chrono Trigger), Edel (Hell Gates 2)
Pi = 2! ...zumindest in 1D...
Kutte benutzt Dinkelplätzchen. - Es ist sehr effektiv!
Geändert von Ark_X (19.11.2015 um 23:35 Uhr)
Hier ist ein kleiner Engine-Test: Datei von filehorst.de laden
Danke, das erklärt doch alles.
Die Ursache des Problems ist eigentlich ganz banal und genau, was elvissteinjr vorhergesagt hat: Bei einem Druck auf die Angriffstaste callt das Common Event "Key Input Club" das Event direkt vor dem Spieler.
Das Spiel hat aber keine Ahnung, ob das gecallete Event ein Monster ist oder nicht, es wird einfach stumpf bei jedem Event dessen erste Seite ausgeführt. (na ja, nicht bei jedem, mehr dazu im übernächsten Absatz) Wenn das Event ein Schild mit Text ist, wird eben der Text angezeigt, wenn das Event eine Tür mit Teleport ist, wird der Held teleportiert, etc. Das gilt natürlich auch für Events, die durch einen aktivierten Switch "gelöscht" sind, denn sie sind ja trotzdem noch auf der Map und Call Event schert sich nicht um Eventseiten-Bedingungen.
Darf man fragen, wer das KS geschrieben hat? Nach einem Blick auf das Beispielprojekt klingt das alles wie ein typischer Fall von "Code übernommen, ohne ihn zu verstehen".
Das System scheint für dein Problem nämlich schon eine Lösung mitzubringen. Im Event "Map Ref" wird die Variable 25 auf 3 gesetzt. Erst dachte ich mangels Variablennamen, das sei die Anzahl der Monster auf der Map, der eigentliche Sinn ist aber ein anderer: Der Call-Befehl in "Key Input Club" wird nur ausgeführt, wenn die ID des abgefragten Events >= dem Wert von Variable 25 ist.
Monster sollten also als allerletztes auf die Map gepackt und Variable 25 dann auf die kleinste Monster-Event-ID gesetzt werden.
Beheben lässt sich der Fehler also ganz einfach, du wirst aber nicht umhinkommen, die Events auf deinen bisherigen Maps noch einmal neu nach diesen Regeln zu sortieren. Ein anderer, aber wohl ähnlich zeitaufwändiger, Fix wäre, allen Nicht-Monster-Events eine leere erste Seite zu geben.
--"Banjo, you're a BEAR... and I will teach you... THESE MOVES!"
@Cepanks: Klar darfst du fragen. (:
Das Script stammt von Kazesui. Die Hälfte versteh ich, die andere Hälfte eben nicht. (:
Ich muss nun also die Monster-Events ihrer ID nach sortieren? In "Knocka Dora" gibt es jeweils immer nur ein Monster pro Map. Können also alle Gegner die gleiche ID haben?
Entschuldigung, dass ich so blöd frage, aber ich will in Zukunft halt was anständiges abliefern. (:
Öffne mal irgend ein Event und schau dir die Titelleiste an, da sollte dann "ID: 0009" oder so stehen, das meine ich. Es kann auf einer Map immer nur ein Event eine bestimmte ID haben. Jedes Mal, wenn du ein neues Event auf einer Map erstellst, erhöht der Maker diese ID automatisch, bzw. er nimmt die nächste die frei ist (z. B. du erstellst drei Events, EV0001, EV0002, EV0003, löschst dann EV0002, erstellst dann zwei neue Events, die hätten dann die IDs 0002 und 0004).
Wenn du nur einen Gegner pro Map hast, sollte es ganz einfach sein. Kopier einfach dein Gegner-Event (das Event auf der Map, nicht den Inhalt) und lösch das Original. Das neue Event sollte jetzt die höchste ID haben, falls nicht, kopier die Kopie ein paar Mal.
Die ID von diesem finalen Gegner-Event verwendest du jetzt für Variable 25.
Edit: Wenn du dir sicher bist, dass es wirklich auf jeder Map nur ein Monster geben wird, könntest du natürlich auch die Abfrage so ändern, dass geprüft wird, ob die ID des aufgerufenen Event genau dem Wert X entspricht. Dann würdest du dir das Setzen der Variable auf jeder Map sparen, müsstest aber aufpassen, dass Gegner-Events auch tatsächlich immer eine identische ID haben. 0001 würde sich in dem Fall anbieten.
--"Banjo, you're a BEAR... and I will teach you... THESE MOVES!"
Geändert von Cepanks (20.11.2015 um 10:59 Uhr)
@Cepanks: Also, auf meiner Engine-Testmap krieg ich es zum laufen.
Aber ich habe Probleme damit, es in mein Game zu integrieren.
So wie ich die Sache sehe, wird ein Event gehitet, das eine ID höher als Variable 25 hat oder gleich der ID von dem Wert, der in Variable 25 steht, ist. Warum werden Events gecallt auf einer Map, wo ich in der Map ref die Variable 25 auf 616 gesetzt habe? Das wollte ich eigentlich auf allen Maps machen, auf denen kein Gegner ist.
EDIT: Ich brauche doch das Event "Map ref" auf jeder Map, oder?
Geändert von Norpoleon (20.11.2015 um 15:45 Uhr)