CIM Internals Scratchpad - Eigene Notizsammlung bezüglich Erweiterungen...

  • Hallo


    Da es immer besser ist seine Ideen und Informationen zu teilen,
    werde ich mal mein Notiz-Datei bezüglich der CIM Internals veröffentlichen.


    http://www.bytetransfer.de/projects/cim/CIMInternals.txt


    Das ist bis jetzt nicht wirklich viel und auch sehr Roh, aber vielleicht locke ich ja noch ein paar andere Menschen aus der Reserve.
    Und damit auch alle die CIM Erweitern wollen, dieses lesen können versuche ich das Meiste auch in Englisch zu schreiben.


    Sofern ich weitere Information habe, wird diese Datei erneut hoch geladen.


    PS: Ja, ich kenne die Wiki, aber ein Editor ist mir lieber und viel schneller und nein das ist auch nix für die Filebase. Und einen besseren Platz als in Tools & more hab ich auch nicht gefunden und ja das Präfix passt auch nicht...

  • PS: Ja, ich kenne die Wiki, aber ein Editor ist mir lieber und viel schneller


    Seufz ... so viel Zeit hab ich auch nicht zum Eintragen. Es könnte ruhig auch mal jemand mitmachen, anstatt immer nur "näh, zu langsam" zu meckern. Aber das nur am Rande ...

    Aktuelle Ideen und Projekte oder: Was hoffentlich irgendwann mal fertig wird (Update Dezember 2010: Oder auch eher nicht)
    Mehr Konkurrenten | RCT2-Objekte in Locomotion | Gebäude aus Industrien klauen und als Stadtgebäude nutzen | LocoGUI-Klon für Gebäude | Regions-DAT-Tool | MusicChanger 2.0 | Weltraumflüge mit Loco-Maps darstellen (siehe Das Marsprojekt :) )


    The Visual Dictionary


  • Seufz ... so viel Zeit hab ich auch nicht zum Eintragen. Es könnte ruhig auch mal jemand mitmachen, anstatt immer nur "näh, zu langsam" zu meckern. Aber das nur am Rande ...

    Sei mir nicht Böse aber ein Wiki ist für diesen Zweck nicht geeignet, für Planung und festhalten gesicherter Information ja, aber nicht als Notizklotz einiger Benutzer. Bis jetzt sind das alles noch sehr ungesicherte Informationen.


    Beispiel: Meine Test Addon Datei hat

    Code
    function updateERA($year) { }

    damit sie funktioniert, ich bin aber der Meinung, das könnte das ganze Spiel kaputt machen wenn es die metro game.script überschreibt, getestet hab ich das aber noch nicht.

  • Ich hätte da schon eine Ergänzung:
    Bin beim programmieren der Suchfunktion über das onDestroy event gestossen.



    event this.onDestroy::() {
    MAIN.$economy = null;
    }

  • Halllo


    Ich bin gerade Dabei einen Dump der Script-Engine mit allen Funktionen und Events am erstellen, wäre da grundsätzlich Interesse daran :?:
    Das sind dann eine Handvoll html Dateien mit Object Methoden und Eigenschaften-


    Wenn Ja, werde ich das noch mehr aufpolieren und als Addon raus bringen.

  • Halllo


    Ich bin gerade Dabei einen Dump der Script-Engine mit allen Funktionen und Events am erstellen, wäre da grundsätzlich Interesse daran :?:
    Das sind dann eine Handvoll html Dateien mit Object Methoden und Eigenschaften-


    Wenn Ja, werde ich das noch mehr aufpolieren und als Addon raus bringen.


    Wäre auf jeden Fall hilfreich. Also ja, ich hab Interesse ;)


  • Wäre auf jeden Fall hilfreich. Also ja, ich hab Interesse ;)


    Hier mal die ersten Ergebnisse nach langem Debuggen.
    Das was in der Debugging Routine von CIM steht ist totaler Käse bezüglich der Variablen Typen. Hab also meine eigene Interpretation geschrieben,
    das es da mehr als ein Bool gibt ist Absicht, da CIM scheinbar intern zwei Varianten kennt.

  • Kleine Frage


    Die .dds Dateien sind ja nur die Textur.


    Also wird das gesamte Model in der Datei .object abgespeichert?
    Derzeit versuch ich die Struktur der Modelle durchzusehen, hoffentlich hab ich bald gute Ansätze gefunden...


    Edit:
    Hat eigentlich schon jemand die .object Datei durch alle möglichen 3D Programme gejagt?

  • Ich habs mit Blender versucht, ohne Erfolg. Da ich "unbegrenzte" Demoversionen von teurer Originalsoftware verabscheue (und mir auch rechtlich nicht leisten kann, da ich meinen PC auch gewerblich einsetze), kann ich nicht auf Autodesk oder ähnliches zurückgreifen.


    Wenn man die Dateierweiterungen online sucht, dann stößt man immer mal auf Ogre, Autodesk oder Blender und diverse Konverter. Man kann ja auch einfach mal die Leute von CO fragen. Hat das schon mal einer versucht? :D

  • Ich habe per Hex Editor schon mal die Vertex Daten auf null gesetzt, dann war ne Treppe weg. Eine Checksumme gibt es definitiv nicht.
    Ein mir bekanntes Format haben die Daten nicht, ich habe es durch ein Programm gejagt zu Erkennung von Dateien, die Daten haben keinen Header, also kein Erfolg.
    Soviel kann ich aber sagen. Es ist ne Baum-Struktur. Es wird wohl mit 3D Studio Max gearbeitet, dann nach FBX und dann vielleicht ins eigene Format? konvertiert.


    Ich hab hier eine finnische Arbeit über Level Design "LEVEL DESIGN VIDEOPELEISSÄ" von Henri Haimakainen aus dem Jahr 2009:


    "Lontoo­projektissa mallintaminen ja pelialueen koostaminen tapahtui ''orgaanisesti'' eli käsityönä. Jokainen objekti sijoiteltiin paikalleen 3D Studio Max --mallinnusohjelmalla ja lopulta valmis kartta tallennettiin Gsystemin tukemaksi FBX­ tiedostoksi." ( Seite 28, Text zum Bild )


    Beim London Game Project sind wir wieder bei aukiogames. Und ich denke mal Gsystemin = Gsystem.dll :)


    tokyo game engine (TTS) > Skies > London Game Project > CIM


    Bei TTS ist das Format anders, Skies hat schon sehr viel CIM Scripting (hat einen eval Befehl mehr, dieser fehlt CIM scheinbar), GS Dateien und Object Dateien.
    Das "London Game Project" konnte ich noch nicht anschauen.

  • Der Google-Übersetzer wirft das hier raus:


    "London Projekt, Modellierung und Gaming-Bereich die Größe der place''organic''or von Hand. Jedes Objekt in Ort sijoiteltiin 3D Studio Max - Modellierungs-Software und schließlich bereit, Karte aufgezeichnet Gsystemin von FBX-Datei nicht unterstützt"


    Gut, das macht mich jetzt nicht schlauer als vorher. :D
    Vielleicht hat Lukas ja Glück und die Entwickler rücken damit raus.

  • Der Google-Übersetzer wirft das hier raus:


    "London Projekt, Modellierung und Gaming-Bereich die Größe der place''organic''or von Hand. Jedes Objekt in Ort sijoiteltiin 3D Studio Max - Modellierungs-Software und schließlich bereit, Karte aufgezeichnet Gsystemin von FBX-Datei nicht unterstützt"


    Gut, das macht mich jetzt nicht schlauer als vorher. :D
    Vielleicht hat Lukas ja Glück und die Entwickler rücken damit raus.


    Ja, aber wo hast du das "nicht" her in deiner Übersetzung? ?( Da steht eher das von 3D Max nach Gsystem geht per FBX Format...


    Einfach nach "LEVEL DESIGN VIDEOPELEISSÄ" suchen, dann findet man das PDF bei der UNI, ist aber kopiergeschützt. Abschnitt 3 ist interessant, da kann man Pfade im Gsystem Editor sehen für das "London Project"

  • http://www.g-system.at/doc/latest/dochome.html


    GSystem Dokumentation. Da steht einiges über Objecte. Ich versteh aber nur Bahnhof. Vielleicht kann da einer durchblicken wie die ".object" Dateien aufgebaut sind.


    Also auch wenn das Ding sich GSystem nennt, ich sehe da keine Übereinstimmung mit irgendwelchen Teilen von CIM, ich sehe da auch nichts über irgendwelche 3D Formate.


    PS: Ich hab auch eine London Demo gefunden, die scheint aber mit einem Trojaner infiziert zu sein... beinhaltet u.a. data.gs london.gs GSystem.dll und fmod ...


    -edit 2-
    Ok, hier haben wir endlich mal ein paar gesicherte Eck-Daten:
    http://www.game-artist.net/for…g-character-animator.html

  • Hier mal die ersten Ergebnisse nach langem Debuggen.

    da sag ich erstmal danke dafür. Das motiviert doch glatt sich hier zu registrieren. ;)


    bezüglich der anderen Dateien:
    ich habe auch schon ne ganze weile in den daten files von CiM gestöbert. Und zumindest die *.object Dateien sind mir von der Struktur her mehr oder weniger klar.
    Die vertex daten zu exportieren und dann in bspw blender zu importieren sollte bereits machbar sein. Der umgekehrte weg wird noch noch etwas arbeit erfordern.
    auch die ganzen restlichen files (scene,sceleton,properties,animation,etc) sind noch offen.


    hab leider keine so hübsche mitschrift wie du. da steht meine faulheit mir immer im weg :whistling: . aber ich häng mal das tool mit quellcode an was bei der arbeit so mit entstanden ist. is nich schön aber selten :p. vielleicht hilfts ja irgendwem weiter

  • da sag ich erstmal danke dafür. Das motiviert doch glatt sich hier zu registrieren. ;)


    bezüglich der anderen Dateien:
    ich habe auch schon ne ganze weile in den daten files von CiM gestöbert. Und zumindest die *.object Dateien sind mir von der Struktur her mehr oder weniger klar.
    Die vertex daten zu exportieren und dann in bspw blender zu importieren sollte bereits machbar sein. Der umgekehrte weg wird noch noch etwas arbeit erfordern.
    auch die ganzen restlichen files (scene,sceleton,properties,animation,etc) sind noch offen.


    hab leider keine so hübsche mitschrift wie du. da steht meine faulheit mir immer im weg :whistling: . aber ich häng mal das tool mit quellcode an was bei der arbeit so mit entstanden ist. is nich schön aber selten :p. vielleicht hilfts ja irgendwem weiter

    :thumbsup:
    Naja, die Internals Dump werden per console script geniert, ich musste aber erst mal verstehen das die CIM Entwickler die Datentypen verschoben haben, dann hatte ich aber schon einen komplett neuen HTML Dumper fertig und dann versuchte ich eben alle Objekte abzufragen. Muss das Script mal in ein schönes Addon packen... Leider kennt CIM kein eval, dann wäre das mit dem Script Debugging viel einfacher :cursing:


    Ich habe den Quellcode gelesen und versucht zu verstehen. :D Ich war mir eigentlich sicher das die Daten in einem Baum strukturiert sind hmm, sieht also nicht danach aus sondern es gibt CHUNK_VERTEX_EXTRA CHUNK_VERTEX_EXTRA2, ok.


    Object daten haben auch Pfade, siehe metrou_station0.object, das müsste dann also 0x02600000 sein. Nun brauchen wir also ein 3D Format... 3ds? Blender? in das wir die Rohdaten konvertieren können.

  • Hat jemand schon versucht, einfach mal frech im Support Forum nach dem 3D Format zu fragen?


    Nachdem das Spiel ohnehin so entwickelt wurde, dass man leicht modden kann, werden die Entwickler wohl kein Problem damit haben, wenn man das 3D Format "knackt"?


    Oder bin ich da jetzt ein wenig naiv? :D



    MFG


  • Es gibt einen Thread im CIM Forum:
    http://forum.paradoxplaza.com/…ata%29-Object-file-format


    Einfache Antwort die finanziellen Interessen könnten eine zu große Modding-tätigkeit einschränken. Addon-Packs wären da ein Beispiel.


    ----


    Dumper Script
    Als Anhang das Dumper Script wie versprochen... Die Ingame-Console muss aktiviert werden, steht im Scratchpad wie es geht.
    (F11/12 wird genutzt, also kein Cam Mod)
    Installation ins Addon Verzeichnis, ein "internals" Order erstellen für die html Dateien und ein Spiel starten.. F11 und dann "fulldump", etwas warten und fertig...
    Wer die Aufmachung nicht mag, erstellt sich ein userstyles.css... Wer mehr Script Objekte Dumpen kann hier melden. Das nächste Ziel ist auch die eigentlichen Daten und nicht nur die Struktur zu Dumpen für ein Objekt.

Jetzt mitmachen!

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