Случайная подборка модов
Радиоактивное мясо. Схватка
3.0
Dark Ukraine v 1.0
3.9
MISERY 2.2
4.1
Lost World Requital
3.9
Закоулки правды
3.6
G.L.A.D.I.A.T.O.R. II Время Альянса
3.4
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
⚙ Модострой: Вопросница
Российская Федерация  Wolfstalker
Среда, 24.02.2016, 00:25 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга


• Не флудить
• Предварительно просматривайте раздел, ведь ответ на ваш вопрос может быть там
• В своем вопросе указывайте платформу моддинга — Тень Чернобыля, Чистое небо или Зов Припяти




F.A.Q

  Злобная реклама
Среда, 24.02.2016, 00:25
Статус:
Сообщений: 666
Регистрация: 05.04.2010
Российская Федерация  [Qvt]
Понедельник, 28.03.2016, 14:34 | Сообщение # 676
Статус:
Отмычка:
Сообщений: 154
Награды: 3
Регистрация: 19.02.2016

_S_k_i_F_, вывод инфы в лог
  Злобная реклама
Понедельник, 28.03.2016, 14:34
Статус:
Сообщений: 666
Регистрация: 19.02.2016
Российская Федерация  antonnkz76
Понедельник, 28.03.2016, 14:45 | Сообщение # 677
5 лет в Зоне
Статус:
Опытный:
Сообщений: 2342
Награды: 9
Регистрация: 26.02.2012

makdm, привел ф-ю к такому виду, но по-прежнему спавнятся все объекты:
Код

function spawn_25p()
   local r = math.random(4)
   if not has_alife_info("random_spawned25") then
      db.actor:give_info_portion("random_spawned25")
      if  r == 1 then
         return true
      end
   end
   return false
end
Сообщение отредактировал antonnkz76 - Понедельник, 28.03.2016, 14:46
  Злобная реклама
Понедельник, 28.03.2016, 14:45
Статус:
Сообщений: 666
Регистрация: 26.02.2012
Российская Федерация  denis2000
Понедельник, 28.03.2016, 14:49 | Сообщение # 678
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

antonnkz76, Тогда уж хотябы так:
Код
function spawn_25p()
    if not has_alife_info("random_spawned25") then
  db.actor:give_info_portion("random_spawned25")
  local r = math.random(4)
  if r == 1 then
   return true
  end
    end
return false
end
  Злобная реклама
Понедельник, 28.03.2016, 14:49
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Российская Федерация  antonnkz76
Понедельник, 28.03.2016, 15:01 | Сообщение # 679
5 лет в Зоне
Статус:
Опытный:
Сообщений: 2342
Награды: 9
Регистрация: 26.02.2012

denis2000, я просто привык переменные в начале ф-ии определять. В любом случае, твой вариант тоже не работает. (но я понял, что это для уменьшения нагрузки, ведь в моем случае игра бесконечно бы определяла значение переменное)
Сообщение отредактировал antonnkz76 - Понедельник, 28.03.2016, 15:04
  Злобная реклама
Понедельник, 28.03.2016, 15:01
Статус:
Сообщений: 666
Регистрация: 26.02.2012
Российская Федерация  makdm
Понедельник, 28.03.2016, 15:17 | Сообщение # 680
Время Альянса
Статус:
Опытный:
Сообщений: 1787
Награды: 19
Регистрация: 22.11.2012

antonnkz76, а спавнер вообще поддерживает объекты, которые вы пытаетесь перевести в он-лайн???
  Злобная реклама
Понедельник, 28.03.2016, 15:17
Статус:
Сообщений: 666
Регистрация: 22.11.2012
Российская Федерация  antonnkz76
Понедельник, 28.03.2016, 15:58 | Сообщение # 681
5 лет в Зоне
Статус:
Опытный:
Сообщений: 2342
Награды: 9
Регистрация: 26.02.2012

makdm, хм интересный вопрос. Может быть секция Spawner работает только у НПС и монстров?
  Злобная реклама
Понедельник, 28.03.2016, 15:58
Статус:
Сообщений: 666
Регистрация: 26.02.2012
Российская Федерация  denis2000
Понедельник, 28.03.2016, 16:06 | Сообщение # 682
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

antonnkz76, В оригинальной редакции скриптов: НПС, монстры и транспорт.
Сообщение отредактировал denis2000 - Понедельник, 28.03.2016, 16:07
  Злобная реклама
Понедельник, 28.03.2016, 16:06
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Казахстан  riper
Понедельник, 28.03.2016, 16:08 | Сообщение # 683
Статус:
Бывалый:
Сообщений: 612
Награды: 6
Регистрация: 11.08.2013

_S_k_i_F_, спасибо
  Злобная реклама
Понедельник, 28.03.2016, 16:08
Статус:
Сообщений: 666
Регистрация: 11.08.2013
Российская Федерация  antonnkz76
Понедельник, 28.03.2016, 16:24 | Сообщение # 684
5 лет в Зоне
Статус:
Опытный:
Сообщений: 2342
Награды: 9
Регистрация: 26.02.2012

denis2000, а возможно ли распространить это на артефакты и прочие спавн элементы?
  Злобная реклама
Понедельник, 28.03.2016, 16:24
Статус:
Сообщений: 666
Регистрация: 26.02.2012
Украина  _S_k_i_F_
Понедельник, 28.03.2016, 17:03 | Сообщение # 685
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

antonnkz76, а может так
Код
function spawn_25p()
   local r = math.random(4)
      if  r == 1 then
alife():create("af_medusa",vector():set(x1,y1,z1),lv1,gv1)
      elseif  r == 2 then
alife():create("af_medusa",vector():set(x2,y2,z2),lv2,gv2)
      elseif  r == 3 then
alife():create("af_medusa",vector():set(x3,y3,z3),lv3,gv3)     
elseif  r == 4 then
alife():create("af_medusa",vector():set(x4,y4,z4),lv4,gv4)
      end
end
  Злобная реклама
Понедельник, 28.03.2016, 17:03
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  antonnkz76
Понедельник, 28.03.2016, 19:00 | Сообщение # 686
5 лет в Зоне
Статус:
Опытный:
Сообщений: 2342
Награды: 9
Регистрация: 26.02.2012

_S_k_i_F_, под рандомным спавном я имел ввиду не это.
Мне бы хотелось, чтобы некоторые вещи во множествах мест спавнились с какой-либо вероятностью. Таким образом, при начале новой игры спавн будет очень сильно отличаться от предыдущего раза. Мелочь, а приятно.
Видимо придется делать все сложно и через скрипты, создавая глобальную функцию спавна с разной вероятностью.
Мало ли кому будет интересно:
Добавляем в _g.script функцию:
Код

function rndm25_spawn(sect,x,y,z,lv,gv)
local rndm = math.random(4)
if rndm == 1 then
    local crd = vector():set(x,y,z)
    alife():create(sect,crd,lv,gv)
end
end

Затем в нужном месте используем, например:
Код
rndm25_spawn("af_medusa", -23.073846817017,-4.3486862182617,329.64279174805, 907730, 109)

С вероятностью в 25% в указанном месте появится артефакт. Вероятность зависит от строчки
Код
local rndm = math.random(4)

и высчитывается 1/"число в скобках после math.random"
Но такой спавн надо использовать только в крупных масштабах, как это сделано например в LWToD, где огромное количество предметов спавнится скриптом.
Сообщение отредактировал antonnkz76 - Понедельник, 28.03.2016, 19:46
  Злобная реклама
Понедельник, 28.03.2016, 19:00
Статус:
Сообщений: 666
Регистрация: 26.02.2012
Соединенные Штаты  Joni_009
Понедельник, 28.03.2016, 19:43 | Сообщение # 687
Статус:
Бывалый:
Сообщений: 1008
Награды: 14
Регистрация: 25.05.2014

Всем привет народ, возникла такая идейка а можно ли сделать так чтобы торговец давал товар в долг. Например не хватает тебе на оружие, торговец даст тебе в долг на 3-5 суток игровых конечно. Если ГГ не принесет деньги в срок, ствол пропадет из инвентаря или вообще где бы он не лежал. Желательно для ЗП.
  Злобная реклама
Понедельник, 28.03.2016, 19:43
Статус:
Сообщений: 666
Регистрация: 25.05.2014
Украина  _S_k_i_F_
Понедельник, 28.03.2016, 19:47 | Сообщение # 688
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

Скажите, как в ЗП сделать конкретного НПС другом или врагом? Заранее спасибо!
  Злобная реклама
Понедельник, 28.03.2016, 19:47
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  antonnkz76
Понедельник, 28.03.2016, 19:55 | Сообщение # 689
5 лет в Зоне
Статус:
Опытный:
Сообщений: 2342
Награды: 9
Регистрация: 26.02.2012

Joni_009, если есть способ отследить данный в долг предмет, чтобы в случае чего его удалить, то вполне возможно.

Добавлено (28.03.2016, 19:55)
---------------------------------------------
_S_k_i_F_, попробуй так:

Код

function npcenemy(obj1, obj2)
   if obj1:id() == db.actor:id() then
      obj2:set_relation(game_object.enemy, obj1)
   else
      obj1:set_relation(game_object.enemy, obj2)
   end
end

Первым параметром надо передавать актора, а вторым нужного нпса(но как именно я сказать не могу)
Эта функция чтобы сделать врагом, если хочешь другом - меняй enemy на friend.
Такая функция должна работать через диалог, но там параметры сами передаются, а как это сделать вне диалога, может быть тебе известно.
  Злобная реклама
Понедельник, 28.03.2016, 19:55
Статус:
Сообщений: 666
Регистрация: 26.02.2012
Российская Федерация  denis2000
Понедельник, 28.03.2016, 20:00 | Сообщение # 690
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

Цитата antonnkz76 ()
возможно ли распространить это на артефакты и прочие спавн элементы?

Да возможно, смотрите как это зацепленно папример в se_monster.script


Цитата Joni_009 ()
Если ГГ не принесет деньги в срок, ствол пропадет из инвентаря или вообще где бы он не лежал.

То есть вы хотите сказать что ствол не с того не с сего исчезнет из рук ГГ возможно прямо во время боя?
Сообщение отредактировал denis2000 - Понедельник, 28.03.2016, 20:00
  Злобная реклама
Понедельник, 28.03.2016, 20:00
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Поиск: