Игры для терминалов - Printable Version +- Wake of Gods Forum | Форум Во Имя Богов (http://wforum.heroes35.net) +-- Forum: Общие Форумы (/forumdisplay.php?fid=100) +--- Forum: Разговоры обо всём (/forumdisplay.php?fid=105) +--- Thread: Игры для терминалов (/showthread.php?tid=2207) |
Игры для терминалов - Berserker - 08.08.2010 23:19 Название: Змейка. Версия: 1.2 Автор: Berserker Особенности:
P.S Обновите страницу, если у вас старая в кэше. Новая открывает консоль сразу. ИЕ не поддерживается. У некоторых пропадает фокус с консоли. Кликните на ней мышкой, граница станет красной (и клавиши будут работать). Скорость змейки наращивается по мере съедания сердечек. P.S.S "P", ПРОБЕЛ, - пауза, стрелочки - управление, wasd - управление для второго игрока, ESC - просмотр результатов во время игры RE: Игры для терминалов - gamecreator - 09.08.2010 00:54 30. по вертикали со временем она начинает бегать значительно быстрее. мог бы и квадратные символы сделать, как в 80х50 консоли. RE: Игры для терминалов - FCst1 - 09.08.2010 01:24 34. На 31-32 ускоряется резко... Добавлено: 35... Всё, с меня хватит RE: Игры для терминалов - Berserker - 09.08.2010 02:56 Quote:мог бы и квадратные символы сделать, как в 80х50 консоли.Символы даже в 80*50 всегда вытянутые. Нет квадратных шрифтов вообще (и тем более общих шрифтов для браузеров). Помучался и решил оставить как везде - просто моноширенными. Quote:34. На 31-32 ускоряется резко...Время на один тик начинается с 360 миллисекунд и уменьшается на 10 с каждым яблоком. Планка поставлена 30. Больше та же лиса не вытягивает физически. Quote:35... Всё, с меня хватитИ то неплохо Да, забыл сказать: "P" - пауза. RE: Игры для терминалов - FBX - 09.08.2010 02:59 Круто, надо еще тетрис и еще какую-нибудь фигеньку. RE: Игры для терминалов - Berserker - 09.08.2010 03:08 Танчики, Гоночки? ЗЫ. Выбил 39 RE: Игры для терминалов - FallenAngel - 09.08.2010 07:13 доходя до 32 пару раз запутывался в себе, следующие 7 раз повторить или улучшить свой результат не смог, ударил по клавиатуре кулаком и закрыл нафик эту игру. RE: Игры для терминалов - GrayFace - 09.08.2010 08:07 Кажется, 34. Слишком медленно начинается. Долго приходится с черепашей скоростью ездить. Но забавно RE: Игры для терминалов - Corwin - 09.08.2010 09:59 На работе в лисе нормально работает. А чего по вертикали такая точка крупная? Стандартный размер символа? А изменить его там в поле и сделать свою сетку из квадратных ячеек? RE: Игры для терминалов - Efrit - 09.08.2010 11:04 А что это вообще такое? P.S. Как это ни странно - на работе работает Набрал 34, если что, сыграл разок... RE: Игры для терминалов - Hasart - 09.08.2010 11:07 35, забавно У меня лиса и все работает нормально. RE: Игры для терминалов - Druin - 09.08.2010 11:27 С первой попытки 31... на второй телефон отвлек... на третьей - 40... Не хватает текущего результата во время игры... А вообще легко... тока поначалу нудновато... RE: Игры для терминалов - Druin - 09.08.2010 12:11 Ну пока где-то так... RE: Игры для терминалов - Druin - 09.08.2010 12:54 Ну пока хватит... потом еще поиграю... RE: Игры для терминалов - Hasart - 09.08.2010 13:16 RE: Игры для терминалов - FallenAngel - 09.08.2010 13:22 RE: Игры для терминалов - Druin - 09.08.2010 13:35 Фотошоп не в счет... RE: Игры для терминалов - Corwin - 09.08.2010 13:39 Однако, Берс никак не расчитывал что будет трёхзначный результат Добавлено: п.с. Друин, ты страшный человек... RE: Игры для терминалов - Druin - 09.08.2010 14:37 Бойтесь меня... Уже 123... RE: Игры для терминалов - Deo - 09.08.2010 14:45 Больше 35 не удалось набрать. RE: Игры для терминалов - FBX - 09.08.2010 15:30 форумные игры возвращаются?) RE: Игры для терминалов - Berserker - 09.08.2010 16:48 Quote:доходя до 32 пару раз запутывался в себе, следующие 7 раз повторить или улучшить свой результат не смог, ударил по клавиатуре кулаком и закрыл нафик эту игру.Понимаю :0) Quote:Кажется, 34. Слишком медленно начинается. Долго приходится с черепашей скоростью ездить. Но забавноЯ по памяти брал реализацию с обычного ручного тетриса. Тем не менее, скорость можно вынести в настройки. Quote:А чего по вертикали такая точка крупная? Стандартный размер символа? А изменить его там в поле и сделать свою сетку из квадратных ячеек?Все шрифты, Корв, вверх вытянутые. Даже виндовые консоли не позволяют квадратные клетки. Я правда, пытался найти любое решение, но его банально нет. Quote:А что это вообще такое?Игра "змейка". Первая апробация эмуляции консоли. Quote:P.S. Как это ни странно - на работе работаетВ Лисе есть какой-то вредный плагин. У ФБХ-а такой userjs-скрипт был. Но чтобы ответить какой - нужно быть провидцем. У меня дома лиса без плагинов, а значит и пашет. Druin, какое зелье позволяет сделать ЭТО? Quote:Однако, Берс никак не расчитывал что будет трёхзначный результатВ начале выбрал размер матрицы (25 * 25, можно произвольно менять), затем стал фразы компактно писать, чтобы красиво было. Но что кто-то зайдёт за 99 - это было немыслимо. Quote:п.с. Друин, ты страшный человек...Я тебе это давно говорил Quote:Больше 35 не удалось набрать.Ты постоянно отвлекаешься на другие "Я", о многоликий Део. Quote:форумные игры возвращаются?)Такие игры по трудозатратам удобно клепать одному человеку, при этом на графику особо не отвлекаешься. Хотя если страничку перевести на UTF-8, то можно будет всю псевдографику заюзать: квадратики, смайлики, сердечки и прочее добро. P.S. Спасибо всем попробовавшим. Варианты развития:
RE: Игры для терминалов - Druin - 09.08.2010 17:01 (09.08.2010 16:48)Berserker Wrote: Druin, какое зелье позволяет сделать ЭТО?Берс, это же простая змейка... Че в ней сложного?.. Правда я в свое время лет пять с нокиа3310 походил, где змейка в играх есть... Пока текущий счет 145... Думаю с таким размером поля 200-250 сделать будет реально, дальше сложнее... (09.08.2010 16:48)Berserker Wrote: P.S. Спасибо всем попробовавшим. Варианты развития:А таблицу рекордов? Правда тогда неувязка с размерами поля будет... (09.08.2010 16:48)Berserker Wrote: Но что кто-то зайдёт за 99 - это было немыслимо.Ты забыл, что на этом форуме есть такие люди, как я, Эфрит и Сергрой... RE: Игры для терминалов - Berserker - 09.08.2010 17:42 Quote:А таблицу рекордов?Добавил в список. Тогда скорость и поле трогать не буду, разве что всё-таки в начале большее ускорение сделаю, а потом замедленное, чтобы не было "нудного" периода. И таблицу рекордов, конечно же. Сразу скажу, от читеров не защитит, но будет доступна быстрая регистрация (мыло + пароль), а свои ники мы знаем. RE: Игры для терминалов - Druin - 09.08.2010 17:58 А паузу по пробелу можно?.. ато на работе пару раз телефон отвлекал, так пока "р" нащупаешь, удав шишки набивает... RE: Игры для терминалов - Berserker - 09.08.2010 18:05 Ок, пауза будет по пробелу. RE: Игры для терминалов - packa - 09.08.2010 18:23 31 Таблицу рекордов было бы интересно, только чтобы не свои рекорды, а вообще все! 50 мест. Друину играть больше 7 раз запрещается. П.С. Друин страшный человек RE: Игры для терминалов - gamecreator - 09.08.2010 18:26 квадратные символы есть - консоль 80х50 в полноэкранном режиме (или это побочный эффект экрана 16:10?) Добавлено: просто сохранять максимальное значение для каждого пользователя и все. RE: Игры для терминалов - packa - 09.08.2010 18:29 А, ну тогда можно, как то не подумал RE: Игры для терминалов - gamecreator - 09.08.2010 18:33 кстати если возникает ситуация: Code: хт т - тело г - голова змея движется вверх. получается, что на следующем ходу должно быть: Code: гх RE: Игры для терминалов - Berserker - 09.08.2010 18:55 packa, gamecreator, спасибо за идею. Личные рекорды вообще к читерам имунны. Это в дополнение к общим. Quote:П.С. Друин страшный человекВ прошлом году мы заменили ему имплантант на новую версию. Боюсь, теперь мир обречён. Заголовок в газете: "Друин набирает 625 очко в змейке, съедая всё поле!" gamecreator, понял. Хвост и голова должны двигаться одновременно. Исправил в локальной версии. RE: Игры для терминалов - packa - 09.08.2010 21:29 626, или это не Друин RE: Игры для терминалов - Efrit - 10.08.2010 09:32 Quote:Игра "змейка". Первая апробация эмуляции консоли. Спасибо, кэп! Я имел в виду - что это вообще за консоль, зачем её эмулировать, на чём она сделана - и как она привязана к нашему форуму? ... RE: Игры для терминалов - gamecreator - 10.08.2010 11:26 мы потом будем приложения писать для нее. RE: Игры для терминалов - Efrit - 10.08.2010 11:39 На чём? RE: Игры для терминалов - gamecreator - 10.08.2010 14:40 на мутноскрипте наверно. Берс вроде ниче больше не придумывал. RE: Игры для терминалов - Berserker - 10.08.2010 20:51 Quote:Спасибо, кэп! Браузеры по умолчанию не содержат средств для создания приложений для терминалов - то есть приложений с текстовым интерфейсом и стандартной функциональностью. В своё время для Turbo Pascal была библиотека CRT, в которой был реализован базовый функционал для работы с консолью:
Чем удобен текстовый интерфейс?
HTML/Javascript содержит средства для написания эмулятора консоли и библиотеки функций для неё с приемлимыми трудозатратами (1400 строк текста, не кода). Реализация основана на создании Ширина * Высота одиночных span-элементов, отображающих каждый по символу, что есть существенная нагрузка на браузер, особенно если консоль велика, но позволяет регулировать отображение (символ, цвет, фон, прозрачность) каждой отдельной ячейки. Как и во всех терминалах используется моноширенный шрифт без указания конкретного, что позволяет браузерам использовать те шрифты, которые у них есть. Нормальная кроссбраузерная работа с клавиатурой крайне тяжела по причине разности реализации браузеров, их багов и отсутствия спецификации в этой сфере. В то же время консоль требует вполне чёткой работы с полным контролем разрешения/запрета обработки стандартной реакции на клавиши. Ещё одной проблемой является, собственно, ввод текста. Коды клавиш слабо корелируют с кодами символов. И здесь в браузерах огромная лажа. Наконец, javascript использует один поток и везде, кроме Оперы, это ещё и основной поток вкладки. Это значит, что большинство функций по своей природе асинхронны, а мы привыкли писать: Write('Вас зовут: '); Name = Read(); Проблема асинхронности глобальная и моя реализация не берётся её решать (решение обычно сводится к эмуляции потока, как в примитивном виде сделано в Rpg Player). Для клавиатуры было выдвинуто требование работы с буфером обмена, по крайней мере конкретная вставка любого текста. Я использую элемент textarea (TMemo) единичного визуального размера за пределами экрана для перехвата событий клавиатуры. При потере фокуса элемент убирает красную границу с консоли, что сразу становится видно. Три ключевых события поддерживаемые браузерами (ИЕ здесь и далее не имеется в виду) KeyDown. KeyPress, KeyUp перехватываются. У каждого браузера свои особенности работы с ними, но в целом удалось вычленить общую функциональность и даже добавить новый тип событий Input, то бишь ввод. Таким образом в данный момент консоль полностью работоспособна. Реализация змейки - просто интересное дело и, собственно, проверка работы на практике. Я планирую вторую версию с поддержкой хотсита, разными бонусами и врагами. Идея создать эмуляцию терминала пришла к концу первой реализации ФЯП. Для того, чтобы из ФЯП можно было иметь доступ к консоли (а значит запускать игры на ФЯП из постов), нужно написать обёртку к каждой функции библиотеки, иначе кулхацкеры будут делать гадости. RE: Игры для терминалов - FallenAngel - 10.08.2010 21:17 Дошёл только до 42... RE: Игры для терминалов - Efrit - 10.08.2010 22:06 52. В принципе, до восьмидесятки смогу дотянуть наверняка - пока что я паузу вообще не юзал. А вот насчёт сотни - уже вряд ли... RE: Игры для терминалов - Berserker - 10.08.2010 23:18 Уважаемые игроки. Сейчас максимальная скорость - 1000/30 /сек. Иными словами шаг игры - 30 миллисекунд. Стоит ли увеличивать эту планку до 40-50? При 50 имеем 20 FPS, что потянет и гружёный фаерфокс при более сложном геймплее, но может быть играть станет не так азартно? Тем более, что Друин уже полторы сотни вытягивает, да и Эфрит до 52 дошёл. RE: Игры для терминалов - Efrit - 11.08.2010 06:04 Я бы до 35 увеличил и на этом остановился... RE: Игры для терминалов - Druin - 11.08.2010 11:38 Я паузу стараюсь не юзать... Имхо тока мешает... Но на работе инохда приходится... RE: Игры для терминалов - gamecreator - 11.08.2010 22:21 приделать к движку буфер ввода не помешает. RE: Игры для терминалов - Berserker - 12.08.2010 00:04 Что имеется в виду под буфером ввода? Ты пожмякал все клавиши и дальше змейка ужасные вещи творит? RE: Игры для терминалов - Druin - 12.08.2010 00:12 Я думаю гамадел имел ввиду, что при попадании в будущую таблицу рекордов мона было ник вводить... Или я не угадал?.. RE: Игры для терминалов - Berserker - 12.08.2010 00:34 Функции ввода уже реализованы. Он, по ходу, имел в виду буферизацию нажатий клавиш - вещь весьма спорную. Ты нажал ВЛЕВО ВПРАВО ВВЕРХ ВНИЗ и змейка следующие такты рыпается в эти стороны. RE: Игры для терминалов - Berserker - 12.08.2010 03:11 Провёл небольшое расследование. Оказался прав. В лисе фактически 20 fps максимум и выходит. Скорость при 1 и 50 мс/шаг одна и даже. В Опере различается где-то до 5 мс, Хроме - 3 мс. При 1 в них почти мгновенно происходит всё. Из этого вывод: Друин не знает, что такое Змейка на скорости 30, как и Эфрит, оттуда и результаты выше, чем у других. Так что в следующей версии будет 20 fps планка для всех игр, чего, в принципе, вполне достаточно RE: Игры для терминалов - gamecreator - 12.08.2010 03:38 чтобы змейка реагировала на нажатия всегда, а не только когда мое нажатие совпадает с началом такта RE: Игры для терминалов - Berserker - 12.08.2010 03:48 gamecreator, она всегда и реагирует. Оба события асинхронны: таймер и клавиатура. При нажатии клавиши устанавливается новое направление. Ты можешь успеть поменять направление до того, как следующий такт придёт. Только в нём уже идёт реальное движение. RE: Игры для терминалов - Druin - 12.08.2010 11:43 Ну попробую на опере поиграть... RE: Игры для терминалов - Berserker - 12.08.2010 17:46 Да ладно, не парься, 30 действительно бешенный вариант, не говоря уж про 20. RE: Игры для терминалов - Berserker - 12.08.2010 18:43 Игра обновлена до версии 1.1.
RE: Игры для терминалов - FCst1 - 12.08.2010 18:48 Теперь набрал 49 RE: Игры для терминалов - Efrit - 12.08.2010 20:55 В обновлённой версии резалт чуть получше: Quote:Game Over! Your score: 67 После где-то 50 очков увеличение скорости будто бы пропало - можно хоть бесконечно играть, так как скорость в общем-то вполне приемлемая. Но я уже просто устал - глаза слипаются RE: Игры для терминалов - Berserker - 12.08.2010 21:57 Скорость не нарасчивается после 30 (350 стартовая, -10 - за сердчечко). Хотсит делать? RE: Игры для терминалов - gamecreator - 12.08.2010 22:31 а он востребован? если тебе надо - делай. RE: Игры для терминалов - Berserker - 12.08.2010 22:58 Может быть кто-то ещё был бы не против сыграть на одной клаве вдвоём RE: Игры для терминалов - packa - 13.08.2010 00:38 Сердцеед Турнирной таблицы еще нет? RE: Игры для терминалов - Berserker - 13.08.2010 00:53 Нет, таблица планируется к 2.0 с другими плюшками. RE: Игры для терминалов - FallenAngel - 13.08.2010 11:23 только что с первого раза 67 а играть по моему легче стало скоро и до 90 набью RE: Игры для терминалов - Solmyr2000 - 13.08.2010 14:08 30, выше никак не получается - если яблоко у стены (или еще хуже - в углу), то все, конец игры. Тормозная у меня реакция, однако... RE: Игры для терминалов - gamecreator - 13.08.2010 15:07 31 RE: Игры для терминалов - Tent - 13.08.2010 15:19 мне почему-то наоборот сложнее играть стало - раньше на нажатия лучше реагировала как будто RE: Игры для терминалов - Efrit - 13.08.2010 15:51 Слегка улучшил свой рекорд в обновлённой змейке: Game Over! Your score: 73
Wonna try again? (Y/N) "Максимальную скорость" однозначно нужно увеличивать. Лучше сделать не так, как сейчас (равноускоренно), а с уменьшающимся ускорением (но положительным). То бишь, чтобы и после 30, и даже после 50 скорость росла - но уже очень медленно... P.S. Кстати, есть баг - число 64 в счётчике почему-то не выводится, отображает одинокую шестёрку RE: Игры для терминалов - Berserker - 13.08.2010 16:14 Quote:30, выше никак не получается - если яблоко у стены (или еще хуже - в углу), то все, конец игры. Тормозная у меня реакция, однако...А ты лучше раньше жми, чем позже, даже если не доедет - не врежется. Quote:мне почему-то наоборот сложнее играть стало - раньше на нажатия лучше реагировала как будтоРаньше на максимальной скорости быстрее было - это да. Quote:"Максимальную скорость" однозначно нужно увеличивать. Лучше сделать не так, как сейчас (равноускоренно), а с уменьшающимся ускорением (но положительным). То бишь, чтобы и после 30, и даже после 50 скорость росла - но уже очень медленно...Не придумал нормальную формулу, да и если она будет расти и после 50, то абсолютно не заметно. Если бы все браузеры были как Хром, тогда можно было бы варьировать. У меня портабельный фаерфокс 3.55 с офиц. сайта с плагином FireBug не вытягивает больше 20 FPS, значит и у других может быть такой же эффект. Может быть вообще убрать рост скорости и сделать сразу МАХ? Quote:... I guess the speed of my computer isn't the problem. But the animation on my website looks more like 20 pictures/second. RE: Игры для терминалов - packa - 13.08.2010 16:19 Quote:Может быть вообще убрать рост скорости и сделать сразу МАХ?Можно сделать 2 режима игры RE: Игры для терминалов - Berserker - 13.08.2010 18:04 Сделал локальный показ FPS, поставил 0-й интервал. Смотрим, сколько кто выжимает: Firefox 3.55: 25 (ура!) Opera 9.64 (старая): 70 (вау!) Chrome 2 (старый): 62..90, до 100 (отлично!) Overhead при номинальном FPS 50: Firefox: 0 (FPS те же) Opera 9.64: до 15 FPS потери Chrome 2: до 10 FPS потери Overhead при номинальном FPS 20: Firefox: до 1 FPS (очень редко) Opera: чаще всего 4 FPS Chrome: 0 (идеально) В общем не ровны дела, попробую написать некий балансер универсальный, чтобы во всех браузерах примерно одинаково было. Лиса самая медленная, но относительно стабильная из-за однопоточности. Хром и Опера выполняют Javascript асинхронно. RE: Игры для терминалов - gamecreator - 13.08.2010 20:27 (13.08.2010 15:51)Efrit Wrote: P.S. Кстати, есть баг - число 64 в счётчике почему-то не выводится, отображает одинокую шестёркуможет ты по четверке проехался? (13.08.2010 16:14)Berserker Wrote: А ты лучше раньше жми, чем позже, даже если не доедет - не врежется.так с таким подходом всегда или не доедешь, или врежешься (особенно если по вертикали). (13.08.2010 16:14)Berserker Wrote: Не придумал нормальную формулубери любую бесконечно убывающую прогрессию с суммой =1. RE: Игры для терминалов - Berserker - 13.08.2010 21:13 Что-то я стал сливать на 24 частенько Сделал ускорение плавным и более быстрым (17 шагов). Работаю над хотситом и примтивным ИИ в рамках первой версии. Как закончу - выложу. RE: Игры для терминалов - Solmyr2000 - 13.08.2010 22:09 Quote:А ты лучше раньше жми, чем позже, даже если не доедет - не врежется.На макс. скорости кажись надо за полполя ее нажимать, потому что ну никак змея не успевает повернуть... Вышло 32, и то за счет того, что одно яблоко появилось СРАЗУ за другим (2 яблока по цене одного!) RE: Игры для терминалов - Berserker - 13.08.2010 22:12 Скоро ещё конкурент добавится Туповатый правда...
RE: Игры для терминалов - gamecreator - 13.08.2010 22:30 (13.08.2010 22:09)Solmyr2000 Wrote: На макс. скорости кажись надо за полполя ее нажимать, потому что ну никак змея не успевает повернуть...и не говори. только что закончил игру с одним очком. попробую на хроме с его 100 фпс сыграть. RE: Игры для терминалов - Berserker - 13.08.2010 22:35 Quote:попробую на хроме с его 100 фпс сыграть.Так нужно изменить сорец скрипта сперва. А так Хром чётко даёт 20 FPS и всегда плавно обновляет экран. RE: Игры для терминалов - Berserker - 14.08.2010 00:25 Готов хотсит. Работаю над ИИ. RE: Игры для терминалов - FBX - 14.08.2010 00:32 надо постоянный змейко-мир с возможностью подключения кучи игроков- PvP сервер. И еще стрелять чем-нибудь. RE: Игры для терминалов - gamecreator - 14.08.2010 00:34 не надо стрелять. это не мутномейз. Добавлено: пожалуй, завтра попробую что-нибудь сделать с пвп. RE: Игры для терминалов - FBX - 14.08.2010 00:39 а как тогда убивать игроков? вынуждать врезаться в тебя? RE: Игры для терминалов - Berserker - 14.08.2010 01:45 Стрельбу я в 2.0 планировал как редкий ограниченный бонус (для сбивания трудных и опасных противников, таких как огненные големы). А сейчас да, нужно или подрезать вражескую змейку, или обкрутить её так, чтобы хода не оставалось. С игроками-людьми проходит на ура (сыграли с братом серию партий), а с ИИ действует только "или обкрутить её так, чтобы хода не оставалось". Сервер и прочее для игр реального времени не катит. Даже у тебя проблемы с пингом и синхронизацией (рывки, буфера команд), а что говорить, если используется высокоуровневые средства браузера, да ещё по протоколу HTML, да через гружённый javascript. Разве что с 1 FPS/сек и стабильным коннектом. А вот реализовать быстрый эмулятор консоли на winapi проще. RE: Игры для терминалов - etoprostoya - 14.08.2010 09:31 А когда будут сделаны "Heroes of PHP & Javascript"? В смысле, Герои на форумном движке. RE: Игры для терминалов - GrayFace - 14.08.2010 10:06 Набрал 37. Сейчас удобнее с более плавным набором скорости. А бесконечно увеличивающуюся скорость можно сделать как-нибудь так: delay = 50 + 100/(1.5)^level. Хотя лучше, все-же, max(150/(1.5)^level, 50) RE: Игры для терминалов - gamecreator - 14.08.2010 13:17 (14.08.2010 00:39)FBX Wrote: а как тогда убивать игроков? вынуждать врезаться в тебя?конечно RE: Игры для терминалов - Berserker - 14.08.2010 18:57 Quote:А бесконечно увеличивающуюся скорость можно сделать как-нибудь так: delay = 50 + 100/(1.5)^level. Хотя лучше, все-же, max(150/(1.5)^level, 50)Можно, но это постоянные рассчёты ради ничего, ибо заметить отличия даже в 20% скорости трудно. RE: Игры для терминалов - packa - 14.08.2010 20:04 Мультиплеер, это классно RE: Игры для терминалов - Efrit - 14.08.2010 20:33 Поиграл в обновлённую версию (или это всё ещё старая)? Очков набрал немного - полтинник. Заметил несколько багов: 1) числа 29 и 64 не отображаются целиком - выводятся лишь первые их цифры. 2) если быстро нажать две клавиши подряд (например, "влево" - и тут же "вверх") - змейка на это вообще никак не реагирует и идёт также, как и шла до этого. 3) по вертикали змейка ездит значительно быстрее, чем по горизонтали. RE: Игры для терминалов - Berserker - 14.08.2010 20:37 Quote:1) числа 29 и 64 не отображаются целиком - выводятся лишь первые их цифры.Ты точно в тот момент не наехал на них или там сердечко не появилось? Quote:2) если быстро нажать две клавиши подряд (например, "влево" - и тут же "вверх") - змейка на это вообще никак не реагирует и идёт также, как и шла до этого.Смотри. Идёт событие ВЛЕВО. Устанавливается новое значение переменной НАПРАВЛЕНИЕ. Затем идёт событие ВВЕРХ, снова меняется направление. Идёт событие ШАГ и вот здесь берётся только последнее значение, так как человек может моментально передумать. Quote:3) по вертикали змейка ездит значительно быстрее, чем по горизонтали.Размер поля: 30 * 25. Эффект большей скорости достигается за счёт того, что символы вытянуты вверх и клеток на 5 меньше. RE: Игры для терминалов - Efrit - 14.08.2010 20:45 Quote:Ты точно в тот момент не наехал на них или там сердечко не появилось?Не помню точно, но ЕМНИП, я ездил довольно долго - а вторая цифра не появлялась... Quote:Смотри. Идёт событие ВЛЕВО. Устанавливается новое значение переменной НАПРАВЛЕНИЕ. Затем идёт событие ВВЕРХ, снова меняется направление. Идёт событие ШАГ и вот здесь берётся только последнее значение, так как человек может моментально передумать.Дык никакого "взятия последнего значения" нету, я же говорю - змейка вообще в таких случаях НЕ реагирует на нажатия. То бишь: а) змейка едет сверху вниз, я нажимаю "влево" б) тут же (ещё не дав успеть змейке свернуть) я нажимаю "вверх" в) змейка продолжает ползти вниз, будто я вообще ничего не нажимал... Quote:Размер поля: 30 * 25. Эффект большей скорости достигается за счёт того, что символы вытянуты вверх и клеток на 5 меньше.А почему не сделать квадратную сетку? И причём тут меньшие размеры, я не понимаю. Неужели нужно увеличивать скорость, ели размеры меньше? Пускай едет с той же... RE: Игры для терминалов - Berserker - 14.08.2010 20:57 Quote:Не помню точно, но ЕМНИП, я ездил довольно долго - а вторая цифра не появлялась...Обновление происходит, когда кушаешь яблоко ) Quote:Дык никакого "взятия последнего значения" нету, я же говорю - змейка вообще в таких случаях НЕ реагирует на нажатия. То бишь:Когда ты жмёшь ВЛЕВО направление меняется. Когда жмёшь ВВЕРХ, код определяет, что путь невозможен вверх и возвращает значение движения, которое было на предыдущем шаге. Я могу изменить алгоритм так, что в этом случае он всё же ехал влево. Quote:А почему не сделать квадратную сетку? И причём тут меньшие размеры, я не понимаю. Неужели нужно увеличивать скорость, ели размеры меньше? Пускай едет с той же...Эфрит, ну так нельзя, я уже скольким людям объяснял http://wforum.heroes35.net/showthread.php?tid=2207&pid=49105#pid49105 Все шрифты, Корв, вверх вытянутые. Даже виндовые консоли не позволяют квадратные клетки. Я правда, пытался найти любое решение, но его банально нет. http://wforum.heroes35.net/showthread.php?tid=2207&pid=49165#pid49165 Реализация основана на создании Ширина * Высота одиночных span-элементов, отображающих каждый по символу, что есть существенная нагрузка на браузер, особенно если консоль велика, но позволяет регулировать отображение (символ, цвет, фон, прозрачность) каждой отдельной ячейки. Как и во всех терминалах используется моноширенный шрифт без указания конкретного, что позволяет браузерам использовать те шрифты, которые у них есть. RE: Игры для терминалов - gamecreator - 15.08.2010 00:03 (14.08.2010 20:57)Berserker Wrote: Я могу изменить алгоритм так, что в этом случае он всё же ехал влево.уж лучше буфер команд. RE: Игры для терминалов - Efrit - 15.08.2010 09:32 Quote:Когда ты жмёшь ВЛЕВО направление меняется. Когда жмёшь ВВЕРХ, код определяет, что путь невозможен вверх и возвращает значение движения, которое было на предыдущем шаге. Я могу изменить алгоритм так, что в этом случае он всё же ехал влево. Лучше пусть в таких случаях она всё же "влево+вверх" едет - то бишь жёстко заставь её поворачивать на одну клетку влево, а затем пусть поворачивает наверх... (и едет дальше) RE: Игры для терминалов - Berserker - 15.08.2010 17:55 Это и есть буфер команд, о чём спрашивал игродел. В оригинальной змейке так сделать нельзя, иначе это уже программа, а не реакция. влево-влево-влево-вверх-вправо и змейка спокойно съедает яблоко у левой границы, далее вверх на клетку и плавный поворот направо... RE: Игры для терминалов - Druin - 16.08.2010 02:53 Ну на маленьких скоростях действительно есть проблемы с реакций клавиш... зы. А вообще одожду версии с таблицей рекордов... RE: Игры для терминалов - Berserker - 16.08.2010 03:15 Набрал рекорд 75 в хотсит. Таблица рекордов раньше 2.0 не будет, а там очень много кода нужно переписать, включая серверный, регистрацию и т.д. RE: Игры для терминалов - Berserker - 16.08.2010 23:05 Написал ИИ. Сложность обдумывания: новичок (не распознают угрозу тупика). Его текущий рекорд: 86(!). Умирает, полностью замуровавшись сам в себе. RE: Игры для терминалов - Berserker - 17.08.2010 05:02 Всем любителям и профи посвящается. Версия 1.2.
RE: Игры для терминалов - packa - 17.08.2010 08:52 RE: Игры для терминалов - gamecreator - 17.08.2010 15:58 ты скорость не менял? после 10 змейка летает как дурная. RE: Игры для терминалов - Solmyr2000 - 17.08.2010 17:18 Quote: ты скорость не менял? после 10 змейка летает как дурная.После 15го где-то, причем ускоряясь сразу раза в 3... RE: Игры для терминалов - Berserker - 17.08.2010 18:12 packa, gamecreator, Solmyr2000, начальный перерыв между шагами: 356. Начальное изменение за яблоко: -34. Ускорение изменения: 2. Итого на 17-м яблоке получаем 20 FPS (в опере 16-17). Как и просили, плавно. RE: Игры для терминалов - FBX - 17.08.2010 18:16 А читерить можно? Т.е. искусственно снизить скорость. RE: Игры для терминалов - Berserker - 17.08.2010 18:20 FBX, читерить всегда можно. А что, 20 FPS уже неподъёмно? ) RE: Игры для терминалов - Solmyr2000 - 17.08.2010 18:27 Угу. Комп обыгрывает безжалостно RE: Игры для терминалов - Berserker - 17.08.2010 18:35 Только что ИИ набрал 92 ))) RE: Игры для терминалов - Efrit - 17.08.2010 18:54 Всё равно максимальная скорость слишком маленькая. P.S. Комп - читер RE: Игры для терминалов - Berserker - 17.08.2010 19:09 Quote:А читерить можно? Т.е. искусственно снизить скорость. Quote:После 15го где-то, причем ускоряясь сразу раза в 3... Quote:ты скорость не менял? после 10 змейка летает как дурная. Quote:Всё равно максимальная скорость слишком маленькая. Обновил игру до версии 1.3.
RE: Игры для терминалов - Berserker - 17.08.2010 19:55
RE: Игры для терминалов - Efrit - 17.08.2010 20:15 Берс, а что такого смешного в моих словах? Если Солм и Игродел не справляются с более высокими скоростями - это их проблемы, а я бы хотел чуть более сложной игры. Это как в Героях - ну если выносит тебя комп на 200%, так почему на 160% не играешь? RE: Игры для терминалов - Berserker - 17.08.2010 20:22 Efrit, я всё понял. В следующей версии будет настраиваемый модификатор скорости. А там уж как твой браузер тянет. Советую хром, в нём сможешь нужное кол-во FPS взять. RE: Игры для терминалов - packa - 18.08.2010 00:04 А давайте определим у кого комп самый "умный" RE: Игры для терминалов - Berserker - 18.08.2010 00:15 У меня. Рекорд 92 и вашим мартышкам его не побить RE: Игры для терминалов - Solmyr2000 - 18.08.2010 00:16 Quote:Если Солм и Игродел не справляются с более высокими скоростями - это их проблемы, а я бы хотел чуть более сложной игры.Тут стоит вопрос играть или не играть, а не сложность понизить... 10 яблок это не игра. Quote: У меня. Рекорд 92 и вашим мартышкам его не побить Dance373. Он неимоверно тупой, но неимоверно шустрый. Как он напрямую ползет к яблоку, заезжая в себя-тупик - это нечто. А как он из себя прямоугольники строит... :D Добавлено: Уже 81 RE: Игры для терминалов - packa - 18.08.2010 00:48 Lol, мой что-то невообразимое вытворил... Code: О******* Добавлено: 70 RE: Игры для терминалов - Efrit - 18.08.2010 06:44 Бесконечно можно смотреть на три вещи: как горит огонь, как течёт вода, и как ИИ чудесным образом распутывает свою змеиную спираль. RE: Игры для терминалов - packa - 18.08.2010 11:20 Разве? Мой на 20 умудряется дохнуть по 5 раз подряд... П.С. Рекорд 88, 4 до Берсового бота не хватило (( RE: Игры для терминалов - Deo - 18.08.2010 12:32 А у меня бот больше 50 не набирал. Эх, мне б такую реакцию как у него. Пришлось снизить скорость движения змейки чтоб по честному играть. В игре на двоих, если одно яблоко появляется в правом верхнем углу (рядом с цифрами счета), а другое яблоко возьмет второй игрок, то первое яблоко (находящееся рядом с цифрами) перестанет отображаться. RE: Игры для терминалов - Solmyr2000 - 18.08.2010 12:37 Рекорд компа уже 92, 1 не хватило обогнать Берсовский Quote:и как ИИ чудесным образом распутывает свою змеиную спираль.Ага, наблюдание за ИИ даже интереснее самой игры RE: Игры для терминалов - Hasart - 18.08.2010 12:47 (18.08.2010 12:37)Solmyr2000 Wrote: Ага, наблюдание за ИИ даже интереснее самой игрыУгу. Медитативное такое занятие upd: Как показывает практика, ии не всегда хватает ума обойти препятствие в виде неподвижного игрока... RE: Игры для терминалов - gamecreator - 18.08.2010 13:41 (18.08.2010 12:32)Deo Wrote: первое яблоко (находящееся рядом с цифрами) перестанет отображаться.оно никуда не исчезло, просто затерлось. RE: Игры для терминалов - Deo - 18.08.2010 14:44 (18.08.2010 13:41)gamecreator Wrote: оно никуда не исчезло, просто затерлось. (18.08.2010 12:32)Deo Wrote: первое яблоко (находящееся рядом с цифрами) перестанет отображаться. (18.08.2010 12:32)Deo Wrote: перестанет отображаться. (18.08.2010 12:32)Deo Wrote: отображаться Я о том и говорю. RE: Игры для терминалов - gamecreator - 18.08.2010 18:01 а какая разница? ты же знаешь что оно там. RE: Игры для терминалов - packa - 18.08.2010 21:30 ахахахах 3 цитаты подряд ))) Зачет С таблицей рекордов будет веселее мерится ботами RE: Игры для терминалов - Solmyr2000 - 18.08.2010 22:15 Quote:ахахахах 3 цитаты подряд ))) Зачет SmЭто зум-эффект Quote: а какая разница? ты же знаешь что оно там.А если до этого не заметил? Например с компом? Добавлено: Behold the power of... AI! Рекорд 93 RE: Игры для терминалов - gamecreator - 18.08.2010 22:17 так методом исключения. если на поле только одно яблоко, то другое в цифрах. RE: Игры для терминалов - Berserker - 19.01.2011 01:57 Обновил скрипт. Новые правила более лояльны к обычным игрокам. При врезании, отличном от голова-в-голову, вместо смерти змейка теряет 3 клетки тела и направление меняется на случайное перпендикулярное. RE: Игры для терминалов - Berserker - 29.06.2011 18:59 Охотник за цветами! (Ссылка)
RE: Игры для терминалов - FallenAngel - 29.06.2011 19:16 Ни у кого после нажатия клавиши нет задержки в ~0.3-0.5c? RE: Игры для терминалов - Berserker - 29.06.2011 19:54 А раньше такого не было? В Хроме летает старом (2.0), как и опере старой (9.64). Скорость не менял? RE: Игры для терминалов - packa - 29.06.2011 20:44 Интересно, молодец RE: Игры для терминалов - Efrit - 29.06.2011 20:55 Максимальная скорость всё равно очень низкая. Набрал 100 очков и бросил играть - надоело уже. И это притом, что одновременно с игрой я успевал лузгать семечки Багов никаких не заметил. И это, серый цвет на чёрном фоне - неудачное решение, змейку почти не видно... RE: Игры для терминалов - Berserker - 29.06.2011 21:11 packa, спасибо. Efrit, попробуй 10 в Хроме, если есть возможность. Большая скорость будет, если переписать модуль консоли с использований Canvas и привычной отрисовки. Quote:И это, серый цвет на чёрном фоне - неудачное решение, змейку почти не видно...У змейки был постоянный цвет? RE: Игры для терминалов - Flashback - 29.06.2011 21:14 ИИ вообще какой-то дерзкий RE: Игры для терминалов - Berserker - 29.06.2011 21:19 Но наивный RE: Игры для терминалов - gamecreator - 30.06.2011 04:39 Мы с ним столкнулись лоб в лоб и оба померли. RE: Игры для терминалов - packa - 30.06.2011 11:14 RE: Игры для терминалов - Corwin - 30.06.2011 12:12 Компьютер помер? RE: Игры для терминалов - Flashback - 30.06.2011 14:27 да, помер. у меня вчера так было. |