[CoP] Перенос и создание карт - Страница 19 - SDK и маппинг - AMK Team
Перейти к контенту

[CoP] Перенос и создание карт


Halford

Рекомендуемые сообщения

AK74,

Можно попробовать так:

Открыть в СДК Кордон ЧН. Убрать источник звука. Заново скомпилить локу на минимальных с учетом поправки и потом получившийся level.snd_static вставить в свою геймдату.

Еще есть прога Колмогора по звукам. Но удаляет ли она некоторые звуки, я не знаю. Не пользовался ей еще.

AK74, спасибо, но файла ggtool.pl в ACDC CoP тоже нет, его-то где взять? Изменено пользователем Знахарь

Привет Kostya V.

Спасибо, но как бы крамольно это не звучало, связываться с SDK, я бы не хотел. К своему стыду должен признать что я даже Photoshop-ом пользоваться не смог научиться - то ли слишком старый, то ли слишком тупой. :dash2:

Поэтому, я предпочел бы 2-ой вариант. Может кто поделится ссылкой?

 

2 Знахарь.

Вот ловите архив ~17М, вместе с дистрибутивом Perl http://rghost.ru/1536356, жить будет 2 недели.

Ставите Perl, ребут, после пользуетесь компилятором.

Удачи.

подправил petool. Вот новая версия http://www.sendspace.com/file/la0uq4

Теперь собирает корректный particles.xr для ЧН/ЗП

Для ЗП собирать следующей командой petool.exe -c particles.ltx -cop

Попробовал при помощи тутора от БАТЯСТАЛКЕР

прикрутить кордон от ЧН к ЗП

почему-то не создался файл level.ai10 ,который в level.ai нужно переименовать....

Попробовал тупо перенести level.ai из готовой геймдаты от уважаемого nuklia

Сразу получил "по мордасам " вылетом

FATAL ERROR

 

[error]Expression : cross_table().header().level_guid() == level_graph().header().guid()

[error]Function : CAI_Space::load

[error]File : D:\prog_repository\sources\trunk\xrGame\ai_space.cpp

[error]Line : 113

[error]Description : cross_table doesn't correspond to the AI-map

 

:negative:

упс... со старым(оригинальным,из ЧН) level.ai всё пошло по "старому" сценарию,как при прикрутке кордона от ТЧ

как и тогда добавил переименованный файл deffer_impl_flat.vs

Даже с партиклями(как из ТЧ) проблем не возникло.

единственное,что добавил это \textures\terrain(чтоб земля\асфальт нормально выглядели) и всё.

теперь аллспавном осталось заняться. :D

Изменено пользователем Larry76

Вообщем, быстро сделал, что то типа gui для petool от Kolmogor,а.

При компиляции есть выбор версии на выходе для ТЧ или ЧН или ЗП.

Вот скрин gui:

10132711005041122299846.jpg

А вот ссылки:

Скачать ParticleEditorTools.rar с OpenFile.ru

Скачать ParticleEditorTools.rar с Народ.ру

Изменено пользователем TREWKO

Kolmogor , прошу прощения за назойливость, может попробуете

оживить Сидорыча. Я подготовил геймдату со всеми (на мой взгляд)

необходимыми конфигами и скриптами. Модель спавнится на затоне

в нескольких метрах от старта актора в виде мешка с тряпками, доступен

диалог и окно торговли ( правда торговля не описана и при попытке

чтото купить или продать вылет), а вот на логику mob_trader никакой

реакции. Думаю, многие к моей просьбе присоединятся.

Архив 6 мб

http://www.sendspace.com/file/6zti44

Возможно не совсем в тот раздел...

Вобщем решил занятся переносом переделанного Янтаря из билда в ЗП.

И столкнулся с такой проблемой. Если просто через редактор бардака перевести уровень в формат СДК и в СДК сразу build сделать то он пройдёт успешно.

НО если добавить хоть 1 объект то сразу же при build ругается на invalid faces причём объект любой хоть стандартный хоть какой. Притом если сделать новый уровень и добавить туда этот объект и необходимый минимум для спауна то всё проходит нормально. Что за магия блин?

Зарание спасибо...

 

PS А если я например поставлю свою собственную модель воды на уровень то она нормально идёт.

Правда в ней кость есть и возможно компилятор его за динамич. объект считает.

 

PS А вот если скопировать предмет на уровне и вставить то опять ругается на инвалидов.

 

Локация: Янтарь 1935 из формата ЧН декомпилированый в формат СДК.

 

Изменено пользователем *Shoker*

Присоединяюсь к просьбе. Я спавнил сидора на кордоне - тоже самое. Причем видно этот мешок только тогда, когда в алл.спавне он обозначен как esc_m_trader.

Скрин:

PmLfl.jpg

Изменено пользователем KD87

sidorgiv.th.jpg

Вроде все нормально, только стула не хватает :)

 

nuklia, у тебя ошибка была в bind_monster.script в функции

function generic_object_binder:net_spawn(sobject)
...

    if self.object:clsid() == clsid.script_trader then
      smart_terrain.setup_gulag_and_logic_on_spawn( self.object, self.st, sobject, modules.stype_trader, self.loaded)
    else
    end -- не хватало этого енда

 

А вот собственно и сами файлы(вынес биндер Сидора и ему подобных в отдельный файл, переложил логику по правильному пути, ну и остальное по мелочи :) ):

http://www.sendspace.com/file/vwx1dw

Изменено пользователем Kolmogor

Ну что то вроде этого:

"non associated face"

и пишет число толи полигонов толи чего то ещё но оно всегда зависет от размера предмета и исчесляется тысячями, как будто весь предмет один большой кривой полигон.

Притом чистый уровень нормально билдит а на любом обджекте валится.

И ещё вопрос в догонку: сделал воду в 3д макс для локации но чтобы 3д макс её пережувал, добавил в неё кость, экспортнул в object и мимо AE сразу в LE добавил (материалы сразу в максе настроил). Можно ли так делать или надо сперва в СДК прогнать, и грозит ли наличие кости какими ли то вылетами, так как СДК похоже воспринимает её как динамический объект?

 

Сёдня поставил VMware и XP на него, СДК работает, ближе к вечеру попробую на нём, но знакомый на ХП делал у него таже фигня вроде вышла.

Строгое предупреждение от модератора Halford
:nono:

________________________________

Сейчас на форуме GSC подсказали что то о секторах.

 

Спасибо, всё прошло. :good:

Строгое предупреждение от модератора Halford
"Спасибо" отдельным постом не пишем.
Изменено пользователем Halford

*Shoker*,

Уже тысячу раз об этом говорилось. И даже совсем недавно.

Набери в поиске свою ошибку.

Никак на подключенных локациях не могу зщадать точки спавна монстров и нпэсов. И как на зп логику гулагам задавать?

Может быть немножко не в тему...

Недавно разобрался как устроены тайники в ЗП. Т.к. в сети статей на эту тему я не нашел, решил написать маленькую статью.

 

Очень просто.

Файлы: all.spawn, secret.ltx

Начнем-с! Допустим, у нас есть карта Болота и на ней нужно сделать тайник:

Открываем configs/misc/secret.ltx

Создаем инклюд на файл с описанием тайников на нашей локации:

#include "secret_marsh.ltx"

Далее допысываем в секции

  • нашу локу с приставкой list_:

[list]:list_zaton, list_pripyat, list_jupiter, list_marsh

Создаем сам файл с описанием тайников secret_marsh.ltx в папке misc.

В нем пишем:

[list_marsh]
mar_hiding_place_1

[mar_hiding_place_1]
vodka = 1, 1

Как вы уже поняли, в [list_marsh] приводится список всех тайников на карте, а затем расписывается каждый тайник.

vodka = 1, 1 - Это список предметов в тайнике, первая цифра обозначает количество, вторая, как мне кажется ни начто не влияет т.к. везде стоит 1.

Теперь all.spawn. Создаем две секции:

[213]
; cse_abstract properties
section_name = space_restrictor
name = mar_hiding_place_1
position = 588.25833447266, 3.165674, 407.9;координаты
direction = 0.00655899988487363,-0.242111995816231,0.0535049997270107 

; cse_alife_object properties
game_vertex_id = 1068; гейм-вертекс
distance = 0
level_vertex_id = 519643; лэвэл-вертекс
object_flags = 0xffffef3e
custom_data = <<END
[story_object]
story_id = mar_hiding_place_1; имя нашего тайника в secret_marsh.ltx

[secret]
cfg = misc\secret.ltx; сцылка на файл с тайниками
END

; cse_shape properties
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 1

; cse_alife_space_restrictor properties
restrictor_type = 3

[214]
; cse_abstract properties
section_name = vodka
name = marsh_hiding_vodka
position = 588.25833447266, 3.165674, 407.9
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 1068
distance = 0
level_vertex_id = 519643
object_flags = 0xffffff0f
custom_data = <<END
[secret]
name = mar_hiding_place_1; сцылка на секцию в secret_marsh.ltx
END

; cse_visual properties
visual_name = dynamics\devices\dev_vodka\dev_vodka

; cse_alife_item properties
condition = 1
upgrades =

Как я понял, первая секция определяет координаты самого тайника, т.е. куда ставить значок на карте.

Вторая и последующие секции описывают каждый предмет в тайнике. У всех предметов относящихся к одному тайнику в

[secret], name должен быть одинаковый.

 

Все, собираем алл.спавн, кидаем его на место, и получаем бутылку водки за трансформаторной будкой в Северном хуторе. При ее подборе, как и положено, появится сообщение, а в нашу статистику пойдет еще один найденый тайник

 

Изменено пользователем Знахарь
raf100, в конфиге смарт-террейна задаешь респавн сквадов - они появятся в смарте. Можно задать спавн поинт в конфиге отряда (предварительно прописав саму точку в путях), вместе с парметром таргет смарт. А ссылку на файл с логикой подключай через секцию [exclusive] в конфиге смарта. Собственно, не пойму проблемы. Делай по образцу файлов ЗП, там все понятно.

Всем доброго времени.

Подлючил к ЗП ЧАЭС 1 из ТЧ, столкнулся с такой проблемой : тени(от зданий(может ешё от чего нибудь)) ложатся не правильно (их видно с солнечной стороны)

Как это можно решить?

Извеняюсь если уже обсуждалось

8push5,

значит надо каналы местами поменять и всё?

Просто я сделал :

lmap*_2.dds переделывать сложнее - задача сделать менее прозрачным

пересохраняем как dds в формате R5G6B5, прозрачность исчезнет совсем

открываем снова и меняем прозрачность с 255 до 30

затем снижаем контраст на 15 единиц

сохраняем в формате dxt5 без мипмапов

вот так
Горчаков Антон, это не правильный метод, от сюда и косяки. Сделай так как писал я и посмотри, если вдруг косяк останется приложи скрин будем смотреть.

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...