Бешеный программист
39 subscribers
52 photos
5 videos
18 links
Download Telegram
что вы вообще знаете о долгих задачах 😂😅
😁3🔥2👏1
Друзья! честь праздника дарю вам уникальную функцию. Больше нигде такого не найдёте! (возможно) 😅

function celebrateNewYear() {
console.log("С Новым годом! 🎄");
// TODO: Допилить логику праздника
// Планы: добавить анимацию, интеграцию с шампанским
// Срок: когда-нибудь в следующем году
return "Поздравление отправлено (в теории)";
}

// Использование:
celebrateNewYear(); // Выведет поздравление и чувство глубокого удовлетворения от выполненного TODO


Работает без багов (потому что ничего не делает). Берите, пользуйтесь! 🥂
❤‍🔥3😁2👍1🎄1
в новогодние праздники в основном накрыло творчеством, но про программирование не забывал, наконец-то допилил всё что хотел по гонкам, и выложил первую версию. сразу же захотелось кучу всего доделать 😅 но, зато уже можно заценить! :) https://github.com/DoubleDox/DoubleDox-Racer
а если вдруг здесь есть любители carmageddon 1, need for speed 1,2,4,5 - там есть инструкция как к моей игре подключить эти старые игры :)
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Большой плюс разработки игры на готовом движке - то, что с минимальными усилиями она запустится на другой платформе. например, на андроиде :) С управлением, правда, пока непонятно. Есть тут играющие в гонки на мобиле? какое управление самое удобное, на ваш взгляд? :)
🔥2🥰1
Всё началось с того, что я решил просто "добавить новую машинку" к гонкам. Но, "просто" у меня редко бывает 😅 Решил, что нужно больше реализма - разные двигатели со своими параметрами, разные коробки передач и т.д. Так что, закопался вплоть до реализации графика зависимости момента двигателя от оборотов :) А если будет интересно как это работает виртуально - расскажу в след. постах :)

А названия машин не покажу, смотрите в игре 😜
🔥21
Для игр типа "крокодил" (когда нужно жестами объяснить какое-либо слово) мне всегда лениво было придумывать слова. Поэтому - просто написал такой сервис. Раньше компанией использовали, теперь - сервис грустит. Так что, хорошенько его переработал, обновил. И теперь делюсь с вами :))
https://gs.doubledox.com/word_gen/
База слов пока не очень большая, но если будут пользователи - дополню из архива, плюс форму для предложения новых слов запилю :)

Краткий мануал -
Create Room - создать комнату
Public/Private - приватность комнаты
Invite/Join by invite - подключение через инвайт-код (в приватную комнату)
Start/Finish game - запустить, остановить игру )
🔥32
Несмотря на мой долгий опыт разработки игр, у меня было довольно мало практики работы с аналитикой. Ну, большая часть проектов не доходила до пользователей, а те, что дошли - там не было времени отвлекаться от разработки :)
Штош, надо исправлять. Тем более что сейчас в релизе есть собственный проект :)
Подобрать оптимальную систему за все эти годы я так и не смог - часть не работает с играми, часть тормозит, часть чёрти как интегрируется с юнити. А если учесть современные тенденции "устаревания серверного оборудования" (не буду показывать пальцем сами знаете в кого) - решил залезть в технологию своими ручонками - и написать свой трекер. ну, трекер получился быстро. Но суть аналитики как раз в визуале представления данных, который мне было делать откровенно лень. И тут уже в ход пошёл ИИ :) Довольно шустро получилось накодить базовый интерфейс.
Теперь дело за малым. Надо как-то данными её заполнить... 😅
2🔥2
А помните те времена, когда интернет был не нужен для мультиплеера? Я вырос на таких играх. Самая движуха была именно тогда, когда вы собирались в комнате за одним экраном.... Именно этот дух движет мной при создании игр =)
Поэтому! наконец то добрался до изучения Unity Input System (да-да, я не всегда пишу своё с нуля) - это такая обновленная система управления вводом от игроков - теперь мои гоночки полноценно поддерживают и Split screen (разделенный экран), и ввод с мобильных устройств (android).
Свежая версия для пк - https://github.com/DoubleDox/DoubleDox-Racer/releases/tag/1.2.3
Свежая версия андроид - https://www.rustore.ru/catalog/app/com.doubledox.racer
кстати, да! не хвастался ещё, но мои гонки доступны под андроид! =)
🔥3👏2
В последние недели больше сфокусировался на веб-сервисах, и, вот небольшой дайджест краткослов! (ну, раз англицизмы теперь нельзя...:))) )
Потихоньку социализирую сайт с базой песен https://akk.doubledox.com. Сделал логику событий, теперь заказы и историю исполнения можно привязывать к ним. Основная цель - мэтчить слюбливать участников гитарников/квартирников по пересечению репертуара. Ну и чтобы можно было искать тех или иных исполнителей (инструмент, вокал) для совместного музицирования. Плюс - хранение истории исполнения.

А так как мне важно получать фидбек глас народа и понимать "желаемость" тех или иных фич диковин - я сделал возможность просматривать и голосовать за грядущие фичи диковины. Так что можно идти на https://tasker.doubledox.com и ставить лайк любо!

А еще пришла в голову интересная мысль. Я всю документацию храню в формате markdown - и, в общем то, не так уж и сложно сделать сайт (который автоматом будет обновляться из текущей документации) - так что скоро будет доступен хелп кладезь мудрости!
2😁2🔥1
Появилась перспектива по работе поделать сетевые гонки, поэтому резко меняю направление разработки своих гонок в сторону мультиплеера. Все как полагается - комп, рядом ноут, чтобы на двух машинах сразу можно было отлаживать если что... но что-то пошло не так :)
🔥4🥰4
Потихоньку пилю сайт своей группы "Одна Волна" =)
https://samewaverock.ru
Теперь в интернете можно посмотреть полную историю концертов! правда, не все ссылки пока проставил, но всё будет! :)
И как раз отличный момент проанонсировать предстоящее открытие весеннего сезона 5 апреля! )
🔥7
Продолжаю потихоньку пилить сайт группы.
https://samewaverock.ru/#stash
Между выкладыванием демки песни и её попаданием на альбом может пройти довольно много времени. А некоторые треки в принципе не предназначались для публикации в рамках группы. Поэтому пришла в голову мысль оформить это в отдельную страницу на сайте - под названием "каморка" :) Прикрутил плеер и даже кеширование треков на устройство - таким образом можно слушать музыку даже на парковке! 😅
2👍2
как и писал ранее - возникла идея вывести актуальную хранящуюся документацию в веб. И вот! теперь есть единое место, где её можно будет посмотреть (и не только документацию, кстати). Постепенно буду пополнять, по мере возникновения вопросов :) велкам https://wiki.doubledox.com
1🔥1
Смотрю себе русский сериал "Сергий против нечисти", никого не трогаю, тут в конце серии включается реклама. думаю такой ну ёёё совсем озверели, даже до титров вклинили. А там бац, и реклама игры по этому сериалу, прототип которой мы в прошлом году делали )) почувствовал себя Лео из мема ))
🔥4
Полгода назад я начал потихоньку структурировать документацию, которая имелась на тот момент. И, решил поискать какой-нибудь удобный редактор разметки markdown (которую упоминал в одном из прошлых постов). Так я наткнулся на Obsidian. И, в общем то, полгода использовал его как редактор документов.

И только недавно до меня вдруг дошло, что это не просто редактор. И не просто приложение для заметок. Это, блин, личная база знаний, в которой можно сделать всё что угодно благодаря куче плагинов сообщества. А главное - всё локально! Как и мой сервис "Каморка" на сайте Одной Волны - тоже может работать даже на парковке! 😅

Парочка полезных кейсов:
- Написание текстов. Понятное дело, что песни я пишу теперь только в нём :) Самая полезная для меня фишка - это комментарии %% %% - текст внутри показывается серым, а если перейти в режим чтения (Ctrl+E) - они вообще пропадут, и можно скопировать только нужный текст (при написании песен часто нужны пометки или альтернативные варианты)
- Дневник! Рефлексировать важно, а тут можно по одному клику создавать заметку на день по шаблону, куда вписывать не только дела, но и мысли, которые посещают. Ибо если мысль сразу не записать скорей всего она уже врядли возникнет (ну, у меня так:) )
- База знаний. Есть крутое расширение для браузера Obsidian Web Clipper. Теперь я не держу открытые вкладки, которые "когда-нибудь" изучу. Содержимое (вместе с сылкой на источник, разумеется) сохраняется в виде документа markdown в ваше хранилище. А если речь идёт о роликах ютуба, так там еще и транскрипция текстом выгрузится.
- Можно рисовать схемы. Например, с помощью плагина Excalidraw.
- Можно переводить документы в текст с помощью OCR плагина.
И это только то, что я успел начать использовать за это время :)

