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

[SoC] Ковыряемся в файлах


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

...как заспавнить мутанта через скрипт? А то человека получается а мутанта нет...

Для начала хотелось бы знать - что именно не получается? Что выдает лог? Что Вы делали? Нужна вся информация. Иначе Ваш вопрос просто проигнорируют.

Ссылка на комментарий
Gun12, я пробовал заспавнить зомбей в лагере новичков по уроку, который есть на официальном мод портале-родь как всё работает, вылетов нет но и зомбей тоже нет...что делать?

Разработка Andrew's Pack Mod V0.5..

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

Виталий Зверь, вот ссылка: http://ifolder.ru/13754295 посмотрите пожалуйста что там не правильно

 

Товарищи кто может помогите посмотрите мои файлы-пытался заспавнить зомбей в лагере новичков-они не появляются! ссылка выше

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

Разработка Andrew's Pack Mod V0.5..

Ссылка на комментарий
Arguments : LUA error: d:\games\s.t.a.l.k.e.r\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)[/code]

 

Вообще не пойму причем здесь _g.script

_g.script содержит много общих функций, на которые ссылаются из других файлов. Примерно в районе 20-й строки должна быть функция вывода в лог. Видимо она у тебя где-то вызывается и её передаются неправильные аргументы. Хоть бы привёл кусок своего _g.script, а то гадай, что у тебя там в 20-й строке.

 

Товарищи кто может помогите посмотрите мои файлы-пытался заспавнить зомбей в лагере новичков-они не появляются! ссылка выше

Как минимум, неправильно задаются координаты спавна. Для спавна надо указывать координаты и соответствующие этим координатам gvid и lvid. Облёт камерой тебе в этом не поможет. Надо побегать самому и в точках спавна снять эти параметры.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий
malandrinus, а куда вписывать левел вертекс и гейм вертекс? в уроке про них ничего не сказаною. А координаты я менял-не помогает Изменено пользователем andrewrap

Разработка Andrew's Pack Mod V0.5..

Ссылка на комментарий
а куда вписывать левел вертекс и гейм вертекс? в уроке про них ничего не сказано

Какую статью ты имеешь в виду? Об этом везде пишут в первую очередь.

alife():create(section, pos, lvid, gvid)

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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

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

FATAL ERROR

 

[error]Expression : fatal error

[error]Function : CIni_IdToIndex<1,struct COMMUNITY_DATA,class shared_str,int,class CHARACTER_COMMUNITY>::GetByIndex

[error]File : e:\stalker\patch_1_0004\xr_3da\xrgame\ini_id_loader.h

[error]Line : 147

[error]Description : <no expression>

[error]Arguments : item by index not found in section game_relations, line communities

знаю что этот вылет должен быть изза кривых группировок, однако я посоветовался с Kolmogor'ом

он посмотрел мой файлег game_relations.ltx и сказал шо там все правильно, сканил всех неписей на предмет неверной группировки - все ровно, и вылет кстате происходит не при загрузке гамы а рандомно то есть, бегыешь, прыгаешь может не быть и пол часа а может и через пять минут уже голову сломал, в чем дело :dash2:

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий
Gonarh, покажи всю секцию game_relations из game_relations.ltx, и напиши имена новых группировок, из-за битого сейва не может быть, там обычно на скрипты ругается.
Возможно всё, ну или почти всё.
Ссылка на комментарий

группировка всего лишь одна - woman

[game_relations]

;реальное разделение на группы репутаций на шкалы

rating = novice, 300, experienced, 600, veteran, 900, master

monster_rating = weak, 400, normal, 800, strong

reputation = terrible, -1000, very_bad, -150, bad, -50, neutral, 50, good, 150, very_good, 1000, excellent

 

;шкалы для вывода названий вместо чисел

;рейтингов, репутаций и благосклонности в интерфейсе

rating_names = novice, 300, experienced, 600, veteran, 900, master

reputation_names = terrible, -1000, very_bad, -150, bad, -50, neutral, 50, good, 150, very_good, 1000, excellent

goodwill_names = enemy, -150, indifferent, 400, friendly

 

;пороговые значения для отношения персонажей

attitude_neutal_threshold = -150 ;когда attitude меньше значения, то выставляется ALife::eRelationEnemy

attitude_friend_threshold = 400 ;когда attitude меньше значения, то выставляется ALife::eRelationNeutral, иначе ALife::eRelationFriend

 

;константы, которые присвоят скриптовые функции set_relation для personal goodwill

