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

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


Halford

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

@Houdini_one ,

Скрытый текст

 

[logic]
active = walker@start

...

[walker@start]
path_walk =
path_look =
wounded = wounded@medkit

...

[wounded@medkit]
...

 

Ну это именно для "подранков".

  • Спасибо 1

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


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

@андрей дронав , очередная ПЫС-кая каша с гулагами:

gulag_esc.script:

Скрытый текст

 

Состояние гулага:

if type == "esc_lager" then
...
            if has_alife_info("escape_lager_help") and not has_alife_info("escape_lager_killers_die") then
                return 2 -- оборона лагеря
...
end

      

 Работы Шустрого:

...
        table.insert(sj, t)
        t = { section = "logic@esc_lager_kamp1", --* а мы в кампе посидим
...
            prior = 16, state = {2}, --* оборона лагеря
...
        }
        table.insert(sj, t)

 

Ой, мама, да там ещё и Петруха:

        t = { section = "logic@esc_lager_defend9",
            predicate = function(obj_info)
                            return obj_info.name == "esc_novice_attacker1"
                        end
        }

 

И с Толиком, небось, что-то подробное.

Изменено пользователем Купер
  • Нравится 1

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


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

Други, древний ПЫСо-баг:

Кордон. Деревня Новичков. Периодически при старте НИ у одного-двух NPC из тамошнего гулага подвисает логика. Потом (в оффлайне) "размораживаются". Никто не занимался? Местечковое или глобальное?

 

Вдогонку, для общего развития :biggrin:. В чём разница между классами:

const stalker              clsid = 32

const script_stalker   clsid = 33

const trader               clsid = 34

const script_trader    clsid = 35

 

Изменено пользователем Купер

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


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

@mole venomous , вопрос в том, что:

1. Случайно - не конкретный(ые) NPC-яй(и).

2. Происходит нестабильно - через раз-два-три раза.

Ещё с оригинала. Ошибка где-то в глобальных алгоритмах или с конкретным гулагом "напридумывали" ?

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


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

@mole venomous , так 

4 часа назад, Купер сказал:

Потом (в оффлайне) "размораживаются"

Стандартное начало стандартной игры.

  • Спасибо 1

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


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

@Связистт , sr_light.script глянь. Рестриктор с логикой на принудительное включение:

[logic]
active = sr_light

[sr_light]
light_on = true

Пример: bar_angar_light_restrictor из оригинала

  • Спасибо 1
  • Полезно 2

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


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

"Что-то давненько не задавал я глупых вопросов"(c)

Имеется таблица вида:

local table =
{
    ["string_1"] = {
                    ["string2"] = float_1, float_2,
                   },  
...  
    ["string_n"] = {
                    ["string_2n"] = float_1n, float_2n,
                   },
}

Требуется перебрать и получить значения: float_1 - float_2 , float_1n - float_2n

 

Товарищи программисты и знатоки, снимите с ручника неумейку. Вечно во вложениях путаюсь. :t1807:

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


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

@андрей дронав , NPC роздан предмет, секция которого не указана в \gamedata\config\misc\death_items_count.ltx (кол-во выпадающих предметов в зависимости от уровня сложности).

Изменено пользователем Купер
  • Согласен 2
  • Полезно 2

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


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

Продолжаем задавать глупые вопросы. :biggrin:

selector_free_hunting, selector_cover, selector_hear_sound... selector_walk_around ( из конфигов мутантов) Что такое, с чем едят?

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


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

@shahvkit , а где-то можно посмотреть/почитать более предметно?

Что-то не находят эти наши интернеты ничего толкового по этому поводу. Пытался предварительно, разумеется, посмотреть сначала, где оно там под капотом в исходниках находится - и не нашёл (или просмотрел). Что, впрочем, неудивительно, исходя их уровня знаний. 

 

@Ворон545 , что-то подобное команда @phorumer-а у себя в НА-7 делала. И как раз на OGSR движке. Возможно, какие-то идеи заинтересуют.

  • Спасибо 1

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


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

Оно же ведь в оригинале на уровне движка зашито?

Скрытый текст

2.jpg

Энциклопедия, статьи вложены больше, чем на один уровень.

"Снаружи" никак к русской локали не подобраться. Или ошибаюсь?

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


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

@mole venomous ,

36 минут назад, Купер сказал:

статьи вложены больше, чем на один уровень.

"Предложения торговцев->/хлеб/->хлеб" ?

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


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

@mole venomous , проблема, условно:

1. Предложения торговцев/->хлеб - ОК. Первый уровень вложения.

2. Предложения торговцев/->хлеб/->хлеб. Вложение 2-го уровня. Русская локаль уже не воспринимается.

Это я соизволил начудить или оно действительно так?

Раздел - статья. Работает.

Раздел - подраздел - статья. Не хочет.

Изменено пользователем Купер

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


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

@AndrewMor , в данном случае это просто один и тот же callback, только по-разному именованный. В оригинале, как известно, отсутствовал, хоть и подразумевался, поэтому каждый восстанавливал его в меру своего разумения. Отсюда и различия в синтаксисе.

Пример:

Народная Солянка:

self.object:set_callback(callback.use_object, self.on_use_object, self)

Фотограф:
self.object:set_callback(callback.use_object, self.use_object, self)

  • Согласен 2

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


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

@Zander_driver , неудачно сформулировал, хотя ключевое и постарался выделить. :blush:

В данном случае получается, что для одного и того же события (callback-а) последовательно вызываются два обработчика события: сначала self.use_object, затем self.on_use_object

  • Не согласен 1

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


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

Всё, сдаюсь. В схоластике не силён. Главное в ситациии всё уже, наверно, поняли:

function actor_binder:on_use_object (obj)
    --* действия раз
end

function actor_binder:use_object (obj)
    --* действия два
end

 

 

 

Изменено пользователем Купер

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


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

@ted.80 , нет желания ни вспоминать, ни пробовать, какой именно вызов коллбека в итоге сработает в итоге: первый или последующий, но 2 обработчика на одно событие совместно работать не будут.

self.object:set_callback(callback.use_object, self.on_use_object, self)
...
function actor_binder:on_use_object (obj)
    --* действия раз
    --* действия два
end

А дальше уже домысливать желаемую задумку.

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


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

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