Jump to content
Korean Random
SkepticalFox

space.bin (CompiledSpace) - packer/unpacker

Recommended Posts

это будет довольно сложно...

Не-а.

На этой неделе сделаю наброски.

По сути - надо твой распаковщик на запаковщик поменять.

Таблицу секций только сделать и всего...

Edited by Pavel3333

Share this post


Link to post

Short link
Share on other sites

Не-а.

Ясное дело, что "Не-а."

Все ведь так просто, что уже второй год пошел, а ничего дельного не появилось...

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Я все еще его пишу. С перерывами. Надеюсь, ты помнишь, что я лишь джуниор?:)

Share this post


Link to post

Short link
Share on other sites

@Pavel3333, я вот думаю, что если распаковывать геометрию в JSON-файл, то его будет совсем не открыть.

Слишком много она весит... Наверное лучший вариант - под каждую секцию свой JSON-файл: BWAL.json, BWLC.json...

А геометрию можно вынести в бинарные файлы.

Тут еще и проблема с секциями CENT и UDOS уйдет, которые представляют собой пакованные xml-файлы.

Их можно распаковывать в CENT.xml и UDOS.xml. Паковать в bin будем с помощью bwxml. Хорошо бы из него pyd-библиотеку сделать...

Edited by SkepticalFox

Share this post


Link to post

Short link
Share on other sites

@SkepticalFox, ты только, пожалста, отпишись, когда поменяешь код распаковщика из того, что сейчас, в тот, который распаковывает данные в много отдельных json-файликов.

Share this post


Link to post

Short link
Share on other sites

 

 

Хорошо бы из него pyd-библиотеку сделать...
Ннада? 

Share this post


Link to post

Short link
Share on other sites
Хорошо бы из него pyd-библиотеку сделать...

его тогда придется переписывать на питонъ. а это очень долго и муторно. надо для начала запаковщик написать.

пишу пока.

Edited by Pavel3333

Share this post


Link to post

Short link
Share on other sites

Ннада?

Да)

SkepticalFox, ты только, пожалста, отпишись, когда поменяешь код распаковщика из того, что сейчас, в тот, который распаковывает данные в много отдельных json-файликов.

Да хоть сейчас это сделаю...
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

а я потихоньку правлю код секций из распаковочного в запаковочный. блин, долго это.

Share this post


Link to post

Short link
Share on other sites

угу.

знаешь, как сделаем?

давай все секции оставшиеся запишем так, что они возвращают заголовок, а данные - пустая строка.

Share this post


Link to post

Short link
Share on other sites

давай все секции оставшиеся запишем так, что они возвращают заголовок, а данные - пустая строка.

Да там не так и много секций осталось. Можно и доразбирать)

Share this post


Link to post

Short link
Share on other sites

Можно и доразбирать)

Не спорю! приступлю после переписывания распаковщика в запаковщик. а там можно дополнять :)

Не подскажешь, зачем нужен первый int после заголовка ('BWSG')? Он в распаковщике не используется.

Edited by Pavel3333

Share this post


Link to post

Short link
Share on other sites

Не подскажешь, где пользуется первый int после заголовка ('BWSG')? Он в распаковщике не используется.

Я бы больше переживал за упаковку информации о строках...

Вот там жесть со смещениями...

Share this post


Link to post

Short link
Share on other sites

сейчас будет!

у меня паковщик почти готов, сдам завтра.


Я бы больше переживал за упаковку информации о строках...
Вот там жесть со смещениями...

20 байт - одна секция. Смещение данных - 20 байт умножить на число секций. Если я правильно понял, о чём ты.

 

Если упаковать надо заголовок - просто header = bytes('BSGD', 'utf-8'). 

Edited by Pavel3333

Share this post


Link to post

Short link
Share on other sites

Если я правильно понял, о чём ты.

Не так ты меня понял.

Если упаковать надо заголовок - просто header = bytes('BSGD', 'utf-8').

Зачем усложнять?

Заголовки паковать через f.write() надо

Edited by SkepticalFox

Share this post


Link to post

Short link
Share on other sites

Да)

Под какой питон таргетимся? (версия, разрядность)

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...