Pull to refresh
58
-4.4
Send message

Разработка игры Jim Power для 8-битной приставки: из первых рук

Level of difficultyEasy
Reading time30 min
Views2.2K

Одно из моих главных увлечений в жизни — видеоигры, преимущественно старые. Я большой энтузиаст ретро-компьютеров и игровых консолей, много лет занимаюсь самыми разнообразными делами в этой области. Кто-то знает меня как разработчика игр, кто-то — как демосценера, кто-то — как чиптюн-музыканта, разработчика музыкального ПО, железных самоделок, и так далее.

Но далеко не все проекты и моя роль в них известны широкой публике. Пожалуй, один из самых интересных — версия игры Jim Power от Piko Interactive, созданная для 8-битной игровой консоли NES (Famicom, Денди). Я занимался им в 2014-2020 годах в качестве приглашённого разработчика.

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

Если вы когда-либо хотели узнать, как и кем делаются современные игры для несовременных платформ, каким образом люди вообще приходят к этому — сейчас всё будет.
Читать дальше →
Total votes 28: ↑35 and ↓-7+42
Comments5

Разбирая бэклог. Часть 7. Diablo. 5+7 2D и 3D альтернатив или куда меня завело изыскание аналогов известной ARPG серии

Level of difficultyEasy
Reading time17 min
Views1.9K

Однажды вдоволь наигравшись в данную серию игр и первую "Diablo" (1996) в отдельности, я стал интересоваться на предмет, а на что ещё можно обратить внимание со схожими параметрами? Поиск был ограничен следующими критериями:

*. RPG / ARPG. Либо другой жанр, например Action / Shooter, или rogue-like, но с явно выраженными схожими элементами.

*. Год выпуска не имеет значения.

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

2. Умеренная продолжительность, без жёсткого, затяжного захода на 100+ часов.

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

4. Атмосфера.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments10

Отправляем GC в отпуск и создаем эксзепляры классов .NET сами

Level of difficultyMedium
Reading time6 min
Views4.9K

Придерживаясь великой цитаты "правила созданы для того, чтобы их нарушать", давайте нарушим какие-то основополагающие правила CLR. Как на счет того, чтобы послать GC с его работой в отставку и самим заняться размещением в памяти экземпляров классов? Заодно разберемся, как все это работает где-то там под капотом CLR.

Читать далее
Total votes 36: ↑39.5 and ↓-3.5+43
Comments14

Деплой .NET приложений для самых маленьких. Часть 0

Level of difficultyMedium
Reading time11 min
Views6.7K

Давным-давно, когда Linux был ещё на ядре 2.6, а PHP5 был глотком свежего воздуха, я впервые заинтересовался миром веб-технологий. Читал учебники, статьи, зависал на форумах, но все равно мало мог понять как код, который я вижу на экране, превращается в волшебные сайты с кнопками, формами и анимациями. Узнал про LAMP и его аналоги для Windows, узнал, что, оказывается, есть хостинги, где такие сайты размещаются. Как только появился внешний интернет без трафика, я поспешил перенести свои локальные поделия во внешний мир, попутно узнав про замечательный протокол FTP. Просто мир волшебных открытий был для меня, особенно когда узнал, что не нужно писать свой форум с нуля, а можно использовать что-то из phpBB, vBulletin и других уже готовых движков.

И когда я много лет спустя переключился в мир .NET, перечисленные ранее умения сыграли со мной злую шутку – я долго не мог понять, как мне найти хостинг для .NET приложений. Почему все известные мне хостинги с лёгкостью предоставляли возможность развернуть PHP приложения, причём даже предлагая какие-то предустановленные версии CMS, но днём с огнём не сыщешь хостинг под .NET. Мое непонимание принципа развертывания приложений усугубляли статьи, которые предлагали их размещать в подходящих сервисах типа Heroku, Digital Ocean или Azure – ведь это так просто и дешево…

Поэтому предлагаю максимально подробно рассмотреть вопрос публикации .NET приложений в арендованном VPS.

Читать далее
Total votes 24: ↑23.5 and ↓0.5+23
Comments28

Капитан ФСБ, шпионы и подставной гендиректор: разбираем атаку на нашего топ-менеджера

Level of difficultyEasy
Reading time9 min
Views104K

