EA .SBS/SBR format problem by rekzs at 2:02 PM EST on December 9, 2023
Greeting, I'm trying to play the sbs/sbr format found in NBA Live 18 but for some reason VGMstream doesn't seem to play it. Maybe it's encrypted? Any help would be appreciated.
Thanks for replying. I used Luigi Auriemma FightNight (EA EB) Script to extract the game .big file. Maybe it needs a update? I can upload a sample of the .big file.
edited 2:24 PM EST December 12, 2023
by Shinkukaioken at 9:37 AM EST on December 14, 2023
I uploaded the NBA Live .big file sample. Hopefully someone can figure it out, unfortunately it goes beyond my knowledge.
I modified .bms to just extract data from .big file, as I found readable-something text/addresses in it, and also in script the parameters in .big "header" were shuffled around so I reordered the "get" instructions, that probably could be why you got incorrectly extracted files.
After extraction, here are the headers found per filetype (extension).
========================================================= (.big) // other, minor .big files inside this main .big chunkzip
(xml.) // besides proper XML chunkzip <AudioFramework> <DoNotPlayList> =========================================================
According to some read, "chunkzip" is some compression scheme, but I did not mess with relevant part in script as it's beyond my comprehension level (I commented lines out). I see that many files are compressed with this "chunkzip", not all of them, so unpacking ought to be partial, maybe assist with a separate chunkzip unpack tool (?).
by Shinkukaioken at 3:54 PM EST on December 19, 2023
Man, thank you for that! I thought I would never get this Live ost lol. I appreciate that. By the way, can you upload your modified BMS script so It can be used in another EA games that maybe have the same problem, Like NBA Live 19?
#################################################### ## line 48: substitute math BLOCK_SIZE = 0x10
## with (after calculations/estimations) math BLOCK_SIZE = 0x1000
## line 67: substitute math TMP = OFFSET
## with math TMP += SIZE
## Substitute lines 55-58: get OFFSET long get ZSIZE long get SIZE long get CRC long
## with (the "shuffling order" I wrote before): get OFFSET long ## chunk offset get DUMMY long ## =[00 00 00 00] get SIZE long ## chunk size get UNUSED1 longlong ## ??
## Remove lines 105-end (function definitions, not needed).
## Change lines 90-99 to just log FNAME OFFSET SIZE
## Remove conditionals and some dummy sentences: lines 75-84, 68-72, 59-61, 49-51 ## Remove "getdstring CHECK 2" part: lines 7-12 ## Remove "comtype" part: line 4 ####################################################
I hope you can adjust with these instructions, just those are my modifications I just made for this game extraction. Study the original .bms first, and try to determine what do the changes I made.
by Shinkukaioken at 1:21 PM EST on December 28, 2023
Thank you, it worked.
by razzledazzle at 9:37 PM EST on February 13, 2024
Hi Shinkukaioken and almendaz, do you still have the .bms to extract the .big files for NBA Live 18 and 19?