Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Управляйте маятником, чтобы построить самую высокую (и устойчивую) башню из падающих сверху постов. Следите за временем на каждый бросок по полоске справа: если она закончится, пост упадет мимо башни.

Башня

Аркады, Строительство, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Java игры + Игры

С этим тегом используют

Java Ищу игру Мобильные игры Ностальгия Мобильные телефоны Помогите найти Арт Компьютерные игры Anime Art Аниме Девушки Genshin Impact Юмор Все
26 постов сначала свежее
user10257226
user10257226
4 месяца назад

Привет дорогой друг!⁠⁠

👋Всем привет, я новый пользователь данной платформы! Хочу попробовать обосноваться здесь и завести небольшую семью (фан базу).

Тг: https://t.me/airomine

🧑‍💻Начну свой первый пост со знакомства. Меня зовут Евгений, мне 19 лет. Я занимаюсь разработкой майнкрафт проектов, по простому я разработчик серверов или же их технический администратор.

🫶🏻В добавок к этому посту я прикрепил небольшой трейлер моего личного сервера, а точнее его beta части.

🖥Сейчас я активно занимаюсь разработкой своего сервера и нуждаюсь в людях которые могут меня поддержать и стать частью игрового комьюнити.

💻+📱Самое главное, я всегда создаю сервера кроссплатформенного типа, это значит что на сервер можно заходить с любого устройства, будь до телефон(minecraft pe) или же компьютер(Java). Я ориентируюсь на всех и никого не обделяю.

Если я смог тебя чем-то зацепить, то подпишись на меня, мне будет очень приятно увидеть твою поддержку.

Я открытый человек и всегда рад новым знакомствам!

Если имеется желание, то в добавок хочу оставить свой телеграмм канал, где ты можешь лампово провести время, поговорить со мной и просто найти новые знакомства!

Спасибо за уделённое время!

Показать полностью
[моё] Minecraft Геймеры Игры Xbox Alex (Minecraft) Java игры Java Игровой сервер Сервер Survival Анархия Анархист Vanilla Telegram (ссылка) Telegram каналы Telegram Выживание Игровые обзоры Видео
10
5
Вопрос из ленты «Эксперты»
user9863671
7 месяцев назад
Лига Потерянных Игр

OST⁠⁠

Всем привет, кто может подсказать?

Данный OST был использован в каких то других играх Java?

[моё] Игры Java игры Мобильные игры Вопрос Спроси Пикабу Видео YouTube
0
139
monobogdan
monobogdan
Посты о ремонте и моддинге ретрогаджетов.
1 год назад

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых⁠⁠

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Друзья! А вы помните, какими были мобильные игры в 2000-х годах? Помните, как разработчики умудрялись уместить целые миры в устройство с небольшим дисплеем, аппаратной клавиатурой, весьма слабым железом и парой сотен килобайт памяти? Но задумывались ли вы, как в своё время работали эти сами игры «под капотом»? В сегодняшней статье-ретроспективе предлагаю вспомнить мобильный геймдев нулевых и узнать, как же работали 2D Java-игры, какие API были доступны и что из себя представлял средний телефон тех лет! Интересно? Тогда добро пожаловать под кат!

❯ Предисловие


Пожалуй, геймдев всегда был одной из самых интересных сфер программирования. Множество нестандартных задач, возможность применить профильные математические и алгоритмические познания, а также огромный простор для архитектов в продумывании архитектуры будущей игры, ведь, например, в больших студиях комплексные и большие игры обычно очень сложные и нередко тянут за собой целый пласт легаси-кода и наработок чуть ли не из 90-х.

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Но помимо десктопных и консольных игр, существуют и мобильные игры, которые в последние 5 лет вплотную приблизились к уровню AAA на консолях (привет порту GRID, AC Mirage, RE4 на мобилки). А ведь ещё 15-20 лет назад мы играли на кнопочных телефонах с небольшими дисплейчиками, которые в свое время подарили нам множество эмоций и кайфа от прохождения этих самых игр, несмотря на простенькую графику, не особо комплексный геймплей и относительно простой левел-дизайн. Продвинутые мобильные геймеры играли уже на Symbian-смартфонах и WinMobile-коммуникаторах (да, в какой-то момент времени, устройства на WM были весьма перспективными), но чаще всего — на Java-телефонах Nokia, Sony Ericsson, Siemens и, конечно-же, Samsung с LG!

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

