Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
TOL 0 Опубликовано 26 Апреля 2009 Поделиться Опубликовано 26 Апреля 2009 Вот я хочу убрать кучу монстров и неписей с локации. Как и где это можно зделать? И чтоб не пришлось новую игру начинать.. Навіщо слова? Краще мовчати. Люди лізуть в твою душу лиш за тим, щоб там насрати... Ссылка на комментарий
buxoukot 0 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 А возможно заставить АИ стрелять из ПКМ? из того что на подставке. (в файлах игры есть)? и ещё вопросик: возможно ли заставить аи ездить на транспорте.? в роликах с билдами это было. хотя думаю вряд ли возможно. TOL... ну если они через ал.спавн заспавнены... то ковырять надо его. но я после его изменения всегда игру начинал. а насчёт спавна через скрипт не знаю. или ты зону, или она тебя. Ссылка на комментарий
SCRIPT 5 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 (изменено) bohoukot А возможно заставить АИ стрелять из ПКМ? из того что на подставке. (в файлах игры есть)? Да, возможно в файле character_desc_название_уровня.xml (gamedata/gameplay) какому - нибудь чуваку под <visual>actors\кто_то_там\stalker_что_то_там_</visual> <supplies> [spawn] \n пропиши wpn_название_пушки, которая нужна. \n всё =) Изменено 27 Апреля 2009 пользователем SCRIPT Thank you for your honesty. Now fuck off and die. Ссылка на комментарий
Отшель[НИК] 2 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 В каком файле прописаны координаты начального появления ГГ? Ссылка на комментарий
Vergas 11 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 Такой вопрос: Есть некая переменная в скриптах. надо сохранить её значение при сейве. Как это сделать. Подскажите, или носом ткните, где почитать. НЛС-6: У каждого своя зона _______________________________________________________________ Не ищи легких путей и не возвращайся той же дорогой Ссылка на комментарий
kokkai 97 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 Отшель[НИК], all.spawn Предвосхищая следующие вопросы скину полезную статейку: По распаковке алл.спавна с помощью acdc. Расскажу, как делать это без батников. Если надо распаковать алл.спавн. 1. Помещаем файл алл.спавн в папку, где находятся файлы от acdc. Лучше создать ее на диске С: 2. Нажимаем ПУСК - Выполнить. Появляется командное окно. 3. Вводим команду cmd. Появляется черное окно. 4. В нем пишем cd\ Далее нажимаем enter. Происходит перенос на другую строчку. Эта команда задает диск С для работы с ним. 5. Далее пишем cd C:\"название папки, куда поместили acdc". Нажимаем enter. Переход на другую строчку. Теперь задали папку с которой будем работать. Вот здесь и надо будет вводить команды для acdc. 6. Вводим acdc.pl -d all.spawn Нажимаем enter. 7. Если асдс подходит для данного алл.спавна, то вскоре все распакуется и распакованные файлы можно будет обнаружить в папке с асдс. 8. Если асдс не подходит, то он выдаст ошибку. Тут же в этом черном окне. Надо будет внимательно прочитать о чем ошибка. Обычно для разных модов не хватает какого-нибудь описания чего-нибудь. Например, может ругаться что не может найти af_soul. Тогда надо будет открыть файл acdc.pl блокнотом. Там найти, где описываются артефакты и в конце строк с артефактами сделать запись для af_soul, напримере других артефактов. После сохранить файл и заново набрать команду по распаковке. 9. После того, как сделали изменения в алл.спавне, надо будет таким же образом войти в папку с acdc, как описывалось раньше. 10. Набрать следующую команду: acdc.pl -c all.ltx 11. Если все сделали правильно в алл.спавне, то через некоторе время в папке с асдс появится файл all.spawn.new. Его надо будет переименовать в all.spawn 12. Правило при работе с алл.спавном - не забывайте правильно пронумеровывать вновь создаваемые секции. Для этого надо найти самый большой номер секции в алл.спавне. И присваивать своим секциям номера по порядку за этим номером. Работа с ACDC Сегодня мы разберем основу работы с ACDC. Но... Для начала небольшое отступление. Вы зададите вопрос, почему же лучше работать с ACDC нежели чем с xrSpawner? Отвечаю: xrSpawner при всех его преимуществах имеет множество более значительных минусов. Во первых, xrSpawner не определяет не game_vertex, ни level_vertex. А также он измеряет только позицию. Я думаю работающие с xrSpawner, замечали что, порой обьекты которые они спаунят спаунером не всегда появляются на месте. Или вообще не появляются. Потому что повторяю xrSpawner не определяет вертексы т.е. точная позиция и распределение по АИ-сетке. Итак начнём работу! У нас есть программа ACDC, руки и мозги в голове. Кладём all.spawn в папку utils и жмём на батник "распаковка". Итак all.spawn распакован!Мы там видим файлы alife и way. В файлах alife только обьекты которые спаунятся. А в way только пути. Я думаю с алайфом всё понятно. Разберем way. Пути. Путь это и ест путь. По которому может двигаться живой обьект.Сейчас мы это рассмотрим: Для начала устроим текстовый беспредел Найдём файл alife_l01_escape, а в нём [869] ; cse_abstract properties section_name = actor name = level_prefix_actor_0001 s_rp = 0 position = -139.449829101563,-29.6908683776855,-351.492797851563 direction = 0,0.00895109120756388,0 s_flags = 0x29 [dont_spawn_character_supplies] [spawn] wpn_binoc novice_outfit device_torch END ; cse_visual properties visual_name = actors\hero\stalker_novice ; cse_alife_creature_abstract properties g_team = 0 g_squad = 0 g_group = 0 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0x75732029 upd:creature_flags = 0x70 upd:position = -139.449829101563,-29.6908683776855,-351.492797851563 upd:o_model = 0 upd:o_torso = 0.00895109120756388,0,-0.999959945678711 upd:g_team = 0 upd:g_squad = 0 upd:g_group = 0 ; cse_alife_trader_abstract properties money = 40 trader_flags = 0 character_profile = actor ; cse_ph_skeleton properties ; cse_alife_creature_actor properties upd:actor_state = 0xd20 upd:actor_accel_header = 0 upd:actor_accel_data = 0 upd:actor_velocity_header = 0 upd:actor_velocity_data = 0 upd:actor_radiation = 0 upd:actor_weapon = 110 upd:num_items = 0 Примерно такие строки. Для начала расщедримся Припишем актору в [dont_spawn_character_supplies] [spawn] такие строки. [dont_spawn_character_supplies] [spawn] wpn_binoc wpn_vintorez ammo_9x39_pab9 = 20 wpn_usp ammo_11.43x23_hydro = 22 novice_outfit device_torch Получиться что мы подарим Меченому при начале игры Винторез, 600 патронов к нему, пистолет USP и 420 патронов к нему. Так. Теперь Меченый у нас будет крутым рэмбо Теперь ещё и подарим ему денежек. ; cse_alife_trader_abstract properties money = 40 trader_flags = 0 character_profile = actor В строчке money напишем любое число. Тока астрономические не надо(не проверял). Ну теперь Меченый не только рэмбо но и миллионер. Теперь займемся кординатами. У нас они такие: position = -139.449829101563,-29.6908683776855,-351.492797851563 direction = 0,0.00895109120756388,0 Это наши позиция и дирекция. ; cse_alife_object properties game_vertex_id = 19 (Тот самный вертекс на игре) distance = 0.699999988079071 level_vertex_id = 111256 (вертекс на уровне) object_flags = 0xffffffbf custom_data = <<END А теперь пропишем туда такие кординаты: position = -167.232299804688,-25.4363708496094,-354.692901611328 direction = 0,-0.365248799324036,0 ; cse_alife_object properties game_vertex_id = 0 distance = 0.699999988079071 level_vertex_id = 82413 object_flags = 0xffffffbf custom_data = <<END upd:health = 1 upd:timestamp = 0x75732029 upd:creature_flags = 0x70 upd:position = -167.232299804688,-25.4363708496094,-354.692901611328 upd:o_model = 0 upd:o_torso = -0.365248799324036,0,0.930909931659698 upd:g_team = 0 upd:g_squad = 0 upd:g_group = 0 Тепер игра начнётся в здании блокпоста на 2 этаже. С этим мы закончим. Теперь создадим нового НПС: [871] ; cse_abstract properties section_name = stalker name = esc_bridge_soldier1 position = -133.27989196777,-30.146812438965,-372.0263671875 direction = 0.028013030067086,0,0.9996075630188 ; cse_alife_trader_abstract properties money = 5000 character_profile = esc_soldier_regular ; cse_alife_object properties game_vertex_id = 20 distance = 16.1000003814697 level_vertex_id = 118083 object_flags = 0xffffffbf custom_data = <<END [logic] active = walker [walker] path_walk = hodim_dvor END ; cse_visual properties visual_name = actors\soldier\soldier_bandana_3 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 1 g_group = 2 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = -133.27989196777,-30.146812438965,-372.0263671875 upd:o_model = 0 upd:o_torso = 0.028013030067086,0,0.9996075630188 upd:g_team = 0 upd:g_squad = 1 upd:g_group = 2 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 ; cse_alife_human_abstract properties predicate5 = 1,2,2,1,2 predicate4 = 0,1,1,1 ; cse_ph_skeleton properties upd:start_dialog = ; se_stalker properties Так вот он наш друг НПС солдат на блокпосте Тут уже знакомы строки. Позиция, дирекция вертексы... Но есть кое что новое [logic] active = walker [walker] path_walk = hodim_dvor Элементарная логика НПС. hodim_dvor-Это путь по которому будет ходить НПС. НПС есть всё готово. Но путя то у нас нет Создадим его в файле way_l01_escape. Припишем вот такие строчки. [hodim_dvor] points = p0,p1 p0:name = name00 p0:position = -120.44634246826,-30.15016746521,-363.68786621094 p0:game_vertex_id = 24 p0:level_vertex_id = 132887 p0:links = p1(1) p1:name = name01 номер точки p1:position = -132.61611938477,-30.142726898193,-363.87365722656 - только позиция p1:game_vertex_id = 19 вертекс на игре p1:level_vertex_id = 118862 вертекс на уровне p1:links = p0(1) на какую точку после этой перейдёт НПС. (тут он будет ходить туда сюда, если не написать линкс то он остановиться на месте) Всё! Вгоняям в way эти строки(тока мои коментарии писать не надо) Всё готово можно тестить изменения:_))))). Как снимать корзинаты и работать с PI расскажу в следующей статье. Теперь жмём на батник запаковка и усё! Пихаем all.spawn в игру. Только лучше ещё поправить отношения актора к военным и наоборот в лучшую сторону. Чтобы непись сразу пошёл по своему пути. Он удет ходить от казармы до дома(там поймёте) Статью написал [[Rez@niy ]] Ссылка на комментарий
Push85 4 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 (изменено) Vergas Скрипт bind_stalker.script функции actor_binder:save(packet) и actor_binder:load(reader) Для сохранения переменной в actor_binder:save(packet) пишешь примерно это (писать лучше в самый конец, чтобы ошибок меньше было): имя_файла_скрипта_в_котором_нужная_ тебе_переменная. save(packet) Для загруски переменной в actor_binder: load (packet) пишешь примерно это (писать лучше в тоже место что и в actor_binder:save(packet)): имя_файла_скрипта_в_котором_нужная_ тебе_переменная.load (reader) в файле с переменной создаешь функции: function save (packet) packet:w_u8(имя_переменной) end и function load (reader) имя_переменной = reader:r_u8() end w_u8 и r_u8 надо поменять если используешь другой тип переменной вот несколько примеров(здесь я могу ошибаться так что поправьте если что): строковая переменная w_stringZ и r_stringZ с плавающей точкой w_float и r_float целое число w_u8 и r_u8 там еще их много, смотри в файле lua_help.script - class net_packet. Изменено 27 Апреля 2009 пользователем 8push5 Возможно всё, ну или почти всё. Ссылка на комментарий
Vergas 11 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 (изменено) 8push5, Спасибо! А я вот что нашел на оффоруме: Есть в xr_logic штука под название pstor. Работать можно через xr_logic.pstor_store()/xr_logic.pstor_retrieve(). Сохраняется всё в биндере игрока, причём совместимость не теряется. Только злоупотреблять с большими объёмами данных (в моей ситуации это где-то 4-6 КБ) не следует, иначе игра будет вылетать. В твоем случае надо лезть в bind_stalker.script, что не хотелось бы делать (чем меньше вмешиваешься в чужие скрипты - тем легче адаптировать свои) Попробую сейчас и то и другое. Изменено 27 Апреля 2009 пользователем Vergas НЛС-6: У каждого своя зона _______________________________________________________________ Не ищи легких путей и не возвращайся той же дорогой Ссылка на комментарий
XMK 24 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 у меня вопрос, задавал его на других форумах никто не дал ответа как сделать вот такие ползунки, как в опциях: к примеру хочу сделать такой ползунок в окне спального мешка, чтоб передвинув ползунок на 1 деление выполнялась 1 функция, на 2 выполнялась вторая и т.д Ссылка на комментарий
Vergas 11 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 (изменено) Ещё проблема... Момент потери предмета из инвенторя отследить легко, через функцию actor_binder:on_item_drop (obj). А вот как поймать момент появления предмета.... Ну никак понять не могу..... =================== Все, понял.... Конечно через actor_binder:on_item_take (obj). Это все шутки предмета, который постоянно скриптово пропадает и появляется в инвентаре Я эту функцию и использовал, но дальше на спавн предмета через скрипт внимания не обратил. А там у меня и ломалось. Изменено 27 Апреля 2009 пользователем Vergas НЛС-6: У каждого своя зона _______________________________________________________________ Не ищи легких путей и не возвращайся той же дорогой Ссылка на комментарий
Wawka 5 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 (изменено) Vergas, там же, в bind_stalker. Отслеживание на взятие предмет в инвентарь - actor_binder:on_item_take (obj) Изменено 27 Апреля 2009 пользователем WAWKA Ссылка на комментарий
DiXares 1 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 Товарищи Сталкеры, можно-ли с помощью скрипта взорвать предмет(например ящик с динамитом)? Если кто сможет, напишите. Ссылка на комментарий
Malandrinus 615 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 Товарищи Сталкеры, можно-ли с помощью скрипта взорвать предмет(например ящик с динамитом)? Если кто сможет, напишите. obj:explode(0) obj - это должен быть онлайновый (клиентский) объект Я так подрывал динамит, гранаты и баллоны с газом. Число не знаю что означает, на результат по-моему не влияет никак. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
DiXares 1 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 Я вот что ещё про взрыв нашёл, посмотрите скрипт: explode_zone, может быть это тоже можно использовать? Ссылка на комментарий
vah_stalker 0 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 Ребята, нужна помощь - поломался ФН2000-палач, причем в прямом смысле этого слова, он работает только как биноколь(тупо,при нажатии л.к.м он тоже приближает) вместо патронов на экране показуется само оружие, пробовал менять клас(с бинокля на оружие), начинает стрелять - но оптика отрубается - не наводятся рамки и не работает ролик ближе - дальше. Если кто знает как можно исправить - подскажите пожалуйста. Варианты подписи (возможен ТОЛЬКО ОДИН вариант!): не более 6 строк текста; не более 3х юзербаров 350х20; не более одного юзербара 350х20 с тремя строками текста; не более одного большого юзербара 368х72; не более 3х юзербоксов 50х125. N6260 Ссылка на комментарий
RvP 1 Опубликовано 27 Апреля 2009 Поделиться Опубликовано 27 Апреля 2009 а хргейм.длл ты не менял? Vita sine libertate, nihil Vita sine litteris - mors est Ссылка на комментарий
buxoukot 0 Опубликовано 28 Апреля 2009 Поделиться Опубликовано 28 Апреля 2009 а как сделать пули видимыми? (ну то есть трассера). в некотрых модах при стрельбе прямо видно полоски как летит пуля. 2 а возможно заставить вертолёт (тот что на кордоне) стрелять по игроку.? и желательно после того как игрок в него пальнёт. ну допостим я в него с ак47 стрельнул а он по мне ракетами или пулемётом. или ты зону, или она тебя. Ссылка на комментарий
kokkai 97 Опубликовано 28 Апреля 2009 Поделиться Опубликовано 28 Апреля 2009 buxoukot, 1. gamedata\config\weapons файл weapons.ltx строка time_step. Ставь 33. 2. Вертолет и так утюжит ГГ после нападения на блокпост. а вот с вертушкой что-то не замечал. Я понял. Ты про ту что сначала пролетает. Нет, та чистой воды антураж. Ссылка на комментарий
buxoukot 0 Опубликовано 28 Апреля 2009 Поделиться Опубликовано 28 Апреля 2009 kokkai спасибо. а вот с вертушкой что-то не замечал. (у меня чистый сталкер) или ты зону, или она тебя. Ссылка на комментарий
Vergas 11 Опубликовано 28 Апреля 2009 Поделиться Опубликовано 28 Апреля 2009 8push5, А ведь ни один способ по сохранению переменных у меня ни сработал.... НЛС-6: У каждого своя зона _______________________________________________________________ Не ищи легких путей и не возвращайся той же дорогой Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти