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

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


Halford

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

plusquam, скорее всего надо скомпилировать не на драфте.

Там еще проблемы были с аи-сеткой - она практически отсутствовала

Возможно ЖуКа все это уже исправил - попробуй спросить у него в личке

Поделиться этим сообщением


Ссылка на сообщение
Вот после его убийства в трупе один фонарик менеждером трупов уберется (прописан в "gameplay\character_items.xml"), а второй при шмоне точно найдется. И новая нелогическая затыка движку - как фонарик из трупа изъять? В death_manager.script только про один говориться... Мучительный выбор из двух одинаковых.

Должны оба убраться :)

в менеджере трупов перебираются все предметы и если предмет надо убрать, он убирается.

Вроде никаких затыков нет

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

Поделиться этим сообщением


Ссылка на сообщение

2Heroin Zero

Например, так:

function GetHandling(section)
  local ltx = system_ini()
  local condition_shot_dec = ltx:r_float(section,"condition_shot_dec")
  local n = 100
  return normalize(condition_shot_dec * n)
  -- [[
    не знаю диапазон значений condition_shot_dec. Если от 0 до 1, то так все нормально
    Если нет, то подобрать n, чтобы condition_shot_dec * n было от 0 до 100
  ]]
end

Поделиться этим сообщением


Ссылка на сообщение

не задал entrances для укрытия. В нем прописывается левел-вертекс. Сначала НПЦ добегает до него. а потом уже идет к центру укрытия

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

Поделиться этим сообщением


Ссылка на сообщение
задал - вылетает. убрал укрытие и всё равно вылетает, я даже не знаю в чём проблема.

Вылетает по идее уже с другой ошибкой же :) Напиши ее.

Укрытия на новые уровни уже добавляли - в той же народной солянке на новых уровнях есть укрытия. Можешь посмотреть, как там добавили

 

Сравни свой файл с оригинальным - может удалил что лишнее

Верни оригинальный файл на место. Может вылетает по другим причинам

Поделиться этим сообщением


Ссылка на сообщение

На офф. форуме в теме "вопросы по программированию" Skunk не так давно выкладывал архив с выдранными файлами. Можешь посмотреть на него.

 

Файлы, которые показывают новости, - это news_main.script и news_data.script.

Смотришь из каких файлов они вызываются и какие вызывают. Думаю что таких будет досточно много :)

Прослеживаешь зависимости до оригинальных файлов скриптов и выбираешь нужные файлы.

 

Вообще динамические новости в описании мода стоят на первом месте вместе с Оффлайн - A-Life.

Они занимают в моде достаточно большое место - приходят те же сообщения о выбросах, обшаривании тайников и прочего.

Если это все не брать, то останется не так уж и много сообщений :)

А если брать, то это уже будет практически АМК мод :)

 

 

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

Поделиться этим сообщением


Ссылка на сообщение
pstor имеет ограничени?

pstor, как и альтернативы, имеет ограничение на размер < 8кб - это размер НЕТ-пакета. с помощью которого сохраняются данные.

В АМК есть проверка на превышение этого размера в файле bind_stalker.script actor_binder:save

 

Альтернатива сохранять данные самим - смотреть опять же actor_binder:save. Можно сэкономить, на именах переменных

Поделиться этим сообщением


Ссылка на сообщение
Как самому сделать такую динамическую сеть (как в АМК и ОГСМ) чтоб там писало кто умер, всякие новости... Я брал скрипты от АМК, но ничего не получилось. Помогите, а?

Регулярно появляющийся вопрос :) Недавно задавали - попробуй найти автора и спросить у него, как далеко он продвинулся.

На офф. форуме можно попробовать спросить Alena - возможно она этим занималась. Из АМК выдрать достаточно трудно - сильно в нем новости завязаны.

 

Чтобы писало кто умер, добавь свой обработчик в xr_motivator.script в death_callback. Но будет писать только о тех, кто погиб в онлайне(в оффлайне в оригинале никто не гибнет) - то есть фактически о убитых ГГ. В АМК есть amk_offline_alife - благодаря ему НПЦ живут, сражаются и умирают не только на виду у ГГ. Тебе возможно придется сделать аналог.

Еще можно выдавать новости о спавне НПЦ - это в se_respawn.script функция spawn

Пока новостей не густо :) придется придумать новые виды самому: о выбросе - сделать выброс и т.д и т. п.

 

Хотите можно повыдирать из АМК - тогда нужно писать, что конкретно сделал, и какие ошибки выдавались.

 

 

Скриптеры, помогите пожалуйста...

Проверяю присутсвие некоего предмета obj в алайфе:

Где тут ошибка?

FATAL ERROR
...
[error]Arguments     : LUA error: No such operator defined

Ошибка в том что не определен оператор сравнения для этих объектов

Проверить есть ли предмет в алайфе - может понадобится для проверки использования предмета.

Проверяется следующим кодом:

    local sobj = alife():object(obj:id())
    if sobj ~= nil then
        amk.send_tip(tostring("Обьект найден"), "Внимание:", nil, 5)
        else
        amk.send_tip(tostring("Обьект не найден"), "Внимание:", nil, 5)
    end

 

 

Пожалуйста, подскажите: какие конкретно строки нужно править в конфигах файла

w_vintorez.ltx

чтобы изменить траекторию пули с параболы (навес) на прямую?

В частности, интересует Винторез: пуля летит не по прямой, а навесом, притом значительно снижается уже через 70-80 игровых метров. Хочется уменьщить такую "дугу". Считаю, что хотя бы 150 метров пуля, выпущенная из ВСС, должна лететь по прямой...

Насколько я понимаю надо увеличить параметр bullet_speed

Лучше спосить N6260 в личку - он спец по оружию :)

И еще не уверен, что это надо править :) В игре нет расстояний больше 150-200м - то есть дальше этих расстояний нет НПЦ :)

А параметры в АМК подбирались чтобы можно было побыть снайпером - учитывать расстояние и прочее

 

 

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

Поделиться этим сообщением


Ссылка на сообщение

Я не знаю :)

Могу посоветовать только подойти к нему вплотную и скриптом перебрать объекты - какой ближе всех, то и радио.

Или в all.spawn посмотреть - может у него название какое говорящее povar_radio или еще как.

Тебе лучше у модеров спросить кто музыку добавлял(Мюллер с Монголом, Сяк - у себя в НЛЦ добавлял)

 

[spoiler=Уболтал чертяка языкастый :)]

Посмотрел в all.spawn нашел следующие объекты(похоже на радио вроде :) ):

[5061]

; cse_abstract properties

section_name = physic_object

name = mil_physic_object0032

position = -26.2265224456787,-3.18275284767151,-18.2042560577393

direction = 0.0287999585270882,-0.613799750804901,-1.60559988021851

 

; cse_alife_object properties

game_vertex_id = 1545

distance = 0

level_vertex_id = 22

object_flags = 0xffffffba

 

; cse_visual properties

visual_name = equipments\item_fmradio

 

; cse_ph_skeleton properties

skeleton_flags = 1

 

; cse_alife_object_physic properties

physic_type = 0x3

mass = 10

 

[5094]

; cse_abstract properties

section_name = physic_object

name = mil_physic_object0094

position = 1.377605676651,-4.46606492996216,86.0176696777344

direction = -0.0985497906804085,-2.70467305183411,-1.52224361896515

 

; cse_alife_object properties

game_vertex_id = 1545

distance = 0

level_vertex_id = 22

object_flags = 0xffffff3a

 

; cse_visual properties

visual_name = equipments\item_fmradio

 

; cse_ph_skeleton properties

skeleton_flags = 1

 

; cse_alife_object_physic properties

physic_type = 0x3

mass = 10

 

 

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

Поделиться этим сообщением


Ссылка на сообщение
я ни че не понял. Спроси лучше у Руси насчёт баласта и вылета, т.к. я не очень хороший скриптер. Непонятно толко, зачем ваще там баласт.

Балласт нужен чтобы когда артефакт положили в контейнер у ГГ вес не уменьшался.

При укладке артефакта в контейнер он фактически уничтожается, в контейнер добавляется запись об артефакте и в рюкзак ГГспавнится балласт по весу артефакта

 

Чтобы балласта не было видно надо в конфиге указать размер иконки нулевой: вроде inv_height = 0 и inv_width = 0

Поделиться этим сообщением


Ссылка на сообщение
Работаю с проблемой 1 июня в игре (благодаря исправлению Kolmogor-а этот период оттягивается, но всего лишь дней на 16-18).

Кое-что нащупал, но нужна ваша помощь, не могу найти, где прописано время (частота) появления разных новостей (кроме news_main.script)?

проблема 1 июня из-за того. что функция level.get_time_days() возвращает день месяца, а не количество дней игры.

Например: если выброс был 30 числа, то следующего выброса надо ждать 31. А 31 будет только в июле :)

Надо найти все места где используется эта функция и заменить ее по аналогии, с тем как я заменял.

Для таймеров я поправил - это выбросы, сон. А в других местах нет

Поделиться этим сообщением


Ссылка на сообщение

x, y, z, r

x, y, z - координаты центра, r - радиус окружности, свободной от аномалий

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

Поделиться этим сообщением


Ссылка на сообщение

2Vergas

Просчитывается движком.

Но и свой скрипт для вывода написать не сложно - функции для получения количества патронов есть. На худ вывести не сложно.

 

2_DOMBRIST_

Похоже на неправильную модель(*.ogf). Возможно модель из ЧН

Поделиться этим сообщением


Ссылка на сообщение

При вызове send_tip надо в аргументе sender передать "barman"

вызывается так:

send_tip(news_text, header, timeout, showtime, "barman", sound)

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

Поделиться этим сообщением


Ссылка на сообщение

Gonarh

завис биндер ГГ перед сохранением и данные биндера не сохранились

в АМК отслеживается зависание биндера ГГ с помощью amk.oau_watchdog

в начале actor_binder:update этой переменной присваивают не нулевое значение. в конце присваивают 0

в motivator_binder:update проверяют на равенство нулю, если не ноль - значит actor_binder:update до конца не дошел

Если по мере выполнения actor_binder:update менять значение amk.oau_watchdog, то можно узнать место зависания

 

Поделиться этим сообщением


Ссылка на сообщение

wolkolak

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

 

quest

Твоя функция делает нейтральными только онлайновых военных. Если никто из военных не был в онлайне, то они так врагами и останутся

Проще всего думаю когда приходишь на кордон делать всех военных друзьями, а как уходишь возвращать обратно.

 

Или же добавить в motivator_binder:net_Spawn (вызывается когда НПЦ выходит в онлайн) проверку, что это военный на кордоне, и менять у него отношение на нейтральное

 

еще можно выделить кордонных военных в отдельную группировку :)

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

Поделиться этим сообщением


Ссылка на сообщение

Влад

а ПМ дали?

возможно в этот момент second_speaker не ГГ

Поделиться этим сообщением


Ссылка на сообщение

wolkolak

файл news_data.script массив do_seen_monster_templates

можно заменить enabled = true на enabled = false

или class поменять

Там правда только электрохимеры. обычных вроде там нет :unsure:

Поделиться этим сообщением


Ссылка на сообщение

wolkolak

WAWKA

Если имеется ввиду таблица local simMaxCount, то она не используется. Все обращения к ней закомментированы

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

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