Войти на сайт

Авторизация, ждите ...
×

ТЕМА: Подскажите скрипт отслеживания статусов

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125440

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Привет форумчане. Я в скриптинге не особо хухры-мухры, сколько раз пытался, вот вообще не понимаю как писать свои, то ли туториалы и обучалки языкам нахожу корявые, то ли руки из жопы.. Ну да не об этом..

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

Механика скрипта:

Я: Могу указать какие статусы (отравление, сон, паралич и т.д.) должны отслеживаться "счетчиком".
Счетчик: Должен выбранные статусы считать с самого начала игры (с момента нажатия Новая игра)
При достижении счетчиком определённого числа получения статуса: Actor изучает навык...

Вроде и понимаю примерно алгоритмом как это должно быть, но с синтаксисом и в целом языком проблемы...
По туториалам накалякал фигню какую-то.. но она не работает и если развернёте спойлер - посмеётесь от души.
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]


Надеюсь поможете, потому что в целом для моего проекта есть всё что мне нужно, кроме этого вот счетчика..
Если реализация не через настройку плагина, а через Note Text Tag'и под статусом или для навыка - ничего страшного, главное что бы считало и работало как я примерно описал. Надеюсь подскажете что нибудь
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125442

  • DarchanKaen
  • DarchanKaen аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 257
  • Спасибо получено: 233
  • Проект месяца 2 место3 место в Обучающем конкурсеВетеранПроект месяца 1 местоРазработчик
Я подумал, что мне такой плагин тоже пригодится (правда, для статистических целей) и сделал.

DKR Actor Status Accumulator 1.0 для MV
Код плагина нужно сохранить в файл с названием DKR_ActorStatusAccumulator и расширением .js (DKR_ActorStatusAccumulator.js)

код плагина [ Нажмите, чтобы развернуть ]


Плагин не совместим с другими плагинами, как-то влияющими на логику работы Состояний, т.к. изменяет эту логику.
Плагин поставляется AS-IS, вся ответственность на Пользователе (!).

Для использование нужно в Примечании Персонажа написать <statusAccumulator: N>, где N - номер Аккумулятора от 1 до 10.
После чего можно в вызове скрипта (например, в Определении переменной или Условии) получать количество определенного Состояние, наложенного на персонажа, такой скриптовой командой:
DKR.ActorStatusAccumulator.getStatusCount(actorId, statusId),
где actorId - номер Персонажа в Базе данных,
statusId - номер Состояние в Базе данных.

Более подробная информация - в описании плагина.

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

P.S:
Код, вероятно, не оптимальный - но он работает.
Мои игры [ Нажмите, чтобы развернуть ]
Последнее редактирование: 2 года 5 мес. назад от DarchanKaen.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: VarVarKa, ZakRew

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125443

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Ох нифига себе.. Спасибо огромное! Чуть позже в течении дня проверю как он вообще и отпишусь. Спасибо огромное! Что по поводу лицензий? Commercial\Non-Commercial
Администратор запретил публиковать записи гостям.

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125444

  • DarchanKaen
  • DarchanKaen аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 257
  • Спасибо получено: 233
  • Проект месяца 2 место3 место в Обучающем конкурсеВетеранПроект месяца 1 местоРазработчик
Я не очень шарю в лицензиях, давай так: можно использовать в любых типах проектах (коммерческие, некоммерческие) и если у проекта есть титры с указанием плагинов, желательно указать меня. =)
Код можно модифицировать как угодно, но с указанием что оригинальная версия - моя (в описании плагина / титрах / итд).

Еще раз, на всякий, уточню - плагин не дает выучить скилл, плагин дает возможность узнать сколько раз было наложено Состояние, и уже потом средствами мейкера что-то с этой инфой делать.
Мои игры [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: ZakRew

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125445

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Понял, ну в титрах и так собираюсь максимально всё указывать вплоть до авторов шрифтов xD
По поводу модификации хотел спросить но уже увидел ответ сразу)
Мне достаточно того что бы я мог указать сколько статусов и какие именно нужно отслеживать. а даже если в переменную запихивает счетчик - этого достаточно, там придумаю как реализовать автоизучение навыка под переменной с помощью общих событий или событий карт)
Администратор запретил публиковать записи гостям.

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125451

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Так. Есть несколько вопросов
1. На персонажа в примечание можно написать <statusAccumulator: 1-10> или нужно каждый раз писать этот тэг и указывать по 1 числу в каждой строке?
2. Переменные назначил, как привязать статус к переменной?
Ну то есть DKR.ActorStatusAccumulator.getStatusCount(actorId, statusId) и DKR.ActorStatusAccumulator.clearAccumulator(actorId) куда вписывать в скрипте? В переменную?

Я сейчас попробовал сделать эти команды в переменную запихнуть, но что-то не особо работает, наверное куда-то не туда вставил как бы двусмысленно это не звучало xD

Я написал в 10 строк СтатусАккумуляторы персонажу с проставленными id (надеюсь айдишники не с 0 начинаются а как написаны в списке статусов)
После этого сделал автозапусковое событие сначала привязав к переменной скрипт очистки, после чего добавил гетСтатусКаунт, задал НИПу условие получения нужного навыка/статуса, но после получения статусов в нужном кол-ве ничего не поменялось..

Полюбому куда-то не туда вставил





Последнее редактирование: 2 года 5 мес. назад от ZakRew.
Администратор запретил публиковать записи гостям.

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125452

  • DarchanKaen
  • DarchanKaen аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 257
  • Спасибо получено: 233
  • Проект месяца 2 место3 место в Обучающем конкурсеВетеранПроект месяца 1 местоРазработчик
Сейчас скрины сделать не могу.
У персонажа нужно в Примечании один раз указать номер Аккумулятора, всё 10 не нужно.
Далее перед получения кол-ва не нужно очищать, та команда на всякий случай.
Мои игры [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: ZakRew

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125453

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Я к тому, что мне нужно отслеживать сразу несколько переменных с кол-вом полученых статусов. То есть не один, например отравление, а Отравление/Сон/Паралич/.../ одновременно
Администратор запретил публиковать записи гостям.

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125454

  • DarchanKaen
  • DarchanKaen аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 257
  • Спасибо получено: 233
  • Проект месяца 2 место3 место в Обучающем конкурсеВетеранПроект месяца 1 местоРазработчик
Отслеживать можно любое количество Статусов, ничего для этого доп-го делать не нужно.

upd:
Скрин с объяснением, как можно использовать.
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Мои игры [ Нажмите, чтобы развернуть ]
Последнее редактирование: 2 года 5 мес. назад от DarchanKaen.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: ZakRew

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125473

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Вроде понял, ща попробую)

upd:
Сделал как на скрине, вроде всё сработало, немного не так как планировалось, но сработало (изначально предполагал что бы повторное наложение статуса при таком-же активном не засчитывалось, но и так тоже норм впринципе, лучше чем никак :blush: ) Но вот после того как я активировал скрипт через НИПа и получил статус себе необходимый, при входе в битву выбило такую ошибку


upd2:
Вот лог из консоли про ошибки
Последнее редактирование: 2 года 5 мес. назад от ZakRew.
Администратор запретил публиковать записи гостям.

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125487

  • DarchanKaen
  • DarchanKaen аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 257
  • Спасибо получено: 233
  • Проект месяца 2 место3 место в Обучающем конкурсеВетеранПроект месяца 1 местоРазработчик
Не могу повторить ошибку.
Я проверял такие варианты:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

И запись в переменную на любом из шагов.

Что именно ты делал?
На всякий случай уточню, что очищать командой .clearAccumulator() - не обязательно, это доп. функция "на всякий случай".
Мои игры [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: ZakRew

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125488

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
1. Прописал <statusAccumulator: 1> главному персонажу
2. Назвал переменную "Счетчик отравлений"
3. Создал статус "Иммунитет к отравлению" (StateId.23)
4. Провел тестовый бой против врага который 2 раза меня отравил
5. Поговорил с НИПом где содержимое
• Переменная #0001 Счетчик отравлений = DKR.ActorStatusAccumulator.getStatusCount (1, 4) (Я поменял переменные для удобства с 10-20 на 1-10)
• Если: Счетчик отравлений Больше или равен 2
Скрипт: $gameParty.leader().addState(23);
Конец
6. После разговора с НИПом получил нужный статус иммунитета к отравлению
7. Захожу снова в бой и либо сразу, либо через несколько секунд вылетает ошибка. Аналогичное если НЕ заходить в бой

UPD: Если это важно, то версия Мейкера у меня последняя которую мне загрузил Steam (лицензия, осуждаю пиратки)
Последнее редактирование: 2 года 5 мес. назад от ZakRew.
Администратор запретил публиковать записи гостям.

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125489

  • DarchanKaen
  • DarchanKaen аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 257
  • Спасибо получено: 233
  • Проект месяца 2 место3 место в Обучающем конкурсеВетеранПроект месяца 1 местоРазработчик
Повторил твои действия (с теми же номерами переменных ...+ дополнительно с / без очистка до боя) - ошибка не проявляетя.

Извини, у меня сейчас нет возможности более детально смотреть ситуацию.
Маловероятно, но может как-то влияют другие плагины (если используются) - ошибка в консоли из моего плагина то.=(

Единственное что - такая команда скрипта не учитывается плагином (учитывается или Состояние в бою, или эвентом "Изменить состояние").

Ну, пусть и не помог - но код плагина у тебя есть, может он тебя натолкнет на "нужные мысли" для твоей реализации...ну или ты другой похожий найдешь.
Мои игры [ Нажмите, чтобы развернуть ]
Последнее редактирование: 2 года 5 мес. назад от DarchanKaen.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: ZakRew

Подскажите скрипт отслеживания статусов 2 года 5 мес. назад #125490

  • ZakRew
  • ZakRew аватар
  • Вне сайта
  • Путник
  • Сообщений: 8
  • Спасибо получено: 2
Без проблем) Спасибо в любом случае! И так огромную работу проделал) Спасибо!)
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: DarchanKaen
Модераторы: NeKotZima
Время создания страницы: 0.640 секунд