1. Проблемы при создании нового дерева объектов: - не раскодированы некоторые данные XBinModifier, XChildSelector, XBone, XOglTextureMap - проблема универсальности формата (структура данных WF,W3D,W4,WUM отличается) - сложность создания с нуля контейнеров, т.к. не известны назначение не раскодированных данных. - не возможность сохранить придаточные данные(не известные и не имеющие аналогов) во время экспорта от 3DSMAX.
2. Проблемы при копирования данных в старое дерево: - XBone имеет слишком много линков и очень сложно организовать правильную структуру дерева. - сложность переноса упрощенной структуры туда и обратно - наличие клонов в ветвях дерева (ссылок на один и тот же контейнер, пример один материал для разных объектов) - очень сложный процесс конвертации данных между такими структурами как: TContainer -> TMesh -> Xom3D ->MaxModel, и обратный перенос.
3. Проблемы в импорте в 3DSMAX: - проблема с ориентацией координат (XYZ, в игре ось Y высота, а в 3DSMAX - ось Z ) , необходимость конвертации матрицы. - отсутствие аналога Joint костей (кости редактора Maya) - скудные знания в MaxScripts - проблема получения обратной матрицы костей у модификатора Skin - отсутствие аналога XChildSelector (для включения и выключения объектов при анимации) - проблема с нормалями - проблема с параметрами OpenGL для материала
Для чего нужен Xom3D? Для того чтобы можно было менять модели с костями, т.к. формат 3DS не поддерживает кости.
Идеи как вставить свою модель со скелетом в игру: - использовать 3DSMAX и экспорт в Xom3D - найти другой формат с поддержкой костей и адаптировать его - написать свой редактор костей...
P.S. Как видно из предварительного анализа - это адски сложно выполнимая задача!!!
Создал Экспорт в Xom выделенной ветви, осталось создать импорт и тогда можно будет импортировать любой кусочек или модель в нужный xom. (и я смогу импортировать небеса!!! )
Что уже готово: Export Cntr to Xom Import Cntr from Xom Delete Cntr HexEditor
Import to .xom !!!
HexEditor
To do: Import Xom3D (есть некоторые проблемы) Convert IndexSet to W3D/W4 (для WF моделей) MatrixEdit Fill XColorSet (а то модели черные иногда) Add Anim (для GraphSet)
Ух ты год прошел уже =) . Вот я и добрался до редактора, потому как он мне стал нужен, проект WUM карты для W3D потребовал некоторых функций, теперь можно загружать эммитеры в виде 3D объектов прямо в редактор карт.
P.S. на данном этапе пытаюсь понять как же эти ребята из Team17 вычисляли угол для эммитеров... W4 и WUM работают превосходно, но вот W3D имеют свою уникальную поворотную систему
Я фигею с этих Team17!!! Нашел я зависимость положения эммитеров W3D на карте! Сначала поворачивается эммитер, а потом он поворачивается на угол его предка... А не наоборот как это в W4. И позиция его положения определяется координатами эммитера относительно уже повернутого предка... что ну никак не поддается логике... Чтобы правильно рассчитать поворот в таком случае, нужно вернуть угол в начальное состояние, а потом произвести двойной поворот:
Есть такая старенькая игрушка от Team17, которую все почему-то считают провальной, да и уже давно ушло ее время, но у меня только сейчас дошли до нее руки.
Что же на это повлияло? 1. Tunngle сеть, через которую очень удобно играть с друзьями в игры, которые уже не поддерживаются или глючат в GameSpy. 2. XomView 2.9 стал настолько хорошо что позволяет редактировать контейнеры на уровне hex и сохранять изменения. 3. WFLauncher.exe, который я написал для запуска игры на новых широкоформатных мониторах, о нем кстати я отписался тут http://www.wsgf.org/dr/worms-forts-under-siege/en
4. Торрент с игрой для PS2, в котором все скрипты в lua формате.
Итак, что же уже достигнуто? 1. найдено место хранения списка карт и уровней
Код
\data\frontend\Local.xom
2. раскодирована защита lub файлов после компиляции, написал программку lubcode.exe для кодирования скомпилированых файлов, чтобы игра их воспринимала. 3. опытным путем добавлено две карты в режим Мультиплеера из DM.
Одно только не понятно, почему когда играю по сети, шапки всех червей сбрасываются... никаких lua функций я не нашел... И еще, на картах WF так же есть spawn точки, в которых появляются звездочки, здания или черви, так вот для карт из DM нужно размечать вручную позиции игроков, но тем не менее, играть можно.
Если тут найдутся любители этой игры, можно будет пообщаться =)
Я уже научился делать офигенные вещи в этом WF: 1. XomView превратился в редактор карт для WF!!! 2. Научился создавать позиции для размещения зданий. 3. Теперь можно играть на картах 4-мя командами 4. Научился управлять телепортами, что позволяет осваивать новые местности.
Теперь можно полноценно редактировать карты. Редактор позиций готов!
Увы в игру не возможно добавить карту с чужим именем, имена должны соответствовать записанному в exe.
Как идет загрузка карты: 1. в Local.xom игра выбирает скрипт для карты 2. в sctipts/Multi.lub игра считывает путь к карте 3. Затем загружается XCollisionGeometry, по которой черви могут ползать. 4. Затем она загружает XFortsExportedData, тут она получает информацию о Теме для игры и о Небе, так же о зданиях и местах для их постройки. 5. Ну и потом уже грузится 3DModel из XInteriorNode
Первый наш совместный Мод (AlexBond, GX, Woitek) для WF.
Особенности: 1. Добавляет 4 карты в мультиплеер, с телепортами и интересными позициями. 2. Увеличивает время игры при выборе нулевого времени, до 120 минут. 3. На 4-й карте Tools for Fools (там где корабли) игра с нейтральными зданиями, любой может стрелять с любого дома... (странный режим, но забавный)
Вормус, теоретически это возможно, самая большая сложность это создать XCollisionGeometry, и преобразовать модель в Strip полигоны... Ну а так все реально, было бы желание и руки умелые. Но у меня нет пока желания создавать новые карты, Team17 и так много карт хороших сделала, но их потенциал не раскрыт, вот я и буду раскрывать его.