Schleichfahrt Dateiformat

Trockendock für alle Wartungsarbeiten an Schleichfahrt
Crimzan
Ensign
Beiträge: 11
Registriert: Sonntag 6. September 2020, 18:56
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Crimzan »

Hey zusammen,

ich kenne mich leider gar nicht aus mit C++, kann jemand erklären wie man damit arbeiten kann?
Ich würde wirklich sehr gerne Schleichfahrt auseinandernehmen, vor allem die Raumanimationen und Schiffsausrüstungen, im Großen und Ganzen klingt der Link da nach das, was ich brauche, aber aaaa wie gehe ich da vor? :D

Hoffe hier leben noch welche!
Benutzeravatar
thexil
Commander
Beiträge: 607
Registriert: Montag 18. Mai 2009, 15:29
Wohnort: Maastricht

Re: Schleichfahrt Dateiformat

Beitrag von thexil »

Hallo Crimzan,

willkommen im Forum!
Du hast gute Karten, dass sich Nox meldet. Ich habe ihn auch gerade nochmal angeschrieben. Wie du im SF Loader sehen kannst, wurden dieses Jahr im April Änderungen vorgenommen. Auch im SF Reloaded Project hat es Änderungen geben (aktuelle Python Version und so).



Grüße
Aqua dentes habet.
Nox_firegalaxy
Lt. Commander
Beiträge: 210
Registriert: Montag 7. Juni 2010, 18:54
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Nox_firegalaxy »

Hallo, thexil war so nett mich auf die Anfrage aufmerksam zu machen. Beim C++ lernen kann ich dir weniger weiterhelfen, aber prinzipiell ist das garnicht notwendig, wenn du einfach nur an die Daten ranwillst. Dann könntest du die Daten vom schleichfahrt reloaded Projekt nutzen. Dieses zum Laufen zu bekommen (heißt entspechende Software installieren, kompilieren etc.) bedarf ein wenig Zeit, sollte aber auch für einen Einsteiger machbar sein. Falls du konkrete Fragen hast, kannst du dich gerne direkt an mich wenden. Ansonsten kann ein Blick in die Dateien dir helfen rauszufinden, wie die Formate aufgebaut sind, um dann einen entsprechenden Loader in einer anderen Sprache zu implementieren. schleichfahrt reloaded erlaubt es übrigens per config dateien direkt alternative Modelle zu laden.
Crimzan
Ensign
Beiträge: 11
Registriert: Sonntag 6. September 2020, 18:56
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Crimzan »

Hey! Hallo! Licht!

Erstmals vielen Dank für's Willkommen heißen und die Informationen!

Mein Wunsch ist tatsächlich, die Schleichfahrt-Assets quasi in standardmäßige Formate zu bekommen, damit ich ein paar Dinge in moderner Qualität nachbauen kann. Die Stationshintergründe und animierten Räume, den Mauszeiger und Fenster, etc. Ich bin allerdings kein Programmierer, ich kenn mich damit gar nicht aus, deswegen suche ich nach Software, die sowas kann. Irgendwelche Tools, die z.B. diese MVI Videos zu avi oder so konvertieren können, dass man damit arbeiten kann.

Ich habe schon hinbekommen, die .PCM-Sounds in .wav umzuwandeln als Rohdatenimport in Audacity, und die Songs von meiner CD gerippt als MP3. PCX Dateien kann man mit Photoshop oder so problemlos öffnen und habe ich schon zu png konvertiert, aber andere Formate wie die MVI, FNT, R16 Dateien und so weiter und sofort... keine Ahnung wie ich die Konvertiert kriege zu den entsprechenden Video oder Bildformaten (oder was auch immer das für Dateien sind).

Für die MVI Dateien habe ich hier einen leider inzwischen toten Dropbox link zu einem Konverter gefunden, aber ja, der ist halt tot. Kommt man da noch irgendwie dran?


Wenn ich Dich richtig verstehe, @Nox_firegalaxy, sind in dem Schleichfart Reloaded-Projekt schon alle Dateien von Schleichfahrt konvertiert? Oder hab ich hier gerade zu utopische Gedanken? :D
Sorry ich bin da etwas überfordert weil ich auch auf der Seite zum SFLoader oder Schleichfahrt Reloaded nicht ganz verstehe, was ich da brauche und wie ich diese cpp Dinger verwende. Ich hoffe ich hab mein Ziel / Hintergedanken bei meinen Fragen einigermaßen erklären können; bestünde eventuell die Möglickeit, dass Du mir da erklärst, wie ich das durchziehe, wenn's nicht zu viel Aufwand ist? Das wäre ein Traum! :)

Liebe Grüße!

- Crimmy
Nox_firegalaxy
Lt. Commander
Beiträge: 210
Registriert: Montag 7. Juni 2010, 18:54
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Nox_firegalaxy »

sf reloaded läd die originaldateien. Sprich die liegen nicht konvertiert vor. Prinzipiell kann man den SFLoader nutzen um die Daten zu exportieren, allerdings habe ich den Teil schon lange nicht mehr angepackt und ich weiß nicht ob der noch funktioniert. Der hat dann z.B. die frames der Videos als Einzelbilder exportiert (es gibt noch einen Darstellungsfehler im video loader, wofür es auch schon einen fix gibt, der freundlicherweise von jemand anderes bereitgestellt wurde, aber ich bin nicht dazu gekommen diesen einzupflegen).
Aber es gibt keine fertige exe die dir einfach alles rausschmeißt. Du kannst wahlweise den SFLoader zusammen mit den SF reloaded nutzen um dann auf python Seite dir die Daten entsprechend rauszusuchen oder du schaust dir das SFLoader Projekt genauer an und versucht den exporter davon wieder zum Laufen zu bekommen. In beiden Fällen wirst du aber um ein wenig Einarbeiten in Programmieren nicht drumrum kommen. Der SFLoader ist übrigens mit Hilfe von Visual Studio entwickelt worden. Das gibts kostenlos und es gibt viele Informationen darüber.
Crimzan
Ensign
Beiträge: 11
Registriert: Sonntag 6. September 2020, 18:56
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Crimzan »

