Форум Magic Team

Переводы, переводы, переводы... => Ромхакинг и перевод => Тема начата: lupus от 09 Января 2011, 23:35:29

Название: Может ли круптар такое?...
Отправлено: lupus от 09 Января 2011, 23:35:29
Привет всем, с прошедшими праздниками :)
Суть в чём:
Текст хранится в одном файле. Кодировка двухбайтовая. Сначала думал, что это юникод, но как оказалось на самом деле текст в ASCII, просто символы отделяются друг от друга нулевым байтом.
В конце каждой строки идут 4 нулевых байта.
Поинтеры хранятся в отдельном файле в таком формате:
первые 2 байты - служебные, дажее подряд идут поинтеры по 2 байта.
В конце идут 2 байта указывающие на конец файла + ещё один служебный байт.
Реально ли создать такой проект в круптаре?
Если да, то подскажите плиз, как...
Во вложении пример файла с текстом и поинтерами к нему.
Заранее спасибо.
Название: Может ли круптар такое?...
Отправлено: nikita600 от 09 Января 2011, 23:56:15
А может утилитку написать?  :)
Название: Может ли круптар такое?...
Отправлено: Джинни от 10 Января 2011, 12:10:49
Нет, из отдельного файла пойнтеры подгружать нельзя, но можно написать плагин, который будет загружать текст, используя эти файлы.
Но обычно для таких файлов пишут простые конверторы в txt.
Название: Может ли круптар такое?...
Отправлено: lupus от 10 Января 2011, 21:32:40
В том-то и проблема, что я не программер. Формат разобрал, а вот софтину написать не смогу :(
Кстати в первоначальном описании допустил ошибку. Понял это сегодня стоя в пробке.
Правильнее будет так:
Поинтеры хранятся в отдельном файле в таком формате:
первые 2 байта - служебные, далее подряд идут поинтеры по 2 байта.
последний поинтер указывает на конец текстового файла.
Значения поинтеров в обратном порядке, т.е. поинтер, который указывает на адрес "0x000A" будет выглядеть как "0A00".
Соответственно никакого служебного байта в конце нет - это мой косяк.
Название: Может ли круптар такое?...
Отправлено: TrickZter от 10 Января 2011, 21:57:09
Значения поинтеров в обратном порядке, т.е. поинтер, который указывает на адрес "0x000A" будет выглядеть как "0A00".
Вообще-то это обычный порядок :) Байты записываются слева направо от младшего к старшему.
Название: Может ли круптар такое?...
Отправлено: nikita600 от 11 Января 2011, 00:13:55
На самом деле, первые два байта - это к-во указателей.
Ну а во-вторых, если потерпишь пару деньков, то софтину я тебе напишу.  :)
Название: Может ли круптар такое?...
Отправлено: lupus от 11 Января 2011, 07:43:33
Ок, буду ждать, сейчас как раз начальство приезжает, так что не до перевода будет.
Если можно, то естественно чтобы софтина могла с таблицей работать, а символы, которых вдруг не оказалось в таблице выводились бы в виде: <хекс код>
заранее спасибо.
Название: Может ли круптар такое?...
Отправлено: Джинни от 11 Января 2011, 08:16:19
Значения поинтеров в обратном порядке, т.е. поинтер, который указывает на адрес "0x000A" будет выглядеть как "0A00".
Это не обратный порядок, а обычное расположение байт в значении.
Название: Может ли круптар такое?...
Отправлено: lupus от 11 Января 2011, 20:44:47
ну вы меня поняли  ;)
Название: Может ли круптар такое?...
Отправлено: lupus от 14 Января 2011, 19:42:13
nikita600, ещё не занимался софтинкой?
Название: Может ли круптар такое?...
Отправлено: nikita600 от 16 Января 2011, 03:17:41
Никита уже написал её, осталось добавить поддержку таблиц и готово :)
Кстати, а почему ты решил перевести игрушку N.O.V.A. ? Неужели она так хороша? :)
Название: Может ли круптар такое?...
Отправлено: lupus от 16 Января 2011, 23:20:10
ХЗ, понравилась мне, чем-то напомнила Coded Arms.
Сейчас, когда есть время прохожу на харде и получаю медальки.
Название: Может ли круптар такое?...
Отправлено: nikita600 от 16 Января 2011, 23:59:10
В общем постараюсь сегодня добить уже :)
Название: Может ли круптар такое?...
Отправлено: lupus от 17 Января 2011, 09:39:42
Спасибо, ждёмс ;)
Название: Может ли круптар такое?...
Отправлено: nikita600 от 26 Января 2011, 00:47:09
А вот и собственно доведённая до ума программка.
Ну почти...  :)