Как стать автором
Обновить
7
0

Пользователь

Отправить сообщение

Сферические практики в Godot

Время на прочтение7 мин
Количество просмотров4.7K

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

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии0

Кроссплатформенный мультиплеер на Godot без боли

Время на прочтение8 мин
Количество просмотров11K

Недавно я начала заниматься разработкой игр на Godot и столкнулась с проблемой - мне понадобилась возможность реализовать мультиплеер с независимым сервером, при этом ещё и с возможностью игры из браузера. В Godot уже есть разные варианты реализации мультиплеера - но для ускорения разработки и во избежание ошибок при ручной сериализации/десериализации я решила попробовать связать клиент на Godot и сервер на Kotlin через вебсокеты и описывать их взаимодействие в формате protobuf.

Всех, кому интересна эта тема, прошу под кат.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии6

Совмещаем «детский» микроконтроллер и настольные игры

Время на прочтение3 мин
Количество просмотров9.9K
Подарили мне недавно Micro:Bit. Который для обучения школьников, от BBC и сейчас имеет возрастающую популярность (особенно после того, как китайцы пообещали вот-вот сделать его клон дешевле раза в два). Я сам знаком с Arduino, был одним из пионеров, который у нас в стране показал, как скрестить Arduino со средой Scratch и эта платка… меня на первых порах не заинтересовала. Но чуть позже родилась идея: а не скрестить ли ее с настольными играми?

Я сам автор «настолок», их фанат. И наличие достаточно дружелюбной среды программирования (изначально плата программируется на Python и Java, но есть блочная среда с симулятором) заставило попробовать реализовать эту идею.

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


Всего голосов 13: ↑13 и ↓0+13
Комментарии6

Ещё одна фитолампа на Arduino

Время на прочтение7 мин
Количество просмотров14K

Пришла зима, короткий день, домашней пальме мало света. Нужно организовать подсветку. Готовую лампу покупать как-то неловко, да и надо ж чем-то заняться долгими зимними вечерами. Поехали ;)

Читать далее
Всего голосов 18: ↑16 и ↓2+14
Комментарии19

Молодежный родстер «Крым» — новые горизонты. Часть вторая

Время на прочтение6 мин
Количество просмотров12K
Предыдущая статья о родстере «Крым», созданным студентами Бауманки, вызвала большой интерес среди наших читателей. В новом материале мы хотим поделиться с вами еще большим объемом информации и наглядными результатами краш-тестов и экспериментов, проведенными над автомобилем.


Первый прототип родстера Крым
Читать дальше →
Всего голосов 66: ↑45 и ↓21+24
Комментарии106

ASCII игра — компромисс аутентичности и удобства

Время на прочтение5 мин
Количество просмотров17K
Всем привет! Занимаясь разработкой игры, стилизованной под текстовый режим, я пришел к ожидаемому противоречию. С одной стороны, игра должна быть пропитана духом текстового режима, ведь за это она нравится мне и, надеюсь, понравится любителям ретро игр. С другой стороны, мне хочется, чтобы игровой процесс был максимально приятен и современен. В этой статье я опишу пять пунктов, по которым я отклонился от истинного текстового режима. Удалось ли мне сохранить ламповое алфавитно-цифровое настроение в игре? Прошу высказать мнение!


Всего голосов 70: ↑70 и ↓0+70
Комментарии33

Автоматический вечный календарь с подсветкой

Время на прочтение6 мин
Количество просмотров15K


Статья с сайта Instructables на конкурс самоделок с применением станков с ЧПУ

Как по мне, самыми часто используемыми объектами в нашей жизни служат часы и календари. Течение времени всегда было одной из главных тем в жизни людей. И я такой же – думаю, что это можно понять по количеству моих проектов, связанных с часами. А теперь я хочу показать вам один из моих проектов с календарём.

Проектов календарей существуют тысячи, но мне всегда нравились вечные календари. Мне всегда была близка идея календаря, который можно использовать повторно, чтобы не менять офисный календарь каждый год. Минус таких календарей в том, что многие из них большие, отнимающие пространство штуковины, которые сложно читать и интерпретировать. Или бывают ещё кубики с днями недели, или кубики с месяцами, которые надо постоянно обновлять. Ещё бывают календари из кусочков (деревянных, металлических, магнитных) с числами от 1 до 31, которые нужно подбирать и размещать на специальной панели.
Всего голосов 30: ↑29 и ↓1+28
Комментарии9

Zip-файлы: история, объяснение и реализация

Время на прочтение76 мин
Количество просмотров92K


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

В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Читать дальше →
Всего голосов 176: ↑175 и ↓1+174
Комментарии45

Ультразвуковая ванна. Часть 1

Время на прочтение10 мин
Количество просмотров84K
Хомяки приветствуют вас, друзья.

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