goodwill_enemy = -1000

goodwill_neutal = 0

goodwill_friend = 1000

 

;названия группировок

communities = actor, 0, actor_dolg, 1, actor_freedom, 2, stalker, 5, monolith, 6, military, 7, killer, 8, ecolog, 9, dolg, 10, freedom, 11, bandit, 12, zombied, 13, stranger, 14, trader, 15, arena_enemy, 16, woman, 17

; отношение персонажа к актеру (или другому NPC) вычисляется по формуле

; attitude = personal_goodwill + //личное отношение персонажа к актеру (если раньше не встречались, то 0)

; community_goodwill + //отношение группировки персонажа лично к актеру (если раньше контактов не было, то 0)

; community_to_community + //отношение группировки персонажа к группировке актера из [communities_relations]

; reputation_goodwill + //отношение репутации персонажа к репутации актера из [reputation_relations]

; rank_goodwill //отношение ранга персонажа к рангу актера из [rank_relations]

 

[communities_relations]

; |actor |act_dol|act_fre|stalker|monolit|militar|killer |ecolog |dolg |freedom|bandit |zombied|strange|trader |arena_enemy|woman|

;===============================================================================

================================================================================

=

actor = 0, 0, 0, 50, -1000, -750, -1250, 0, 0, 0, -350, -2000, 0, 0, -1250, 50

actor_dolg = 0, 0, 0, 0, -2000, -650, -1200, 500, 250, -1250, -1000, -2000, 0, 0, -1250, 50

actor_freedom = 0, 0, 0, -80, -1500, -1500, -750, -100, -1250, 150, -150, -2000, 0, 0, -1250, 50

stalker = 50, 0, -80, 40, -1000, -1250, -1500, 0, 0, 0, -250, -2000, 0, 0, -1250, 5000

monolith = -1000, -2000, -1500, -1000, 400, -2000, -500, -750, -2000, -1500, -1250, 150, -1250, 0, -1250, -5000

military = -750, -650, -1500, -1250, -2000, 700, -1250, 40, -650, -1500, -2000, -2000, -100, 0, -1250, -500

killer = -1250, -1250, -650, -1500, -500, -1250, 150, -1250, -1500, -650, -500, -2000, -1250, 0, -1250, 0

ecolog = 0, 500, -100, 0, -650, 40, -1500, 1250, 500, -100, -1000, -2000, 0, 0, 0, 5000

dolg = 0, 250, -1250, 0, -2000, -650, -1500, 500, 650, -1500, -1250, -2000, 0, 0, 0, 5000

freedom = 0, -1250, 150, 0, -1500, -1500, -650, -100, -1250, 150, -150, -2000, 0, 0, 0, 5000

bandit = -350, -1000, -150, -250, -1250, -2000, -500, -1000, -1250, -150, 40, -2000, -1250, 0, -1250, 0

zombied = -2000, -2000, -2000, -2000, 150, -2000, -2000, -2000, -2000, -2000, -2000, 250, -1250, 0, -1250, -100

stranger = 0, 0, 0, 0, -250, -100, -650, 0, 0, 0, -150, -1250, 0, 0, 0, 0

trader = 0, 0, -40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5000

arena_enemy = -1000, -1250, -1250, -1000, -1250, -1250, -1250, 0, -650, -1250, -1250, 0, 0, 0, 0, 0

woman = 50, 50, 50, 5000, -5000, -500, 0, 5000, 5000, 5000, 0, -100, 0, 5000, 0, 1000

 

[rank_relations]

; novice, experienced, veteran, master

;================================================================

novice = 70, 20, 0, 0

experienced = 20, 70, 20, 0

veteran = 0, 20, 70, 20

master = 0, 0, 20, 70

 

 

 

[reputation_relations]

; terrible, very_bad, bad, neutral, good, very_good, excellent

;================================================================

terrible = -250, -100, -50, -20, 0, 0, 0

very_bad = -100, -50, -20, 0, 0, 0, 0

bad = -50, -20, 0, 0, 0, 0, 0

neutral = -20, 0, 0, 0, 0, 0, 50

good = 0, 0, 0, 0, 0, 50, 100

very_good = 0, 0, 0, 0, 50, 100, 200

excellent = 0, 0, 0, 50, 100, 200, 350

 

 

;

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

;

 

;коэффициенты "сочувствия" группировок

;после воздействия на одного из членов группировки

;goodwill его распространится на остальных членов группировки

;с определенным коэффициентом

[communities_sympathy]

actor = 0.0

actor_dolg = 0.0

actor_freedom = 0.0

stalker = 0.0

monolith = 0.2

military = 0.2

killer = 0.2

ecolog = 0.4

dolg = 0.2

freedom = 0.2

bandit = 0.1

zombied = 0.0

trader = 0.2

stranger = 0.0

arena_enemy = 0.0

woman = 0.1

 

 

там обычно на скрипты ругается.

хммм, может тогда стоит пощупать все места в скриптах хде есть юзание метода set_character_community?

или в момент чтения группировки методом character_community тоже может вылететь?

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

Как сделать в NLC чтобы можно было лечить всех NPC? Например всю братву лечить можно, а раненых военных нельзя

Изменено пользователем foxbat21
Ссылка на комментарий
Gonarh, все правильно, но меня насторожило что в свойстве communities нет цифр 3 и 4, может это не порядковые номера, а какой-нибудь параметр, чет не помню уже, и еще, в одном моде где новую группировку вводили, они ей дали номер 18 в этом параметре, может из-за этого. Сейчас еще поищу, может накопаю чего.
Возможно всё, ну или почти всё.
Ссылка на комментарий
группировка всего лишь одна - woman
:grin2:
народ, могет ли быть такой вылет изза битого сейва

Может быть всё, что угодно. Что такое битый сейв? Это когда в нетпакет при сохранении (а больше ничего не сохраняется) попадает мусор. Это может случиться по нескольким причинам:

- неверный алгоритм. Пишется не то, что читается. Таких ситуаций может быть море и как-то их классифицировать сложно.

- переполнение буфера. Записал слишком много, вышел за пределы нетпакета и наехал на чужие структуры данных. Хотя это обычно вызывает немедленные вылеты, но может вызвать и отложенный вылет.

- более тонкие причины могут быть связаны с асинхронными операциями. Движок, который работает в несколько потоков, при некорректной их синхронизации может одновременно что-то записывать и оттуда же что-то читать. Вполне возможно, что квиксейвы портятся по этой причине. Если выходишь в меню, то все процессы останавливаются. При этом сохранение происходит корректно. А если сохраняешься на ходу, то в процессе сохранения ещё что-то работает и меняет какие-то данные. В итоге выходит некое противоречие в данных, которое потом и сказывается в виде ошибок и вылетов.

 

Это всё разумеется из области предположений.

 

 

я про статью на официальном мод портале-она называется "спавн через скрипт"

Читай внимательней. Там про левел и гейм вертексы в самых первых строках говорится.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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

Люди такой вопрос решил сделать диалог с рандомными ответами.

К примеру такой...

Здорово Сидрыч,как дела идут.

рандомный ответ 1 или 2 или 3----->

--------1 Ды не как,товар не покупают и никто не заходит.Только ты перед глазами маячиш.

2 Нормально,только мало покупателей.

3 Меченный иди отсюда,совсем уже старика замучали.----------

Как примерно сделать рандом.ответы?

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

Я ДатчикХабара со stalker-portal

Ссылка на комментарий
Люди такой вопрос решил сделать диалог с рандомными ответами.

К примеру такой...

Здорово Сидрыч,как дела идут.

рандомный ответ 1 или 2 или 3----->

--------1 Ды не как,товар не покупают и никто не заходит.Только ты перед глазами маячиш.

2 Нормально,только мало покупателей.

3 Меченный иди отсюда,совсем уже старика замучали.----------

Как примерно сделать рандом.ответы?

 

 

<dialog id="dm_news_info_dialog">

<phrase_list>

<phrase id="0">

<text>dm_news_info_dialog_0</text>

<next>1</next>

<next>2</next>

<next>3</next>

<next>4</next>

<next>5</next>

<next>6</next>

<next>7</next>

</phrase>

<phrase id="1">

<text>dm_news_info_dialog_1</text>

</phrase>

<phrase id="2">

<text>dm_news_info_dialog_2</text>

</phrase>

<phrase id="3">

<text>dm_news_info_dialog_3</text>

</phrase>

<phrase id="4">

<text>dm_news_info_dialog_4</text>

</phrase>

<phrase id="5">

<text>dm_news_info_dialog_5</text>

</phrase>

<phrase id="6">

<text>dm_news_info_dialog_6</text>

</phrase>

<phrase id="7">

<text>dm_news_info_dialog_7</text>

</phrase>

</phrase_list>

</dialog>

 

 

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

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

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

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

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

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

Войти

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

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

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