#TheDoktor :
Такая проблема. Поменял вальтер. Всё хорошо, но заметил такой вот неприятный баг. После перезарядки прицел, а вместе с ним и кучность стрельбы, меняется. См. под спойлер.
Кучность стрельбы, по одной обойме с нормальным и увеличенным прицелом.
Чё надо подправить в конфиге?
Кучность-умeншить углы отдaчи. Прицeл-смeщeниe HUD для рeжимa приближeния по X Y.
Priboj37 вероятно ты меня не так понял. Допустим я подобрал вальтер, у него нормальная и кучность и прицел, вся обойма уходит строго в одну точку, но стоит перезарядить и прицел прям на глазах увеличивается, в итоге попасть в одну точку становится проблематично. Стоит перезарядится, всё опять приходит в норму.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
win win, ты к модели не подгрузил файл .bones в СДК. Это в первом случае и во втором тоже. batment, этот баг случается рандомно. TheDoktor, у тебя изношенность при выстреле какая стоит?
G-H-O-S-T отключи проверку на наличие поршня(либо занули фразы) batment проблема в спавне, если его много то из-за "не в то время, не в том месте" бывают такие вылеты
batment, такие вещи бывают при быстром удалении трупа и тд. TheDoktor, попробуй кусок конфига от ПМа взять. win win, файл .bones вытягиваешь из оригинальной модели конвертером от бардака. Далее, в СДК, справа, нажимаешь на Bones. Внизу будут св-ва Bones. Там будет кнопка Load, кликаешь на нее и подгружаешь.
Priboj37 да это я всё знаю, я у себя на всём оружии выставил зум фактор на 55 и отрегулировал прицельные планки, а то многие пушки стали с планки стрелять совсем не туда куда целил. А у меня проблема, как я понял, в применяемых стволом патронах.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
TheDoktor, помнишь, какие размеры прицела у чейзера при смены с дроби на бронебойные? Там у бронебойных повышается точность. В weapons.ltx посмотри, в св-вах патронов.
Смотри k_disp в св-вах патронов.
отредактировал(а) SkyLoader: 21-10-2010 16:30 GMT3 час.
Stalk15
Ты сам же в своем посте привел пример фразы для 1.0005/6.
В патчах 1.0005/6 (версия движка 7) не кавычки появились, а изменился формат записи драфта диалогов. Вместо чисел стали записывать строки.
Строки НЕ имеют ограничения по длине для записи, в отличии от записываемых чисел (w_s32), что дает неограниченные возможности для ветвления диалогов.
Сами фразы изначально имеют строковые идентификаторы (xml-ки диалогов - тектовый формат!). Так что работа с числовыми идентификаторами - или для удобства построения зависимых диалогов или ... устаревший вариант. Построение диалогов на числовых или строковых идентификаторах возможна на любом патче.
Народ, помогите разобраться со следующей проблемой:
Вобщем, где-то месяц назад я набрел на один замечательный скрипт рандомного спавна объектов.
Сделал тестовый цикл спавна вырезанных монстров, благо нужные конфиги были под рукой и убедившись в простоте, и эффективности данного скрипта, решил расставить нужные мне объекты на всех локациях игры. Первое время все шло гладко, монстры и другие предметы спавнились в указанных координатах, никаких вылетов замечено небыло. Когда я решил проверть всю функцию целиком, оказалось, что она перестала работать, хотя технически ошибок там нет, все проверил LuaCheker. Просто после стартового диалога с Сидоровичем, ни один из описанных в скрипте объектов не появляетя...
Знаю, что в этой теме частенько бывают люди хорошо знаюшие скрипты. Помогите хотя бы советом, ибо жалко пяти потраченных дней на сбор координат с уровней, вписание их в функцию и тестирование...:-(
Ниже приведена часть скрипта рандомного спавна и стартовый диалог с Сидоровичем, через который он должен вызываться:
Скрипт:
Скрипт удален воизбежание копирования
Часть стартового диалога:
Диалог удален воизбежание копирования
З.Ы. При необходимости выложу функцию и стартовый диалог целиком.
отредактировал(а) Stalker_Alex333: 22-10-2010 18:35 GMT3 час.
народ объсните мне что такое спавн, что значит респавнится, что такое-x_Ray или как там, что такое мультиплеер, что такое билд, что такое скрипты, что значит рандомный спавн?
wiret мда.... Спавн - заселение локаций, респавн - сам догадайся, x ray - движок сталкера, мультиплеер - игра по сети, билд - более ранняя версия сталкера, скрипты - программы, отвечающие за все в игре, рандомный спавн - сам догадайся. (Знаю, что описание корявое, рассчитано на нубов новичков)
Люди,я через алл. спавн переместил Волка. Но вместо того,чтобы стоять на указанной точке он перемещается по Зоне,как сделать так,чтобы Волк стоял на определенном месте? И если знаете,как задать Волку отдельную анимацию т.е. чтобы он только курил,или только сидел..?
Stalker_Alex333
1. 'Некрасиво' грузить диалог гирляндой экшенов. Достаточно нагрузить одним, в котором и раскрывать все **500140b7e12bf63c3891**a_zombie_5()
alex_mod.alex_mod_random_spawn_data_zombie_6()
alex_mod.alex_mod_random_spawn_data_zombie_7()
alex_mod.alex_mod_random_spawn_data_zombie_8()
end
[/code]
2. Совершенно неправильный вызов функции рандомного спавна.
Кол-во (kol) указано в самой таблице 'items', а применяется как аргумент вызова функции:
this.alex_mod_random_spawn(items, tbl, kol) --/ где kol не определено! P.S. В самой функции спавна присутствует проверка на отсутствие 'kol', что нивеоирует ошибку, но ... нет смысла поминать этот отсутствующий параметр для вызова, раз сама функция разберется с его отсутствием.
3. Сама таблица 'items' - таблица в таблице, что или неоправдано или не применимо к данному выложенному кускам кода.
4. Использование рандомного выбора элемента массива требует аккуратности. При единственном элементе в таблице (не поминаю о пустой таблице) - возникает ошибка. Пример:
ms = math.random(#tbl) при #tbl == 1 даст ms = 0...1, т.е. НЕ целое число.
Последующее: pos.x = tbl[ms][1] приводит к ошибке!
Итого: применяемые таблицы 'tbl' и 'items' НЕ должны содержать менее двух элементов в каждой.
Попробовал запустить скрипт с новыми параметрами, получил такой вылет:
[error]Arguments : LUA error: ...бряное Издание\shoc\gamedata\scripts\alex_mod.script:84: attempt to call field 'alex_mod_random_spawn_data_artefact_1'
(a nil value)
Что изменял в самом скрипте:
function alex_mod_random_spawn(items, tbl, kol)
local lv_id, gv_id, obj, item, ms, kol2
local kol1 = 1
local id = 65535
local pos = vector()
if type(tbl) == 'table' then
ms = math.random(#tbl)
end
if type(tbl) == 'table' and type(tbl[ms]) == 'table' then
pos.x = tbl[ms][1]
pos.y = tbl[ms][2]
pos.z = tbl[ms][3]
lv_id = tbl[ms][4]
gv_id = tbl[ms][5]
else
if type(tbl) == 'table' and type(tbl[ms]) == 'number' then
ms = tbl[ms]
obj = level_object_by_sid (ms)
elseif type(tbl) == 'table' and type(tbl[ms]) == 'string' or type(tbl) == 'string' then
obj = db.actor
elseif type(tbl) == 'number' then
obj = level_object_by_sid (tbl)
end
pos = obj:position()
lv_id = obj:level_vertex_id()
gv_id = obj:game_vertex_id()
id = obj:id()
end
if type(items) == 'table' then
item = math.random(#items)
if type(items[item]) == 'number' then
item = item - 1
end
if type(items[item+1]) == 'number' then
kol1 = items[item+1]
end
item = items[item]
else
item = items
end
if type(item) == 'table' then
for k, v in ipairs(item) do
if type(item[k+1]) == 'number' then
kol2 = item[k+1]
else
kol2 = 1
end
if type(item[k]) ~= 'number' then
for j=1, kol2 do
alife():create(v, pos, lv_id, gv_id, id)
end
end
end
else
alife():create(item, pos, lv_id, gv_id, id)
end
end
end
end
------------------------------------------------------------------------------------------------
-- Таблица - список всех заспавненых объектов.
------------------------------------------------------------------------------------------------
function spawn_table()
alex_mod.alex_mod_random_spawn_data_artefact_1()
alex_mod.alex_mod_random_spawn_data_zombie_1()
alex_mod.alex_mod_random_spawn_data_zombie_2()
alex_mod.alex_mod_random_spawn_data_zombie_3()
alex_mod.alex_mod_random_spawn_data_zombie_4()
end
------------------------------------------------------------------------------------------------
function random_spawn_data_artefact_1()
local tbl = {{-242.83993530273,-13.5,-24.72681427002,13702,67}} -- здесь указать координаты x, y, z, level_vertex_id, game_vertex_id
local items = {{'af_sverlo', 1}}
this.alex_mod_random_spawn(items, tbl)
end
------------------------------------------------------------------------------------------------
function random_spawn_data_zombie_1()
local tbl = {{-12.415926933289,1.0,85.67586517334,264431,85}} -- здесь указать координаты x, y, z, level_vertex_id, game_vertex_id
local items = {{'zombie_immortal_2', 1}}
this.alex_mod_random_spawn(items, tbl)
end
------------------------------------------------------------------------------------------------
function random_spawn_data_zombie_2()
local tbl = {{-0.72953462600708,0.0,276.32379150391,276187,176}} -- здесь указать координаты x, y, z, level_vertex_id, game_vertex_id
local items = {{'zombie_weak', 1}}
this.alex_mod_random_spawn(items, tbl)
end
------------------------------------------------------------------------------------------------
function random_spawn_data_zombie_3()
local tbl = {{233.75805664063,0.0,329.12347412109,521154,245}} -- здесь указать координаты x, y, z, level_vertex_id, game_vertex_id
local items = {{'zombie_weak', 1, 'zombie_normal', 1}}
this.alex_mod_random_spawn(items, tbl)
end
------------------------------------------------------------------------------------------------
function random_spawn_data_zombie_4()
local tbl = {{104.88210296631,0.0,511.22225952148,406121,220}} -- здесь указать координаты x, y, z, level_vertex_id, game_vertex_id
local items = {{'zombie_weak', 2, 'zombie_normal', 1}}
this.alex_mod_random_spawn(items, tbl)
end
З.Ы. Я в скриптах еще очень "зеленый", так что могу написать полный бред...)))
отредактировал(а) Stalker_Alex333: 21-10-2010 18:22 GMT3 час.
Stalk15
Пора бы отвыкнуть от простых толкований ... и поиска простых решений.
Судя по логу ошибки - это ошибка инициализации параметров торговли данного непися, а не его диалога.
То, что вылет/ошибка обнаруживается при попытке заговорить с ним - это всего лишь совпадение. Пока ты к неписю не обратился (торговцев и кому прописан свой конфиг это не касается) параметры его торговли не считываются. Stalker_Alex333
Ищи синтаксическую ошибку. Вероятнее всего: вызываешь вместо 'random_spawn_data_artefact_1' - 'alex_mod_random_spawn_data_artefact_1'
Если функция вызова в том же файле применяй:
'this.random_spawn_data_artefact_1()' или просто 'random_spawn_data_artefact_1()'
Переехал чуток Artos
Хмм...Вообщем поставил щас 5 патч, и как только диалог должен инициализировать**500440b7e12bf63c3891**_(first_speaker, second_speaker)
--/Как мне тут получить северный обьект собеседника(second_speaker)?[/code]
Я перезаселил Волка,теперь,он просто бродит по Зоне,а мне нужно,чтобы он стоял на той точке,куда я его заспавнил. Мне подсказали,что нужно заменить логику Волка....кто может обьяснить,как это делается и в каких файлах находится логика?
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.