По правде сказать, игры на смартфонах — тема отдельная, например на Symbian был полноценный телефон-игровая консоль Nokia N-Gage, о которой я писал отдельный материал, а о разработке игры под Windows Mobile я относительно недавно написал отдельную статью. У смартфонов обычно было несколько больше ресурсов: шустрее процессор, значительно больше памяти доступной игре, а также возможность запуска нативного кода, но и игры для них было разрабатывать значительно сложнее.

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Зато о том, как работали игры на Java-телефонах информации практически нет и этот недостаток нужно исправлять, ведь это была одна из первых попыток унифицировать формат приложений на телефонах вне зависимости от архитектуры их процессоров и ОС на борту. Недавно я писал о том как работали 3D-игры на Java-телефонах, но там затрагивалась только 3D-часть без 2D, звука, обработки ввода и иных модулей, без которых игра не может работать!

❯ Каким был телефон?


В середине 2000-х годов, обычно телефон представлял из себя девайс в корпусе моноблок/раскладушка/слайдер и «флип» с весьма большим цветным дисплеем, одним/двумя (привет Motorola E398) динамиками и несколькими аппаратными кнопками. В зависимости от ценового сегмента устройства, обычно менялся корпус, разрешение и размер дисплея, а также материалы, из которого был изготовлен девайс. При этом у многих больших вендоров были собственные программные платформы — у Nokia это был S40, у Sony Ericsson своя, у Samsung и LG тоже свои.

В среднем, характеристики телефонов были следующими:

  • Процессор: ARMv4/ARMv5 на частоте ~100-200МГц. Есть исключения — Siemens E-Gold работал на базе архитектуры C166, а платформа Motorola работала на 66МГц (что и объясняет небольшую тормознутось).

  • ОЗУ: ~8Мб SDRAM. Эта память распределялась под все нужды системы, в том числе и обработку GSM, Java и пользовательский интерфейс. Java-приложениям было доступно ~1Мб ОЗУ.

  • Постоянная память: в среднем ~10-30Мб, плюс возможность расширения памяти за счет MicroSD или MS Pro Duo (Sony Ericsson).


Казалось бы, не густо. На самом деле вполне достаточно, учитывая все ограничения телефонов тех лет. Но почему именно Java?

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Ещё в начале нулевых, когда прогресс развития телефонов шёл семимильными шагами, перед разработчиками телефонов встал вопрос, какой формат для программ выбрать, дабы привлечь как можно больше разработчиков на рынок мобильных приложений. Очевидно, что нативные программы на C/C++ точно не подойдут (разные архитектуры, большие отличия в платформах), поэтому нужна была виртуальная машина с собственным байткодом. Вариантов было несколько: Mophun, некая корейская виртуальная машина (точного названия, увы, не помню и инфы очень мало) и, конечно-же, Java с JVM. Со временем именно J2ME стала стандартом благодаря оптимальной скорости работы, хорошему и простому API и низкому порогу входа.

❯ Какие API существовали?


Несмотря на то, что игры под кнопочные телефоны писались на Java, набор API и поддерживаемых пакетов отличался от обычной JVM на ПК, которую использует, например, Minecraft. Всего существует три профиля — J2SE (Android и ПК), J2EE (серверы и энтерпрайз) и J2ME (встраиваемая электроника и телефоны). Однако сам по себе J2ME делится ещё на два стандарта — CLDC/CDC (набор поддерживаемых фишек языком — например, ранние телефоны не поддерживали float) и MIDP (набор поддерживаемых телефоном фишек — работа с дисплеем, проигрывание звуков, доступ в сеть и обработка ввода — всё это часть MIDP). За всё время существования было две версии MIDP — 1.0, которая была весьма ограничена в возможностях (например, нельзя было развернуть игру на весь экран) и использовалась с 2001 по ~2003 год и MIDP 2.0, которая использовалась вплоть до кончины J2ME.

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Теоретически, появление J2ME должно было стандартизировать игры на телефонах разных производителей… но был нюанс — ведь функционал телефонов рос как на дрожжах, разрешение дисплеев тоже, у телефонов появлялась собственная память и файловая система, возможность подключения к интернету и Bluetooth и появился целых ворох API…

