ZenHAX

Free Game Research Forum | Official QuickBMS support | twitter @zenhax | SSL HTTPS://zenhax.com
It is currently Fri Nov 22, 2019 7:14 am

All times are UTC




Post new topic  Reply to topic  [ 543 posts ]  Go to page Previous 123 24 25 26 27 28 Next
Author Message
PostPosted: Thu Apr 11, 2019 8:56 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
I need a sample


Top
   
PostPosted: Fri Apr 12, 2019 3:39 pm 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
aluigi, there is a problem with get text string
i dont know how quickbms can get strings but i know it is must be like that:
like this: get string and stop it when reach to a zero \x00 byte! must be like that!

problem: quickbms has problem in get YOUR_TEXT string, for example you can download this zip file and export text, done and then go and check line 12 (TEST-STRING.zip)!
dialog is 40th St.. But QuickBMS will dump as 40th St.\0Auto Hide\041st St.\0Find a snit


and some times, if dialog start with a number and a space, other part will not dump
example: dialog is 2 player can't be at same place, Please go to a diffirent location
but will dump as 2

i think you have to fix get TEXT string


Attachments:
TEST-STRING.zip [66.69 KiB]
Downloaded 50 times
Top
   
PostPosted: Fri Apr 12, 2019 4:31 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
it's a problem of the script.
You must simply use: slog "" OFFSET -1

From:
Code:
savepos OFFHANDLER
goto OFFSET
get LENGHT string
math LENGHT -= 1
goto OFFHANDLER
slog "" OFFSET LENGHT

To:
Code:
slog "" OFFSET -1


Ah, in the next beta and final quickbms -b will be replaced by -j, -b will be used for specifying the filler char when the reimported file is smaller than the original: by default space (0x20) in slog and 0x00 in Clog and Log


Top
   
PostPosted: Sat Apr 13, 2019 11:32 am 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
QuickBMS can calculate and get text with -1! So why get TEXT string has problem? Weird!
So can you fix get TEXT string?
I have to use some texts in string NAME p, what about that? slog is fine if -1 can solve that but other text (except slog or dumping) has problem
If string reach to zero, then stop reaching. Must work like that and I think script was fine


Top
   
PostPosted: Sat Apr 13, 2019 5:04 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
what you wanted to use in your old script was strlen:
strlen LENGHT LENGHT

you got the string LENGHT from the file and you used math on it, which was wrong :)


Top
   
PostPosted: Sat Apr 13, 2019 9:17 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
The new beta is out:
http://aluigi.org/beta/quickbms_0.9.3.zip

I plan to release the new version on Monday so if you have any idea or bug, this is the right moment :)

Remember what I said about -b that is -j now.


Top
   
PostPosted: Sun Apr 14, 2019 11:32 am 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
aluigi wrote:
The new beta is out:
http://aluigi.org/beta/quickbms_0.9.3.zip

I plan to release the new version on Monday so if you have any idea or bug, this is the right moment :)

Remember what I said about -b that is -j now.


new thing
change utf-16 from big endian to little endian
make quickbms to use full cpu using (use maximum cpu to make it fast or add an option if someone dont want to use at maximum)


add a log for xml (I know its hard, but for next release after 0.9.3)
like this:
Code:
get HEADER long
get DUMMY long
get FILES long
for i = 0 < files
get DUMMY long
get X-OFFSET long
get Y-OFFSET long
get W-SIZE long
get H-SIZE long
xlog X-OFFSET Y-OFFSET W-SIZE H-SIZE(and so many other parts to add in xlog)
next i
and so on
xlog should just replace hex-decimal numbers (just like hex editor)
and quickbms generate a xml (xml tags and template must generate by quickbms and not create by user)

examle
Code:
<xlog>
<X-OFFSET="428" Y-OFFSET="504" W-SIZE="24" H-SIZE="60">
</xlog>


xlog can helps a lot in config modding like fonts and save files and server files and alot of files! even change setting or coordination files and object files in games!


Top
   
PostPosted: Sun Apr 14, 2019 2:11 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
Good, I forgot about the big endian in -j and it will be changed to little endian, anyway doesn't change anything when editing.

Regarding the CPU, quickbms is not limited in any way BUT:
- it's single thread, it's not possible to support multiple CPU at the same time because all the operations are in sequential order
- the handling of the commands is slow because there is no JIT compilation
So there are no ways to improve it.

Regarding xlog... it seems really very complicated and it's still the same thing we discussed in the previous post.