Короче - это не очередная программа для записей, а способ думать. Она не навязывает структуру, а помогает вашей собственной вырасти естественным путем )) Просто берёшь и начинаешь писать :)
👍2🔥21
С этими предконцертными подготовками забыл поделиться! Неделю назад был в Сколково на киберсубботе, Смотрел как в один из наших рабочих проектов играют... исключительно дети 😅 Ну и ладно, зато играют с интересом :)
🔥62
Всё начиналось еще лет 16 назад, когда мне нужен был сервис, чтобы отмечать список песен, которые знаю. Так и начался этот проект. А позже сделал возможность другим смотреть свой репертуар, чтобы знали что заказывать на гитарных посиделках :)

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

Следующий этап - планирование мероприятий. мне, как исполнителю нужно было под конкретное мероприятие "планировать" плейлист и отмечать исполнение - так появилась вкладка "события". Плюс - события можно делать публичными, или приватными с конкретными участниками - и видеть кто что планирует исполнить, чтобы повторить что-либо к мероприятию.

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

ссылка на сервис: https://akk.doubledox.com/

В общем, сервис пилится, если вам интересен функционал - пользуйтесь, если нужны какие то доработки - пишите, постараюсь учесть :)

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

P.S. добавление песни пока неинтуитивно понятное - нужно в поиск вбить "ИСПОЛНИТЕЛЬ - НАЗВАНИЕ_ПЕСНИ" (разделитель обязательно пробел-дефис-пробел, чтобы не путать с дефисами в исполнителях или названиях песни) - и нажать Создать.

P.P.S. параллельно делаю офлайн-режим - сайт можно установить как приложение на телефон - будет иконка на рабочем столе, а закешированные песни будут открываться даже без интернета.
🔥41
Вы когда-нибудь задумывались о том, как игра понимает, что происходят столкновения?

Рассмотрим на примере гонок )

Можно подумать, что компьютер просчитывает каждую деталь: зеркала, бампер и даже спойлер. Но на самом деле для игрового движка ваша крутая тачка выглядит... как обычная невидимая коробка! Иногда - несколько коробок :)

Почему так? Потому что просчитывать примитивы на порядок быстрее чем сложный визуал. А еще эмпирический лайфхак - использование капсулы/сфер спереди, чтобы машина не цеплялась за борта в поворотах :)

Гонки, кстати, попиливаю потихоньку :)
под винду https://github.com/DoubleDox/DoubleDox-Racer/releases
под андроид https://www.rustore.ru/catalog/app/com.doubledox.racer
👨‍💻21🔥1
Вообще практически весь мой игровой опыт сводился к проектам "в стол". С рабочими проектами это отдельная боль, а личные проекты были скорее для саморазвития, и все время хотелось что то доделать прежде чем выкладывать. Поэтому пару лет назад решил - сделаю простую казуалку, и выложу в сторы. Пусть будет, пусть люди хоть во что то моё играют :) Так и появился проект Traffic Run. Суть простая - гнать вперед, объезжать траффик, никакой физики и сложного управления - только влево вправо и тормоз :))
Так что, если нравятся простые игры - велкам. фидбеку буду рад :)
https://www.rustore.ru/catalog/app/com.doubledox.trafficrun
21👍1👏1
Еще в начале моего веб-разработческого пути я сталкивался с некоторым опасением со стороны пользователей при авторизации на моём сайте через сторонние сервисы.
Так что, на всякий, давайте разберём всё на пальцах :)

Механизм авторизации, который я использую, называется OAuth. И вот как он работает:
1) Вы нажимаете "Войти через Google/VK/Yandex" на моём сайте.
2) Мой сайт отправляет вас на настоящую страницу Google/VK/Yandex.
3) Вы вводите логин и пароль там, на сайте конкретного сервиса. Я НЕ вижу их. Физически не могу.
4) Google/VK/Yandex проверяет пароль и спрашивает можно ли предоставить данные для моего сайта.
5) Вы нажимаете "Разрешить".
6) Сервис перенаправляет обратно на мой сайт вместе с временным кодом.
7) И уже на своём сайте я могу этот временный код использовать, чтобы обратиться к Google/VK/Yandex и идентифицировать того, кто авторизуется.

Таким образом я на сайте получаю ровно то, что вы сами разрешили при посещении страницы стороннего сервиса. обычно это почта, а иногда даже и почты нет - только внутренний идентификатор внутри этого сервиса. Но мне этого достаточно, чтобы идентифицировать пользователя и пустить его в аккаунт :)
🔥21