Несмотря на то, что игры по большей части были одинаковыми (или почти одинаковыми) на всех кнопочных телефонах, тем не менее набор поддерживаемых API каждым устройством значительно отличался. Вероятно, вы помните как многие игры подразделялись не только на версии для разных разрешений дисплея, но и на версии для каждого производителя отдельно: Nokia, SE, Samsung и т. п. Для реализации каких-то особых фишек (например, быстрая отрисовка изображений с регулируемой прозрачностью) требовалось использовать пакеты, неподдерживаемые в базовом профиле MIDP. И подобные пакеты делились на два типа — JSR и Vendor-specific пакеты.

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

JSR — это расширения-спецификации (то есть просто описание классов без какого либо кода), которые вносились в специальную базу Java community process и формально стандартизировались среди всех нормальных производителей телефонов. Среди таких JSR есть и поддержка 3D-графики (JSR184 — M3G, JSR239 — OpenGLES Bindings for J2ME), и доступа к файловой системе устройства (JSR75), и возможность использования Bluetooth для реализации мультиплеера (JSR82). Говоря простыми словами, это опциональные «фишки», которые могли быть доступны на каких-то телефонах, а на каких-то не поддерживались и соответственно игры, которые их используют, в большинстве случаев просто вылетают с ошибкой (однако особенно «умные» игры используют рефлексию и определяют поддерживается ли та или иная функция с помощью метода Class.forName).

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Vendor-specific пакеты обеспечивали очень крутой функционал, характерный не просто одному производителю телефонов, а зачастую даже одной линейке телефонов на определенной платформе. На SE такие пакеты практически не использовались (кроме, конечно, Mascot Capsule), а вот на Nokia постоянно (Nokia UI, Nokia S40 API), позволяя на изначально «слабеньких» s40-телефонах рисовать в буфер дисплея напрямую, а также отрисовывать треугольники, рисовать полупрозрачные картинки и выполнять некоторые другие операции, недоступные на других телефонах. У Samsung, же, например, в свое время была поддержка MMF-звуков в мобильных играх, что в начале и середине 2000х годов было просто нереально крутым, даже несмотря на другие ограничения корейских телефонов.

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

❯ Графика


Возможности по отрисовке графики на кнопочных телефонах были не сказать что сильно широкие, но тем не менее позволяли легко реализовать графику уровня SNES или даже PlayStation 1. Например, в отличии от современных смартфонов, мы не могли использовать шейдеры, умножить спрайт на цвет (дабы придать ему другой оттенок) и даже использовать аффинные трансформации (поворот, скейлинг) — исключительно полупрозрачные спрайты даже без возможности плавно «растворить» спрайт путем изменения его альфы! Поэтому многие разработчики шли на «хак» и предварительно рисовали в редакторе 8-16 положений одного спрайтов с разным углом поворота, дабы потом выбрать нужный в зависимости от физического угла поворота в градусах!

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Для графики использовался пакет javax.microedition.lcdui, в котором были классы для построения нативного интерфейса (выглядело так себе на большинстве телефонов), а также механизм фреймов (Form, Canvas).

Для игр же предлагался Canvas и GameCanvas, которые позволяли развернуть поверхность для рисования на весь экран и предлагали инстанс объекта Graphics, который сразу предоставлял механизм двойной буферизации! В свою очередь, Graphics предоставлял методы для отрисовки спрайтов (Image и drawRGB для «сырых» картинок не в нативном-формате, может быть медленно), примитивов (линии, прямоугольники, овалы), текста и… всё! Например, картинку можно было нарисовать вот так:

getGraphics().drawImage(img, 0, 0, Graphics.LEFT | Graphics.TOP);

При этом с шрифтами вопрос был отдельный: у каждого устройства был свой набор поддерживаемых шрифтов и свои фишки, о которых клиентская программа даже могла и незнать: например поздние телефоны поддерживали сглаживание шрифтов (что дико лагало на устройствах типа Nokia Asha), но что самое забавное — шрифты не могли быть произвольного размера, лишь 3х типов (один из них — моноширинный) и 3х размеров (маленький, средний, большой). Немудрено, что многие вендоры реализовывали свои рендереры битмапных шрифтов, которые точно будут нужного разработчику размера.

