Хотелось бы узнать основные принципы работы кастомного TLK.
Как, например, задается StrRef, если нумерация кастомного совпадает с оригинальным?
Lemegeton
Jan 11 2005, 09:27
Усем БАААЛЬШОЕ здарово!!! Или, как говорится, Hello, All! Вот и вышел Я из запоЯ!
И тебе, Vhall’rafein, лично и конкретно - здорово.
А работает кастомный ТЛК (далее - "этот ТЛК") примерно так:
Если у тебя в этом ТЛК строчка имеет индекс "0" то ссылаться на нее (в 2да, диалогах, и т.д...) надо как 16777216, если инедкс "1", то как 16777217 и т.д., добавляя каждый раз 16777216 к истинному индексу строки в этом ТЛК. Таким образом, избегаются "совпадения" с dialogs.tlk.
З.Ы. Если не знал, то строки в этом ТЛК не обязательно должны идти одна за другой. Но индекс ИМЕЕТ значение.
Привет, привет Lemegeton
Вроде бы понятно... только выхоит каждый раз нужно будет считать
ЗЫ нам нужно согласовать наши ТЛК. Ведь вместе над каждым индивидуально работаем? Давай в закрытый;)
Lemegeton
Jan 11 2005, 14:13
Да ну ладно, цифирь очень простая. 16 777 2 16 - Просто, как паренная репа. Уже в Закрытом.
При сливании ТЛК не возникает проблем? Можно спокойно это проделать без смены StrRef?
Lemegeton
Jan 11 2005, 15:57
Угу. Если при сливании ТЛК файлов в одну кучу, у них (сливаемых) не окажется одинаковых индексов.
А если у них окажутся одинаковые индексы, но они буду пустыми?
Lemegeton
Jan 11 2005, 16:21
Фуфло получится. Так получиться не должно. Индексы в ТЛК могут быть НЕПОСЛЕДОВАТЕЛЬНЫМИ. Допустим:
Мой ТЛК состоит из записей с индексами в диапазоне с 1000000 по 1999999
Твой ТЛК состоит из записей с индексами в диапазоне с 2000000 по 2999999
ТЛК Химерика состоит из записей с индексами в диапазоне с 3000000 по 4999999
При этом, в этих диапазонах МОГУТ быть пропущены строчки!
И при слиянии все будет ОК.
Для этого и надо диапазоны поделить
QUOTE (Lemegeton @ Jan 11 2005, 16:21) |
Мой ТЛК состоит из записей с индексами в диапазоне с 1000000 по 1999999 Твой ТЛК состоит из записей с индексами в диапазоне с 2000000 по 2999999 ТЛК Химерика состоит из записей с индексами в диапазоне с 3000000 по 4999999 |
На этом и порешили?
Lemegeton
Jan 11 2005, 17:03
Угу.
Только для ясности:
Lemegeton - 1000000 - 1999999
Vhall’rafein - 2000000 - 2999999
Chimeric - 3000000 - 3999999
Ммм... а что за параметр такой - Flags?
<small>
Добавлено в 17:34</small>
бррр... а как же все таки сделать напоследовательную нумерацию?
Lemegeton
Jan 11 2005, 18:00
Просто при создании записи в TLK указывай номер
Ты где это увидел параметр flags???
А ты что блокнот юзаешь? А насчет использвания TlkEdit'а ничего не знаешь?
Lemegeton
Jan 11 2005, 18:28
Нет, я юзаю DIALOGTLK от CEP'а. Нет там ни про какие флаги => нафиг они не нужны.
А как его подключать то?
В папку tlk положил, а в Custom Content не появляется
Lemegeton
Jan 11 2005, 20:52
Vhall’rafein:
Там же, где ты подключаешь хаки-паки чуть ниже есть выбор кастомного ТЛК.
Я так и делал. Он не отображается
Lemegeton
Jan 11 2005, 20:59
Кто - ОН и где ОН должен отобразиться???
Lemegeton
Jan 11 2005, 21:27
Ну, что я тебе могу сказать про Сахалин? На острове хорошая погода!
Проверяй:
1. Имя файла (имеет ли оно расширение .tlk)
2. Каталог, в который ты положил этот файл
3. Ключ HKEY_LOCAL_MACHINE\Software\BioWare\NWN\NeverWinter\Location должен быть истинным путем к игре.
пример-вопрос:
В моем оригинальном dialog.tlk 110640 строк (у всех так?

)
Если мне нужно указать 1 строчку из моего кастомного ТЛК, следует писать 110641 или 110642 (0 учитывается или нет?)
Nightfall
Jan 11 2005, 23:00
Похоже, надо сделать залепуху в моем редакторе для кастомных файликов,.. ну инфу хотя бы перевести...
Lemegeton
Jan 12 2005, 13:51
QUOTE (Vhall’rafein @ Jan 11 2005, 22:52) |
В моем оригинальном dialog.tlk 110640 строк (у всех так? )
|
У меня 110516 строчек в Dialogs.tlk.
QUOTE (Vhall’rafein @ Jan 11 2005, 22:52) |
пример-вопрос: Если мне нужно указать 1 строчку из моего кастомного ТЛК, следует писать 110641 или 110642 (0 учитывается или нет?) |
НЕТ, НЕ ВЕРНО!!!Объясняю еще раз.
Если в кастомном ТЛК у тебя индекс строки 0 (НОЛЬ), то ссылаться к нему надо как 16777216!!! ИМЕННО это число (могу объяснить, почему именно это число, но не думаю, что это интересно)!!!
Если в кастомном ТЛК у тебя индекс строки 1 (ОДИН), то ссылаться к нему надо как 1677721
7!!! То есть 16777216 плюс 1 (ОДИН)!!!
И так далее, добавляя конкретно число
16777216. Еще пример:
Например, индекс строки описания заклинания будет 10000 (ДЕСЯТЬ ТЫСЯЧ), тогда в файле SPELLS.2DA в колонке (столбце, ячейке...) NAME пишем 10000+16777216, то есть
16787216. Все!
Почему разбивать диапазоны на миллионы? Очень просто! Тогда мои значения будут начинаться на 17, твои на 18, а Химерика на 19! Если захочется добавить что нибудь из других каких-нибудь готовых вещей, там, в основном, в кастомных файлах используются значения ниже миллиона. Все просто!
З.Ы. Вылезай из танка!!!
Lemegeton Это юзаешь?
Lemegeton
Jan 12 2005, 17:27
Его, родимого.
З.Ы. [Задумчиво] Где бы мне нормальный файлообменник накрысятничать?
Nightfall
Jan 12 2005, 18:16
QUOTE (Lemegeton @ Jan 12 2005, 13:51) |
В моем оригинальном dialog.tlk 110640 строк (у всех так? |
Число строк в dialog.tlk зависит от версии игры: 110640 - в 1.64, 110540 - в 1.62 (моем от платинума 110518 - версия 1.59). Это стандартно, без наших с вами вмешательств.
QUOTE (Lemegeton @ Jan 12 2005, 17:27) |
Его, родимого. |
И этот редактор просит у меня знаечения StrRef не выше 149999

WTF?!!
Lemegeton
Jan 12 2005, 21:20
Ка-а-а-ак? Че за нафиг? Нифига! Проверь еще раз! У меня все ОК!
Версия 1.5 СЕР?
Если это действительно так, мне проще тебе его выслать. 380 Кб.
Кстати, разобрался с подключением ТЛК? Что было-то?
QUOTE(Lemegeton @ Jan 12 2005, 21:20)
Если это действительно так, мне проще тебе его выслать. 380 Кб.
Вышли пожалуйста, чтобы не мучаться

- @
QUOTE(Lemegeton @ Jan 12 2005, 21:20)
Кстати, разобрался с подключением ТЛК? Что было-то?
Реестр...
Lemegeton
Jan 13 2005, 10:33
QUOTE |
Вышли пожалуйста, чтобы не мучаться |
Высылаю. Только впредь вместо символа "@" пиши слово "собака". Спам-черви знаешь, какие хитрожопые пошли?
Гы-гы-гы. Так и знал. Ну не ошибся же ты именем файла, в конце-то концов.
Lemegeton, как сделать свой кастомный ТЛК, который бы переписывал строки стандартного? (несколько десятков). Не хочу переделывать стандарт..
что-то мне кажется, что раз вызов строки из ТЛК моего автоматически идет с расчетом того, сколько строк в стандартном ТЛК то ничего у меня не выйдет..
Но все же, может есть выход?
Lemegeton
Jan 13 2005, 13:52
QUOTE |
Lemegeton, как сделать свой кастомный ТЛК, который бы переписывал строки стандартного? (несколько десятков). Не хочу переделывать стандарт.. |
Проще всего, поменять ссылки в 2da'шках на новые из личного ТЛК, но сработает не везде. А "перекрыть" стандартные строки из личного можно только таким образом.
QUOTE |
что-то мне кажется, что раз вызов строки из ТЛК моего автоматически идет с расчетом того, сколько строк в стандартном ТЛК то ничего у меня не выйдет.. |
Нет. Вызов строки из личного ТЛК
НЕ идет автоматически с расчетом того, сколько строк в стандартном ТЛК!!! Он идет с расчетом
<номер_в_личном_ТЛК>+
16777216. Именно это число. И никакого другого. И количество строк в стандартном DIALOG.TLK здесь абсолютно не при чем. Абсолютно. Просто двадцать четвертый бит становится установленным в единицу, и движок автоматом берет его из личного ТЛК.
Аа...я думал, что просто в стандартном ТЛК 16777216 строк..буду знать.
Я не настроил кодировку, или TlkEditor действительно не поддерживает руский? О_о
Lemegeton
Jan 27 2005, 13:06
Умоляю, не надо пользоваться именами файлов типа f*king, s*x, adul*s и тому подобными. Мой пров намертво перекрывает мне такие ссылки. Я не вижу картинки.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.