Перейти к содержанию

bloleg

Стажёры
  • Постов

    5
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные bloleg

  1. Копался тут в ресурсах игры, наткнулся на такой текст: http://yun.complife....scell/bugs.txt Интересно что это - какая-то пасхалка? Можно ли увидеть сей текст в игре и как?)

    Я уже давно решил этот баг, заменив MAX_NATIONS на число 5, но вот копаясь в ресурсах игры нашёл такой текстовик:

    Составлено Warship, 02.08.09

    Откопировл примеры, что выкладывал на форум, сделал комментарии

    В скриптах игры довольно странная работа с массивами (тк недоделано)

    Должно, а не работает ©

    Ниже примеры правильных и неправильных обьявлений массивов, что работает, а что нет.

    =====

    Нерабочий вариант №1

    Глобальное объявление массива, элементы которого прописаны по #define - не работает!

    Массив компилится без ошибок, но не инитится - все элементы при таком объявлении == 0

    Пример:

    int iSomeArray[3] = { GOOD_FOOD, GOOD_WEAPON, GOOD_MAHOGANY };

    void SomeFunction()

    {

    ...

    }

    =====

    Нераьочий вариант №2

    Локальное объявление массива в функции, с присвоением значений его элементам.

    Массив компилится с ошибками, при выполнении - ошибки.

    Пример:

    void SomeFunction()

    {

    int someArray[3] = { 0, 5, 10 };

    }

    =====

    Рабочий вариант №1

    Глобальное объьявление массива, с присваиванием значений элементам.

    Локально в функции не работает (пример выше), а глобально - работает!

    Пример:

    int iSomeArray[3] = { 0, 5, 10 };

    void SomeFunction()

    {

    ...

    }

    =====

    Рабочий вариант №2

    Объявление массива без начального присваивания значений его элементам.

    Значения присваиваются не сразу в объявлении, а ниже.

    Работает и локально в функции и глобально.

    Пример:

    void SomeFunction()

    {

    int someArray[3];

    someArray[0] = 0;

    someArray[1] = 5;

    someArray[2] = 10;

    }

    =====

    Нерабочий вариант №3

    Глобальное объявление массива без начального присваивания значений элементам.

    Но ниже присваиваются значения, прописанные по #define - неработает!

    Пример:

    int someArray[3];

    someArray[0] = GOOD_TOBACCO;

    someArray[1] = GOOD_LEATHER;

    someArray[2] = GOOD_PAPRIKA;

    void SomeFunction()

    {

    ...

    }

    =====

    Рабочий вариант №3

    Локальное объявление массива, без присвоения начальных значений.

    Глобально неработает (см. пример выше), а локально - работает!

    Пример:

    void SomeFunction()

    {

    int someArray[3];

    someArray[0] = GOOD_TOBACCO;

    someArray[1] = GOOD_LEATHER;

    someArray[2] = GOOD_PAPRIKA;

    }

    Если это диалог то надо искать в PROGRAM\dialogs\russian <имя вайла может быть любым> и смотреть что вызывает функция void ProcessDialogEvent() или void ProcessDialogXXX(). Исщем case "First time":

    dialog.text = "ДИАЛОГ НПС";

    link.l1 = "ТЕКСТ";

    link.l1.go = "dialog1";

    link.l2 = "";

    link.l2.go = "dialog2";

    break;

    Так как файлы закрыты достаь их я не смог.

  2. Не совсем, вашим патчем это сделать нереально т.к. алгоритм игры такой что в сейв файл прописывается не только характеристики персанажа, предметы, и.т. д но и пути к файлам скрипта (анализировал байт-код при загрузке новой игры создается seadogs1.b, а при загрузке старой (до патча) seadogs.b). Сейчас возникла мысля попробовать активировать MOD_BETTATESTMODE уже непосредственно с сейф файле (долгий путь сравнения патченого сейва с непоченным ;) ). А если не секрет чем выдергивать файлы во время загрузки(до преобразования в байт-код )?

  3. Чтобы что? Чтобы читы заработали или патч применить? Читы будут все работать, кроме супер-пистолета и... вроде остальные все будут работать, не помню.. хотя не факт, надо проеврять... вроде бы была проблема с вызовом консоли по F11 - пока не начал новую игру F11 не работала. Если у вас так, тогда я не знаю как выкрутиться( Разве что artmoney всё ломать, но это опасно, возможны различные глюки ака здоровье = 1

    Да, я по то, чтобы работало F11 не начиная новой игры. Поставил Ваш патч на ККС 1.1.1, поэкспериментировал с другими debugwindow командами от ГПК, и начало новой игры меня совсем не радует. Поэтому хотел спросить, как происходит вызов функции(открытия меню) при нажатии на F11? Может проблема в этом и достаточна прописать в файле “options” или debuger.ini или еще где нибудь?

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.