Beiträge von waynee95

    Giradore  

    Stimmt sowas steht gar nicht im Helpfile, aber du kannst das wie folgt machen. Weise einer Variable folgenden Skirpt zu:

    Code
    1. $gameStorageSystems.storage(STORAGE_ID).numItems($dataItems[ID])

    Ersetze dann STORAGE_ID mit der eigentlichen Id des Storage Systems und bei dem $dataItems[ID] ersetzt du ID mit der Id des Items. Du kannst auch anstelle von $dataItems[ID] noch $dataWeapons[ID] und $dataArmors[ID] nutzen.

    Sajiki

    1. Hmm, das mit der Sortierung wäre eigentlich möglich. Ich schaue es mir mal an, wenn ich Zeit habe.

    2. Du kannst jedem Achievement ein Common Event geben. Darüber kannst du dann Belohnungen oder ähnliches machen. In den Plugin Parametern, da wo du die einzelnen Achievements anlegst, ist eine Option "On Complete Common Event". Dort einfach die Id eines Common Events angeben und dieses wird dann ausgeführt, wenn das Achievement erhalten wird.

    Jitsu

    Lade dir die neuste Version v1.2.0 runter.


    Da habe ich einen Parameter hinzugefügt, um Popups auszuschalten, bzw. Plugin Commands dafür.


    Um die Achievements ohne Menü anzuzeigen, nutzt du in einem Scriptcall

    Code
    1. SceneManager.push(Scene_Achievements);

    Jitsu

    Schön das es dir gefällt. Ich bin mir nur etwas unsicher, ob du jetzt noch Hilfe brauchst oder ob es noch Fragen gibt.


    Ja, die Position des Plugins könnte Auswirkungen mit anderen Plugins haben, sowas kann man immer schwer sagen als Plugin Ersteller, weil ich nicht alle Plugins zusammen mit meinem Plugin teste.


    Ja, die Erfolgspunkte kann man auslesen über diesen Scriptcall

    Code
    1. $gameAchievements.currentPoints()


    Den Text im Popup Fenster kannst du in dem Plugin Paramtern beliebig anpassen. Du kannst da eigentlich jeden Text reinmachen mit oder ohne Icon etc.

    Thibbs

    Ja, das ist möglich jedoch nur mit Plugins. Außerdem könnte das jenachdem wie gut du dich schon mit Plugins auskennst, eventuell etwas kompliziert sein.


    Wir brauchen dafür:

    Du erstellst 2 Zustände. Wir brauchen den 1. Zustand, um unserem Opfer den Verflucht Zustand zu geben. Dieser Zustand speichert außerdem unser Opfer des Fluchs beim dem Anwender. Der 2. Zustand ist dafür da, um den eigentlichen Effekt auszuführen und zwar dem Opfer Schaden zu zufügen. Mir ist leider keine einfachere Idee eingefallen und somit brauchen wir den 2. Zustand, da wir sonst nicht sagen können "Wenn Anwender Schaden bekommt, dann füge dem Opfer auch Schaden zu".


    Das ganze sieht dann wie folgt aus:

    Für Zustand 1 haben wir folgende Notetags:

    Code
    1. <Custom Apply Effect>
    2. origin._curseTarget = target;
    3. origin.addState(12); // ACHTUNG: Hier musst du die Zustandsnummer unseres 2. Zustands angeben!
    4. </Custom Apply Effect>
    5. <Custom Leave Effect>
    6. origin.removeState(12); // ACHTUNG: Hier musst du die Zustandsnummer unseres 2. Zustands angeben!
    7. </Custom Leave Effect>

    Kurze Erklärung, was hier passiert. Der "Custom Apply Effect" triggert, wenn der Anwender den Verflucht Zustand auf das Opfer anwendet. Dann setzten wir die Variable "_curseTarget" des Anwenders genau auf unseres Opfer, damit wir später ihm Schaden machen können.

    Der "Custom Leave Effect" wird ausgführt, wenn dieser Zustand in irgendeinerweise entfernt wird. Der entfert dann den zugehörigen anderen Zustand bei dem Anwender.


    Und für Zustand 2 haben wir folgende Notetags:

    Der "Custom Respond Effect" wird ausgelöst, wenn dieser Actor Schaden bekommt, wenn dies der Fall ist, dann bekommt unser Opfer auch Schaden.

    Der "Custom Leave Effect" macht auch hier eigentich das gleiche, er entfernt den zugehörigen anderen Zustand in dem Fall vom Opfer.


    Du kannst theoretisch, dass Iconbild für den 2. Zustand weglassen, dann sieht man diesen nicht, weil er ja mehr oder weniger nur dazu da ist, damit wir als Ersteller den Effekt richtig umsetzen können.

    Ich habe damals oft Hamachi benutzt um mit Kumpels Minecraft zu spielen. Aber ich habe schon immer Hamachi in Erinnerung, dass es ein ziemliches Gefummel ist, bis da irgendwas mal läuft. Keine Ahnung, vielleicht haben wir uns auch doof angestellt. Aber ich will es nicht mehr benutzen. :rolleyes:


    Meine grundsätzliche Meinung zum Thema RM + Online ist, dass es einfach irgendwie nicht die richtige Engine ist dafür ist. Deshalb sollte man das einfach nicht mit RM machen, egal wie man es auch irgendwie noch "zusammen hacken" könnte.

    Sehr cool, mal wieder in JS-Tutorial zu sehen hier. ^^:thumbup:


    Eine Sache würde ich nur anmerken und zwar sagst du

    Zitat


    Wichtig ist, dass man sich vor der Deklaration darüber im Klaren sein muss, wie viele Werte man nun eigentlich speichern möchte.


    Stimmt so nicht 100%, denn man kann auch nach dem Erstellen des Arrays Elemente hinzufügen bzw. sogar entfernen. Dafür verwendet man:

    Code
    1. $gameVariables.value(variableId).push(x) // fügt x in das Array ein, welches in der Variable "variableId" gespeichert ist
    2. $gameVarialbes.value(variableId).pop() // würde das hinterste Element im Array entfernen

    Padramyr


    Copy-paste das mal in eine .js Datei und schau dir mal an, wie das aussieht und sag mir dann ob das deiner Idee entspricht. Am besten mach dein verändertes Menü erstmal aus und nutz das normale MV Menü für den Test.

    D4rkD

    So eine richtige Liste gibt es da nicht. Falls du oder jemand anders eine bestimmte Idee hat für eine Bedingung für ein Achievement, dann kann man ruhig hier nachfragen. Ich helfe gerne aus.


    Welchen Part genau meinst du?


    Um den Wert einer Variable zu checken, benutzt du

    Code
    1. $gameVariables.value(ID)

    wobei ID die Id der Variable ist. Pass aber auf, dass du die führenden 0en nicht hinschreibst, also 1 anstatt 001 etc.


    Um zu checken, ob ein Switch an ist, benutzt du

    Code
    1. $gameSwitches.value(ID)

    wobei ID die Id des Switches ist.


    Um Werte von einem Actor zu überprüfen, benutzt du

    Code
    1. $gameActors.actor(ID).level
    2. $gameActors.actor(ID).atk

    wobei ID die Id des jeweiligen Actors ist.


    Code
    1. $gameSystem.battleCount() >= 10

    war einfach nur irgendein Beispiel, was mir auf die Schnelle eingefallen ist. Das überprüft einfach nur, wie viele Kämpfe der Spieler schon gemacht hat.


    EDIT: Noch eine kleine Spitzfindigkeit. Der RPG Maker MV benutzt JavaScript und nicht Java. Zwischen den beiden Programmiersprachen ist ein großer Unterschied. Aber viele verwechseln das. ninja_sweat

    WAY_Achievements

    Einführung

    Dieses Plugin ermöglicht es dir, Achievements hinzuzufügen, die der Spieler freischalten kann.


    >>> Dieses Plugin nutzt die neuen MV1.5.0 Plugin Parameter, also solltest du dein Editor aktualisieren.


    Dein Projekt kann aber immernoch älter als MV1.5.0 sein



    Features

    • Nutzt die MV1.5.0 Plugin Parameter für einfache handhabung
    • Erstelle verschiedene Kategorien für Achievements
    • Wenn ein Achievement abgeschlossen wurde, wird ein kleines Benachrichtigungsfester angezeigt
    • Funktioniert mit YEP_MainMenuManager
    • Du kannst beliebigen JavaScript Code für die Bedingung des Achievements benutzen

    Anleitung

    Platziere das Plugin am Ende der Liste.


    Wie erstellst du ein Achievement:

    1. Öffne den Plugin Manager
    2. Wähle "Achievement List" Parameter aus
    3. Wähle einen leeren Slot aus
    4. Jetzt kannst du dein Achievement erstellen

    Mehr Infos in der Hilfsbeschreibung des Plugins! (Bisher leider nur in English verfügbar)


    Download


    Das Plugin einfach als .js Datei abspeichern und in den /js/plugins Ordner platzieren.


    :!: Dieses Plugin benötigt außerdem: WAY_Core


    Falls du Fragen oder Probleme hast, poste sie gerne hier. :)

    Solarus Engine – eine freie Action-RPG Engine

    quest_editor_screenshot-768x432.png




    Beim stöbern im Internet bin auf die Solarus Engine gestoßen.


    Mit der Solarus Engine kann man Action RPGs erstellen à la Zelda, aber man kann auch jedes andere Tileset benutzen. Mit dem Solarus Quest Editor kann man seine Spielwelt, Charaktere, Items etc. erstellen. Außerdem verfügt die Engine über einen Map Editor, Sprite Editor, Tileset Editor, Dialog Editor und ein Lua Skript Editor. Man sollte sich etwas mit der Programmiersprache Lua auskennen, da die Engine Lua Skripte nutzt. Die Engine verfügt über eine gute Dokumentation und es ist auch eine Video Tutorialreihe verfügbar, jedoch nur auf Englisch.


    Die Videoreihe findet man hier.


    Webseite der Engine: http://www.solarus-games.org/