Прежде чем начать растворять свои пальцы в ультразвуковой ванне, давайте разберем как же возникают механические колебания на более простых системах. Одним из примеров таких колебательных механизмов являются магнитострикторы, которые под воздействием магнитного поля могут сжиматься или растягиваться. Такими параметрами обладает обыкновенный феррит от старого дедовского приемника, который наверняка у каждого валяется где-то в гараже.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии35

Жизнь на частицах

Время на прочтение4 мин
Количество просмотров64K
Всем привет! Сегодня я расскажу о своих экспериментах с системами частиц. Основной целью было нахождение простых правил, которые бы порождали интересное поведение.

Классический пример системы с простыми правилами и сложным поведением — клеточные автоматы, именно на них я и ориентировался, пытаясь подобрать правила. Конечно же, для клеточных автоматов правила будут в большинстве случаев проще. Но частицы могут быть красивее!

Под катом много мегабайт гифок.

Читать дальше →
Всего голосов 269: ↑267 и ↓2+265
Комментарии67

Модель атак: где в основном злоупотребляют на электронных закупках и как с этим борются

Время на прочтение5 мин
Количество просмотров18K


Я продолжаю рассказывать про то, как устроены электронные торги и вообще закупки в нашей прекрасной стране.

Сегодня поговорим не про хищения (про них уже говорили вот здесь), а про другие изобретательные нарушения.

Сначала надо понять концепцию того, что нужно участникам:

  • Поставщики хотят продать свой товар. Лучше — дороже, но если дороже не выходит, то хотя бы по цене, позволяющей заработать.
  • Государственные заказчики 44-ФЗ хотят купить что им нужно, а не что можно им продать, творчески интерпретируя ТЗ. И при этом не сесть.
  • Корпоративные заказчики 223-ФЗ хотят показать эффективность снижения цены от среднерыночной (у нас средний показатель — около 15 %, но бывает и 30 % снижения по ряду закупок).

Эти конфликты порождают ряд атак участников друг на друга. Давайте разберём некоторые из них.
Читать дальше →
Всего голосов 45: ↑44 и ↓1+43
Комментарии77

Вышел Orange Pi 3 — полноценный мини-пк за 30$ на Linux

Время на прочтение2 мин
Количество просмотров108K
image
Вышла новая версия всем известного клона Raspberry Pi. Форм фактор тот же если не учитывать PCI-E.

Из нового:

PCIE

  • Supports RC mode
  • Supports x1 Gen2(5.0Gbps) lane
  • Complies with PCI Express Base 2.0 Specification

WIFI+BT

AP6256, IEEE 802.11 a/b/g/n/ac, BT5.0
Читать дальше →
Всего голосов 92: ↑88 и ↓4+84
Комментарии224

Разработка ИИ на примере игры Dicey Dungeons

Время на прочтение9 мин
Количество просмотров11K

Примерно в течение месяца я решал одну из самых сложных технических проблем моей новой игры Dicey Dungeons — совершенствол ИИ для финального релиза игры. Это была довольно интересная работа, и многое в ней стало для меня новым, поэтому я решил немного о ней написать.

Для начала объясню: я не специалист в теории вычислительных машин, а просто один из тех, кто достаточно изучил программирование, чтобы создавать видеоигры, после чего закончил обучение, ухватив только то, что мне было необходимо. Обычно я могу решать свои задачи самостоятельно, но настоящий программист скорее всего не одобрил бы мои решения.

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

Ну, давайте начнём с объяснения задачи!
Всего голосов 26: ↑25 и ↓1+24
Комментарии2

Github + Markdown = Viewdocs

Время на прочтение1 мин
Количество просмотров14K
Для ПО с открытым исходным кодом очень большое значение имеет документация. На своем опыте я убедился, что написание хорошей документации зачастую даже важнее написания тестов.

Когда я перерос README на Github, я рассматривал только 2 варианта для документации: Github Pages и Read the Docs. К сожалению, у меня возникли проблемы с обоими. Главным образом, Read the Docs заставляет меня использовать reStructured Text, а Github Pages подразумевает поддержку отдельной ветки и использование генератора статичных страниц.
Читать дальше →
Всего голосов 34: ↑26 и ↓8+18
Комментарии15

История переезда системного администратора в Германию. Часть вторая: переезд и первые шаги

Время на прочтение15 мин
Количество просмотров59K
Всем привет.

Я наконец-то изыскал время и написал вторую часть своей истории об IT-эмиграции. Первую часть можно прочитать тут — История переезда системного администратора в Германию. Часть первая: поиск работы и виза. В этой части я опишу подробно, как мы с сестрой обустраивались на новом месте, какие ошибки при этом допускали и сколько нам эти ошибки стоили.

Итак, поехали.

