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

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


faniloko

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

Добрый день всем !!Наивный вопрос что такое graph point? И сколько их ставить на террейн . . .скажем 70 на 70??

@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

@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'ы делаются совсем по-другому.

Добрый вечер всем !!Возник вопросец вот в чем, тема: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" решил, тут мысля идет о перенасыщении чего??Или я что то недопонял??Кто нибудь если сталкивались откликнитесь плизз.Заранее мерси :) !!

@aka_sektor, попробуй то, что я написал. Не настаиваю, просто говорю. Изменено пользователем stalkerok007

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

Разобрался с проблемой, что описал в этом посте: 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'ы делаются совсем по-другому.

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

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

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

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

 

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

ColR_iT

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

 

<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, СДК читает профили из файла config\gameplay\npc_profile. Если в нем непись прописан, то и в списке СДК он появится.

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

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

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

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

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

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

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

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

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

Войти

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

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

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