Ты забудешь об этом

Ты забудешь об этом

В этом тексте я специально неправильно расставил запятые (на самом деле нет), тому кто найдет больше/быстрее всех до 1.11.2017, подарю шоколадку, можно в ЛС. Телеграмм +79049978012. Хотя ты забудешь о том что я тут написал, и вспомнишь только когда будешь читать в следующий раз.

Написать этот пост я задумал еще в 2016 году. Много лет я изучал наше восприятие, узнал много интересного. Сегодня расскажу тебе чего наузнавал). Да, да, правда матка, не иначе. Только мясо. Продукт категории «А»! НЕ ПОВЕРИТ? НЕ ПОЙДЕТ ЧИТАТЬ?

Читать далее «Ты забудешь об этом»

Utopia Realms ч3: Итоги

Utopia Realms ч3: Итоги

Это третья, заключительная часть из серии статей про разработку компьютерной игры Utopia Realms, в которой мне довелось принять участие. В первой части я рассказал о предпосылках создания игры. Во второй части я поделился историей создания, до выхода первого релиза и рассказал о команде.

Читать далее «Utopia Realms ч3: Итоги»

Путь к освобождению

Путь к освобождению

Не так давно я освоил новую профессию — гипнотерапевт. И сейчас готов поделиться первыми результатами. Если ты ещё не читал, сначала прочитай Про страшный гипноз

Читать далее «Путь к освобождению»

Про страшный гипноз

Про страшный гипноз

Знаешь почему твой личностный рост остановился? Почему ты не можешь достигнуть новой цели? Ты пробуешь то одно, то другое. Узнаешь что-то новое, но в твоей жизни ничего качественно не меняется. Ты ведь даже знаешь что нужно сделать, но никак не можешь приступить или начинаешь и бросаешь. Постоянно откладываешь, придумываешь оправдания, или даже жалуешься на что-то, что тебе не подвластно. Словно вся вселенная сопротивляется тебе.

Читать далее «Про страшный гипноз»

Utopia Realms ч2: Друзья

Utopia Realms ч2: Друзья

— Этот чувак неимоверно крут, я хочу работать вместе с ним

Всё не так просто

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

Читать далее «Utopia Realms ч2: Друзья»

Utopia Realms ч1: Скалы неизвестного

Utopia Realms ч1: Скалы неизвестного

— «да, я не знаю, что из этого выйдет,
но я в деле, погнали» — сказал я себе, и с разбега прыгнул в бездну.

Вызов

Большую часть своей жизни я посвятил программированию. Нечто волшебное происходит с тобой когда ты делаешь следующий шаг, изучаешь новую технологию, и видишь как твоя программа начинает работать. Мир преображается, хочется дать «пять» самому себе. Начинаешь думать и мечтать о том сколько возможностей теперь открывается перед тобой. Чем больше сил ты тратишь на этот шаг, тем сильнее эффект по его достижению. Изначально новая область кажется очень сложной, практически непостижимой, словно перед тобой неприступная, отвесная скала, и когда ты поднимаешь взгляд, чтобы увидеть вершину этой скалы — конца её не видно, её скрывают густые темные облака. А вдруг её вообще нет? Что-то подобное я ощущал когда захотел разобраться с 3d графикой. Программисты 3d для меня всегда выглядели волшебниками, они ведь могут сделать свою собственную игру, реализовать любой свой замысел, создать свою вселенную!

Читать далее «Utopia Realms ч1: Скалы неизвестного»

Про магазин

Про магазин

 

Товарищ майор, история, которую я расскажу ниже, полностью выдуманная. Фотографии смонтированы. Люди на фото — специально приглашенные актеры.

Кто-то заводит себе собаку, кто-то кошку.
Я решил завести магазин. Почему бы и нет?

Начало

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

Читать далее «Про магазин»

Skyrim: Помощник алхимика

В очередном отпуске решил съездить в Скайрим.

Игра удивила появлением странных багов с текстом навыков и квестов. Полез разбираться на форумы. Оказалось что причиной стал выход обновления 1.9, который якобы не успели перевести на русский. Во время поиска решения наткнулся на интересный сайт по игре — http://ru.elderscrolls.wikia.com

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

Последней каплей был Алхимический стол. Красивый сайт. Есть все данные — названия ингредиентов, список эффектов. Однако, быстро открыть свойства ингредиента он тоже не позволяет, не говоря уже о стоимости зелья.

Что делать? Сдуваю пыль с Visual Studio, прогреваю компилятор, перезаряжаю дебаггер, поехали…

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

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

Итак:

1. Находим в Скайриме алхимический стол. Открываем программу, переходим на вкладку «Поиск».
2. Выбираем все ингредиенты и запускаем поиск.
Программа задумается на пару секунд и выдаст топ-1000 зелий отсортированных по цене.
alchemy-search
3. Запоминаем первые 3 ингредиента, переключаемся в Скайрим и пытаемся найти их в своем инвентаре.
Если ингредиенты есть — отлично, варим зелье.
4. Возвращаемся в программу и снимаем галочки с тех ингредиентов, что закончились либо изначально отсутствовали. Повторяем поиск.

Повторяем последние 2 шага пока не надоест или не кончатся все ингредиенты )

В скобках у каждого рецепта указана относительная стоимость зелья. Полученные данные различаются с тем, что получается в игре, однако этого алгоритма более чем достаточно.
За 15 минут мне удалось сварить порядка 30-40 зелий, которые не могу продать до сих пор. Несколько штук хватает чтобы исчерпать весь запас золота продавца.

Программа написана на C# и ей нужен .NET Framework 4 или выше

Скачать SkyrimAlchemyHelper 1.2

UPD:
Обновил неверные названия (Соли, Хитин грязевого краба), добавил ингредиенты из Dawnguard, Heartfire, Dragonborn. Версия 1.2
Выложил исходники: https://bitbucket.org/ErtyHackward/skyrimalchemyhelper
Оказалось, что программа позволяет очень быстро прокачать навык Алхимия.

Нужен ли такой DC клиент?

Представь, ты находишь интересный релиз на сайте o-go.ru, нажимаешь по магнет-ссылке и сразу же смотришь его, как будто это файл с твоего компьютера. Классно, не правда ли?

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

Вообще не нужно ничего загружать, все просто работает.

Чтобы это осуществить, нужен DC клиент. Под капотом будет использоваться библиотека http://dokan-dev.net/en/
Она позволяет создавать виртуальные диски, которые выглядят как настоящие. Но обращения к файлам и папкам контролируются программой. Это позволяет создавать иллюзию присутствия файла в системе, когда его по факту нет.

Находишь файл в сети, добавляешь его в к себе в «облако». Файл сразу же появляется на виртуальном диске и с ним можно работать как с любым другим файлом, который есть на компьютере. При обращении какого-либо приложения к этому файлу, DC-клиент загрузит нужные блоки файла и передаст программе.

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

Такому клиенту вообще не нужен интерфейс, достаточно иконки в трее с возможностью «выключить» и поставить ограничение на использование канала.
Чтобы не создавать «паразитов», загружаемый файл будет сохраняться на жестком диске для последующей раздачи. Но, даже если нет свободного места, файл будет работать все равно.

Я мог бы сделать такой клиент, ну, скажем, за неделю. Но нужно ли?