Uiuiui das klingt... schwierig :D

Der SFLoader lädt also die originaldateien. Und was macht der dann damit?

Aber okay, ich danke Dir für die Informationen :) Ich schau dann mal, ob ich irgendwie damit arbeiten kann :)
Benutzeravatar
thexil
Commander
Beiträge: 607
Registriert: Montag 18. Mai 2009, 15:29
Wohnort: Maastricht

Re: Schleichfahrt Dateiformat

Beitrag von thexil »

Eine Alternative die dir vielleicht eher zusagt ist, dass du das Spiel in der GOG Version spielst und die Elemente die dich interessieren dabei als Screenshots oder mit Aufnahmen exportierst und mit entsprechenden Tools extrahierst (Bild- und Videobearbeitung oder 3D Modellierung). Das ist zwar viel Aufwand, aber du kannst benutzerfreundliche Tools verwenden.
Ob es schneller ist C++ / Python zu lernen, oder Sachen umständlich Manuel zu extrahieren, kommt darauf wie vollständig du arbeiten willst. Falls du vorhast, Schleichfahrt komplett neu zu designen, dann wirst du ums Programmieren nicht umher kommen. Falls du allerdings Schleichfahrt in einem Alternativmedium wiederaufleben lassen willst, dann reichen ja Teile, die sich recht leicht manuell extrahieren lassen.
Aqua dentes habet.
Nox_firegalaxy
Lt. Commander
Beiträge: 210
Registriert: Montag 7. Juni 2010, 18:54
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Nox_firegalaxy »

Der SFLoader stellt die Daten "digital" bereit. Er kann wahlweise als eigenständige EXE oder aber als DLL kompiliert werden. Im ersteren Fall wird der Export in z.B. PNGs für die Einzelbilder durchgeführt. In letzteren Fall kann man dann mit einer anderen Anwendung/Sprache sich die Daten geben lassen. Hier ist die "Hauptdatei" für den EXE Ansatz: https://sourceforge.net/p/schleichfahrt ... in.cpp#l28 . Hier werden aber in der aktuellen Version nur die Loader getestet und nicht die Daten rausgeschrieben. Sobald ich daheim bin schaue ich mal, dass ich die alte Version suche die auch exportiert. Aus Pythonsicht brauchst du glaube ich sowas (Beispiel für das exportieren der Frames eines Videos, ungetestet):

Code: Alles auswählen

from PIL import Image
import SF_Loader

path_to_your_SF_files   = "D:/SF"
name                    = "FILM/D02"
counter                 = 0
mvi_file                = SF_Loader.MVILoader()
mvi_file.load(path_to_your_SF_files + "/GFX/MVI/" + name)

while not mvi_file.has_finished():
    print(f"{counter}")
    mvi_file.decode_next_frame()
    img = Image.frombuffer("RGBA", (mvi_file.width, mvi_file.height), mvi_file.imgdata)
    img.save(f"frame_{counter:03d}.png","png")
    counter += 1
Wie genau man den SFLoader aus Python heraus verwendet, kann man in https://sourceforge.net/p/schleichfahrt ... mporter.py sehen. Wenn du mir deine EMail per PM schickst, dann kann ich dir auch den SFLoader für Python kompiliert schicken.
Zuletzt geändert von Nox_firegalaxy am Samstag 19. September 2020, 00:28, insgesamt 1-mal geändert.
Crimzan
Ensign
Beiträge: 11
Registriert: Sonntag 6. September 2020, 18:56
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Crimzan »

Hey zusammen!

@thexil
Ja, daran dachte ich auch, dass ich das notfalls mache. Das ist definitiv eine Möglichkeit wenn alle Stricke reißen :)

@Nox_firegalaxy
Jaaa der .exe Ansatz wäre für mich ein Traum! Dein Code-Snippet klingt interessant, vielleicht krieg ich das aus Python-Sicht dann doch irgendwie zerlegt :) Ich hab aktuell oft Probleme beim Testen mit irgendwelchen Elementen, die er nicht findet, aaa. Aber das hab ich mit dem SFLoader und sowas noch nicht ausprobiert. Versuche mich derzeit irgendwie in Python reinzulesen. Völlig abstrakt für mich haha :D
Ich lass Dir eine PM mit meiner Mail Adresse zukommen, dann kann ich mir das kompilierte mal ansehen, vielleicht hilft mir das mit den ganzen Formaten :)
Nox_firegalaxy
Lt. Commander
Beiträge: 210
Registriert: Montag 7. Juni 2010, 18:54
Kontaktdaten:

Re: Schleichfahrt Dateiformat

Beitrag von Nox_firegalaxy »

EMail ist raus. Habe auch den Codeabschnitt korrigiert. Achja. Die ersten paar Frames wieder zu sehen sorgte sofort für einen Nostalgieanfall und sofort ging die Soundspure in meinem Kopf an. "In der Tiefsee ist man nicht unbedingt erst dann am Boden [...]"
Antworten