Привет!

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

Стандартный телефонный скам уже всем известен и с каждым годом работает все хуже, поэтому мошенники придумали новую схему с предварительной атакой на жертву через мессенджер. Именно под такую схему попали наш операционный директор Леша Крапивницкий и несколько других коллег. 

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

В начале рассказываем, откуда пришла новая схема телефонного мошенничества. Если хотите сразу услышать разговор Леши, листайте до раздела «Мошенник звонит из "правоохранительных органов" и напоминает об уголовной ответственности».

Читать далее
Total votes 65: ↑61 and ↓4+57
Comments279

Я программист, и я тупой

Reading time2 min
Views61K
Я пишу код за деньги уже пятнадцать лет. Пробовал себя и в других ролях – управление продуктом, аналитика, тестирование, – но как-то не пошло. И с течением лет пришел к осознанию, что я не очень умный. К сожалению.

Никаких особых медицинских диагнозов мне не ставили, но мои умственные способности крайне ограниченны. Даже те задачи на Leetcode, которые попроще, вызывают у меня затруднения. Когда я читаю о самом обычном алгоритме консенсуса, у меня кипит мозг. У меня плохо получается отслеживать сложные зависимости в кодовой базе. Я не способен освоить модные языки вроде Rust (пытался, но по правде сказать, для меня это чересчур). Я терпеть не могу микросервисы и современный фронтенд: там слишком много движущихся частей, и уследить за всеми я не в состоянии.

Как же я выхожу из положения?
Читать дальше →
Total votes 270: ↑280.5 and ↓-10.5+291
Comments316

Анатомия Hello World на языке C

Level of difficultyMedium
Reading time15 min
Views21K

Эта статья посвящена программе Hello World, написанной на C. Это максимальный уровень, на который можно добраться с языком высокого уровня, не беспокоясь при этом о том, что конкретно язык делает в интерпретаторе/компиляторе/JIT перед выполнением программы.

Изначально я хотел написать статью так, чтобы она была понятна любому, умеющему кодить, но теперь думаю, что читателю полезно иметь хотя бы некоторые знания по C или ассемблеру.
Читать дальше →
Total votes 105: ↑120 and ↓-15+135
Comments47

Я скучаю по механикам из старых игр

Reading time13 min
Views68K

За время существования индустрии разработки игр формул разных механик, способных развлечь нас, придумали не одну сотню. Что-то умерло засветившись в паре игр, что-то ушло со временем, какие-то существуют до сих пор. Есть и такие, которые не просто выжили, но стали мейнстримом, хотя только портят нервы игрокам. Игровой дизайн большинства старых игр, от второго фолыча до первого FarCry и пятью активными перками, пусть и не был вершиной искусства - затягивал не хуже современных песочниц с миллионом активностей. Редкую игру захочется пройти второй раз, а как вспомню, что на прохождение можно потратить под сотню и больше часов - думаю, а оно мне действительно было надо? Можно же было заняться чем-то более интересным. Я знаю, чем закончился второй фолыч, знаю это уже четвертый раз, но каждый раз игра удивляет меня чем-то новым. А вот нового "Аватара" бросил на половине, слишком много всего и все недоделанное, и прозрачные стены... просто бич игры. И тут вопрос, чего-то не хватает в этой раздутой, перекачанной сотней механик игре? Только задумайтесь - в аватаре больше сотни основных механик, которые влияют на окружение. Может в играх что-то потерялось? Хотя "потерялось" - звучит странно - за столько лет индустрия только создала просто море всего нового. Статья ориентирована на "побурчать", так что не ждите каких-то великих секретов и тонкостей мастерства.

Раньше и флешки квадратнее были...
Total votes 131: ↑138 and ↓-7+145
Comments457

NET hosting. Обзор вариантов и пример деплоя приложения

Level of difficultyMedium
Reading time6 min
Views1.6K

Приложения Dotnet и Mono можно развернуть на сервере разными способами. В статье мы рассмотрим специализированные решения для хостинга dotnet приложений и предоставим инструкцию по развертыванию, написанную на конкретном примере.

Читать далее
Total votes 12: ↑11.5 and ↓0.5+11
Comments7

Предвестники шторма в малом и среднем бизнесе, и в государственных структурах среднего размера