Top
   
PostPosted: Thu Apr 18, 2019 7:41 pm 
User avatar

Joined: Thu Apr 18, 2019 6:45 pm
Posts: 11
Greetings, I'd like to submit some code for a decompression format not contained with QuickBMS. I was referred to this thread by chrrox to share this. Getting to it...

I've been calling it "Aqualead LZSS," and the file magic is "ALLZ".
Aqualead is a game development framework sold within Japan. According to their online documentation, their compression is a modified variant of LZSS with their own optimizations added in.

Link to my decompression tool source code (DL under releases):
https://github.com/Brolijah/Aqualead_LZSS

Some sample files to test with:
https://www.dropbox.com/s/6u1sjn5yxflm1 ... s-ALLZ.rar

Extra:
This tool I compiled using the decompression ASM routines I pulled from Groove Coaster for Steam. While I have confidence in my own C program linked above, I'm including this in case you might be curious how exactly a game using ALLZ does it. This is 100% guaranteed to work.
https://www.dropbox.com/s/lo3s51eub6ie1 ... SS_ASM.zip

If you have any questions or concerns, I'll try to answer them as best I can.


Top
   
PostPosted: Thu Apr 18, 2019 9:52 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
Excellent job Elijah, I will add it to the next quickbms.

Let me know if you are aware of other algorithms that may be worth to add.


Top
   
PostPosted: Fri Apr 19, 2019 3:42 pm 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
can you add a better zlib and lzo (lzo1x) library too?
and why deflate always is a problem?


Top
   
PostPosted: Fri Apr 19, 2019 9:39 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
what's the problem?
both zlib (zlib, zopfli, advancedcomp, uberflate) and lzo work perfectly.


Top
   
PostPosted: Mon Apr 22, 2019 3:34 pm 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
aluigi wrote:
what's the problem?
both zlib (zlib, zopfli, advancedcomp, uberflate) and lzo work perfectly.

deflate has problem in some games (just in reimporting) and just in some games, like Evil whithin 2! or limbo!


Top
   
PostPosted: Mon Apr 22, 2019 4:57 pm 
User avatar

Joined: Sat Mar 02, 2019 3:24 pm
Posts: 68
Any chance about your Umineko: Golden Fantasia (PC) script update?
I need that to extract sprites.
And what about the XOR encryption script for UNDER NIGHT IN-BIRTH Exe:Late[st] (PC)?


Top
   
PostPosted: Fri Apr 26, 2019 5:07 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
@Shokoniraya
I need sample

@Mysticus
off-topic


Top
   
PostPosted: Fri Apr 26, 2019 6:57 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
@Shokoniraya
If you refer to the zopli bug in reimport mode, it has been fixed in the beta

I have just uploaded the new beta.
Quickbms 0.10.0 will be released this Sunday, and the beta will be the final version if there are no other things to add/fix


Top
   
PostPosted: Fri Apr 26, 2019 10:34 pm 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
release quickbms in monday

i just find a problem!
seems like quickbms cant add \x00\x00 in end of a unicode text in text file in reimporting

you can download and click on reimport and you will see
i removed message_22.lng content


Attachments:
TEST_1.zip [888 Bytes]
Downloaded 43 times
Top
   
PostPosted: Sat Apr 27, 2019 3:38 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
It seems to work well because it's a size-based string, so no NUL delimiter must be placed there.

Extraction of the rebuilt lng file is perfect indeed.


Top
   
PostPosted: Sat Apr 27, 2019 10:25 am 
User avatar

Joined: Sat Sep 15, 2018 5:22 am
Posts: 248
based on size? then its fine


Top
   
PostPosted: Sat Apr 27, 2019 11:27 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10822
Yes, there you have 'slog "" OFFSET SIZE unicode' so doesn't matter what bytes you have at SIZE+1, SIZE+2 and so on.

Anyway it was useful to spot a little rare thing.
Basically SLog works with text and it's possible to use non-printable bytes like 0x0d and 0x0a using \r and \n, while testing your file I noticed that \0 (the NUL byte) wasn't used because it was filtered by the function that converts utf8 data to unicode.
For example "asdf\x00asdf" in Slog unicode should produce a string of 4+1+4 characters while currently it produces 4 characters.
It's NOT a bug but I prefer to handle it in the final version released tomorrow and produce the 4+1+4 output... it's useless but who knows :)


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 543 posts ]  Go to page Previous 123 24 25 26 27 28 Next

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Limited