Новости:

01.01.2017: Релиз испанской версии Naruto - Ninja Council (GBA)
02.12.2016: Добавлена документация по Kruptar 7
09.10.2015: Обновление перевода игры Battletoads (NES) [версия 1.3]
22.01.2015: Kruptar Open Source
18.10.2014: Релиз обновлённой русской версии Castlevania - Dawn of Sorrow (GBA) от Owls Group
01.05.2014: Релиз русской версии Taiyou no Yuusha Firebird (NES)
24.06.2012: Добавлена доработанная документация и инструкция
26.05.2012: Обновление ORITON [версия 2.050]
11.05.2012: Обновление ORITON [версия 2.048]
11.03.2012: Обновление Kruptar 7 [версия 7.1.1.17]
29.01.2012: Обновление LZ77Restructor 2 [версия 1.02]
01.01.2012: Релиз русской версии Drill Dozer (GBA)

Подробнее на страничке новостей.
Ознакомьтесь с правилами нашего форума.

Главное меню

Может ли круптар такое?...

Автор lupus, 09 января 2011, 23:35:29

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

lupus

Привет всем, с прошедшими праздниками :)
Суть в чём:
Текст хранится в одном файле. Кодировка двухбайтовая. Сначала думал, что это юникод, но как оказалось на самом деле текст в ASCII, просто символы отделяются друг от друга нулевым байтом.
В конце каждой строки идут 4 нулевых байта.
Поинтеры хранятся в отдельном файле в таком формате:
первые 2 байты - служебные, дажее подряд идут поинтеры по 2 байта.
В конце идут 2 байта указывающие на конец файла + ещё один служебный байт.
Реально ли создать такой проект в круптаре?
Если да, то подскажите плиз, как...
Во вложении пример файла с текстом и поинтерами к нему.
Заранее спасибо.

nikita600

А может утилитку написать?  :)

Джинни

Нет, из отдельного файла пойнтеры подгружать нельзя, но можно написать плагин, который будет загружать текст, используя эти файлы.
Но обычно для таких файлов пишут простые конверторы в txt.

lupus

В том-то и проблема, что я не программер. Формат разобрал, а вот софтину написать не смогу :(
Кстати в первоначальном описании допустил ошибку. Понял это сегодня стоя в пробке.
Правильнее будет так:
Поинтеры хранятся в отдельном файле в таком формате:
первые 2 байта - служебные, далее подряд идут поинтеры по 2 байта.
последний поинтер указывает на конец текстового файла.
Значения поинтеров в обратном порядке, т.е. поинтер, который указывает на адрес "0x000A" будет выглядеть как "0A00".
Соответственно никакого служебного байта в конце нет - это мой косяк.

TrickZter

Цитата: lupus от 10 января 2011, 23:32:40Значения поинтеров в обратном порядке, т.е. поинтер, который указывает на адрес "0x000A" будет выглядеть как "0A00".
Вообще-то это обычный порядок :) Байты записываются слева направо от младшего к старшему.

nikita600

На самом деле, первые два байта - это к-во указателей.
Ну а во-вторых, если потерпишь пару деньков, то софтину я тебе напишу.  :)

lupus

Ок, буду ждать, сейчас как раз начальство приезжает, так что не до перевода будет.
Если можно, то естественно чтобы софтина могла с таблицей работать, а символы, которых вдруг не оказалось в таблице выводились бы в виде: <хекс код>
заранее спасибо.

Джинни

Цитата: lupus от 11 января 2011, 04:32:40Значения поинтеров в обратном порядке, т.е. поинтер, который указывает на адрес "0x000A" будет выглядеть как "0A00".
Это не обратный порядок, а обычное расположение байт в значении.

lupus


lupus

nikita600, ещё не занимался софтинкой?

nikita600

Никита уже написал её, осталось добавить поддержку таблиц и готово :)
Кстати, а почему ты решил перевести игрушку N.O.V.A. ? Неужели она так хороша? :)

lupus

ХЗ, понравилась мне, чем-то напомнила Coded Arms.
Сейчас, когда есть время прохожу на харде и получаю медальки.

nikita600

В общем постараюсь сегодня добить уже :)

lupus


nikita600

А вот и собственно доведённая до ума программка.
Ну почти...  :)