Level of difficultyHard
Reading time18 min
Views7.3K

Для лиги лени: много лет в российском ИТ продвигалась политика «Умные нам не надобны. Надобны верные». В связи с этим в российском интернете уже сейчас много интересных моментов и криков боли – свободные мидлы кончились, а джуны не прыгают за табличкой 'морковка будет завтра'. Потому что морковки для них уже давно нет, осталась только табличка, и джуны это знают.

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

Читать далее
Total votes 50: ↑42 and ↓8+34
Comments30

Последнее издание культовой книги «Искусство схемотехники» стало доступно русскоязычным читателям

Level of difficultyEasy
Reading time4 min
Views38K

“Электронщики, как учит нас Парацельс, самозарождаются среди паяльников, радиодеталей, универсальных плат и проводов” (@teap0t)

Возможно, это действительно так, но без хорошей книги - учебника или справочника, которые служат катализатором, этот процесс может так и не завершиться. А лучшей книгой для начинающих разработчиков электронных схем и практически библией электронщиков последние сорок лет, считается "Искусство схемотехники" (англ. - The Art of Electronics) Пауля Хоровица и Уинфилда Хилла.

Читать далее
Total votes 65: ↑74 and ↓-9+83
Comments135

35+ бесплатных ресурсов для начинающих разработчиков С++

Level of difficultyEasy
Reading time7 min
Views14K

Привет. Предположим, вы захотели начать изучать языĸ программирования C++ или, возможно, тех материалов, что уже изучили, вам недостаточно.

Я — Савва, программирую уже больше 7 лет, работаю менеджером команды наставников в Практикуме на курсе «Разработчик С++», а с недавнего времени — разработчиком в Positive Technologies. В этой статье мы с вместе с Практикумом собрали леĸции, ĸниги, курсы и всяĸое таĸое, чтобы шансов выстрелить себе в ногу самостоятельно было меньше :) По C++ существуют и другие подборĸи, но, ĸ удивлению, на Хабре их всего две.

Читать далее
Total votes 26: ↑26.5 and ↓-0.5+27
Comments17

Почему FAR — центр моей компьютерной вселенной

Reading time4 min
Views52K

Какую программу вы обычно запускаете сразу после загрузки операционной системы? Кто-то сразу стартует браузер — поглядеть, кто там сегодня в Интернете (на Хабре) неправ. У многих — это редактор кода: «Я, как утром встал, сразу за дрель!». Возможно, вы сначала привычно открываете мессенджеры и почту — проверить, что там нового и важного.

Я обычно сразу после запуска операционки открываю свой Любимый Файловый Менеджер. Это «переходящее звание» — в разные периоды моего компьютерного прошлого этой чести «удостаивались» разные приложения с классическим двухпанельным интерфейсом. Сначала это был простой, но универсальный Norton Commander. Потом появился DOS Navigator со всяческими классными фичами: CD-плеер, телефонная книга с дозвоном по модему, встроенный табличный редактор и прочие прекрасные и поразительные для тех лет вещи.

Когда Windows прочно вытеснил DOS и все понемногу забыли про файл autoexec.bat, звание моего любимого файлового менеджера плавно перешло к Total Commander. Он продержался довольно долго, но в какой-то момент в мою жизнь буквально ворвался FAR...

Читать далее
Total votes 166: ↑169 and ↓-3+172
Comments582

Ускоряем Dictionary в C# при помощи структур и CollectionsMarshal

Level of difficultyEasy
Reading time5 min
Views6.8K

Если вы C# разработчик, то наверняка вам знаком класс Dictionary. В качестве значений вы, скорее всего, использовали классы. Но что если я скажу, что в Dictionary можно использовать структуры? Не стоит бояться того, что структуры копируются при передаче в метод или возврате из него. Есть способ этого избежать, и это работает быстро.

Узнать как
Total votes 14: ↑12.5 and ↓1.5+11
Comments21

Новый взгляд на старые игры. Часть 2. Hexen II (1997) + Portal of Praevus (1998) + FTEQW (source-port)

Level of difficultyMedium
Reading time4 min
Views1.7K

В этом руководстве кратко будут разобраны пять основных моментов:

