🤏 Оптимизируем игру до 2 КИЛОБАЙТ
Vložit
- čas přidán 27. 05. 2024
- Челлендж на создание игры, размером не больше 2.8 килобайт! Такая игра сможет поместиться даже в QR код, целиком, безо всяких ссылок. После всяких крайзисов, CoD, и DOOM на 50 ГБ жёсткого диска это интересный эксперимент
Содержание:
0:00 - введение
1:00 - про qr коды
3:18 - начало веб-версии
10:30 - веб версия готова
11:20 - про нативную версию
14:28 - начало версии на C
20:03 - запихиваем её в QR код
26:10 - итоги и честные фотки
Ссылка на репозиторий: github.com/emeraldpowder/QrGame
QR код: github.com/emeraldpowder/QrGa...
Ссылка на видео, которым я вдохновлялся: • Can you fit a whole ga...
Patreon канала - / emeraldpowder
Наш Discord - / discord
На этом канале регулярно появляются новые видео, которые позволят тебе научиться создавать игры, или подарят новые идеи и вдохновение, если ты уже умеешь. Подписывайся!
Остались какие-то вопросы, пожелания, или идеи для других видео? Смело пиши в комментарии под видео
Поддержать канал:
btc: bc1q5mycq8x9jr7s0r63xx00xt50tjepflyhlzc09q
eth/usdt(erc20): 0xa30F22fb9898fdc8801703723cd77BE7E678ee13
emeraldpowder.github.io/ru/do...
#qrgamechallenge #gamedev
Для тех у кого не сканируется код, или просто лень проделывать эти манипуляции, залил в репозиторий отдельно текст для копирования в адресную строку
raw.githubusercontent.com/emeraldpowder/QrGame/master/js%20data%20url.txt
Копируем весь текст, вставляем в адресную строку браузера, играем :)
У меня просто код вылез🗿.
@@Lidkvas и ее надо ввести в пойск
Максимум до 8 дошла 🗿
он не копируется...
@@tryoutbeats6950 Открыть ссылку в новой вкладке нажимай, а не левым кликом.
Мальчик :блин, мои ненужные проекты занимают пол жёсткого диска, опять придётся чистить
Мужчина :игра получилась 7 кб, а это значительно больше, чем мне нужно
У каждого мужчины есть папка ОБХЗ. И занимает столько же, сколько и проект мальчика.
@@user-zy2dw3zn8m я сделал 30 папок внутри одной и пока еще ни кто не спалил
@@licex5143 в папке Windows тоже никто не спалит
@@licex5143 Меня участковый мент попросил узнать что делает его сын за компом. Я такой win+r recent. Открылась папка с ярлыками на недавно открытые файлы. Меньше минуты обыск.
Конечно можно и shell recent чистить но на каждый прием найдется контр прием. Вопрос лишь в том сколько платят за обыск. Никому нет дела до порнухи, и даже если нашли - делают вид что не видели. В Корее, кстати, с этим строго.
@@licex5143 про мою папку "ненужное" на рабочем столе, которая весит 6 Гб говорить есть смысл?
Это слишком необычное видео, на которое я наткнулся в 6 утра, но хочется сказать, что проделанная Вами работа - невероятна
прекол в том что щяс я в 6 утра впервые на ткнулся на этого автора и видео
@@reburn3742 я тоже, ровно в 6
Пол шестого (оО)
ура, я не один такой
в 6 вечера...
" Я такой сканер не нашёл, поэтому... быстренько написал свой"
Го вз
Очень сильно ожидал именно этой фразы пока смотрел видео 😂
Хах,когда фото кода весит больше чем сама игра в коде)
в 1024 раза примерно*
Скрин на 11 айфоне 9 мб😂
Скрин на ксиоми редми 8а - 9-13 мгб
Скрин на Самсунг j 3 200 кб
Скрин нокии 3310 - 1 байт
О, наконец то игра которую сможет мой комп запустить
на 20 фпс
@@andreysesar7716 И то на половине игры всё зависнет
@@Moto.Driver you have a tapochek?
@@channelofmaks9505 Yes, i have tapochek
@@channelofmaks9505 Do*
Он: Сделать игру в .ехе, чтобы она не требовала специфических библиотек и умещалась в qr-code...
Я: нереально
Он: ...это интересная задачка
Так-же линуксоиды:
@@justarchive789 слый Trisquel попробуй, там сё на мин
Коды и прочее это не моё
@@user-rn7nb3sr1q а вот, шифрования, простая инфа, и логик гатс, и вообще сложные вещи эта каркас моЁ
@Крыса Гобби ралный мир интересние.и зачем нам хацкерам это знать
6-летний я, когда на чеке увидел QR-код:
1. Взять гелевую ручку,
2. Зарисовать все белые щели.
На чеке ещё можно ногтём рисовать))
@@chelovek901, дааа, помню. Но мне доставляло больше всего - то что описано в комментарии.
я вообще не знал что люди это вообще делают🤔
@@objection7718 что они вообще существуют )))
А я проходил лабиринт.
я сейчас за 30мин узнал больше, чем за 7 лет информатики и программирования в школе+институте
мне тебя жаль
лол
Это делает тебя неучем. В этом видео не узнаешь как программировать, куда ставить точки и запятые в кодах, и вообще где это делать. Ненавижу таких как ты
@@ShadowReapers это рофл а ты сразу писать умное НАЙН ТОКО МЕМЫ!!!!!!
@@dimasmlg1 сам понял что сказал?
Браво, маэстро
I'm only human after all, don't put the blame on me!
. . . . .
Some people got the real problems
. . . . .
Лайк влеплен. Поражаюсь такими людьми как вы. Пока я там гуглю условно о том 'как добавить что-то или как перевести строку в текст', вы умудряетесь делать такое. Хотелось бы мне также шарить во всякой теме)
Мой Вам поклон
@@evansmith5839 привет мне 17 лет, смогу ли я пойти в эту индустрию? Все хотел если честно, но экзамены постоянно.
@@evansmith5839 html курс был в школе. Когда сделал простую страницу почувствовал кайф. Бросил в 8 классе, потому что считал себя тупым, а сейчас вижу что главное усилие.
Просто шёл мимо
Решил глунять
и офигел
очень круто)
Небольшие разработчики: "так, надо оптимизировать по максимуму игру, а что если до 2 кб?"
Ubisoft: "Ха-ха, 3090 не может тянуть Вальгаллу в 4к 60 кадров, но оптимизацию мы не завезем"
потому что они нанимают "индусов" за три копейки кодить. Юбики крайне жадные. Впрочем, как и все эти корпорации сейчас.
@@Getoverhere666 близзард которых сечас чересчур обвиняют в экономии и жадности просто святые в этом плане
@@-15socialcredit вполне возможно, я немного не слежу за новинками
@@-15socialcredit нетнет ты забыл что они принадлежат активижн
@@HiQut да. Но критикуют именно близзард. Активижн гораздо сильнее ебут игроков донатом
Очень познавательно. Никогда в голову, реализовать такое, не приходило 😊. Не зря подписан на канал. Снимаю шляпу!
Тут в комментариях просили многопоточность, а я считаю что начать нужно с UnityEvent. Если посмотреть внимательно видео канала, то можно заметить. Ролики выходят по какому-то уникальному контенту. В русском сегменте, есть несколько роликов по Event-ам, но они не стоят потраченного времени. Event, на самом деле, очень полезная вещь и пропуск на канале, как по мне, это упущение.
может лучше маску снимешь?
@@hlibprishchepov322 😈Ха-ха-ха
Да все мы в курсе что ты снимашь шляпу, главное что автор снимает получше) и вроде как не шляпу
Игра: найти выход из лабиринта QR кода
Ага/
ТЫ ГЕНИЙ
Идея кстати!
Игра весит 0,0000000000000009 кб
И эта игра содержится в QR- коде точь-в-точь таком-же который в самой игре
Меня смутило только одно, как трясущаяся шакальная камера определяет этот недостоющий 4ый столбик пикселей
гугли помехоустойчивое кодирование и тому подобное
Это парадокс
Го вз
Я только в конце видео понял, что оно идет почти полчаса. Охренеть как интересно. Вдохновляет. Надеюсь, когда-нибудь тоже смогу писать игры, которые вмещаются в qr, запускать дум на велоспидометрах, делать 3d шутеры в консоли и творить другую подобную адовую дичь. Спасибо за видос!
Очень крутая вещь, обожаю такое безумие, спасибо :D
+
Спасибо! Хороший проект сделал. Многим даст пищу для размышлений. А самое главное расширит их кругозор.
Следующий шаг - игра в RFID чипе. Раньше картриджами от денди обменивались, а теперь ключами от домофона будут. 😉
Да,но проблема с памятью,так где то есть 700 байт ,если смотреть самую вместительную
@@fellowmean5 Mifare Classic есть 1k и 4k. А это уже устаревшая технология. MIFARE DESFire есть до 8k. Ох тут можно развернуться...
@@vertaletov не то шо эти СиСиДи терабайтные:)
@@azalothe3150 ага. Но ключи уступают в скорости чтение/запись. Но мы и не спешим.
А если игра "жирная", то можно несколько ключей взять. Как win95 на 11 дискетах.
Серьёзно? В РФАЙДИ меточку? 😲
Хотя чему удивляюсь, в mbr заталкивали? Заталкивали. ☺
Друг, очень интересно! Посмотрел от начала до конца. Все просто супер, продолжай дальше!
Мне это напомнило про Левшу. И блоха есть, и подковки красивые получились. Только у тебя она все же прыгает.
Бой, как же круто что ты вернулся!) Я уже думал, что ты забил на видосы! Очень здоровский видос. Отлично дополняет то, что сделал MattKC
Уже не помню когда был твой последний видос, но всё время что я ждал нового окупилось с лихвой. Спасибо тебе за интересный видос и титаническую работу)
Я не программист и никак не связан с кодом. Но блин) В 3 ночи я сижу и залипаю в это чудо. Респект за знания, труд и гениальность.
Вот вы смеётесь, а пацанчик-то реально время остановил..
Кто не понял у него время всегда 13:37
ЗАВАРУДО
Так он все за минуту сделал
Бляя,как ты вообще это увидел
@@chelovek901 ага
@@chelovek901, так 13:37 и 13:47, всё то же самое время....
Лучший русскоязычный канал по геймдеву! Не останавливайся и выпускай ролики почаще. Мы очень-очень ждем!
О, новый челенж, пошел и свою qr игру делать)
За видос спасибо, крутяк!
Сейчас: оптимизируем игру до 2 кб, это очень мало!
Раньше: 2кб? Да я что милионер по твоему чтоли?
10кб есть?
Или 19кб?
Есть идея для ролика: расскажите про многопоточность в юнити, Thread-ы и как вообще сделать многопоточную игру
Кто тоже этого хочет, ставьте лайк)
ну без чая и запаса продовольствия в виде печенек тут никуда, ибо чтобы не выстрелить себе в ногу при использовании нескольких потоков нужно не только синхронизировать потоки, так же учитывать, что процессор тоже может оптимизировать инструкции, поменяв их местами и это зачастую будет все к чертям ломать
да какая это игра будет - они делают троян, чтоб деньги со счета спиздить на мобиле
Сделать можно, но многопоточность поддерживают не все платформы. Поэтому Unity однопоточен. Для PC вполне можно делать многопоточную игру. Ничего особо сложного нет т.к многопоточность в шарпе намного проще, чем потоки в C++/C, но всё же есть свои моменты (в которых себе в ногу выстреливаешь)
@@tnak7947 ну сейчас джобы есть, которые довольно неплохо оптимизированы. А какие платформы не многопоточны? (Ну кроме html5)
@@tnak7947 многопоток на шарпе реализуется по разному. Самое простое конечно сделать экземпляр класса Thread.
Да ты чертов гений, как ты вечером смог заснуть?
Очень круто, в жизни бы не подумал что это возможно) респект!
Ну ты реально крут!!!! Терпения, знаний и просто усидчивости Вам не занимать.Было очень необычно и интересно.
Классно, молодец что сделал(!), много узнал в процессе. Тоже люблю поковырятся также. )
js код можно еще ужать,
переименовать функции в один-два символа.
вместо function someName(){} использовать запись let someName=()=>{}
если есть какие то объекты (как canvas) к которому обращаемся не один раз, то возможно будет оптимально написать let c = canvas. И дальше уже обращаться к с
Да, думаю там можно процентов на 20 ещё сжать, зная такие фичи js. Но я не знал :)
closure compiler или google compiler (не важно как искать, это одно и тоже). Неплохо подойдёт для этой цели. Он и лишние символы убирает, и названия укорачивает, и код переписывает таким образом, чтоб убрать недостижимый код, и сократить конструкции, сохранив работоспособность. Конечно, код может и не заработать после таких преобразований, но это редкие исключения из правил.
Я помню раньше были соревнования между разрабами и они писали демки, целью было сделать 3д игру весом до 64кб, писали на ассемблере, вот это было круто
В смысле раньше? Они до сих пор проводятся, поищите revision party, chaos construction.
@@Klemsber спасибо за информацию
удачи тебе в твоих проектах бро. ты крут
Подписался чисто потому, что на этом канале лучшее пояснение за юнити, которое я видел в ру сегменте. А тут такие шикарные извращения.) Понял, что подписался не зря.
Попал с главной страницы ютуба. Думал посмотрю и забуду... а нет, очень интересное видео оказалось. Да и ламповое) Крч топ
Ты мне напомнил меня в молодости =)
Лет 15 - 20 назад я впихнул Quake2 на дискету 1.5 MB
С++, turbo pascal, norton comander, было же времечко...
Мой годовой проект точно будет по созданию максимально маленькой игры для компа... Спасибо за вдохновение!!! Ты лучший!)
на одном дыхании посмотрел весь видос, лайк и подписка!
Как же повезло что ютуб решил показать этот шедевр мне в рекомендациях)
Я вот сижу и думаю. ЧЕЛОВЕЧИЩЕ!!!!! Тут даже в котлине создаешь пустой проект под ведроид и там уже от 100мб. Спасибо огромное за такое познавательное видео! ОГРОМНОЕ СПАСИБО!
Очень круто. Спасибо за проделанную работу
Ухты. Познавательно вышло. Больше все же ДЖес версия поразила, потому что "потрогать" смог. Поразительно
Это было просто офигенно!
Чувак, это слишком круто. Я надеюсь, ты понимаешь, что Ютуб не готов к такому контенту?
Р.s с меня подписка однозначно.
В англоязычном ютубе уже давно видел видео, как чел создал игру в КьюАр коде. Автор этого видео сам признался что позаимствовал идею с того видео. Так что нет.
Очень круто ,продолжайте)
Я ничего в этом не понимаю, но Вас очень приятно слушать. Приятно, что есть такие умные люди. Успехов Вам!
Вот сколько смотрю такие видосы
, создаётся ощущение, что в современной игровой индустрии в 95% случаев об оптимизации никто не парится, учитывая что уже даже в телефонах процы намного мощнее компов 10 летней давности.
Если не ошибаюсь какаито компания сделала полноценную 3д игра розмером в 70 кб
@@rexdraconis1703 kkreiger
Привет, понравилась твоя идея, спасибо большое.
Но посмотрев на финальных результат JS кода я понял что его еще можно очень хорошо ужать. Ну чтож, раз интересно и есть над чем поработать, то надо попробовать.
В итоге у меня получлось уменьшить data url с 2214 до 1673 байт при этом даже немного улучшив геймплей (добавил вывод game over в самой игре)
Код можно посмотреть у меня в репе github.com/rkuzovlev/QrGame там в папке с JS версией есть README в котором описаны принятые решения =)
Привет, спасибо за дополнения, отличный результат! Вот про самовызываемую функцию я так и не доразобрался в итоге. И лишние теги тоже пробовал убирать, но в финале решил оставить, чтобы корректный был html по всем канонам
@@EmeraldPowder а как насчёт вместить 4096 уникальных звёзд со своими планетами в 48 Кб?
@@user-ou9qd9no5n можно попробовать, сделать процедурную генерацию, написать всё это на js, минифицировать по уму, добавить интересного геймплея, в 48к думаю вполне можно уместиться
@@EmeraldPowder про космического торговца! И чтобы лазеры пиу-пиу! И пираты! И таинственная планета!
@@user-ou9qd9no5n а как же корованы, армия злого и лесные эльфы? Я уже джва года жду...
Очень хорошая подача информации , 👍хотелалось бы ещё такого формата познаний....
было интересно, спасибо
подписался, чтобы не пропустить видосы
Вот серьёзно. попробую зафигачить такую игру и думаю мой препод удивится уж точно, спасибо за выход в нестандартное :)
Когда Лёша Кластер программировал микроконтроллеры это выглядело проще...
Чел недавно наткнулся на твоё видео,честно говоря твои видео дает мотивацию для начинающих.
Очень крутая идея! здорово получилось)
Может Билл Гейтс и не ошибался?))
Это охеренно. С интересом посмотрел, понял, что хоть нас в вузе и учили асму, работе с линкерами и прочей парашей, я всё равно нихера не умею) Но это повод пойти и научиться)))
Полезно и информативно. Люблю такие видео.
Чувак, это насколько круто и интересно, что это пожалуй лучшие полчаса, потраченные на контент Ютуба))) за последний год так точно))
И да, использовать вектор для qr кода - это правильнее и профессиональнее.
Лайк, кто заметил, что в Emerald Power всегда время 13:37. Закон мир разрушен, ведь время нельзя остановить)
Оооо Кубе разработчик игр не ожидал тебя тут увидеть!
кажется мы имеем дело с флешем
EmPWR, тебя раскрыли завалим его?
Все просто, он из Хогвардса выпустился
Emerald Powder: игра весит 2 килобайта
COD WARZONE: ничего не знаю, 150гб
Это просто взрывает мозг, ты нереальный красавчик)))
Молодец! Очень интересно, хоть я и ничего не смыслю а программировании, но недели две назад как раз смотрел видео того дядьки 🤣
Klass🌟ja, sehr krasse. Danke schön.
Andrej, ich glaube, dass du bist Russen. Ja, Andrej?
Автор, ты зачем время остановил? Подольше подолбить компиляторы?
Это нереально круто! Я снова возвращаюсь в программирование чтобы как минимум попытаться написать свою игру
Спасибо. Очень понравилось видео!
Мой рекорд 8 кружочков, игра затянула на 20 минут! Прикольно зделал!
Продолжай в том же духе, чтоб у тебя было побольше подпищиков
Ура для моего компьютера 50s, это подойдёт как раз 1 килобайт оставлю, а 2 килобайта на игру.
Чел хорош, мега хорош.
Удачи в дальнейших разработках !
Много интересных, занимательных видео, спасибо
Привет, очень круто, вспомнил как писал свои первый консольные приложения :D Можно подкинуть идею для следующего видео? Как насчёт написания кастомного EditorWindow? Я сейчас пытаюсь в этом разобраться, но пока не далеко продвинулся) Можно было бы сделать редактор карт небольшой, то есть рисовать сетку в окне и закрашивать клетки в нужные цвета, а потом по массиву данных этих генерировать уровень. Самое сложное наверное правильно уметь верстать при помощи GUILayout
Спасибо! Сейчас как раз думаю над продолжением плейлиста про расширения редактора, наверное сначала будет про ExecuteAlways, там только с ним на отдельное видео, а потом можно про EditorWindow или кастомные инспекторы
@@EmeraldPowder , респект, кастомный инспектор попроще будет, многим зайдет, просто лично с ним чутка знаком уже, но буду рад любому контенту про расширяемость, надеюсь сделаешь по EditorWindow что-нибудь в будущем, удачи )
6:04 В это время кликеры и фермы: Да-да, проиграть...
Классно! Было очень интересно!
Отлично. Мало что понял, но нравится энтузиазм )) Не пожалел о проведенных полчаса ;)
2020 : сделал игру в QR код
2023: сделал приложение в QR коде
3031: сделал ос на QR коде
9999: сделал QR код в QR коде
Qr код размером от Москвы до Пекина
"круто это или бесполезно".
почему "или" ?
это и очень круто и совершенно бесполезно одновременно.
Навык и опыт никогда не бывают бесполезны. Даже если ты никогда не применишь полученные знания напрямую, ты точно будешь знать почему их не использовал.
Отличное видео. Большое спасибо за идею :)
Лайк за прикольный и полезный видос!!
Эхх вот бы киберпанк весил 2кл.
Здравствуйте, обратитесь в RockStar пускай они вас наймут как человек который сожмет их Gta с 120 гб до 30 гб
P. S чтооооооооо 200 лайков, раз на то пошло то подпишитесь на мой канал и чекните что я там снимаю👉👈
представляю гигантские qr коды на стенах зданий,вот он каков кибер-панк
@@mekaduk-1824 ахахахахаххаахаха
гта курит в сторонке видя сколько занимает колда варзон
@@dihaneeer лично я качал гта пиратку и я ее качал 1 день день если бы был хороший инет а так она копалась 3 дня ТРИ
До 30кб)))
Спасибо за видео, было интересно.
Спасибо, было круто. Я подписался :)
Есть один баг в твоей игре: если выходишь за пределы карты, то игрок без препятственно может лететь сколько угодно, правда он не будет очки собирать, но всё равно баг не приятный
14:59 какаха засчитана, спасибо.
"Деды" писали vc.com (где .com не TLD а расширение файла для доса) на асме. Ну если забыть про спектрум и прочие "специалисты", где "оконный монитор" в 2 Кб помещался и его в журнале МК публиковали для народа.
И таки да - на асме будет однозначно короче, если не опираться на чужие универсальные раздутые библиотеки.
В целом - зачот за исследование и соревновалки с секундометром и гонку за минимализьмой.
Любопытно что QR код может содержать непосредственно JS который некоторые девайсы способны сразу исполнить.
Кстати для некоторых применений годен ещё PAPERBAK.EXE от ollydbg.de/Paperbak/ с настройками примерно 150 DPI - 1/3 ECC - 100 кб/страница.
Тем более с учётом что Почта России не принимает диски к пересылке в письмах. Ну и в судебные материалы дела двоичный файл даже маленький сложно приобщить.
COM - файлы 16-битные, На 32-битной винде XP запускались, а когда вышла семерка больше не запускаются без эмулятора. На 64-битной системе 16-ьитные программые не запускаются даже на WinXP. А 32-х битный COM файл создать не получится, система отказывается такой загружать в память.
Но есть статья называется сам себе икзелеон. Там в 2002 года программист на ассемблере создавал WinAPI программы. Ну и там есть гайд как создать самому DOS-stab (это заглушка бесполезная для DOSа, содержащаяся в любой файле), Как уменьшить PE-заголовок и там же готовый файл, генерирущий правильный PE заголовок.
В итоге программу можно сжать меньше чем в 200 байт в формате exe, если запихнуть код в место где должен находиться DOS-Stab и поиздеваться над PE-заголовком.
Очень круто, код спокойно отсканировался, но у меня правда очень хорошая камера на телефоне. Что сказать, просто браво!
Реально круто. Определенно лайк
Ахахахаха, шутка про интернет банк зашла😂😂😂😂😂
Это
Просто
Оъ\унно
ваще огонь 🔥)) однозначно лайк 👍 + подписка ✍️, спасибо
Вы гений! Профессионал своего дела ;-)
А если сделать QR код не двумерный, а трёхмерный. Например, трехмерность разными цветами добиться. Можно ли увеличить объем записанной информации?
Можно, но сканер будет работать хуже.
Псс, чувак хочешь на эту игру чит?
Очень интересно!
Еще мысль появилась, что если сделать игру на юнити, которая бы помещалась на 3.5 дюймовую дискету (1.44 мб), со всякими ресурсами, спрайтами, звуками и мб музыкой
Спасибо за это видео, мне было интересно и очень понравилось.
Случайно наткнулся на канал, хочу сказать, что ты очень крут)
Спасибо!
Все... Ты начал эру коротких игр. Скоро плеймаркет будет завален ими
Если меньше мегабайта будут - я только за) Хотя у меня весь телефон не играми засран, а в основном всякими приложениями-бонусными картами по 150мб каждое
@@EmeraldPowder Думаю нас ждут QR вирусы.. 2кб - вполне так первая часть червя
Emerald Powder Бро можешь скинуть весь команду который ты писал во время создания игры, я не собираюсь создавать игру т.д просто охота побаловаться перед училкой что создал игру
На сегу игры от .5 до 2.0 МБ
А фиг там, на айфоне всё работает, при скане qr кода пишет что данные не коректные, но можно скопировать, и в хроме всё нормально работает
Ещё неделю назад хотел посмотреть ролик, наконец то я нашел его!