Случайная подборка модов
ReBorn 2.50 «Артефакты смерти»
3.5
Золотой Шар. Завершение
3.9
Doomed to Eternal Torment
3.9
Lost Alpha DC
3.9
The Project Medeiros
3.7
На Болотах
3.7
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
⚙ Модострой: Вопросница
Российская Федерация  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
Поиск: