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

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

Тема для обсуждения скриптов всего и всех в серии игр STALKER.


Задавая вопрос (!):
1. Внимательно изучите суть вопроса. Вопрос должен соответствовать выбранной Вами темы. Это поможет сохранить порядок и читабельность темы, а также облегчит поиск и понимание сего;
2. Изучите то, что уже есть в теме (пролистайте "руками", воспользуйтесь поиском на форуме);
3. Изучите информацию которая может вам помочь:

 
 

Stalkerin. Там есть много хороших статей касательно данной темы.
Уроки по модостроению. Есть рабочие примеры готовых скриптов различного назначения.

 

Справочное руководство по языку Lua 5.1
https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/ru
Справочник по функциям и классам. Собрано много информации по функциям и классам, не всем, но по основные сведения предоставлены.

4. Дабы не превращать обсуждение в "кашу" разной информативной направленности, задавайте несколько вопросов по порядку (в разных постах) после того, как получите ответ на предыдущий вопрос;
5. "Спасибо" и тому подобное - будьте так любезны в ПМ. Если не любите писать в ПМ, в конце вопроса напишите фразу: "Заранее спасибо!" - или что-то в этом духе;
6. ПОЖАЛУЙСТА! Указывайте, для какой игры Вам необходима информация (ТЧ, ЧН, ЗП), если стоит мод - укажите название мода;
7. Если Вы что-то сделали и результат не такой, какой Вами задумывался, то, пожалуйста, приводите коды которые Вы изменяли/писали целиком! Это поможет другим правильно ответить на Ваш вопрос, а также оградит Вас от лишней писанины.
8. Оформляйте сообщение. Пользуйтесь тегами для того, чтобы отделить код от текста. Пишите грамотно - ПОЛЬЗУЙТЕСЬ ЗНАКАМИ ПРЕПИНАНИЯ.
9. И помните: «Правильно заданный вопрос – половина ответа».

 

Какие вопросы следует задавать, а какие нет...

 

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

 

Вопросы которые будут удалятся, следовательно их задавать не нужно:
-- Где находится та или иная функция?
Для ответа используем поиск по словам среди файлов оригинальной игры или мода, если объект поиска относится к нему, при помощью программы, которая Вам наиболее симпатизирует;
-- Как сделать что-то/то-то?
С подобными вопросами, либо в "ковырялки", где Вам вероятнее всего так же не ответят, либо выдвигаем мысли, подкреплённые теорией, практикой (идеальный вариант) и здравым рассудком;
-- Вопросы со смыслом: "сделайте", "совместите" и подобными глаголами повелительного наклонения.
-- К тому же удалению будут подвергаться вопросы, в которых масштабно не используются теги, для отделения кода и цитат от основного текста, а также не вписан в спойлер код размером превышающие семь строк.
Ответ на возможно возникший вопрос: В какую тему можно обратиться по поводу логики и спавна объектов?
В тему "ковырялок" соответствующей версии игры, для которой Вы задаёте вопрос.

И последнее: очень рекомендовано к прочтению Правила форума
 


  • Спасибо 1
  • Полезно 2
Ссылка на комментарий

кровоSTALKER боольшое тебе спасибо за скрипт, подбросил ты мне идейку, а этот способ подмены к сожалению я знаю, и за счет него и хочу сделать! Похоже сменить файл конфига оружия во время игры ни как не получиться также как и визуал по настоящему, выход только этот способ RE спавна, буду пробовать, результаты выложу сюда (ну в отдельную тему) спасибо вам большое что откликнулись, много где искал но ответа ... но теперь получил!!!

Ссылка на комментарий

ФеНиКс, конфиг\text\rus\stable_statistic_caption.xml для стастистики

А так по рангам все обычно и у вояк и у Долга.

У них только лейтенант и тд. - это "имя" вояк.

Лейтенант Ололло, например.

Изменено пользователем SkyLoader
Ссылка на комментарий

кровоSTALKER,

Как убить ГГ скриптом?

db.actor:kill(db.actor)

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий

Darien,

нет, позиция записи не может быть меньше позиции чтения :) Посмотри внимательней на код в симбионе и асдс - там должны использоваться 2 пакета: один получается из STATE_Write, другой из UPDATE_Write

По идее параметры, начинающиеся на upd_, должны вычитываться из пакета, полученного UPDATE_Write

Ссылка на комментарий

Kolmogor

В Симбионе есть 2 функции - одна читает параметры без 'upd' значений, и там нигде не используется UPDATE, а есть функция, в которой так же идёт считывание 'upd'. Но мне эти 'upd' нафиг ненужны, но обойти их считывание не получается.

Ссылка на комментарий

Почему видео не проигрывается?

 

function dead_is_actor() --' на актор апдейте
  if db.actor and not db.actor:alive() and db.actor:dont_has_info("info_dox") then
    game.start_tutorial("x18_dream")
    db.actor:give_info_portion("info_dox")
  end
end

Изменено пользователем ФеНиКс
87728-stalker.gif
Ссылка на комментарий

В дополнение к предыдущему посту.

Что означает в коде if db.actor? Остальное вроде как понятно, но лично я перевожу этот кусок как "если ГГ". Если что?

Извиняюсь, если задал какой-то глупый вопрос - опыта мало.

 

Ссылка на комментарий

Smiles

if db.actor -- Это означает, что если это именно ГГ...

(остальной кусок означает)...и он не в онлайне и не выдан поршен, то...

Изменено пользователем ФеНиКс
87728-stalker.gif
Ссылка на комментарий

ФеНиКс

Это означает, что существует ли ГГ. И не "и он не в онлайне", а "мёртв ли ГГ".

Kolmogor

Вопрос отпал. :)

 

Ну суть-то та же...

О да.. не смеши и не путай людей.

Изменено пользователем Darien
Ссылка на комментарий

А в функциях вывода сообщения:

function bery_batareyku()
    news_manager.send_tip(db.actor, "  ", 0, "trader", 20000)
end

 

можно писать не сам текст, а просто ссылку на него, типа, как в диалогах?Если да, то где сам текст нужно будет писать?

----------------------------------------------------------------------------------------------------------------------------

Vano_Santuri

Понятно, спасибо.

Изменено пользователем Stalk15
Ссылка на комментарий

Stalk15, ссылку можно на локальную переменную, допустим :

 

function bery_batareyku()
  local news_text ="если текст, то писать в ковычках"
или 
local news_text =скрипт.значение -- это если текст в файле серипте.
news_manager.send_tip(db.actor, news_text, 0, "trader", 20000)
end

А если хочешь дать скриптом диалог, то нужна эта функция:

 

local text = "или текст или из срипта"
db.actor:give_talk_message(text, "ui\\ui_iconstotal", Frect():set(0,0,10,10), "simple_answer_item")

 

Еще можно попробовать метод, я его не пробовал, но должно работать, если текст обозначить как

 

local text = game.translate_string(id текста из файлов диалога) -- Но я не разу не пробовал...

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

Что-то кончается, что-то начинается...

Ссылка на комментарий

Только один момент не совсем понял:В 1 скрипте написал:

function test()
local news_text = fun_kvests.rockew
news_manager.send_tip(db.actor, news_text, 0, "trader", 20000)
end

 

А в скрипте fun_kvests это:

local rockew = "Текст!"

Но что-то не срабатывает.Может что не правильно сделал?

------------------------------------------------------------------------------------------------------------------------------------------------

Darien

Я так тоже пробовал:

local news_text = fun_kvests.rockew
function test()
news_manager.send_tip(db.actor, news_text, 0, "trader", 20000)
end

 

 

Изменено пользователем Stalk15
Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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