Пользователей: 1
Гостей: 1331
Всего: 1332

» Подробно
» Сегодня

Привет, гость!









Автор Сообщение
musnuk
    
Посты: 487
Откуда: припять,проспект Ленина 86
Возраст: 30
28-06-2010 21:14 GMT3 час. #1280221   
Artos Прошу прощения... оправдывться не буду, ибо действительно виноват (но по сути вопрос был обращен к сталк15, который однако тож не понял сути)

Появился дргой вопрос. военный на военном блокпосту (в самом начале локации кордон)
у него действует логика, после посиделок, в 6 часов утра он заступает на пост, и ВСЁ!!! Он становится на игнор (с ним нельзя завести диалог), для тех кто не понял приведу подобный пример: Сталкеры во время опасности не ведут диалог, но у них есть реакция типа "нашел время говорить". Один человек сообщил мне страшную весть:"Чтобы он не "тупил", нужно ковырять аллспаун" Я этого довольно таки боюсь, но если более простого способа нету, то придется...

Внимание вопрос: какие способы для отключения такого рода игнора есть?


Мафия не прощает оскорблений...
XrKamp
    
Посты: 129
Откуда:
Возраст: 14
28-06-2010 21:16 GMT3 час. #1280224   
Как присвоить обьекту sid? через скрипт)


Внимание! В подписи запрещены ссылки на любые внешние ресурсы!
не смотри журнал
Artos
    
Посты: 4176
Откуда:
Возраст: 65
28-06-2010 21:33 GMT3 час. #1280241   
XrKamp
Листани пару-тройку страниц назад, тут 'официантов' нет.

Darien Fx
Тогда я бы тебе посоветовал иной порядок, чем выбрал ты. С нет-пакетами тем более метод проб-ошибок не прокатит. Тут точно нужно знать что/где/как и когда.
1. Изучить структуру нет-пакетов разных объектов (или хотя бы основных).
Как уже говорил она отлична для разных классов, т.е. используются некие наборы секций, но эти наборы секции различны.
Можно конечно начать с нуля, взяв за исходный материал 'acdc.pl' Бардака, но можно и с использованием готовых кусков/библиотек (АМК,AI-Pack,Симбион,...).
2. Изучить способы чтения/записи нет-пакетов.
3. Изучить способы внесения изменений , манипуляции нет-пакетами.
4. Изучить тонкости работы с нет пакетами.

Если ты не поймешь что же из себя представляет конкретный нет-пакет, который ты собираешься считать и тем более записать - то в лучшем случае сможешь использовать их 'в слепую'. К хорошему это не приведет, если не собираешься останавливаться на локальной задачке. И тем более это уже не познание/исследование.

Ну и ... нет-пакетам без разницы - оффлайн иль он-лайн объект. Они описывают серверные объекты.
Разница в том, что в он-лайне данные в нет-пакете объекта постоянно меняются и это необходимо будет учитывать, но это уже на не первом этапе.
Ну и конечно: помимо STATE_ есть еще и UPDATE_ ;-)

отредактировал(а) Artos: 28-06-2010 22:04 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
Darien Fx
    
Посты: 1372
Откуда:
Возраст: 30
28-06-2010 21:41 GMT3 час. #1280248   
Artos
Я имел дело с нет пакетами только в актор и мотиватор биндерах, сохранять и читать отдельные переменные умею (записал нужным методом, подобным ему и считал, главное что бы порядок в save() и load() был одинаков, вот вроде и всё). А вот в байтах и битах не разбираюсь, поэтому и не представляю, что там внутри пакетов. Ну, в любом случае лучше начну с первого пункта, спасибо за совет :-)


Artos
    
Посты: 4176
Откуда:
Возраст: 65
28-06-2010 21:48 GMT3 час. #1280253   
musnuk
Уже недавно отвечал на что-то подобное.
Суть игнора банальна: ГГ - сталкер-одиночка. Только он имеет возможность вести диалоги.
Схема диалогов - 'xr_meet.script' + конфиги логики (параметры/секции meet*).
Воякам НЕ прописана в логике возможность диалогов и тем более с врагами и даже хуже - в 'dialog_manager.ltx' нет диалогов для них.
Т.о. или в логике (ее конфигах) воякам прописывать возможности вести диалоги, или менять схемы и добавлять простейшие диалоги (типа для аптечки/лечения).


Darien Fx
Net-packet - это пакет(!), т.е. единый массив бинарных данных.
Естественно порядок всех байтов в нем не изменен. Что прочитал - то и пропиши (имеется ввиду порядок и кол-во байтов, а не конкретные их значения, которые могут быть изменены).
Читая 'отдельные' переменные ты можешь только из всего массива.
Да и собственно читаешь НЕ переменные, а значения байтов присваиваешь удобным для чтения переменным.
Вот об этом и говорю - стОит понять какой байт(ы) имеет некое значение/смысл и какой переменной его(их) следует присвоить (при чтении). И соответственно при записи - какую переменную записать в какой байт(ы).

отредактировал(а) Artos: 28-06-2010 22:07 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
musnuk
    
Посты: 487
Откуда: припять,проспект Ленина 86
Возраст: 30
28-06-2010 22:14 GMT3 час. #1280291   
Возможно я снова не правильно поставил свой вопрос и информацию о ситуации.
диалоги ведутся, ибо начальная часть квеста идет гладко, но я не успеваю прийти до 6-ти, когда он становится в игнор ко всем раздражителям, кроме смертельных.
Проверю метод артоса, но суть дела в логике нпс'а, именно поэтому обратился именно к вам.


Мафия не прощает оскорблений...
musnuk
    
Посты: 487
Откуда: припять,проспект Ленина 86
Возраст: 30
28-06-2010 22:30 GMT3 час. #1280304   
Artos профиль находится (вернее находился, ибо я перенесего профиль в другой файл и немного


Мафия не прощает оскорблений...
sevitov_yura
    
Посты: 79
Откуда: Брест
Возраст: 30
28-06-2010 22:39 GMT3 час. #1280317   
У меня есть рабочая функция. Вызывается по нажатию кнопки в**5001001a66cf24ce67c0**, true)
self:GetHolder():start_stop_menu(self, true)
self:Show(true)
end[/code]

Смутно понимаю значение некоторых строк(для чего они нужны). Растолкуйте, для чего каждая строка нужна:-G.


Artos
    
Посты: 4176
Откуда:
Возраст: 65
28-06-2010 23:03 GMT3 час. #1280337   
musnuk
"esc_blokpost_commander" == капитан Тарнавский

Персональной логики НЕ имеет.
Прописан в конкретном гулаге: "esc_blokpost"
, в котором днем следует логике, описанной в секции "logic@esc_blockpost_commander_day",
и ночью - "logic@esc_blockpost_kamp2"

В обеих секциях логики нет ни намека на логику диалогов (отсутствует 'meet = ...').

Отличие ночного режима: "soundgroup = esc_blokpost_soldier" , т.е. сидит и травит байки.

Вероятно схема кампера блокирует его диалоги (предположение).

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


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
28-06-2010 23:44 GMT3 час. #1280350   
Artos
Знаю что оффтоп(пост удалю), но хочу поблагодарить - недавнее краткое пояснение по self сегодня реально помогло. Безуспешно пытался обратиться из своего класса к параметру который инициализировался в другом классе, пока не вспомнил твое пояснение, что self это юзердата класса - и значит раз мой класс наследует от базового (этот момент вначале вообще упустил), то запись self.имя_параметра_из базового_класса:метод() будет единственно верной. Кой-чего в голове прояснилось... :-)

sevitov_yura
self:GetHolder():start_stop_menu(self, true) -- деактивировать меню
self:Show(true) -- визуализировать виджет\компонент меню

остальное - обращение к классовым переменным.
----------------------------------------------------------------------
Gun12
Ценный пост. Спасибо.
Вечером опробую примеры на практике.

отредактировал(а) erlik: 29-06-2010 12:20 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
sevitov_yura
    
Посты: 79
Откуда: Брест
Возраст: 30
29-06-2010 00:03 GMT3 час. #1280357   
как раз остальное знаю;-) Спасибо, erlik


Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
29-06-2010 09:55 GMT3 час. #1280435   
erlik
Рассказываю про классы, а ты сразу в SciTE проверяй что и как рабо

отредактировал(а) Gun12: 29-06-2010 15:27 GMT3 час.

Не стань номинантом премии Дарвина.
Byurrer
    
Посты: 82
Откуда: А зачем?
Возраст: 32
29-06-2010 11:36 GMT3 час. #1280472   
У меня вопрос. Ток не судите строго я еще новичок!
Вопрос:
как можно сделать при определенных условиях ссылку через скрипт на другой файл описания оружия (другой файл описания создан на основе старого)?
Вот скрипт с условиями:
function actor_have_wpn_ak74()
return db.actor:object("wpn_ak74") ~= nil
end

function remove_item_from_inventory_by_name(remove_item_name,npc)
remove_item_from_inventory(npc:object(remove_item_name),npc)
end

function remove_item_from_inventory(remove_item,npc)
if npc==nil then npc=db.actor end
if remove_item~=nil then
npc:mark_item_dropped(remove_item)
alife():release(alife():object(remove_item:id()), true)
return true
end
return false
end

function delete_guns(gun_names)
remove_item_from_inventory_by_name(gun_names,db.actor)
end



function smena_lomkosti()
if actor_have_wpn_ak74() then
smena_lomkosti_2()
else return false
end
end

function smena_lomkosti_2()
local item_in_slot2 = db.actor:item_in_slot(2)
local ak74 = db.actor:object("wpn_ak74")
local abakan = db.actor:object("wpn_abakan")
if item_in_slot2 ~= nil then
if item_in_slot2:condition() < 1 then
--не могу понять как сюда записать чтоб при выше перечисленных условиях сделать ссылку на другой файл описания?
else return false
end
else return false
end
end
--все это работает, но не получается лишь сделать ссылку на другой файл описания!!!


Если чтото не так пожалуйста поправьте! Пробовал сам неделю ... не меньше 50 вылетов ... не могу сообразить ... Заранее спасибо.


project S.I.P
С Н А Й П Е Р
    
Посты: 115
Откуда: Самара
Возраст: 31
29-06-2010 12:47 GMT3 час. #1280499   
Byurrer а зачем? При каких условиях?


Очень обидно, когда у тебя Stayr Aug A2 и Нано-костюм, а какой-то драный бандит снял тебя с ПМ в голову!!!
Ma$ter
    
Посты: 477
Откуда: Tamboff
Возраст:
29-06-2010 12:58 GMT3 час. #1280507   
на другой файл описания!!!

Всмысле на другой файл описания? На другой скрипт? Или ты хочешь что-бы у оружия появилось другое описание?


Знание assembler, C/C++, Pascal, Lua.
AAAAKKK
    
Посты: 65
Откуда: Кострома
Возраст: 47
29-06-2010 13:04 GMT3 час. #1280512   
Другие характеристики


Зацикленный лагерь в журнале.
Geralt of Rivia
    
Посты: 6363
Откуда: Odessa
Возраст:
29-06-2010 13:04 GMT3 час. #1280513   
Byurrer
Если уж задаёшь вопрос, постарайся чтобы он был полным. А то после него начинаются уточняющие посты типа:
А зачем?
А на какой файл?
И т.д.

Не засоряйте топик!


Не обманешь судьбу и не купишь любовь
Ни за жизнь, ни за смерть, ни за горсть серебра.
И холодная сталь ляжет под ноги вновь
Равновесием зла и добра.

erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
29-06-2010 13:04 GMT3 час. #1280514   
Byurrer
что значит ссылку? в контексте твоего кода непонятно зачем тебе нужна эта ссылка - конфиг оружия движком читается по названию секции оружия [wpn_такой_то] и собственно файлы в которых секции оружия будут искаться движком прописываются в файле weapons.ltx - в списке #include "файл такой то.ltx" -- это и есть ссылка на файлы конфига стволов.
Если существующий файл конфига оружия не будет там указан - игра его не найдет.