У нас было два загранпаспорта, национальная виза, контракт на работу, договор на учебу и целое множество вещей всех сортов и расцветок, а также лысый кот, длинный список дел, норовящая развалиться машина и несколько тысяч евро. Не то чтобы всё это было так уж необходимо для переезда в Германию, но если уж начал эмигрировать из России, то становится трудно остановиться. Единственное, что вызывало у меня опасение — это жилье. Ничто в мире не бывает более беспомощным, безответственным и порочным, чем поиск квартиры во Франкфурте. Я знал, что рано или поздно мы столкнемся и с этим.

Читать дальше →
Всего голосов 82: ↑73 и ↓9+64
Комментарии273

Raspberry Pi в картридже от NES

Время на прочтение19 мин
Количество просмотров29K

Здравствуйте! Это ретро игровая приставка на базе Raspberry Pi. В картридже от игровой приставки NES. Для игры может использоваться интегрированный экран. При выводе же видео по HDMI он показывает изображение обложки игры, а также температуру ядра, см. фото. Предлагаю немного понастальгировать и почитать про сборку и настройку такого устройства. Осторожно, далее много трафика и фото.
Всего голосов 42: ↑42 и ↓0+42
Комментарии20

Где мои деньги, чувак: о чем молчит Steam

Время на прочтение8 мин
Количество просмотров89K
Это первая из шести статей, в которых я хочу рассмотреть весь процесс паблишинга игр на ПК от начала и до конца. Оставим за скобками разработку — помимо неё вас ждут много других приключений. Выбор издателя или самостоятельное издание, локализация и адаптация игры, маркетинг и PR, выбор цен и планирование скидок, работа с издателями, дистрибьюторами и посредниками.



Мы много будем говорить о Steam, самой крупной открытой платформе для игр, потом посмотрим на 3rd-party дистрибуцию и альтернативные варианты продаж. До того, как вы найдете свои собственные ответы — давайте трезво посмотрим на то, как маховик издания игр работает сейчас.

Простите, ребята, но это будет очень меркантильная статья с цифрами и процентами — я считаю, что если создание игр ваша страсть и ремесло, без них сложно уверенно идти вперёд. Начнём с цен, скидок и того, как работает список желаемого в Steam.
Читать дальше →
Всего голосов 122: ↑120 и ↓2+118
Комментарии182

Процедурная генерация уровней

Время на прочтение9 мин
Количество просмотров41K


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


Думая, как бы упростить себе жизнь, в голову пришла идея о процедурной генерации. Ясное дело, её тоже надо будет писать, но как говорилось в одном известном произведении, "лучше день потерять, потом за пять минут долететь".


Внимание! Под катом много текста и "жирных" гифок.

Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии15

Создание «искусственной жизни» на компьютере

Время на прочтение10 мин
Количество просмотров109K
Всем привет. В статье хочу описать свой эксперимент по созданию «искусственной жизни» на компьютере.

Как это выглядит?

картинка кликабельна

На компьютере создаётся виртуальная среда со своими правилами и выпускается первая простейшая живность. Буду называть их ботами. Боты могут погибнуть или выжить и дать потомство. Потомок может слегка отличаться от предка.

Ну а дальше за работу принимается эволюция и естественный отбор.

А мне остаётся только наблюдать за развитием мира.

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

Поведением ботов управляет код, записанный в них.

Именно код и является геномом, который отвечает за поведение бота и который будет изменяться в процессе эволюции.

Внутреннее устройство кода — это самое интересное в проекте.

Код должен быть простым и выдерживать различные модификации (случайное изменение любого элемента в коде) над собой без синтаксических ошибок.
Читать дальше →
Всего голосов 214: ↑210 и ↓4+206
Комментарии393

Создание игры на Lua и LÖVE — 5

Время на прочтение26 мин
Количество просмотров5.2K
image

Оглавление


  • Статья 1
    • Часть 1. Игровой цикл
    • Часть 2. Библиотеки
    • Часть 3. Комнаты и области
    • Часть 4. Упражнения
  • Статья 2
    • Часть 5. Основы игры
    • Часть 6. Основы класса Player
  • Статья 3
    • Часть 7. Параметры и атаки игрока
    • Часть 8. Враги
  • Статья 4
    • Часть 9. Режиссёр и игровой цикл
    • Часть 10. Практики написания кода
    • Часть 11. Пассивные навыки
  • Статья 5
    • Часть 12. Другие пассивные навыки

13. Skill Tree

14. Console

15. Final

Часть 12: Другие пассивные навыки


Залп


Мы начнём с реализации оставшихся атак. Первой будет атака Blast, которая выглядит так:

GIF

Выстреливается несколько снарядов с разной скоростью, как из дробовика, которые потом быстро исчезают. Все цвета берутся из таблицы negative_colors и каждый снаряд наносит меньше урона, чем обычно.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии3
1

Информация

В рейтинге
Не участвует
Откуда
США
Зарегистрирован
Активность