Anleitung für eigene Skins
Willkommen zur Skin-Erstellungsanleitung für Manic EMU. Das Skin-System dieses Emulators basiert auf dem DeltaSkin-Framework und ist vollständig mit dem DeltaSkin-Basisformat kompatibel. Für die Grundlagen von DeltaSkin empfiehlt sich das offizielle Tutorial. In Figma hilft RetroSkinner—Designs werden direkt zu Skin-Dateien.
Manic EMU bietet zusätzlich Druckanimationen, freie Skalierung, Bildschirmspiegelung und mehr. So nutzt du diese exklusiven Funktionen:
info.json-Konfiguration
Abschnitt betitelt „info.json-Konfiguration“Spieltyp-Kennung (gameTypeIdentifier)
Abschnitt betitelt „Spieltyp-Kennung (gameTypeIdentifier)“Manic EMU nutzt eigene Spieltyp-Kennungen:
- Wii:
public.aoshuang.game.wii - NGC:
public.aoshuang.game.ngc - Amiga:
public.aoshuang.game.amiga - C64:
public.aoshuang.game.c64 - NGP:
public.aoshuang.game.ngp - PCE:
public.aoshuang.game.pce - Symbian:
public.aoshuang.game.symbian - DOS:
public.aoshuang.game.dos - J2ME:
public.aoshuang.game.j2me - DOOM:
public.aoshuang.game.doom - JAGUAR:
public.aoshuang.game.jaguar - LYNX:
public.aoshuang.game.lynx - 7800:
public.aoshuang.game.7800 - 5200:
public.aoshuang.game.5200 - 2600:
public.aoshuang.game.2600 - Arcade:
public.aoshuang.game.arcade - DC:
public.aoshuang.game.dc - PS1:
public.aoshuang.game.ps1 - PM:
public.aoshuang.game.pm - VB:
public.aoshuang.game.vb - N64:
public.aoshuang.game.n64 - SS:
public.aoshuang.game.ss - MD:
public.aoshuang.game.md - MCD:
public.aoshuang.game.mcd - 32X:
public.aoshuang.game.32x - MS:
public.aoshuang.game.ms - GG:
public.aoshuang.game.gg - SG-1000:
public.aoshuang.game.sg1000 - MD:
public.aoshuang.game.md - PSP:
public.aoshuang.game.psp - 3DS:
public.aoshuang.game.3ds - NDS:
public.aoshuang.game.ds - GBA:
public.aoshuang.game.gba - GBC:
public.aoshuang.game.gbc - GB:
public.aoshuang.game.gb - NES:
public.aoshuang.game.nes - SNES:
public.aoshuang.game.snes
Tipp: Für Kompatibilität mit Delta und Manic EMU die DeltaSkin-Kennungen direkt nutzen—das System wandelt automatisch um.
Manche Plattformen teilen kompatible Controller. In Manic EMU kannst du bestimmte Plattform-Skins mischen:
- GB GBC
- MD MCD 32X
- MS GG SG-1000
- NES FDS
- DOS DOOM
Eindeutige Skin-Kennung (identifier)
Abschnitt betitelt „Eindeutige Skin-Kennung (identifier)“Vergib eine global eindeutige Kennung. Doppelte Namen können Lade- oder Cache-Probleme verursachen.
Druckanimationen
Abschnitt betitelt „Druckanimationen“Dynamisches Tastenfeedback in zwei Schritten:
- Ebenen trennen: Tastenhintergründe und Vordergründe splitten (siehe 3DS-Skin-Vorlage)
- JSON-Konfiguration: Im Button in
info.jsoneinasset-Feld ergänzen
Beispiel: Druckeffekt für die A-Taste
{ "asset": { "normal": "a_button.pdf" // Reserve for future state expansions }, "frame": { "height": 48, "width": 48, "x": 545, "y": 552 }, "inputs": ["a"]}Animierter Schalter
Abschnitt betitelt „Animierter Schalter“Ermöglicht Umschalten mit Zustandsbeibehaltung. Visuell: Standard-Skin des Atari 2600.
Beispiel
{ "asset": { "normal": "fuction_button.pdf", "selected": "fuction_button.pdf" }, "frame": { "height": 40, "width": 20, "x": 30, "y": 569 }, "animation": { "type": "spring", "begin": { "height": 20, "width": 20, "x": 0, "y": 2 }, "end": { "height": 20, "width": 20, "x": 0, "y": 18 } }, "inputs": "menu", "selfRetracting": true}Ein neues animation-Objekt wurde ergänzt (derzeit nur für Switch Button).
animation:
typedefiniert die Animationskurve. Derzeit nurspring.begindefiniert den Frame vor dem Start.enddefiniert den Frame am Ende.
Hinweis: Koordinaten in begin und end sind relativ zum übergeordneten frame.
asset:
Zusätzlich zum normal-Asset gibt es selected. So zeigt das Control im Zustand selected eine passende Ressource (derzeit nur Switch Button).
inputs:
Inhalt wie bei anderen Controls, hier nur Strings. Das ist die Funktion des Switch Button. Standard-Eingaben wie a, b, up, down … oder Custom Function Buttons aus dem nächsten Abschnitt.
Hinweis: Manche Custom Function Buttons unterstützen Zustandsbindung. Ist inputs z. B. volume (Stummschaltung), fragt das System beim Laden des Skins den Lautstärkezustand ab und setzt den gebundenen Switch Button. Siehe tvType im Standard-Skin des Atari 2600.
Custom Function Buttons mit Zustandsbindung:
reverseScreensvolumetoggleControllstoggleAnalogtvTypeleftDifficultyrightDifficulty
selfRetracting: Ob der Switch Button automatisch zurücksetzt. Siehe Reset-Taste am Atari 2600: federt nach dem Druck zurück, wie ein Momenttaster.
Custom Function Buttons
Abschnitt betitelt „Custom Function Buttons“Manic EMU unterstützt viele Shortcut-Aktionen (Versionsanforderungen beachten):
Unterstützt ab v1.2.3:
flex: Skin-Layout-Einstellungen öffnen
Neu ab v1.2.4:
quickSave: Schnelles manuelles SpeichernquickLoad: Schnelles manuelles LadenfastForward: Halten für maximale GeschwindigkeittoggleFastForward: Tippen, um Tempostufen zu wechselnreverseScreens: Primär- und Sekundärbildschirm tauschenvolume: StummschaltungsaveStates: Savestate-Liste öffnencheatCodes: Cheatcode-Liste öffnenskins: Skin-Liste öffnenfilters: Filterliste öffnenscreenshot: Screenshothaptics: Vibrationsfeedback anpassencontrollers: Controller-Liste öffnenorientation: RotationseinstellungenfunctionLayout: Layout-Konfigurationrestart: Spiel zurücksetzenresolution: Spielauflösungquit: Spiel beendenamiibo:Amiibos für 3DS ladenhomeMenu:Zurück zum Home Menu des 3DS
Neu ab v1.4.2:
toggleControlls:Steuerung ein-/ausblendenblowing:Ins Mikrofon pusten simulierenpalette:Palette für GB GBC VB
Neu ab v1.5.0:
swapDisk:Nächste Disc oder Seite wechseln (FDS)
Neu ab v1.5.5:
shake:Schüttelsimulation
Neu ab v1.6.0:
toggleAnalog:Eingabegerät wechseln, z. B. PlayStation Controller oder DualShock auf PS1.
Neu ab v1.7.0:
retroAchievements:RetroAchievements-Seite öffnen.
Neu ab v1.7.1:
fastForward2x: Halten für Vorspulen mit 2×fastForward3x: Halten für Vorspulen mit 3×fastForward4x: Halten für Vorspulen mit 4×airPlayScaling: Skalierung des Spielbilds während AirPlayairPlayLayout: Anordnung bei Mehrbildschirm-Spielen (z. B. NDS) während AirPlay
Neu ab v1.7.2:
gameplayManuals:Gameplay-Handbücher öffnen
Neu ab v1.7.3:
triggerPro:TriggerPro-Konfigurationen wechseln
Neu ab v1.8.3:
tvType: Farb- und Schwarzweißmodus für den Atari 2600.leftDifficulty: Linker Schwierigkeitsschalter für den Atari 2600.rightDifficulty: Rechter Schwierigkeitsschalter für den Atari 2600.
Neu ab v1.9.0:
screenScaling:Bildschirm-Streckmodus wechselnj2meSettings:J2ME-Einstellungen öffnendosSettings:Core-Einstellungen für DOS öffneninsertDisc:Disc einlegen
Neu ab v2.0.0:
coreSettings:Kern-Einstellungen öffnenrewind:Halten zum Zurückspulen
Beispiel: Restart-Taste hinzufügen
{ "asset": { "normal": "button.pdf" }, "frame": { ... }, "inputs": [ "restart" ]}⚠️ Wichtig Einer Taste nicht mehrere Funktionen zuweisen. Zum Beispiel:
// ❌ Dangerous Example!{ "inputs": [ "restart", "quit" ]}Soundeffekte
Abschnitt betitelt „Soundeffekte“Ab V1.9.0 unterstützt Manic EMU Soundeffekte für Skin-Tasten. Audiodateien ins CAF-Format wandeln, als sound.caf benennen und im Skin-Stammverzeichnis ablegen, bevor alles zusammengepackt wird.
Skin-Paketierung
Abschnitt betitelt „Skin-Paketierung“Skin in drei Schritten packen:
- Alle Assets flach ablegen (keine übergeordneten Ordner)
- Alle Dateien wählen und als unverschlüsseltes ZIP komprimieren
- Bevorzugte Endung wählen:
.manicskinoder.deltaskin
Offizielle Vorlagen helfen, die Struktur korrekt zu halten.
Offizielle Skin-Downloads
Abschnitt betitelt „Offizielle Skin-Downloads“Jetzt den eigenen Skin gestalten.