The IDK Project - Habbo Emulation

  • Einen wunderschönen Guten Abend meine Mitmenschen, hier spricht Steve Winfield.

    Bedingt geteilter Meinungen über die Implementierung der aktuellen Versionen des Habbo Hotels haben wir uns Gedanken über eine Lösung gemacht, welche die eigentliche Version des Flash-Clients möglichst irrelevant machen könnte.

    So konzentrierten wir uns verstärkt auf eine Schnittstelle für clientseitige IDK Plugins, um eine Kommunikation zwischen dem Habbo-Flash-Objekt und den Browser-JavaScript-Elementen zu ermöglichen. Nachdem wir bereits die Flash-Datei so umgeschrieben haben, sodass sie Server-Nachrichten an unseren JavaScript-Listener sendet und man ebenfalls Nachrichten an den Server über eine API senden kann, ist es uns nun eine Priorität, die UI-Elemente des Flash-Clients so in HTML nachzustellen, dass beide Bereiche perfekt harmonieren.

    Bereits fertig sind alle Buttons des Clients (HTML5):

    Für eine optimale Darstellung wird ein moderner Browser vorausgesetzt.

    Hier ein paar Tests mit einer bearbeiteten SWF:

    Spoiler anzeigen


    Die Möglichkeiten, die sich dadurch ergeben, sind relativ ausgeprägt.

    Bspw. ließe sich dadurch die Habbo Kamera relativ sicher (sicher wäre sie nur, wenn der Raum mit den Bedingungen komplett serverseitig nachgezeichnet wird, trägt jedoch viel Aufwand mit sich) in der Post-shuffle Version umsetzen. Hierfür wird über die API die Flash-UI ausgeblendet (Alles bis auf den Raum) und die Maus für den Flash-Client geblockt. Hier wäre ein erster Ansatz: http://idk.linkist.de/js/client/interface/plugins/camera.js

    Wir versuchen, weiterhin diesem Pfad zu folgen, um die für den Client möglichen Funktionen erweiterbar machen zu können. Ein Schritt mit dem wir uns von dem abspalten können, an das sich so viele nicht binden wollen.

    Cheers,
    Steve Winfield

  • Normalerweise wird ein Projekt nach dem Release doch aufgehört. Außerdem Ihr erklärt das ganze zu kompliziert, da versteht man so einiges nicht, wollt Ihr jetzt ein HTML5 Client machen?

    "Normalerweise" trifft für mich auf die seltensten Fälle zu, kann dir also hier nicht zustimmen (meistens bei einem Leak). Die veröffentlichten Developer-Previews sollen Plugin-Entwicklern die Möglichkeit geben, das System bereits anzutesten und auch Anderen, die sich mit dem Thema "Habbo Server" evt. mehr befassen möchten, einen Einblick gewähren.

    Dass manche Posts manchmal fach-typische Ausdrücke enthalten, ist für uns bzw. mich unumgänglich, vor allem wenn das Thema alleine schon etwas kompliziert ist. Außerdem ist die oben genannte Theorie relativ unwichtig für die später folgende simple API.

    Cheers,
    Steve Winfield

  • "Normalerweise" trifft für mich auf die seltensten Fälle zu, kann dir also hier nicht zustimmen (meistens bei einem Leak).
    Dass manche Posts manchmal fach-typische Ausdrücke enthalten, ist für uns bzw. mich unumgänglich, vor allem wenn das Thema alleine schon etwas kompliziert ist. Außerdem ist die oben genannte Theorie relativ unwichtig für die später folgende simple API.

    Cheers,
    Steve Winfield

    Sagen wir mal ich entwickele den letzten releasten Java Emulator, mach ich dabei Verluste beim programmieren, wenn die API raus kommt was so eben vorgestellt wurde?

  • Bezüglich der releasten Versionen:
    Die bisherigen Veröffentlichungen waren gedacht um potentielle Plugin-Entwickler einzubinden. Wie Steve schon sagte, nennen wir das "Developer Preview (dt. Vorschau für Entwickler)".
    Dieses Prinzip gibt es auch bei bekannten Softwareherstellern wie Google, Apple, Microsoft etc. Man erhofft sich dadurch, direkt zum Start einige Apps bzw. Plugins anbieten zu können.

    An interessierte Plugin-Entwickler:
    Das Grundprinzip der Entwicklung wird sich nicht mehr ändern: Ein Script-Code (zum Beispiel JavaScript) wird in die Sprache des Emulators übersetzt und dort ausgeführt.
    Plugins die ihr heute entwickelt werden so gut wie ausnahmslos auch mit zukünftigen Versionen von IDK funktionieren.
    Mit der Zeit wird es einfach immer mehr Möglichkeiten - (siehe nächster Punkt) und weniger Aufwand geben.

    Unsere neuste Entwicklung:
    Sehr stark vereinfacht und damit ggf. etwas unvollständig bedeutet das letzte Entwickler-Update, dass man mit Plugins die SWFs bearbeiten und auslesen kann.
    Dadurch kann man neben Server (Möbel, Habbos, Bots) auch den Client (Farben, Menüs, Buttons) sehr dynamisch anpassen.

    Einmal editiert, zuletzt von Rhinodanny (18. Januar 2016 um 21:04)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!