Перейти к контенту

[SoC] Вопросы по SDK


faniloko

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

@arturhttp://stalkerin.gameru.net/wiki/index.php?title=Level.graph На этой странице описано.

Читай, пожалуйста, сталкерин, и используй Google, прежде, чем задавать вопросы. 

 

 

Ячейки ИИ-сетки необходимы для навигации NPC в онлайне, вершины глобального графа - для их оффлайного перемещения.
Каждая ячейка ИИ-сетки принадлежит определённому узлу глобального графа. Чем меньше расстояние от ячейки до родительской вершины графа, тем выше точность перемещения в оффлайне. При этом следуют понимать, что частая расстановка узлов глобального графа (graph_point в LevelEditor) приведёт к потере производительности, а редкая - к неприятным проблемам вроде "народ издалека бежит на работы в гулаге".
Соответственно, следует ставить дополнительный graph_point в месте скопления NPC, находящихся под логикой. 

Т.е. расставляй граф-поинты на местах скопления НПС, путях, дорогах, лагерях. Грубо говоря, в оффлайне неписи ходят по графам, как в онлайне по вей-поинтам.

 

 

Изменено пользователем stalkerok007
Ссылка на комментарий

Вот и задал я вопрос на форуме AMK Team, спасибо что откликнулись, вот какой вопросец гложет на данную минуту,  создал террейн, 70*70, но он видать большой, у меня 3 киллограмма оперативы, после наложения аи_сетки на террейн, выскакивает окно с жалобой на память типа: 

[error]Expression : fatal error
[error]Function : I:\xray-svn\xrCore\xrMemory_subst_borland.cpp
[error]File : I:\xray-svn\xrCore\xrMemory_subst_borland.cpp
[error]Line : 23
[error]Description : <no expression>
[error]Arguments : Out of memory. Memory request: 262144 K

Если добавить память хотя бы на 2 кг больше, то желательно переустановить винду, хотел узнать у всезнающей публики как спасти положение? И возможно ли это??Заранее благодарен!!

P.S.Кто владеет информацией, тот владеет миром :)

Ссылка на комментарий

70*70 чего ? метров, километров , здесь телепатов нет :wacko: , опиши ситуацию подробней, может быть что при генерации аи вылет по памяти если площадь на которой пытаешся сгенерировать аи сильно большая, делай кусками и потом объедени.

Ссылка на комментарий

Vadyan ну как бы, насчет километров ты загнул, если 70*70 км, то комп должен быть как в пентагоне :) ,70на70 метров конечно и террейн получается 4.900 км. в площади, вот и у меня сейчас дилема, работа 2 месяцев может вылететь в "трубу", и еще будь добр обьясни на пальцах как сделать сетку по кускам был бы оч благодарен, инфы крайне мало на эту тему. Заранее спасибо))

Ссылка на комментарий

Раздели карту статическим объектом,типо забора, делай с обоих сторон сетку, потом удали обьект и объедени аи.

Может можно как то иначе на одном тераине, незнаю.

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

Ссылка на комментарий

При сборке game.graph'а, с помощью 4gamegraph.bat проги aiwrapper из X-ray Game asset tools pack FINAL 2.0, возникла ошибка следующего вида:

* New phase started: Adding interconnection points 
Level - with id 2 has an INVALID connection point gp_connect_garbage_2, 
which references to graph point gp_connect_agroprom_1 on the level | with id 1
 
***STOP*** file 'P:\xrAI\xr_graph_merge.cpp', line 546. 
***Reason***: *** Assertion failed *** 
Expression: M != (*K).second->m_tVertexMap.end()
 

В общем есть 2 локации, garbage и agroprom.

 

Поставил level_changer с garbage на agroprom:

s_1371381407_9433952_e9e5d85b65.png

 

Поставил 2 graph_point'а.

В первом, точка старта ГГ при переходе с agroprom'а на garbage:

s_1371381407_6273017_2ff912d38f.png

 

Во втором, связь garbage'а с agroprom'ом:

s_1371381407_3781595_733dffc8f0.png

 

Поставил level_changer с agroprom на garbage:

s_1371381408_2309078_93ae592613.png

 

Поставил 2 graph_point'а.

В первом, точка старта ГГ при переходе с garbage'а на agroprom:

s_1371381408_1046003_2a78cc7a3d.png

 

Во втором, связь agroprom'а с garbage'ом:

s_1371381409_2309078_0fa08e7aca.png

 

К слову, делал в точности по видеоуроку:

http://www.youtube.com/watch?v=VKSxARhhIF4

 

Вопросы: что я не так сделал? Как это исправить?

 

Объяснения, которые нашёл:

1) http://stalker-portal.ru/forums.php?m=posts&p=1250998#1250998

находятся не на аи сетке или имеют не корректные настройки

P.S. У меня все выше перечисленные level_changer'ы и graph_point'ы находятся на AI-сетке. Некорректные настройки? Вряд ли. По крайней мере я делал как описывали в видеоуроке.

 

2) http://www.amk-team.ru/forum/index.php?showtopic=1560&page=33#entry427657

Неправильный коннекшн поинт jupiter_to_red_forest. Надо исправить...

P.S. Собственно, в чём неправильность - не написали.

 

3) http://gsc-game.com/russian/index.php?t=community&s=forums&s_game_type=xr&thm_page=10&thm_id=11316&sec_id=14

> M!=(*K).second->m_tVertexMap.end()