Теперь о конфигах вообще - собственно для чтения твоих собственных настроек (для чего либо) существуют методы класса ini_file.
В этом случае ссылка на файл откуда нужно прочитать значения каких-то установленных тобой параметров выглядит так:
local ini = ini_file("папка\\имя_файла.ltx")
методы работы с ini_file (чтение нужных параметров) описаны в справочнике по функциям сталкера (на stalker Wiki и сайте АМК).

отредактировал(а) erlik: 29-06-2010 13:19 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
AAAAKKK
    
Посты: 65
Откуда: Кострома
Возраст: 47
29-06-2010 13:18 GMT3 час. #1280519   

конфиг оружия движком читается по названию секции оружия [wpn_такой_то]

Вот человек и хочет узнать возможно или нет поменять стандартный конфиг секции [wpn_такой_то]
на другой в зависимости от определенных условий не меняя секцию

Мне кажется что нет


Зацикленный лагерь в журнале.
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
29-06-2010 13:32 GMT3 час. #1280527   
AAAAKKK
Динамически (прямо в игре) переписать существующий конфиг (да еще чтобы он начал читаться в измененном варианте будучи уже однажды загруженным в память) возможности нет.
Также как и загрузить новый.... хотя есть непонятная команда консоли cfg_load ( ) - типа для загрузки конфига - но что она делает в реальности понятия не имею.
---------------------------------------------------------------------------------------------------------
Есть правда еще вариант с динамическим выводом виджета в окно описания (если требуется динамическая смена описания )(виджет - статик с новым описанием ствола, который будет закрывать прежнее описание при наличии нужного ствола в слоте - хотя это тоже не то, поскольку он будет выводиться для всех стволов с данной секцией, а отнюдь не для одного. Да и сложновато это будет для того, кто не работал с интерфейсом.)

-------------------------------------------------------------------------------------------------
Darien Fx
Если так, то в этом и главное неудобство - перезагрузка. Убивает весь динамизм.

отредактировал(а) erlik: 29-06-2010 13:43 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Byurrer
    
Посты: 82
Откуда: А зачем?
Возраст: 32
29-06-2010 13:34 GMT3 час. #1280528   
AAAAKKK совершено верно для этого мне и нужно!
erlik спасибо попробую!
Geralt of Rivia хорошо конкретизирую вопрос следующий раз а теперь мне кажется что я нашел ответ!
Ma$ter чтоб у оружия другое описание!!!
Я хочу сделать как в ЧН чтоб при ремонте менялись файлы описания!!!
Мужики спасибо что откликнулись долго искал ответ!


project S.I.P
Darien Fx
    
Посты: 1372
Откуда:
Возраст: 30
29-06-2010 13:38 GMT3 час. #1280529   
erlik
Не знаю как в ТЧ, но в ЗП с помощью cfg_load можно подменять user.ltx на свой, указав путь. Так реализованно в одном графическом моде, но вроде после прописывания нужно перезайти в игру.

добавлено спустя 10 минут

Проверил - если сделать копию user.ltx и положить его рядом с ним, изменить что-нибудь в настройках (не графических, хотя можно и их, если они не требуют перезагрузки) и ввести cfg_load user_new.ltx, то активным станет user_new.ltx и без перезахода в игру.

отредактировал(а) Darien Fx: 29-06-2010 13:50 GMT3 час.

erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
29-06-2010 14:02 GMT3 час. #1280539   
Darien Fx
нда.. интересно. А если чего-нить другое попробовать сделать активным? надо как-нить побаловаться методами rename и move...:-)

файл ведь можно и удалить - file_delete и скопировать - file_copy и переименовать - file_rename.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Artos
    
Посты: 4176
Откуда:
Возраст: 65
29-06-2010 14:36 GMT3 час. #1280562   
Вот рыба (почти готовая к применению) набора функций ремонта оружия/костюма 'по мотивам 'Byurrer'а (см. топик "Справочн

отредактировал(а) Artos: 30-06-2010 00:35 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени


ui_button_ordinary
Exit


требуется декодер для расшифровки данных...


ui_button_ordinary
Открыть файл
[/code]

При нажатие на кнопку OPEN происходит вылет... Опробовал много вариантов, но когда вылетает, а когда окно вообще не показывается. Я плохо разбираюсь в построение окон.
Подскажите, что нада написать в функции, чтобы строка поменяла своё содержимое.:-G
sevitov_yura
    
Посты: 79
Откуда: Брест
Возраст: 30
29-06-2010 15:37 GMT3 час. #1280590   
Я создал своё окошко, там есть кнопка. По нажатию кнопки текстовая строка д**5001c54314580bda8be6**ext ("привет") - здесь в строке CAPTION2 должен появится текст "ПРИВЕТ"
end[/code]


А вот сам XML-файлик:
[code]

Data files


Byurrer
    
Посты: 82
Откуда: А зачем?
Возраст: 32
29-06-2010 16:00 GMT3 час. #1280600   
erlik а можно поменять файл конфигурации с помощью функции set_description()?


project S.I.P
Artos
    
Посты: 4176
Откуда:
Возраст: 65
29-06-2010 16:08 GMT3 час. #1280605   
Byurrer
Сам загляни в азбуку модмейкера (lua_help.script):
Метод set_description() разрабами предусмотрен только для класса SGameTaskObjective, т.е. для описаний заданий, а не предметов.

Сомневаешься? Возьми и проверь. ;-)
И не заморачивайся. Нет штатных способов заменить описание объекта (как и многих иных параметров) в его секции.

И что-то ты замолк о кодах ремонта ... ?
Кстати, можешь там указать авторов исходного 'кода механика':
Repair by Shebuka (edited by Russo aka Cabrobro (АВС-мод)
(хотя может уже модифицированные и из Симбиона были взяты)


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
Byurrer
    
Посты: 82
Откуда: А зачем?
Возраст: 32
29-06-2010 16:14 GMT3 час. #1280607   
Artos я не сомневаюсь это действительно так я пробовал все время вылеты! А ка тогда сделано в ЧН? Там за счет изменения конфигурационного файла происходит модернизация оружия (или нет?)!!! А скрипт я искал он видимо в движке спрятан. А что с ремонтом?

добавлено спустя 1 минуту

Artos я бы указал если стал бы его использовать в своем моде но я делаю свой! Ну а можно ли тогда менять визуал оружия во время игры как в Farcry2?

добавлено спустя 37 секунд

Я его на игромании взял ...

отредактировал(а) Byurrer: 29-06-2010 16:17 GMT3 час.

project S.I.P
Stalk15
    
Посты: 1023
Откуда: Как-бэ Новосибирск(Точно не знаю=))
Возраст: 30
29-06-2010 16:21 GMT3 час. #1280615   
Написал небольшой скриптег.В двух функциях указал комментарии, что и как.Прошу просто ск**5001c54314580bda8be6**


Новые фишки для сталкера(см. журнал)
Artos
    
Посты: 4176
Откуда:
Возраст: 65
29-06-2010 16:23 GMT3 час. #1280619   
Byurrer
Тебе уже erlik дал однозначный ответ:

Динамически (прямо в игре) переписать существующий конфиг (да еще чтобы он начал читаться в измененном варианте будучи уже однажды загруженным в память) возможности нет.

Уточню, некоторые параметры можно изменить с помощью нет-пакетов, но далеко не все и тем более не описания.
В ЧН совершенно иначе, там составные конфиги, т.е. по сути параметр в движке может меняться в зависимости от флагов.

Визуал менять можно, т.к. этот параметр доступен через нет-накеты.

отредактировал(а) Artos: 01-07-2010 02:13 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени


Форумы Архив » Свалка Вопросы и ответы (по 15.07.10)


Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для
просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.

Использование материалов сайта возможно с разрешения администрации. Все права защищены. © 2004–2025 «Stalker-Portal.ru»