Wat is het EBM-bestandsformaat?
.ebm is het bestandsformaat voor gilde-emblemen dat wordt gebruikt in Ragnarok Online, de MMORPG die sinds 2002 wordt uitgegeven door Gravity Co., Ltd. Elk bestand bevat een gilde-embleemafbeelding van 24×24 pixels, 8-bit (256 kleuren), opgeslagen als een met zlib gecomprimeerde Windows .bmp bitmap.
Wanneer een speler een aangepast embleem uploadt, comprimeert de gameclient de ruwe BMP-gegevens naar het .ebm-formaat en slaat deze op in de map /emblem/ van de client. De ongecomprimeerde payload is altijd een standaard Windows BMP van 1.734 bytes bij 24×24 pixels met een 8-bit kleurenpalet. Ongeveer 20% van de .ebm-bestanden bevat een standaard zlib-wrapper (78 9C of 78 DA header) met een Adler-32 checksum; de overige bestanden zijn ruwe DEFLATE-stromen zonder de zlib-omkadering.
Er is geen officiële publieke specificatie van Gravity; het formaat is door de community via reverse-engineering geanalyseerd en gedocumenteerd in de RagnarokFileFormats-repository op GitHub. Een PHP-conversieklasse voor .ebm ↔ .bmp is beschikbaar op PHPClasses. Het formaat is sinds de eerste release in 2002 ongewijzigd gebleven.
Beveiliging & veiligheid
RISICO: LOWEBM-bestanden zijn gecomprimeerde bitmapafbeeldingen; ze bevatten geen uitvoerbare code. Het risico is beperkt tot misvormde zlib-gegevens die een crash kunnen veroorzaken in een eenvoudige parser.
Formaatdetails
in een notendopProgramma's die EBM-bestanden openen
Technische details
diepe specificaties| Compressie | DEFLATE via zlib; ~20% van de bestanden bevat een standaard zlib-header (`78 9C` / `78 DA`); de rest gebruikt een ruwe DEFLATE-stroom zonder wrapper |
| Ongecomprimeerde inhoud | Windows BMP bitmap, 24×24 pixels, 8-bit (256-kleuren geïndexeerd palet) |
| Vaste afbeeldingsafmetingen | 24×24 pixels (alle gilde-emblemen gebruiken exact deze grootte) |
| Kleurdiepte | 8 bpp (256-kleuren geïndexeerd palet) |
| Ongecomprimeerde bestandsgrootte | 1.734 bytes (standaard 24×24 8-bit Windows BMP) |
| Typische gecomprimeerde grootte | 1 KB - 5 KB |
| Byte-volgorde | Little-endian (geërfd van de Windows BMP-structuur) |
| Checksum | Adler-32 - alleen aanwezig wanneer de standaard zlib-wrapper wordt gebruikt |
| Magic bytes | Geen vaste waarde; `78 9C` of `78 DA` wanneer de zlib-header aanwezig is; anders een ruwe DEFLATE-stroom |
| Opslagpad | `/emblem/` map in de installatie van de Ragnarok Online client |
| Bron specificatie | Door de community via reverse-engineering verkregen; gedocumenteerd in RagnarokFileFormats op GitHub |
| Uitgebracht | 2002 (Ragnarok Online initial release) |
| Specificatie | github.com |
EBM conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over EBM-bestanden.