Но откуда же грузить картинки? Для этого, в Java был использован встроенный механизм открытия ресурсов из JAR: никакого кэша, никаких OBB, все нужные данные сразу в пакете с игрой. Да, это накладывало некоторые ограничения: например на телефонах Samsung долгое время было ограничение ~250Кб на приложение, зато было просто и портативно. Выглядело это вот так:

InputStreamReader reader = new InputStreamReader(getClass().getResourceAsStream('/img.png");

Или в случае картинок так:

Image image = Image.createImage("/img.png");

Всё очень легко и понятно, согласитесь?

❯ А звук?


Помните диалог «включить звук» при запуске почти каждой игры? Конечно же помимо графической части, в каждой игре должен быть и звук! И с его реализацией были свои нюансы: ведь в MIDP 1.0 звук поддерживался только с помощью Vendor-specific API (то есть его вообще могло и не быть, зато на телефонах Samsung поддерживался MMF, что, как я уже и говорил раннее, было очень круто).

MIDP 2.0 уже стандартизировал нормальный протокол для общения с мультимедийной подсистемой устройства с помощью пакета javax.microedition.media, в котором было три класса: Player (собственно, сам звук или музыка), PlayerListener (прослушиватель событий от плеера) и Control для управления различными параметрами воспроизведения (громкость, тональность и, вероятно, прочие расширения от производителей типа эквалайзера).

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

Конечно-же набор поддерживаемых форматов был невелик, но почти все устройства хотя-бы поддерживали wav (для коротких эффектов) и midi (для музыки), на ранних телефонах ни о каком mp3 и речи не шло (именно в Java-приложениях). При этом на некоторых телефонах, насколько мне известно, не было возможности воспроизводить одновременно звуки и музыку из-за отсутствия программного или аппаратного микшера. Интерфейс для воспроизведения звуков был один: мы создаём Player с помощью метода createPlayer, которому передаём адрес нужного ресурса и проигрываем его. Это мог быть как и трек на удаленном сервере (стриминг поддерживался не везде), так и в ресурсах программы:

InputStream is = getClass().getResourceAsStream("/music.wav");
Player player = Manager.createPlayer(is, "audio/x-wav");

player.prefetch();
player.start();

Так почему-же в большинстве игр на телефонах тех лет были midi-мелодии вместо wav? Всё дело в размере и ресурсах: во первых, midi-мелодия на пару минут может весит пару десятков килобайт. Помните «бумер.mid», «europa.mid» и другие известные тогда файлы? Эти треки весили совсем немного благодаря тому, что в отличии от оцифрованных сэмплов (т.е аналоговых данных с микрофона), вес которых зависит от разрешения, наличие стерео и частоты дискретизации, midi оперировали лишь наборами инструментов: что где и когда нужно проиграть. Во вторых, в Java-телефонах был ограниченный объем памяти, а heap мог быть менее 1 мегабайта, поэтому загрузка даже небольшого wav-файла могло быть крайне проблематичным на таком устройстве. Поэтому выкручивались как могли!

Но в целом, аудио-возможности были хорошими. Java-игры славились весьма неплохим звуковым сопровождением для уровня телефонов, явно не хуже GBA.

❯ Мультиплеер! Давай про мультиплеер!


Вероятно многие читатели помнят, что локальный мультиплеер в Java-играх был зачастую Must-have: возможность игры с друзьями по «локалке» собирала все лавочки и подоконники в школах на переменах в жёстких баталиях на бипланах, или, например, в матчах CS для Java!

Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых Java, Программирование, Игры, Олдфаги, Ретро, Ностальгия, Java игры, J2me, Телефон, Nokia, Моторола, Гаджеты, Ретро-игры, Читальный зал, Ретроспектива, Длиннопост

И для реализации мультиплеера у Java было довольно немало возможностей: в первую очередь, это наличие полноценных TCP-сокетов и Http-подключений с помощью класса Connection. Да, были некоторые ограничения (например на Nokia нельзя было установить TCP-соединение на порт 80 в обход встроенного клиента Http), но тем не менее даже через GPRS можно было создать с кем-то матч и попробовать поиграть, а чуть позже, к 2009 году, в РФ уже появился +- стабильный 3G и можно было поиграть в игры с достаточно быстрым и стабильным интернетом! Но интернет был дорогой, да и смысл ради сессионного матча подключаться к интернету, когда есть Bluetooth?

Появление Bluetooth в телефонах значительно расширяло возможности телефонов в обмене информации на короткой дистанции. Конечно и до этого уже был ИК-порт, который позволял передавать файлы на относительно низкой скорости, но у него была не самая большая стабильность, да и далеко не все можно было успеть перекинуть за время школьной переменной (и не все давали свой телефон «на урок»). Появление OBEX и возможности передачи файлов друг-другу через беспроводной канал дало возможность скидывать музыку и игры прямо на уроке, что было очень круто и позволило некоторым школьникам с флэшкой или телефоном с большим объемом встроенной памяти даже торговать контентом и скидывать, например, эротику за пирожок или школьную пиццу (я застал когда она уже стоила около 10 рублей — весьма немало!). Особо красноречивые ребята умудрялись уболтать друзей себе скидывать весь контент, что был у них на телефонах и становились центром внимания с новым крутым треком — я и сам в некоторой степени таким был (у меня была флэшка на 2 гигабайта!).

Но помимо возможности обмена файлами, Bluetooth также поддерживал некоторые профили: например, подключение к наушникам или протокол L2CAP/RFCOMM для установки соединения клиент-сервер между устройствами, которое и использовалось в Java-играх. Именно оно позволяло сделать один телефон сервером (хостом), а другому — клиентом, который подключается к серверу и они инициируют сессию игры!

❯ Проблемы мультиплатформенности


На бумаге все было хорошо: Java-машина была стандартизированной, поддерживаемые профили тоже и по идее игры и программы должны без проблем запускаться на большинстве Java-телефонов. Но как-бы не так: проблемы с кроссплатформенностью имели место быть. Начиная от упомянутых выше Vendor-specific API и версиями MIDP, заканчивая… как это ни странно, разрешениями экрана.

Да, сейчас игры не зависят от разрешения дисплея благодаря возможности скейлинга картинок до любого размера. Таким образом достаточно заранее нарисовать спрайты для, например, FHD разрешения и просто скейлить их по размеру дисплея в меньшую или большую сторону. Никто не мешает и отдалять камеру в зависимости от разрешения дисплея, впрочем, это считается не очень хорошей практикой (и зависит от игры).

Во времена Java-телефонов, зависимость от разрешения дисплея была критичной и поэтому игры для «не того» разрешения либо выходили за экран, либо наоборот — выглядели слишком маленькими и игрались в небольшом окошке. Многие вероятно вспомнят как устанавливая игру для малого разрешения дисплея, можно было заметить как шлейфом уезжают спрайты за виртуальный экран и остаются на белом фоне…

Небольшие проблемы были и с обработкой ввода. И если резистивные тачскрины поддерживались еще в MIDP 2.0 с помощью обработки определенных событий, то с мультитачем (во времена Asha и поздних телефонов Samsung) было уже сложнее. Другой вопрос что даже коды кнопок почему-то не унифицировали, из-за чего возникало деление на Samsung, Sony Ericsson и Nokia: разработчики J2ME предполагали что смартфоны будут в разных форм-факторах и предоставили лишь механизм для унификации «игровых» кнопок. Таким образом, некоторые игры, собранные под телефоны конкретного производителя могли не реагировать на нажатие кнопок клавиатуры из-за отличающихся кодов клавиш.

❯ Заключение


Друзья! Вы, вероятно, думаете что если телефоны с поддержкой J2ME больше не производятся, значит и коммьюнити уже «всё»? Как-бы не так: после моих статей мне продолжают писать читатели и спрашивать детали реализации тех или иных техник или игровых механик! Да, энтузиастов мало, но они есть, как и у ретро-компьютеров: например, спектрума, или консолей типа NES… А значит наше дело будет жить и Java-телефоны с их играми останутся в наших сердцах, а Java-телефоны останутся на скрижалях истории! Берегите своих кнопочных красавцев и восстанавливайте по возможности, благо пока-что даже корпуса на популярные модели кнопочных телефонов найти относительно легко.

Надеюсь, сегодняшний материал вам был интересен, писал его специально так, чтобы было понятно даже тем читателям, которые не пишут код или знакомы с программированием поверхностно. Подписывайтесь на мой Telegram-канал, куда я публикую различные мысли и советы по ремонту и программированию под гаджеты прошлых лет, подсъемы с новых видосов и всегда актуальные ссылки на новые статьи!

Материал подготовлен при поддержке TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud, дабы не пропускать новые статьи каждую неделю!

Показать полностью 11
[моё] Java Программирование Игры Олдфаги Ретро Ностальгия Java игры J2me Телефон Nokia Моторола Гаджеты Ретро-игры Читальный зал Ретроспектива Длиннопост
27
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

Точно не скажем, но в нашем проекте с этим можно справиться буквально за минуту одной левой!

Попробовать

Ремонт Теплый пол Текст
13
Sonatasss
Sonatasss
1 год назад

Моя первая игра (java)⁠⁠

Все делалось в Intellij IDEA, помимо визуальных и звуковых штучек. Геймплей незамысловатый, но есть завершенность, которая подарила мне радость, схожую с тем, когда ребенок первый раз собирает конструктор)

[моё] Java игры Java Игры Видео
6
Блог компании Партнёрский материал Реклама
Yota
Yota
2 года назад

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые?⁠⁠

Сегодня мобильные игры открывают такие возможности, которые геймерам из нулевых даже и не снились. Быстрый интернет позволяет запускать их в одно мгновение, а разнообразие смартфонов — играть во что угодно. Раньше, например, просто взять и скачать тот же космошутер Space Impact было нельзя, а встроен в телефон он была далеко не у каждого. Давайте поностальгируем и вспомним, во что и на чем мы играли в нулевых.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Небольшая предыстория

В 80-х рынок игр развивался, но все, на чем можно было поиграть, ограничивалось домашними консолями или массивными аркадными автоматами. Знаковым стало создание Nintendo Game Boy — первой успешной портативной консоли, на которой можно было поиграть во все: от Super Mario Bros. до культового «Тетриса». Это был 1989 год.

Опыт Nintendo показал, что маленькая коробочка с небольшим экраном может спокойно запускать игры. Но мобильные телефоны в 90-е были дорогими нишевыми устройствами, а их производительность оставляла желать лучшего.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Первая портативная консоль Nintendo Game Boy, которая совершила настоящий прорыв в индустрии мобильных игр (источник: shazoo)


В 1997 году рынок мобильных телефонов пополнился бестселлером — телефоном Nokia 6110 с достаточно низкой ценой и встроенной игрой Snake («Змейка», к ней мы еще вернемся). Она и задала новый стандарт в индустрии мобильных игр. Спустя три года вышел культовый телефон Nokia 3310, который стал визитной карточной компании. Примерно в то же время вышла цветная игра Bounce (в большинстве своем на Nokia 9210), где нужно было помочь прыгающему мячу пройти все уровни игры.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Игра Bounce завоевала сердца игроков по всему миру своей незамысловатой графикой и залипательным геймплеем (источник: apkpure)

На Siemens SX1 играли в Mozzies, в которой экран и камера работали в роли оружия для уничтожения москитов. Смотря по сторонам, можно было целиться в насекомых — для одноядерного процессора на 120 МГц геймплей был впечатляющей.

Вне зависимости от скорости и уровня графики java-игры все еще будоражат воспоминания. Давайте вспомним, в какие игры мы играли в нулевых.

SNAKE (1997)


История

В 1995 году финский программист Танели Арманто устроился в компанию Nokia и сразу получил важное задание — разработать несколько простых игр для телефона Nokia 6110. К этому моменту у Арманто уже был первоисточник «Змейки» — игра для двоих Blockade 1976 года, где при помощи четырех направляющих кнопок каждый управлял стрелкой, которая оставляла за собой кирпичную стену.

Геймплей

Игрок управляет пиксельной змеей, которая ползает по плоскости, ограниченной стенками и собирает «еду», избегая столкновения с собственным хвостом или стенками игрового поля. С каждым «приемом пищи» у нее растет хвост, что усложняет процесс игры, а игрок зарабатывает очки.

Интересные факты:

• классическую змейку пройти нельзя, но можно получить максимум очков — 0781;

• во второй части Snake добавили препятствия бесшовный экран, в который нельзя было врезаться;

• в игре есть режим кооператива, с помощью которого можно было играть вдвоем по Bluetooth.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Интерфейс игры Snake на разных телефонах Nokia (источник: snake97)


SPACE IMPACT II (
2000)

История

Space Impact — серия мобильных игр, созданная финской компанией Nokia. Первая часть была встроена в их одноименные мобильные устройства в 2000 году, а дальнейшие были включены в телефоны 2001-2004 гг.

Геймплей

Шутер, где игрок может свободно перемещаться по вертикали и горизонтали в космическом корабле, стрелять по врагам и уворачиваться от них. На каждом уровне можно собирать бонусы, которые дают дополнительные предметы вооружения и прокачивают здоровье. Во второй версии игры больше врагов, есть новые уровни и фон — город, но геймплей ничем не отличается от оригинальной версии Space Impact.

Интересные факты:

• в 2010 году CNET, веб-сайт, посвящённый компьютерным технологиям, поместил Space Impact в десятку «величайших мобильных игр всех времен»;

• эта игра расширила границы возможного на мобильных устройствах;

• в Space Impact II так много уровней, что мало кто знает точное их количество.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Так выглядел Space Impact II, созданный под Nokia — черно-белая игра, но все равно увлекательная! (источник: pt.luckymodapk)

GRAVITY DEFIED (2005)


История

Игра-симулятор Gravity Defied была разработана датской компанией Codebrew Software. Первый релиз состоялся в 2004 году, а спустя год мир увидел полную версию. Сама игра задумывалась как небольшой проект для участия в конкурсе Excitera Mobile Awards 2004. Главная тема игры — мототриал — стала результатом долгих часов брейншторма команды разработки.

Геймплей

Игрок-гонщик управляет мотоциклом, цель заезда — пройти двумерный уровень до конца как можно быстрее, не потеряв контроль и не упав со спортбайка. Сложность заключается в том, что на мотоцикл воздействуют внешние силы: углы, гравитация и инерция. Игрокам доступно три уровня сложности с несколькими треками. Также можно выбирать «лиги» — новые модели байков, открывающиеся поочередно после каждого уровня сложности.

Интересные факты:

• Gravity Defied стала классикой эпохи Java;

• игра занимала на мобильном всего примерно 100 килобайт, что позволяло играть в нее даже тем, у кого не было разъемов под SD-карту для дополнительного места;

• некоторые игроки разбивали экраны телефонов да и сами телефоны тоже, пытаясь пройти уровни посложнее.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Интерфейс одного из уровней Gravity Defied. (источник: dtf)


STIRLITZ (2005)

История

Мобильная игра «Штирлиц» была издана компанией Qplaze TM. Одним из известных проектов студии является мобильная игра S.T.A.L.K.E.R. Stirlitz же называли «игрой на грани» — она была в меру откровенной, интересной, веселой и новой.

Геймплей

Разведчик Штирлиц должен противостоять коварному диктатору Умпуту. Нужно помочь главному герою, собрать все тайны и секретные бумаги. Игроку нужно пройти пятнадцать уровней в трех совершенно разных мирах: в лесу, подземном бункере и золотых пещерах. Опасные противники, мощное оружие для их уничтожения, отличная физика игрового движка, карикатурный визуальный стиль, большой арсенал, знаменитый герой-шпион и многие другие вещи привлекали огромную толпу игроманов.


Интересные факты:

• в Stirlitz было несколько уровней сложности, выбор оружия и передовая графика, по крайней мере для того времени;

• всего вышло три части Stirlitz, а в последней части появился даже супер-скафандр и апдейт оружия главного героя;

• игра подстраивалась под разные мобильные устройства: в зависимости от модели телефона, в игре могло быть разное количество противников, уровней и прочих характеристик.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Заводы, шахты, лес — в Stirlitz было много запоминающихся уровней (источник: vk)

GOTHIC 3: THE BEGINNING (2006)


История

Мобильная ролевая видеоигра Gothic 3 была разработана немецкой компанией Handy Games GmbH на Wayback Machine и издана JoWood. Действие игры происходит за 140 лет до событий первой части серии на острове Хоринис. Однажды ночью главный герой серии Gothic Ксардас получает важное задание: найти четырех избранных, чтобы вернуть утраченную магию на остров. Ему предстоит сражаться с объединенными силами зла и устранить угрозу.

Геймплей

Игроку нужно выполнять задания и сражаться с множеством врагов: от волков и орков до разбойников и троллей. Разработчики подготовили около 30 уровней, на каждом из которых можно получать награды в виде золота, очков опыта и уникального обмундирования.

Интересные факты:

история в игре основана на оригинальной серии для ПК;

игроков ждала музыка из официального саундтрека Готики;

внутри игры есть захватывающие мини-игры, которые точно не дадут заскучать.

Что-то на ностальгию потянуло: в какие мобильные игры мы залипали в нулевые? Мобильные игры, Java игры, Ностальгия, Мобильные телефоны, Ретро-игры, Игры, Длиннопост, Блоги компаний

Интерфейс одного из уровней Gothic III — для своего времени графика и геймплей были на высоте (источник: tklair)

Ну что, чувствуете, как свело олдскулы? Какие игры нулевых запомнились вам больше всего? А в какие вы играли под партой на уроке математики? Делитесь в комментариях своими фаворитами!

Современные игры требуют много трафика — одни обновления сколько весят. Новые клиенты Yota могут попробовать обновленный тариф «Максимум на первый месяц». С ним удобно: вы получите максимум гигабайтов и минут плюс безлимит на максимальное число приложений: в конце месяца сможете оценить, чем вы реально пользуетесь. А в следующий период — сформируете кастомный тариф со всем, что нужно именно вам, и не переплатите ни рубля. В итоге интернет летает, игры — вместе с ним, а вы платите только за то, чем пользуетесь!


ПЕРЕЙТИ НА МАКСИМУМ
Показать полностью 7
Мобильные игры Java игры Ностальгия Мобильные телефоны Ретро-игры Игры Длиннопост Блоги компаний
87
10
wapirat
wapirat
2 года назад

Я тут классный сайт нашел с бесплатным ява-играми!!⁠⁠

Я тут классный сайт нашел с бесплатным ява-играми!! Бунт, Волна боянов, Игры, Motorola razr V3, Java игры, Длиннопост

Скачал семый новый мод, самой последней версии.

Я тут классный сайт нашел с бесплатным ява-играми!! Бунт, Волна боянов, Игры, Motorola razr V3, Java игры, Длиннопост
Я тут классный сайт нашел с бесплатным ява-играми!! Бунт, Волна боянов, Игры, Motorola razr V3, Java игры, Длиннопост
Я тут классный сайт нашел с бесплатным ява-играми!! Бунт, Волна боянов, Игры, Motorola razr V3, Java игры, Длиннопост
Показать полностью 4
[моё] Бунт Волна боянов Игры Motorola razr V3 Java игры Длиннопост
2
59
DELETED
2 года назад
Лига Геймеров

Ответ на пост «Воспоминания vs Реальность»⁠⁠1

Реальность:

Ответ на пост «Воспоминания vs Реальность» Игры, Galaxy on Fire, Java игры, Ответ на пост

Воспоминания:

Ответ на пост «Воспоминания vs Реальность» Игры, Galaxy on Fire, Java игры, Ответ на пост

P.S. Когда узнал, что воспоминания были доступны в стиме для игры, был очень рад в своё время. Хотя, ПК-версия, конечно, получилась, на мой взгляд, не такая бомбическая - похожа на многие клоны. А вот порт на M3G и Mascot Capsule был шикарен.

Показать полностью 2
[моё] Игры Galaxy on Fire Java игры Ответ на пост
13
4
EvilWar
EvilWar
3 года назад
Лига Геймеров

Ответ на пост «Эмуляторы игровых систем для ПК»⁠⁠1

Может подскажет кто, никак не могу найти: Когда-то давно у нас в детском парке стоял автомат с гонками, кидаешь жетон, едешь пока время не кончится. Чекпоинт либо еще один жетон добавляют время. В игре одна трасса с возможностью выбора места старта, на трассе разные "биомы": пустыня, город, зима и т.д. Имеется три машины: Одна точно помню что внедорожник синего цвета, назывался "Blue dragon" (название голосом произносилось после выбора машины), вторая красная спортивная, третья вроде белая. Сам автомат был на одного игрока в виде машины направленной днищем к игроку, т.е. колеса были сверху передние и снизу задние. В сеговских играх посмотрел, гуглить пытался, ничего похожего пока не нашел(

Эмулятор Игры Консоли Playstation Nintendo Sega Java игры Symbian Android Компьютер Xbox Ответ на пост Текст
15
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии