How to edit world_2a.bin?
July 18, 2016 at 8:10 pm #6365
Hi guys, so I recently got LUNI working, and I’m really happy with it, but I really want to change/modify the characters. I remember a comment about this being somewhere on timtech’s site, but it might be on here. If I remember correctly, the commenter was talking about hexadecimal codes or something similar, and using those to modify the character’s loadout/the items the character was using. I’m having a hard time finding it, and if someone could help me find it, I would really appriciate it.
July 19, 2016 at 10:19 am #6368
- This topic was modified 8 months ago by Timtech. Reason: Changed to a more appropriate title and moved to the support subforum. Typofix (similer -> similar)
I think it’s “SC_[53-05-00-04] (detailed user info)” on http://luni.info/packets/server/July 19, 2016 at 11:02 am #6369
Those seem to be the codes the commenter was talking about, but I have no idea how to change them. That’s why I was looking for the comment, it said how you could change it. I’m not good with this stuff, so it’s going to be difficult to change it. Thanks for finding it, tim.July 19, 2016 at 1:48 pm #6370
Well, here is Jon’s original comment. I think that after you decompress the bin and rename it back to the original, you can use a hex editor (like the HEX-Editor plugin for Notepad++) to edit the values according to the link I put in my first post.
For reference, here is the python script’s source code. All it is doing is decompressing the zlib compression. It’s meant for world_2a.bin, and you run it like
python ZLIBDec.py "path/to/file.bin". All credits go to Jon002.
import zlib import sys from glob import glob def zipstreams(filename): """Return all zip streams and their positions in file.""" with open(filename, 'rb') as fh: data = fh.read() i = 0 while i < len(data): try: zo = zlib.decompressobj() yield i, zo.decompress(data[i:]) i += len(data[i:]) - len(zo.unused_data) except zlib.error: i += 1 for filename in sys.argv: print(filename) for i, data in zipstreams(filename): print(i, len(data)) with open(filename + "-decompressed.bin", 'w') as expanded: expanded.write(data)
Jon’s original link to download the script: http://www.mediafire.com/view/vd9t3qfqg0pff0l/ZLIBDec.py
July 19, 2016 at 1:52 pm #6371
- This reply was modified 8 months ago by Timtech. Reason: changed the link
WHOA! Thanks Tim! So I can use the values and that script to edit the characters? Seems neat, so if you will excuse me, I need to figure out how to do this 🙂
IMPORTANT EDIT: When I click on the download link I get a 500 – INTERNAL SERVER ERROR page.
ALSO IMPORTANT EDIT: Found a download link VIA Jon002’s post 😀
LAST EDIT: Errrr, is this what i’m supposed to do? I followed Jon002’s instructions, but i’m not sure what to do know. As mentioned before, bad with computers.
July 19, 2016 at 4:39 pm #6378
- This reply was modified 8 months ago by Timtech. Reason: fixed the image
You need to download and install python in order to run the script. https://www.python.org/downloads/ Also, not sure why that link isn’t working. I’ll remove it for now.
After you run the script and get the world_2a-decompressed.bin, delete the original (or rename it to world_2a-original.bin). Then, rename world_2a-decompressed.bin to world_2a.bin, and open it with Notepad++’s HEX-Editor plugin, or any other HEX editor of your choice (but since you already have Notepad++, the plugin is probably easiest).
July 20, 2016 at 11:02 am #6387
- This reply was modified 8 months ago by Timtech.
Where would a hex editor plugin be? Is it preinstalled, or do i need to find one?July 20, 2016 at 4:06 pm #6390
It’d be easier to just setup 0.8… 😛
You must be logged in to reply to this topic.