Комментарии 80
Хм, вас опередили
У Микрософт давно (очень) похожее было — terrarium2.codeplex.com/
Как и сказали выше, задумка не нова. Но в виде онлайн-стратегии я ее еще не видел. Заинтересовали, подписался на уведомление о запуске.
Да, смысл слова «первая» не в том, что это первая «игра для программистов», а в том, что первая «стратегическая MMO-песочница для программистов».
Вот это и понравилось.
Т.к. играл во всяких роботов и прочее. надоедает после десятого руанда.
А после статьи вспомнился Travian, т.к. там тоже мир «жил в оффлайне» и это было нереально круто.
Т.к. играл во всяких роботов и прочее. надоедает после десятого руанда.
А после статьи вспомнился Travian, т.к. там тоже мир «жил в оффлайне» и это было нереально круто.
Все верно, Травиан — наиболее близкий пример. Надеюсь, мы вас не разочаруем :)
1)
про монетизацию ничего не рассказали. как-то же вы собираетесь поддерживать сервер и отбивать время и деньги.
человек может убить кучу времени на создание скриптов, а вы с нг скажете «ребзя, отныне каждый чих любым вашим крипсом платно!»
или подписка?
2)
и что если сначала ктото выложит стратегию, которая сразу захватит доступные комнаты, а новых будет давить просто своей разросшейся армией?
про монетизацию ничего не рассказали. как-то же вы собираетесь поддерживать сервер и отбивать время и деньги.
человек может убить кучу времени на создание скриптов, а вы с нг скажете «ребзя, отныне каждый чих любым вашим крипсом платно!»
или подписка?
2)
и что если сначала ктото выложит стратегию, которая сразу захватит доступные комнаты, а новых будет давить просто своей разросшейся армией?
1) Подписка на объем серверной мощности (CPU и память). Все честно, подробности — на старте.
2) Тут уже задача сделать такой гейм-дизайн, чтобы подобное было затруднено. Да и универсальной стратегии быть не может, потому что комнаты будут различаться по ландшафту.
2) Тут уже задача сделать такой гейм-дизайн, чтобы подобное было затруднено. Да и универсальной стратегии быть не может, потому что комнаты будут различаться по ландшафту.
2) можно брать налог с добычи ресурсов в зависимости от размера армии, как это было в war craft 3
Мне кажется если будет подписка на серверные мощности то всё в итоге в них и упрётся. Особо и придумывать ничего не надо.
Согласен.
Битва с соседом без «подписки»: 1 такт игрока1, 5 тактов соперника: пока более умный ИИ игрока1 идет к ресурсу, соперник уже подошел к нему.
В итоге все игроки с «подпиской» будут задавливать игроков без подписки очень легко с глупым АИ. И это добьет проект.
В качестве монетизации можно было бы проводить турниры раз в месяц между игроками. Есть взнос за участие, победитель получает 30%. 70% сервер оставляет себе. Между игроками есть 3 боя на 3х рандомных картах (3х3 ячейки).
Также монетизация возможна в качестве образовательной платформы для использования в ВУЗах на факультативах по JavaScript.
В конце семестра — зачетный бой против АИ преподавателя…
Возможна и монетизация со спонсорами.
К примеру, codeforces.ru для «игроков» бесплатен, а монетизацию Мирзаянов продумал по аналогии с указанной мною выше.
Битва с соседом без «подписки»: 1 такт игрока1, 5 тактов соперника: пока более умный ИИ игрока1 идет к ресурсу, соперник уже подошел к нему.
В итоге все игроки с «подпиской» будут задавливать игроков без подписки очень легко с глупым АИ. И это добьет проект.
В качестве монетизации можно было бы проводить турниры раз в месяц между игроками. Есть взнос за участие, победитель получает 30%. 70% сервер оставляет себе. Между игроками есть 3 боя на 3х рандомных картах (3х3 ячейки).
Также монетизация возможна в качестве образовательной платформы для использования в ВУЗах на факультативах по JavaScript.
В конце семестра — зачетный бой против АИ преподавателя…
Возможна и монетизация со спонсорами.
К примеру, codeforces.ru для «игроков» бесплатен, а монетизацию Мирзаянов продумал по аналогии с указанной мною выше.
Битва с соседом без «подписки»: 1 такт игрока1, 5 тактов соперника: пока более умный ИИ игрока1 идет к ресурсу, соперник уже подошел к нему
Такты для всех игроков идут одинаково. Просто за такт один игрок с лучшим тарифом может выполнить более ресурсоемкий скрипт, чем другой. Но при этом более грамотно написанный скрипт может быть менее ресурсоемким сам по себе, поэтому преимущество не очевидно.
Что значит выполнить скрипт? Весь?
Есть такты процессора (игрового мира), каждый такт — 1 команда скрипта. Пошаговое поочередное исполнение всех сценариев.
Так реализовано в colobot, robowar, robocode и других проектах (перечень таких проектов).
Или же игроку предоставляется непродуманное API, где в скрипте каждый раз нужно будет инициализировать переменные, обсчитывать весь мир, определять стратегию, чтобы сделать ОДИН ход?
Мой скрипт не будет ресурсоемким, но он требует сохранения своего контекста.
То есть каждый ход будет просто «move, attack » + чуть-чуть логики, но суммарно это будет подветвь большого скрипта, скажем дерева принятия решений.
Так что будет «такт» в вашем проекте?
Есть такты процессора (игрового мира), каждый такт — 1 команда скрипта. Пошаговое поочередное исполнение всех сценариев.
Так реализовано в colobot, robowar, robocode и других проектах (перечень таких проектов).
Или же игроку предоставляется непродуманное API, где в скрипте каждый раз нужно будет инициализировать переменные, обсчитывать весь мир, определять стратегию, чтобы сделать ОДИН ход?
Мой скрипт не будет ресурсоемким, но он требует сохранения своего контекста.
То есть каждый ход будет просто «move, attack » + чуть-чуть логики, но суммарно это будет подветвь большого скрипта, скажем дерева принятия решений.
Так что будет «такт» в вашем проекте?
- Одна команда процессора
- Одна строчка кода
- Одна функция в скрипте (OnTurn)
- «Весь скрипт», как сказано вами выше
Речь про такт игровой механики. Одна итерация выполнения всех скриптов игроков, после которой выполняются все полученные команды. Вы можете хранить любые временные данные в вашем собственном JSON-хранилище, которое передается из такта в такт, но какие-то вычисления все равно придется делать в реальном времени в каждом такте. Например, надо пересчитывать путь, так как на предыдущей просчитанной траектории могут возникнуть препятствия (ваши или чужие крипы).
Хотелось бы увидеть пост с описанием механики, чтобы можно было подумать над стратегией до старта
«Easy to learn, hard to master»
Нагло украли у Blizzard
Нагло украли у Blizzard
На первый взгляд похоже на Code Combat.
НЛО прилетело и опубликовало эту надпись здесь
Отличная задумка и, судя по видео, приличное исполнение. Не понимаю почему читатели так скептически подходят к Скрипсам.
Фигачьте дальше, пожалуйста!
Фигачьте дальше, пожалуйста!
Очень интересная задумка!
А никто не знает подобную игру, только для пацифистов. Например, градостроительная стратегия, или аналог Transport Tycoon?
А никто не знает подобную игру, только для пацифистов. Например, градостроительная стратегия, или аналог Transport Tycoon?
Разные скрипты могут иметь совершенно разные параметры быстродействия и сложности (и следовательно, по разному будут нагружать ваши сервера). Я подумал, что это тоже может быть объектом геймплея (и монетизации). Построили Spawn — у вас есть возможность писать скрипты со сложностью N, построили второй — можно писать скрипты сложности 2*N (ну, или 1.9*N, чтобы была нелинейная зависимость). Построил 100 — можно делать очень сложные скрипты.
Будет непросто определять сложность скрипта, обычными SLOC не обойтись, но мне кажется, это может быть интересным моментом, добавляющим динамику и сложность.
Будет непросто определять сложность скрипта, обычными SLOC не обойтись, но мне кажется, это может быть интересным моментом, добавляющим динамику и сложность.
Сложность скрипта мы и не пытаемся определять. Ограничение идет по физическому времени исполнения скрипта в миллисекундах.
да, неплохое решение. Но я больше говорю о том, чтобы это ограничение было геймплейным, а не техническим. Чтобы игровыми действиями можно было бы заработать больше машинного времени. Ну, и продавать не просто «тарифный план», а «убер-научный центр, +10 к машинному времени» (утрирую).
А как вы определяете время выполнения скрипта в мс? Если сервер загружен — одно время, если нет — другое?
Очень интересно, хотя я и не программист.
Получает тут даже генетические алгоритмы можно попробовать применять. А какую либо информацию между тактами в «банке данных» сохранять можно?
А крипы смогут как-то «общаться» с чужими крипами? Это позволило бы создавать достаточно сложные альянсы игроков…
Через некоторое время умельцы напишут обёртку, чтобы можно было мышкой щелкать :)
Нагрузочное тестирование проводили?
Не рано ли запуск? Может, стоило на kickstarter-е денег подсобрать?
Описание есть, демо-ролик есть, api наброски — есть.
Описание есть, демо-ролик есть, api наброски — есть.
Уже завтра. В котором часу планируете запускать проект?
Ждем письма. Все включая документацию и песочницу будет открыто сегодня?
Точно 20 ноября 2014 года?
Мы заждались уже.
Мы заждались уже.
И правда, ну где же? Мы уж заждались!
Эх, был бы хотя бы CoffeeScript/TypeScript доступен…
Какой облом… Даже не стал смотреть песочницу, ибо сыграть с компьютером я могу и в других играх…
А как создать ConstructionSite?
Пошёл в таториал, создал не одного строителя а 4х, таториал создал мне противника и игра сказала «CPU limit reached».
На core i7 в хроме.
Грустно это.
На core i7 в хроме.
Грустно это.
С таким кодом им никаких серверов не хватит все это поддерживать.
Странно в Surrival у меня 8 рабочих/строителей, 12 воинов, 6 лекарей и в последний момент на карте около 40 вражеских юнитов. Тоже core i7 хром, все норм.
А при чем здесь ваш core i7. Это сообщение о том, что вы использовали выделенные вам серверные мощности на выполнение скрипта.
При чем тут серверные мощности, если разработчики говорят, что песочница работает в браузере? Зачем им тогда деньги на сервера просить?
Видимо, имеется в виду, что контроль за лимитом мощности на один tick производится везде (и на клиенте и на сервере). Правда, мне не ясно, как они его высчитывают — тупо, по времени выполнения что ли?
А по поводу ошибки — она вылезает иногда, но как-то плавающе и чаще, когда ничего не делаешь, больше похоже на баг.
А по поводу ошибки — она вылезает иногда, но как-то плавающе и чаще, когда ничего не делаешь, больше похоже на баг.
>Правда, мне не ясно, как они его высчитывают — тупо, по времени выполнения что ли?
Автор уже пояснял этот вопрос: habrahabr.ru/post/242963/#comment_8122321
Автор уже пояснял этот вопрос: habrahabr.ru/post/242963/#comment_8122321
Да, но он так и не ответил про разные процессоры и их загруженность. С учетом того, что они собрались брать за это деньги — как-то халтурно. В идеале, нужно разобрать JS на токены, посчитать для каждого стоимость, грубо говоря статический анализ. И так, хоп, нажимаешь кнопку — узнать стоимость скрипта — 56000 тактов, для вашего тарифного плана осталось 4000, купить тут.
Но ждем открытия, может что придумают.
Но ждем открытия, может что придумают.
Посчитать стоимость выполнения скрипта в вакууме теоретически невозможно. Одна и та же строчка скрипта может различаться на порядки в зависимости от контекста. А для того, чтобы определить контекст, скрипт требуется выполнять. Что мы и делаем.
Влияния от разных процессоров не будет, потому что это будет выделенная машина с однородной приоритетной нагрузкой на каждом ядре — выполнением скриптов игроков.
Влияния от разных процессоров не будет, потому что это будет выделенная машина с однородной приоритетной нагрузкой на каждом ядре — выполнением скриптов игроков.
Нехватает отладки.
А чего нет версии на русском языке? Это бы серьёзно снизило порог вхождения.
Суть игры сводится к написанию ботов? Хм, битва ботов, такой ММО я еще не видел.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
20 ноября — запуск первой стратегической MMO-игры для… программистов