Для реализации некоторых ситуаций, связанных с внутренним временем игры, неплохо было бы иметь некий таймер, он же — глобальный счётчик "тактов" игры. Например, чтобы узнать, как давно в локации побывал персонаж нужно вычесть текущее показание этого счётчика с показанием счётчика на момент пребывания персонажа в локации. Или запрограммировать какое-либо событие на столько-то "тактов" от текущего момента (нет, это не real-time), например, отправление поезда через 20 тактов от покупки билета.
Так вот вопрос — что лучше брать в качестве "такта"? Логично, что в этом качестве может выступать любое действие игрока. Но разные действия, по идее, могут занимать разное число тактов: покупка билета займёт больше времени чем осмотр площади перед кассой и уж тем более — чем смена обоймы в пистолете. Хотя на это можно и забить. А есть ли ещё варианты? Но без скатывания к real-time.
Неактивен
Oreolek написал:
…у нас будет четыре лишних скучных такта, …и каждый такт ему придётся нажимать на кнопку «ждать».
На самом деле можно привязать к действию, количество тактов, за которое оно выполняется. Например предложить автору сообщать игре о факте свершения какого-либо действия (как заинтересовать автора это делать — как-нибудь в другой раз). Так вот, по умолчанию это сообщение говорит о прошествии 1 такта игры, но автор может указать и большее число. Т.е. при перезарядке пистолета автор сообщает игре (повторюсь: о том как его в этом заинтересовать — не в этой теме), что на это ушёл 1 такт, а если он покупает билет — то это уже тактов 50 (или же, если он в хороших отношениях с кассиром, — 15).
Неактивен
Oreolek написал:
А как тогда это объяснить игроку? Почему у меня поезд отходит сразу же, как только я куплю билет, а мой друг Петя купил билет и ещё успел побродить по перрону? Всё равно придётся вводить какое-то внутриигровое отражение.
А что мешает заранее донести до игрока, что если в баре угостить кассира пивом, то можно избежать участи приятеля персонажа, который накануне наорал на кассира и битых 20 минут ждал, пока тот мстительно долго оформлял билет?
Неактивен
Cheshire написал:
Это скорее пример того, что можно с этим счётчиком делать.
Неактивен
Если говорить о событиях по таймеру, то какими могут быть параметры запуска и "расписание" для подобных событий?
Привязка. Событие может быть привязано:
Повторение. Событие может происходить:
Периодичность. Событие может происходить с периодичностью:
Неактивен
Eten написал:
Вы забыли еще коэфициенте тактов, назовем его фактор такта, который в зависимости от фактора и обстоятельств в игре влияет на величину такта. Согласитесь, что ГГ не может бегать все время, как супермен или могут быть обстоятельства, из-за которых он не может двигаться с обычной скоростью (например, пьяный или съел таблетку быстрой ходьбы и т.д.).
Как это забыли?
Olegus t.Gl. написал:
На самом деле можно привязать к действию, количество тактов, за которое оно выполняется … Т.е. при перезарядке пистолета автор сообщает игре, что на это ушёл 1 такт, а если он покупает билет — то это уже тактов 50…
Неактивен