Похоже на несуществующий connection point в поставленном Вами graph_point'е.

P.S. Существует. Изменено пользователем aka_sektor

Discord-сервер modfaq.ru: https://discord.gg/9j42BXwB

Ссылка на комментарий

@aka_sektor, можешь опять не слушать и не верить - но я исправлял такую ошибку пересбором графа

aiwrapper.exe -g локация 

Обоих уровней. Т.е. по твоему логу - уровня с id =1 и с id =2 (game_levels.ltx). 

Ссылка на комментарий

@stalkerok007, нет. Ошибка не в этом.

Проблема в том, что видеоурок по которому я делал level_changer'ы, актуален только для X-Ray SDK 0.7. В X-Ray SDK 0.4 level_changer'ы делаются совсем по-другому.

Discord-сервер modfaq.ru: https://discord.gg/9j42BXwB

Ссылка на комментарий

Добрый вечер всем !!Возник вопросец вот в чем, тема:Spown Element, при спауне всякой живности типа (тушканов, собат и т.п.)ни с того ни с сего выпала ошибка :

[error]Expression : W==1
[error]Function : I:\xray-svn\xrCore\FS_internal.h
[error]File : I:\xray-svn\xrCore\FS_internal.h
[error]Line : 59
[error]Description : Can't write mem block to file. Disk maybe full.
[error]Arguments : No space left on device

С простыми локами вроде "Out memory" решил, тут мысля идет о перенасыщении чего??Или я что то недопонял??Кто нибудь если сталкивались откликнитесь плизз.Заранее мерси :) !!

Ссылка на комментарий

Я тут поглядел, порыскал, наподобие ошибки называют (коварными ошибками памяти),незнаю почему, на будущее может кому поможет ответ!!

Ссылка на комментарий

Разобрался с проблемой, что описал в этом посте: http://www.amk-team.ru/forum/index.php?showtopic=1560&page=138#entry781505

 

Во всём виновата моя невнимательность!

 

Когда прописывал новую локацию в game_levels.ltx, скопировал секцию, заменил имя локи, а вот её ID нет.

Чуть выше кода ошибки заметил, что пишет дубликат ID есть. Вот и додумал.

 

Забираю обратно свои слова:

Проблема в том, что видеоурок по которому я делал level_changer'ы, актуален только для X-Ray SDK 0.7. В X-Ray SDK 0.4 level_changer'ы делаются совсем по-другому.

Разницы нет. Пусть даже создатель видеоурока считает иначе.

Discord-сервер modfaq.ru: https://discord.gg/9j42BXwB

Ссылка на комментарий

Здравствуйте форумчане!Такой вопрос как я писал выше по AI-сетке, при достижении компиляции 100% вылетает лог о невозможности дальнейших работ в связи с нехваткой памяти(3гб), и далее по схеме система обратилась не по адресу бла, бла, бла, у меня к вам вопрос и просьба, кто знает как частями ложится AI-сетка, одиночными квадратиками замучаешся покрывать площадь в 4.9 км, хотя террейн сравнительно небольшой, всего то 70*70 метров, хотя свое железо не считаю отсталым, но логу ошибки знать лучше,хотя по природе AI-сетка память кушать не должна, кто нибудь может по этому вопросику помочь??Заранее пасибо!

Ссылка на комментарий

Всем привет! Создал профиль своего НПС, но когда в СДК открываю выбор НПС профиля-моего нет. В чем может быть причина?

P.S. Профиль на ошибки проверял и папки не перепутал.

 

Профиль покажи.

ColR_iT

Изменено пользователем ColR_iT
weas.gif
Ссылка на комментарий

 

<specific_character id="forest_robot" no_random = "1">
<name>forest_robot_name</name>
<icon>ui_npc_u_stalker_ki_antigas</icon>
<bio>esc_stalker_novice_bio</bio>

<class>esc_stalker_novice</class>
<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>
<visual>actors\killer\stalker_ki_antigas</visual>

<rank>330</rank>
<reputation>23</reputation>
<money min="100000" max="100000" infinitive="0"/>
<supplies>
[spawn] \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
</supplies>
<start_dialog>hello_dialog</start_dialog>
</specific_character>

 

 

Для того, чтобы твой НПС появился в СДК, нужно создавать для него спавн-секцию, например в файле config\creatures\spawn_sections.ltx по образу и подобию имеющихся там. Но самой важной строкой является $spawn.

ColR_iT

Изменено пользователем ColR_iT
weas.gif
Ссылка на комментарий

@weas, СДК читает профили из файла config\gameplay\npc_profile. Если в нем непись прописан, то и в списке СДК он появится.

Уважаемый - глупость говорите. СДК никогда не читал профили из этого файла, он нужен для корректного чтения, но его отсутствие ничем особым не обернётся. Очень легко проверить мои слова - удали все профиля из этого файла и запусти Level Editor - если профиль был до этого действа, то он там и останется.
ColR_iT

Изменено пользователем ColR_iT
Ссылка на комментарий

Чой-та глупость? И какой смысл в "корректном чтении"? Файл либо читается, либо - нет. Очень легко проверить - впишите в npc_profile любое название профиля, и увидите его в списке профилей СДК. Так же и с физическими объектами - мало иметь их в rawdate, надо, чтобы они присутствовали и в gamedate в формате object. Сие есть особенность спавна через СДК.

Изменено пользователем Preparator
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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