1. Запуск Hexen II на современных системах - Windows 7 / 10 / 11, x64. Сценарий с Linux не тестировался, но, с учётом установки FTEQW, поддерживается и такой вариант.

2. Как добавить в версию в Steam и GOG дополнение Portal of Praevus.

3. Развернуть source-port FTEQW с поддержкой Vulkan.

4. Некоторые технические и геймплейные тонкости, включая улучшение графики.

5. Установка новых уровней.

Читать далее
Total votes 6: ↑4.5 and ↓1.5+3
Comments2

Обращение к айтишникам Qiwi

Reading time2 min
Views46K

Мы знаем, что в компании ходят слухи о скорых сокращениях. Сопровождается это рекомендациями поскорей искать работу. Вполне возможно, с кем-то уже проводятся встречи, чтобы убедить уйти без компенсаций.

Не ведитесь!

Читать далее
Total votes 276: ↑262.5 and ↓13.5+249
Comments115

Последствия травмы: секреты быстрого восстановления

Reading time8 min
Views3K

Каждый человек хоть раз в жизни, да получал какую-нибудь травму. Это не зависит от нас, часто это просто воля случая. И главное, в этом самом случае, принять правильное решение по тактике лечения, чтобы эта травма не доставила неприятностей в будущем. Сразу оговорюсь, что речь здесь пойдет не о серьезных повреждениях с нарушением целостности структур, таких как переломы или разрывы связок, а о более легких и часто случающихся травмах.

Какое лечение травмы предлагает современная медицина?

Иммобилизацию поврежденной структуры: не кантовать, не трогать, не нагружать пока не заживет. Реабилитация, массаж, упражнения, физиотерапия - все потом и при необходимости. Это решение в корне неверное. Из-за подобных рекомендаций мы получаем «бонусы» в виде постоянных болей, хронического воспаления, а иногда и потери функции. Поэтому, если брать во внимание молекулярные механизмы иммунного ответа при травме, то нужно действовать с точностью до наоборот. Начинать воздействие на травмированную структуру как можно раньше. А вот почему? Давайте разбираться.

Самые неприятные последствия любой травмы – это воспаление и боль. 

Читать далее
Total votes 17: ↑12 and ↓5+7
Comments14

Программирование и ИТ во мгле, но это не точно

Level of difficultyEasy
Reading time14 min
Views30K

Приветствую хабравчане!

В данной статье хочу поделиться проблемами в ИТ. Высказать об этом своё мнение. Обсудить в комментариях, всё ли так плохо на самом деле и каков выход из данной ситуации. Меня не покидает ощущение, что мы как программисты, что то потеряли при очередном витке ИТ прогресса. Обсудим?

Давай, чё там у тебя
Total votes 157: ↑130.5 and ↓26.5+104
Comments304

Почему в Grand Theft Auto: San Andreas самолёты падают с неба

Reading time8 min
Views34K


Оббе Вермей [Obbe Vermeij] — один из программистов GTA 3, Vice City и San Andreas. Оббе ушёл из Rockstar после GTA IV и давно занимается другими проектами. В последние месяцы он начал вести блог insiderockstarnorth.blogspot.com, но в ноябре прошлого года закрыл его, поскольку бывшим коллегам мемуары не понравились. Тем не менее в личном микроблоге Оббе иногда делится байками про разработку игр из своей карьеры.

На этот раз Вермей рассказал, почему так часто падают самолёты в San Andreas.
Читать дальше →
Total votes 78: ↑78 and ↓0+78
Comments22

А в чем проблема работать с файлами?

Level of difficultyMedium
Reading time53 min
Views28K

Данные - это важный компонент системы. Приложение может хранить их где угодно, но в результате все сводится к файлам. Файлы - это хорошая абстракция, но она протекает: если не знать того, как работают ОС или гарантии файловой системы, то легко выстрелить себе в ногу.

Меня увлекла тема отказоустойчивости, а конкретно - отказоустойчивой работы с файлами. В этой статье я попытался соединить все полученные знания:

Кто участвует в процессе записи

Ошибки, которые могут произойти

Что от нас зависит, а что нет

И самое главное - как это этого защититься

Читать далее
Total votes 171: ↑170 and ↓1+169
Comments23
1
23 ...

Information

Rating
Does not participate
Registered
Activity