Ergebnis 1 bis 11 von 11

Thema: Der RPG-Reader

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Oh ja, ich erinnere mich noch mit großer Freude daran wie extrem uns das geholfen hat bei SKS einige Sachen zu finden die noch Altlasten waren und von Denen wir wussten dass es richtig lange dauern würde sie mit konventionellen Methoden ausfindig zu machen, wie beispielsweise die oben beschriebene XP-Vergabe an den unmöglichsten Stellen im Spiel! ^^

    Sehr faszinierend, was manche Leute aus dem Maker machen und herausholen können, wirklich gute Arbeit.

  2. #2
    Ein Hoch auf die Technik \o/

    Echt ein super Teil, ich finds super

  3. #3
    Hast du die Probleme jetzt ohne mich gelöst? Mäh.

  4. #4
    @Cherry: Nein, hab ich nicht. Aber ich hatte noch nicht die Zeit gefunden, das mit dir komplett zu durchsprechen, deshalb ist ja noch kein Arbeiten mit dem Vocab möglich Ich melde mich die Tage mal, sobald ich etwas Zeit finde, das Vocab steht nämlich jetzt weit oben auf meiner ToDo.

  5. #5
    <3

    @Edit:
    Du kannst auf GitHub zips mit dem Content erstellen! Sogar eigene zips hochladen wo dann nur noch die jar und die Doku drin ist (LONG LIVE GITHUB /o/)

  6. #6
    Ich glaube ich habe dir diese Frage schon mal auf der BTM gestellt, aber ich frage trotzdem nochmal.

    Auf dem Maker ist nur folgende IF-Abfrage möglich:
    Code:
    If Switch1= ON {
       If Switch2= ON {
          DO THIS
       }
    }
    Könnte man ihn auf JAVA auch so schreiben und er könnte ihn zurück in den Maker richtig konvertieren:
    Code:
    If Switch1= ON && Switch2= ON {
          DO THIS
    }
    netwarrior

  7. #7
    Das ginge so nicht direkt, da der Reader ja nicht die Technik des Makers verändert. Man kann aber natürlich zum Beispiel eine "Sprache" entwickeln, und einen Converter um diese in Makercode zu konvertien und dann für diese Sprache && als Sprachkonstrukt vorsehen.
    Kurze Antwort also: Eher nicht, zumindest nicht so, wie ich vermute, dass du es meinst.

  8. #8
    Achtung!

    Sowohl im Alpha-Release als auch in der aktuellen git-Fassung vom RPG-Reader haben sich noch große Bugs beim Schreiben der Datenbank versteckt. Nutzt diese Funktion vorerst nicht, ich versuche möglichst bald den oder die Fehler zu beheben. Allerdings hab ich derzeit viel Unistress, es kann also ein wenig dauern.

    Aber als Entschädigung ein kleines Codebeispiel:

    Code:
    package tests;
    
    import java.io.File;
    import java.io.IOException;
    
    import com.github.gotos.rpgreader.engine.DataReader;
    import com.github.gotos.rpgreader.engine.LuciferEventCommand;
    import com.github.gotos.rpgreader.engine.LuciferMapEvent;
    import com.github.gotos.rpgreader.engine.LuciferMapEventPage;
    import com.github.gotos.rpgreader.engine.LuciferMapUnit;
    
    /**
     * Main Class, the class that will be started.
     * 
     * @author alina
     *
     */
    public class Main {
    
    	
    	private Main() { }
    	
    	/**
    	 * This loops through the maps, hunting for switch 748
    	 * 
    	 * @param args ignored
    	 */
    	public static void main(String[] args) {
    		DataReader dr;
    		
    		//get Maps
    		for (String filename : new File("/home/alina/Downloads/SternenkindSaga").list()) {
    			if (filename.toLowerCase().startsWith("map")) {
    				dr = DataReader.parseFile("/home/alina/Downloads/SternenkindSaga/" + filename);
    				try {
    					dr.nextUnitZeroID();
    					LuciferMapUnit map = new LuciferMapUnit(dr);
    					
    					for (LuciferMapEvent event : map.getEvents()) {
    						if (event != null) {
    							int i = 1;
    							for (LuciferMapEventPage page : event.getPages()) {
    								if (page != null) {
    									for (LuciferEventCommand command : page.getCommands()) {
    										if (command.type == LuciferEventCommand.CHANGE_SWITCH && command.data[1] == 748) {
    											System.out.println(
    													"Found on Map: " + filename + "! Event: "
    													+ event.getName() + " (" + event.getxPos()
    													+ "|" + event.getyPos() + "), Page: " + i);
    										}
    									}
    								}
    							}
    							i++;
    						}
    					}
    				} catch (IOException e) {
    					System.out.print("Map broken! ");
    					System.out.println(filename);
    				}
    			}
    		}
    	}
    }
    Dieser Code durchsucht alle Maps von Sternenkind-Saga nach Change Switch befehlen, die den Switch 748 oder mehrere Switches, beginnend bei 748, betreffen und gibt aus, wo das passiert. Die Ausgabe könnte dann so aussehen:
    Code:
    Found on Map: Map0001.lmu! Event: EV0094 (39|9), Page: 1
    Found on Map: Map0001.lmu! Event: EV0096 (40|8), Page: 1
    Found on Map: Map0001.lmu! Event: EV0097 (40|10), Page: 1

  9. #9
    Wie geil!
    Ein so schlimmes Spiel wie SKS mit seinen uralten Fehlern ist im Grunde die perfekte Spielwiese für so ein geniales Tool! ^^

  10. #10
    Wenn der Reader irgendwann scheinbar fehlerfrei SkS kopieren kann (sprich: einlesen und wieder schreiben kann), dann wird die Version, die das kann, den Namen 1.0.0 tragen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •