LoL: Positive Reinforcement
Я, кстати, заплатил за LoL $29.95. Это первая бесплатная игра, за которую я заплатил.
Некоторые вещи сделаны просто, но гениально и правильно.
Например: встроенная ELO система матчмейкинга хорошая — я уже давно сижу на 50/50% побед/поражений (что хорошо по определению), хотя мой скилл растет.
Не смотря на якобы «хардкорность» игры, меня всегда сводят с игроками примерно моего уровня — и все благодаря ELO. (Ну, я старый фанат этой системы).
То есть нубы всегда играют с нубами — это позволяет делать довольно «сложные» механики, но при этом не отпугивать новых игроков, как в классической доте.
Если бы не бросаешь игру, то в конце получаешь накопительные бонусные очки. Да, так просто. В другом клоне доты на тебя вешается клеймо «leaver» и ты не можешь присоединяться к играм, у которых в свойствах написано «no leavers». Бред, да.
Игрока надо поощрять, а не наказывать.
Соотношение контент/игровое время гениальное: в игре одна карта и 30 героев. Сыграть одним героем один раз занимает около часа — уже имеем 30 игровых часов. Сыграть одним героем так, чтобы научиться, нужно игр десять — итого уже 300 игровых часов.
Играем всего лишь 8 часов ежедневно и проходим игру всего за 2 месяца!
На одной карте. Которая не утомляет, потому что PvP.
Комбинации команд из 5 человек на тех же 30 героях (при условии, что в одной команде не могут быть два одинаковых) желающие могут посчитать сами.
Оплата — тоже гениальна: каждую неделю ты можешь играть только 10 героями из 30. Хочешь разлочить всех — плати либо временем в игре (их надо нафармить, но это весело), либо баблом.
Что самое главное — разлочивание всех героев не сделает тебя в 30 раз сильнее, потому что играешь ты все равно одним, то есть не особо влияет на внутриигровые преимущества.
Не смотря на относительную свежесть игры, там уже есть довольно неплохой метагейм.
Короче, предрекаю именно LoL-у благоденствие и процветание.
LoL: кулдауны
Лично я не люблю кулдауны, потому что забываю про них, и кулдаун теряет часть своей эффективности.
Пару месяцев назад я придумал способ, как этого избежать, и вот на днях увидел его в LoL.
Способ правильный и хороший, молодцы!
Итак, у нас есть условная способность, которая увеличивает силу атаки на 900 на 20 секунд. Кулдаун у нее 3 минуты, то есть способность можно применять каждые 3 минуты.
Время действия (uptime) = 20 секунд/3 минуты = 20/180 = 0.12 = 12% времени.
Таким образом, способность «в среднем» дает 900*0.12 = 108 силы атаки: если мы в течение часа будем применять этот кулдаун каждый раз, когда он становится доступным, мы столько и получим — это почти то же самое, что иметь пассивную способность +108.
Разница только в том, что активация способности дает burst, то есть «сконцентрированный» эффект, иногда он нужен, иногда — не обязателен.
Что происходит, когда игрок забывает тупо активировать способность каждые 3 минуты? Средняя эффективность способности начинает стремиться к 0.
Игроки, естественно, или забывают, или прописывают активацию способности в макрос и тоже забывают про нее.
А теперь — решение.
Если у способности прошел кулдаун, то есть игрок может активировать ее в любой момент, но почему-то это не делает, способность дает пассивные +108 силы атаки.
Если игрок активировал способность, то он получает +900/20 секунд, но зато на следующие 3 минуты теряет эти пассивные +108.
Таким образом, эффективность способности всегда «в среднем» одна и та же, активирует ее игрок тогда тогда, когда нужен именно burst-а, а не поддержания эффективности.
Мандарины!
Business-level fluency in Mandarin Chinese a plus. ‘Cultural’ fluency in Chinese culture, especially Chinese gaming culture, a plus.
Требования в геймдизайнеру.
«А реалисты учат китайский», ага. (Анекдот).
AI в Сталкере
Читаю про AI в Сталкере.
У меня вопрос только один: кто там дурак — геймдизайнер, который дал программистам задание сделать независимый от игрока мир «и чтобы боты могли сами разгадать тайну Зоны» или руководство проекта, которое не уследило за этим и дали возможность программистам долго и безуспешно придумывать «честный» AI?
Я был очень счастлив, когда я прошёлся за сталкером с одного уровня на другой, смотрел, как он ищет артефакты, находит их, потом возвращается на уровень к торговцу, подходит, торгует, выбирает новое задание и идёт дальше – жаль, что это не вошло в оригинальную игру.
То, что программисты честно взялись за интересную задачу, не задавая вопросов — вполне понятно. Оставленные без присмотра программисты и не такое натворить могут.
А разгадка проста: AI в играх не должен быть правдивым, а всего-навсего должен выглядеть правдоподобным.
Разница, на самом-то деле, огромна.
Вы, например, Fallout 2 помните? Вас не смущает, что на выходе из деревни вы видите чувака, которого придется месить в конце на базе, а после нахождения GECK-а внезапно всю деревню похищают? Или, например, на вас нападают рейнджеры, если вы плохой?
Первое — скриптованная сцена, второе — триггер, расставленный гемдизайнером. Что удивительно — главный злодей не решает сам выйти из базы, пройтись по миру и «случайно» встретиться с вами, рейнджеры не читают газет, из которых узнают, что вы поплохели, и не идут сами охотиться на вас.
Тем не менее, мир целостен, и игрок понимает «я плохой — на меня нападают хорошие», в то время, как это простая проверка «если карма меньше Х», безо всяких нейронных сетей и прочего говна. У игрока не возникает вопросов «а существует ли этот случайный корован после того, как я уйду с карты?». Нет, не существует.
Написать хороший, пусть даже «устойчивый к случайностям» сценарий в разы проще, чем пытаться делать настоящий AI.
Конкретно применительно к Сталкеру я бы сделал все проще: нагенерил несколько типовых сценок, типа «спасение NPC от волков», «спасение тебя NPC-ём», «смерть NPC», а потом бы «скармливал» игроку, до смерти NPC:
Берем несколько («пять», больше игрок просто не запомнит) случайных NPC, сводим их с игроком. Сводим их тупо, безо всяких «а на самом деле NPC в другой зоне, хотя игрок про это не знает». (Вообще, делать что-то, о чем игрок не знает и никогда не увидит — чрезвычайно тупое занятие). Сводим через какие-то промежутки времени («каждые 20 минут»).
NPC умер, желательно в присутствии игрока — замечательно, факт смерти отметили, перестаем подсовывать игроку этого NPC, вводим следующего.
Игрок не только не заметит подвоха, но и будет рад: кругом — знакомые лица.
Когда я в первый раз играл в «Сталкера», я специально искал следы умного AI. Кончилось все тем, что я несколько раз видел NPC с одним и тем же именем в разных зонах. И, собственно, всё.
Подобный эффект достигается, кстати, безо всяких AI, если дать NPC повторяющиеся имена. И я не шучу.
«Честный» интеллект хорош для игры, типа Sims 3 — когда персонажи живут на экране, а игрок за ними наблюдает. Тогда это «в тему». Тем не менее, AI в Sims не сложнее амебы, а игра все равно в топах по продажам.
Что лишний раз доказывает.