Comments (23)
No problem, I'll take a look.
And yep, the BFLAN format is not the most well-known, so 3DSkit cannot read them completely. But I'll try to work on it after BFLYT
from 3dskit.
Okay, now that the BFLYT modules work fine, let's try on BFLAN !
I'll try to do the same thing as for BFLYT, a new and better implementation (BFLYT and BFLAN modules were in the first modules of 3DSkit...). The only problem is that the BFLAN format is not well documented at all.
from 3dskit.
I finally managed to make something usable, so you can test
from 3dskit.
It indeed works, but it's still missing stuff. Great job so far!
First and only error, but those are those color files I was talking about in the first post:
BFLAN file found
Extracting...
Format version : 8.6.0.0
Number of sections : 2
Traceback (most recent call last):
File "..\3DSkit.py", line 249, in <module>
result = main(args, opts)
File "..\3DSkit.py", line 169, in main
extract_files(filename, args.big, args.format, args.verbose, opts)
File "..\3DSkit.py", line 112, in extract_files
unpack.extract(filename, file, format, endian, verbose, opts)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\unpack\__init__.py", line 16, in extract
unpacker = cls(*args)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\util\utils.py", line 18, in __new__
return self.main(*args, **kwargs)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\unpack\BFLAN.py", line 32, in main
self.readdata(data)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\unpack\BFLAN.py", line 71, in readdata
name, node = self.readsection(data, magic, startpos)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\unpack\BFLAN.py", line 79, in readsection
name, node = self.readpai1(data, startpos)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\unpack\BFLAN.py", line 116, in readpai1
tagentryoffsets = self.unpack_from('%dI' % tagentrynum, data)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\util\rawutil.py", line 101, in unpack_from
unpacked, ptr = _unpack(stct, data, offset, byteorder, refdata)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\util\rawutil.py", line 58, in __new__
return ins.main(*args, **kwargs)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\util\rawutil.py", line 317, in main
return self.unpack_file(stct)
File "S:\Mijn Drive\Things\NSW\Themes\Very nice theme\tools\3DSkit-master\util\rawutil.py", line 467, in unpack_file
final += struct.unpack(substruct, subdata)
struct.error: unpack requires a buffer of 5722419480 bytes```
from 3dskit.
Okay, that's another weird version difference, because all of my 7.2.1 files worked.
Can you send one or two of these files please ?
Thanks !
from 3dskit.
The FooterBtn_textColor is one of the files that doesn't work. Link is in the first post.
But here you go, another file HudSignal_Color
:
https://drive.google.com/file/d/1KGyb0eI4-GaBL6YR0gXfDcegVDBl9tZv/view?usp=sharing
from 3dskit.
Whoops, wrong link. I updated it in the last post
from 3dskit.
Ok, many stuff was missing because of a bad structure.
Then, is there any working file with the current commit ? I found the issue, but as it is completely incompatible with other versions it would be very strange if other similar files were processed fine.
from 3dskit.
Yeah there are many files working. 192 out of 207 in the ResidentMenu
from 3dskit.
(ResidentMenu bflans)
from 3dskit.
Thank you very much !
So it is not a version issue but something not implemented yet.
BTW I found some documentation about the BRLAN format (the Wii's one), and thanks to that I was able to make certain values more explicit, and to complete a few things.
from 3dskit.
Okay, now it seems to work, and with more data than before.
BTW, if you have any idea about the meaning of the "EU" in "FLEU", I'd be glad
from 3dskit.
I don't really know the context, so not really. Would you know what FLEU does? If not I'll just have to try it out on my Switch and see what changes.
Edit: I'm dumb: can't repack it yet
from 3dskit.
So, I guess that HudTime_Color.bflan has something to do with some kind of clock on the HUD.
If it doesn't annoy you, can you try to replace it with these hand-modified files, to see what kinds of effects it does ? Warning, the probability that the one in unknown value
will provoke a crash is quite high, I won't blame you if you prefer not to try, I don't know the consequences of a crash due to a theme.
Another time, thanks for your help !
EDIT : I say a crash, but it also may be completely ignored if there are errors, I don't know
from 3dskit.
The first two files don't seem to change anything, but the unknown value
indeed crashes. Perhaps try modifying the BatteryConsole_Color. Maybe the HudTime_Color is forced to always be white or something like that. The BatteryConsole changes color with normal behaviour like plugging in the charger in.
Edit oh BatteryConsole_Color is something else, BatteryConsole_BatteryColor changes the color when charging if I'm correct, but you can still try
from 3dskit.
Ok, I made similar edits but on BatteryConsole_Color.bflan
from 3dskit.
Btw. the name C_Id
in BatteryConsole_Color is also in many bflyts. It says something about the data of a panel with a picture. https://hastebin.com/paxetuvami.bash Under usd1 - entries there's C_Id.
{
"name": "C_Id",
"type": 1,
"unk1": 0,
"data": [
1
]
},
data
is either a 1 with "usd1 - L_<random (what is L?)>" or a 0 with "usd1 - P_<random picture?>"
from 3dskit.
Ok, I made similar edits but on BatteryConsole_Color.bflan
BFLAN.zip
Same as last time: doesn't seem like anything has changed
from 3dskit.
Maybe the E stands for Entry? Or External
Probably not..
from 3dskit.
Theorically, it defines the animated data, like Vertex Colors for FLVC, VIsibility for FLVI, ...
So why not External (...), if it is linked with usd1s
from 3dskit.
Anyway, the unpack.BFLAN module seems to work fine, so let's start the packing one
from 3dskit.
I found it out, the EU stands for 'Extended User Information'.
In total there are 10 animation types (These are the official names):
- Pane SRT
- Visibility
- Vertex Color / Transparency
- Material Color / Text Shadows
- Alpha Test
- Texture Pattern
- Texture SRT
- Per-character transformation offset time
- Extended User Information (String, Integer value list or Real number value list)
- Indirect
Btw. are you on Discord?
from 3dskit.
Thank you ! I'll include this in the doc and the module
And yes, I'm on discord
from 3dskit.
Related Issues (20)
- BFLIM replacement in ALYT files results in a crash HOT 40
- Mini repacking: "3DSkit is currently unable to pack this format" HOT 4
- No support for unpacking BFFNT v4.1 HOT 6
- Error extracting nx_bffnt font ,I don't know why. HOT 10
- BFFNT OverflowError: signed integer is greater than maximum HOT 8
- Error unpacking new BFLYT Nintendo Switch HOT 18
- Error packing new BFLYT Nintendo Switch HOT 3
- Extracting files inside exefs Nintendo Switch HOT 3
- bksnd support HOT 3
- No Support for packing BFFNT v4.1 HOT 25
- Error extracting .bflyt "KeyError: '__parent'" HOT 1
- packing BFFNT
- UnsupportedDataFormatError: Unsupported texture format RGB565 (104) HOT 52
- Dbz Supersonic warriors 2 .arc files not supported HOT 2
- Download link? HOT 1
- Add a way to extract and convert the formats in Tank Troopers
- Error unpacking ALYT files HOT 2
- Show message if program is run without any arguments HOT 1
- BFLIM unpacking/repacking of non-multiple of 8px images results in weirdly distorted images HOT 6
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 3dskit.