Comments (5)
Please don't post copyrighted game files. The one you posted isn't an FDGH file, anyway, so it's not in scope for this tool.
XBIN is just a thin wrapper around other file formats, defined like this (C-like pseudocode):
struct XbinHeader {
char magic[4] = "XBIN";
uint16_t endian = 0x1234;
uint8_t version; // 2 or 4
// (1 pad byte here)
uint32_t file_size; // includes xbin header and unpadded embedded file data, nothing after that
uint32_t metadata; // seemingly always 0x3A4 or 0xFDE9; unknown meaning
#ifdef XBIN_VER_4
uint32_t rloc_offset; // offset of "RLOC", relative to start of file
#endif
}
struct XbinFile {
struct XbinHeader header;
char file_data[header.file_size]; // arbitrary contents
#ifdef XBIN_VER_4
// (1-3 bytes of padding here)
char rloc_magic[4] = "RLOC"; // unclear if this would flip with endianness; it's "RLOC" in little-endian
char rloc_empty[8] = {0,0,0,0,0,0,0,0};
#endif
}
You can extract the file inside by removing the first 0x10 bytes (for XBIN 2), or the first 0x14 bytes and the last 0xC (for XBIN 4). I actually have a tool to do that (as well as the reverse operation, which is slightly more annoying), which I can add to the repo.
KatFL does have an FDGH file, though, and it currently breaks the tool. I'll see if I can add support for it.
from fdgh-converter.
I don't know anything about other (i.e. non-FDGH) files in Kirby games, sorry. :/
from fdgh-converter.
Im so much need editing this file for translation game.
Thanks for support.
from fdgh-converter.
I've added support for KatFL's FDGH file, and a new "xbin_cli.py" script that can add and remove XBIN wrappers to/from arbitrary files. Together, they should solve this issue. Good luck with your translation!
from fdgh-converter.
Thank you for the tool. But how do I edit this file? After the tool, the file becomes like this. How can I add characters to this file?
from fdgh-converter.
Related Issues (1)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fdgh-converter.