Перейти к публикации
Планета Deus Ex

MVV

Invisible Hand
  • Публикации

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

  • Посещение

Сообщения, опубликованные пользователем MVV

  1. Реально круто! Музыка, речь, эффекты очень гармонично вписываются в ролик. Смит даже внешне чем-то похож на Саймонса... Даже звук нехватки кислорода у Смита в момент тычка в шею в тему:)

    Некоторые реплики военных я даже не замечал в игре, и они тут уместны.

  2. Забавное прохождение, пол-игры невидимым трупом пробегал, я поначалу и не понял, зачем он в стену ракету пускал:) и две ламки там, где одна не позволяет пройти сквозь дверь - тоже интересно. Не понял я только, чего он в опциях накликивал, что потом так высоко прыгал...

  3. если создать этот актор в игре, то он работает, сообщения в лог выводятся:

    Это уже что-то.

    если поместить этот актор на карту и запустить её, то происходит такой вылет:

    Похоже, при таком сценарии использования некорректно вызывается какая-то функция, которая не вызывается при динамическом создании. Надо как-то пытаться определить место падения.

    Еще вариант EngineClasses.h: https://yadi.sk/d/acA0CG2V3S6Kvs

    Несколько пакетов заголовочных файлов, на которые я успел посмотреть, так сильно отличаются, что боюсь, этот файл отдельно от его SDK сложно будет использовать. Сравнил этот и тот, что у меня есть, оба несовершенны, и даже в перечислениях некоторые значения в них имеют одинаковые имена, но разные значения (например, константа IK_JoyX равна 240 в этом и 224 в предыдущем)...
  4. Сверил виртуальные функции в Engine.dll и EngineClasses.h, исправил сигнатуру проблемной функции SetVolumes2 (у неё даже имя оказалось иное) - и всё собралось:

    virtual void SetVolumes(TArray<AVolume *> const &)
    Насколько я понял, при вызове этого тестового класса где-то в логе должны появляться записи (они выводятся в GLog). Попробуй подключить библиотеку из папки Release отсюда, если заработает, дальше уже будет проще.
  5. Выяснил для себя, что SDK для UT2004 для сборки нативных дополнений поставлялся только обладателям лицензии (и найти утекший с ходу не удалось, так что, возможно, исходники другой игры на UE 2.5 могут помочь). Среди выложенных пакетов есть как похожие/одинаковые файлы, так и совершенно разные (и непонятно, какой из них более правильный). Два последних примера собираются, но они не используют иерархию классов AActor, от которой наследуется семпл-класс ASampleClass.

     

    Из 25 неразрешённых зависимостей почти все удалось разрешить исправлением их сигнатур в заголовочных файлах (где const недоставало, где void* вместо указателя на конкретный класс, где вообще параметра не хватало), однако одну функцию в принципе не смог найти в либах Core.lib и Engine.lib (и библиотеках старенького UT99, в которых есть множество других искомых функций), кроме того, есть сомнения насчёт того, как оно будет работать, если где-то в списке объявлений виртуальных функций произойдёт сдвиг, т.к. их индексы в таблице изменятся... Ощущение, что SDK нужен для конкретной версии, хотя, возможно, всё не так строго, если эти места не изменились.

     

    Функция, которую я не нашел (последняя ошибка линковки, из-за которой семпл не собирается, причем в либах нет ни SetVolumes, ни SetVolumes2):

    public: virtual void __thiscall AActor::SetVolumes2(class TArray<void *> const &)
    Выложил сюда то, что получилось.

     

    Выложи, пожалуйста, свои Core.dll и Engine.dll, посмотрю, есть ли там эта функция, и вообще на структуру таблицы виртуальных функций класса AActor.

  6. Не собирается же, проблема с LIB-файлами. А работает ли, сам проверить всё равно не смогу.

     

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

  7. Насколько я понял, методы такого класса будет видно в таблице экспорта модуля, поэтому переименовывать уже просто так нельзя.

     

    Скомпилировалось, но куча ошибок линковки. Ощущение, что H-файлы (в папках Inc) и LIB-файлы (Core.lib, Engine.lib) неконсистентны.

  8. Удалось собрать второй. С первым тоже чуть продвинулся - в другой подпапке нашлись более-менее нормальные подключаемые файлы. Но теперь не хватает файла SampleNativePackageClasses.h, который отражает класс из скрипта.

  9. Ага, нативный класс, и даже шаблон заголовочного файла генерится - удобно.

    Однако заголовочные файлы в папке Engine весьма странные... какой-то мусор в начале и бред в середине Engine.h, в остальных файлах местами тоже кусков не хватает, куча объявлений методов классов вне классов...

  10. Обычно, те двери и контейнеры, которые можно сломать, я ломаю, а не трачу отмычки (даже не гранатами, а ящиком ТНТ).

    Не знаю, как в Реборне, но в оригинале весь лут оставался целым.

    Ящики TNT (бросаю - и за угол), ядреные бочки (если мускулы прокачаны), ракеты (несколько десятков за всю игру при лимите в 20 в инвентаре), гранаты (десятка 2-3 наверное за всю игру при лимите в 10), снайперка (после прокачки до мастера), NPC (в штабе UNATCO первую дверь в комнату с наноключом мне всегда любезно открывает солдат, окруженный кадками с цветами) - возможностей открыть двери без отмычек в оригинале хватало!

     

    Да, через UnrealScript.

     

    Хотя в идеале конечно хотелось бы переместить некоторые функции в C++, ту-же систему флагов, добавить расширенный Play/Stop sound и некоторые преобразования, которые сложно сделать на UnrealScript. Но для начала нужно просто собрать тестовый пример и проверить как всё это работает.

    Примеры есть? Интересно вообще, как это всё из скрипта будет вызываться...
  11. Для создания системы сохранений нужен программист C++. Все что можно сделать на UnrealScript я сделаю, по мере своих возможностей. Headers и LIB файлы для UT2004 у меня есть. Мне нужен лишь файловый менеджер и удаление части информации из save-файлов (Unreal Package).

    Т.е. нужно через подключаемый модуль на C++ дергать функции доступа к файловой системе? Поиск, чтение, запись файлов? Или что-то ещё?

  12. Доктор Гарт Уэбб (Garth Webb), главный изобретатель и создатель бионической бинзы, говорит, что единственным ее недостатком будет только ее отсутствие, так как она будет давать огромные преимущества своему обладателю.

     

    У инновационного устройства уже есть цена: 3200 долларов за одну линзу, не считая стоимости операции.

    Забавно, что космическую цену они не считают недостатком...
  13. Не знаю, как игра, но движок печальный просто, на моей ATI HD 4850 игра стабильно падала с Victoria error, я как-то несколько дней пытался её запустить, так и не удалось... На старом компе с GeForce MX 440 она не запускалась, т.к. требовала пиксельные шейдеры, а через хаки запускалась, но ничего не было видно. В общем, движок игры упорно настаивает на том, что мне в неё играть не надо:)

  14. Вот только подойдет ли ИИ для динамической борьбы с кучей патронов, со стрейфами, бегом и упреждающим наведением оружия ещё до выбегания из-за угла для Деуса, где надо спокойно ходить, реагировать на тревогу, экономить патроны?..

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