разработка

Подписчиков:
11
Постов:
197
Недавно вышел ролик о разработке The Forever Winter из которого стали понятны многие концепты и идеи и общий геймплей. В видео подробно рассказывается о логике и законах, по которым живет мир и игрок в нем. Ниже выжимка самого основного.
Над билдом из видео работало 30 человек 1-2 года, что несомненно обидит манагеров разработки всяких ААА.
Итак, ты НЕ главный герой. Ты не второстепенный герой. Ты жалкий непись на поле боя, которого по началу за угрозу считать не будут(и ты захочешь ,чтоб так оно и продолжалось!)
В общем плане происходящее можно описать так. Есть стратежка вроде Supreme Commander(с туманом войны, постройкой всё более сильных юнитов, захватом территории...) в которую играют два ИИ на какой-то карте. И вот тебе посчастливилось от первого(третьего) лица нейтрала заспавнится на этой карте...
Геймплейно ты должен собирать лут; стараться быть незаметным; подлавливать моменты, когда стороны конфликта будут заняты друг другом, чтоб быстро полутать свежие остовы; если хочется риска, то можно сагрить одну фракцию и закайтить её на местоположение другой. ИИ не обязательно "видит", агрессию от игрока, но если завалить в точке отряд юнитов, то туда пошлют отрят юнитов помощнее, чтоб разобраться что произошло... И если пытаться валить всех с пушкой на перевес, то ИИ увидит в вас угрозу посерьезней и вышлет адекватный ответ для уничтожения.
Играть можно кооп, или синглу с ботами-напарниками. Вероятно по ощущениям и камьюнити нас ждет что-то между DRG и GTFO.

Отличный комментарий!

Теперь у нас 10 новых багов.
всего 10. неплохо поработали!
Человек по имени Альберт Бэкон Пратт из Вермонта получил патент на установку небольшой пушки на передней части шлема. Идея заключалась в том, что наводчик инстинктивно направлял орудие туда, куда он смотрел, с помощью прицела, который болтался у него перед глазами. 
Видимо, мысль сломать наводчику шею или отправить в полет откатывающийся шлем ему не пришла в голову. Никаких сообщений о его когда-либо использовании не известно.
А. В. PRATT.
WEAPON.
AmtcATie* nu» »um*. i«i».
/í*X»r4t¿OIV
IS. /Vttii,
1,183,482.
Patented May 16,1916.
a »«us »»u: ».,Картинка,патент,пушка,шлем,разработка,несколько файлов
А. В. PRATT. WEAPON.
APPLICATION FILED JULY 14, 1915.
1,183,492.
Ж*л
Patented May 16,1916.
3 SHEETS-SHEET 2.
/17
/35 '*7 /37
A/3' j *G
Ж%€р. 47. 3/	35 39
/07
Wlistf.S.
ss\*\?3/евз 3/
43/35	43
/в/
æeJ Vm/eníor: Д. Г*-,cuit,
r</2ttïf$C,Картинка,патент,пушка,шлем,разработка,несколько
,Картинка,патент,пушка,шлем,разработка,несколько файлов

Отличный комментарий!

Так вот откуда!
Иван Углянский
@с^_пзк
Чем больше я заглядываю (против своей воли) в менеджерские дела, тем больше командная разработка софта в большой компании кажется мне похожей на... имперский корабль из мира вархаммера, летящий сквозь варп.
Смотрите сами:,Warhammer 40000,wh40k, warhammer 40k, ваха,
Рядовые разрабы - это работяги с нижних и средних падуб. У них четкие, локальные, часто интересные задачи: поддерживать работу гипердвигателя, заряжать макропушки и т.д.
Они вроде и знают, что снаружи какая-то жесть, время от времени что-то просачивается, но в целом - пофиг.,Warhammer 40000,wh40k,
Сеньоры, принциплы, техлиды - это уже техножрецы Адептус Механикус.
Они в целом понимают устройство корабля; знают молитвы, позволяющее находить с ним общий язык; хранят традиции и знают, почему делать вот такой глобальный рефакторинг или переписывать все на 6о не стоит (ересь),Warhammer 40000
Но корабль летит в варпе, за пределами поля Геллера океан Хаоса. И каким-то бедолагам нужно в этот Хаос всматриваться, чтобы понять, куда кораблю все-таки лететь.
В вархаммере эту роль исполняют навигаторы из Новис Нобилите, а в разработке софта - менеджеры разных сортов.,Warhammer 40000,wh40k,
В разработке роль Хаоса исполняют внезапные тредования от заказчиков, сложное взаимодействие с другими командами, валящиеся сверху дедлайны, резкое изменение курса партии и т.д.
Задача менеджмента, соответственно, лавировать и экранировать остальную команду ценой своего рассудка,Warhammer 40000
Если навигатор/менеджер хороший, остальная команда Хаоса не чувствует вообще. Если плохой, ну, ждите демонов на нижних палубах, кранчи, переработки, хаотичную разработку без времени на приведение кодовой базы в порядок и т.д.,Warhammer 40000,wh40k, warhammer 40k, ваха, сорокотысячник,фэндомы,wh
Навигаторы, кстати, не совсем люди: у них есть специальные мутации, позволяющие дольше выдерживать влияние варпа, да и вообще взаимодействовать с ним.
Так что вполне понятно, почему превращать разраба/сеньора в менеджера НЕ ВСЕГДА хорошая идея -сойдет с ума и впадет в ересь,Warhammer 40000,wh40k,
Да, кстати, про микроменеджмент.
Представьте, что будет, если главный навигатор решит спуститься на нижнюю палубу и начать указывать работяге, как заряжать макропушку?
Во-первых, он же нихрена не понимает в этом;
Во-вторых, у него бля три глаза, работяга сразу кукухой поедет.,Warhammer 40000

Отличный комментарий!

Это ж почти как если бы все командные структуры строились на схожих принципах разделения обязанностей и логике.
Данный пост создан исключительно с целью продемонстрировать, что реактор может иметь встроенный баянометр приемлемой функциональности без существенных затрат на его реализацию и сервера. Он ни в коем случае не пытается бросить тень на существующий баянометр от ExtraDj - вполне возможно его баянометр в сто раз круче (я не знаю).
Я совсем недавно начал создавать посты на реакторе, но уже успел ощутить всю проблематику поиска повторяющегося контента на этом ресурсе. И задумался о том, как много времени реактор мог бы сэкономить постерам, имей он встроенный баянометр. Сколько человек не смогли преодолеть сложности размещения контента на реакторе и сколько перестали это делать из-за большого количества времени, которое на это требуется (сужу исключительно по себе). 
А недавно ещё и получил разрешение от Вождя. Что ж, доступа к коду сайта и базе у меня нет. Выкачивать весь его контент, чтобы собрать отдельный баянометр я особо желанием не горю. Но могу, по крайней мере, разобраться в ситуации и продемонстрировать Proof of concept.
Я дотнетчик по большей части, поэтому технологии используются соответствующие. Вряд ли технологии, которые используются реактором, имеют какие-то существенные ограничения чтобы справиться с этой задачей.
Итак. Перцептивный хэш - похоже, то, что нам нужно. Проблема распространенная, поэтому сразу же нашлась библиотека, которая этот хэш считает - по крайней мере эту рутину писать не придётся. Как будто мы ещё ничего не сделали, а решение уже готово. Протестируем.
Первый кадр из видео. Разрешение 720х1280 против 320х568.
AverageHash и PerceptualHash - абсолютно одинаковые цифры. А это значит, что если вы сохраните этот хэш в БД рядом с картинкой, вы легко сможете достать по нему запись о картинке. Похоже баянометр в простейшем виде уже готов.
Извлечение данных. Т.к. некоторые реакторчане ссылались на проблему поиска в большом количестве данных, нужно протестировать и это. Приблизительно 7000000 картинок есть на реакторе. Возьмём MS Sql server. Создадим таблицу с 7000000 записей со случайными цифрами в качестве хэша. Чтобы всё было по-честному:
□ SELECT a,b
FROM ( SELECT TOP 200 a,b FROM test ORDER BY a DESC) SQ ORDER BY a ASC
.00 % -
И Результаты		ijl Сообщения
	a	b
1	! 6999800 !	6964075964389932
2	6999801	16589863736228552
3	6999802	5026461835299065
4	6999803	43764015194280080
5	6999804	62220703321801248
6	6999805
Изменим одно из значение на реальный хэш с картинки выше. И посмотрим сколько надо времени чтобы её найти.
SET STATISTICS TIME ON
select * from test where b=73051550389305359 JO %	-
IS Pe3yjibTaTbi		ill Coo6mehMH
A		B
1	2000000	73051550389305359,баянометр,разработка,длиннопост
SET STATISTICS TIME ON
select from test where b-73051550389305359
.00 % -
Щ Результаты Ф Сообщения
Время синтаксического анализа и компиляции SQL Server зремя ЦП = 0 мс, истекшее зремя = 0 мс.
Зремя работы SQL Server:
Зремя ЦП = 0 мс, затраченное зремя = 0 мс.
Зремя синтаксического анализа и
По-моему проблем тут нет.
Дальше. Что если картинка немного отличается от оригинала. Например нам надо сравнить первый кадр видео с гифкой. Гифка, будет иметь кучу артефактов и, возможно, другой начальный кадр. Как тут:
Либо яркость на картинке выкручена на максимум, как тут:
Хэши не совпадают. Всё пропало? Не совсем. Обратите внимание на подсчёт "похожести" хэшей внизу картинок. Всё что нам нужно сделать, чтобы начать находить не только идентичные картинки, но ещё и похожие - это перенести логику подсчёта похожести в запрос к БД. Получим.
|SET STATISTICS TIME ON
DECLARE @b Bigint = 73051550389305359
select from test where 64 Bit_Count(b @b))	100	64)>92
100 % -
® Pe3>^bTaTbi	ill Coo6mehMH
A	B
1 ! 100	218292640519487501
2 2000000	73051550389305359,баянометр,разработка,длиннопост
SET STATISTICS TIME ON
DECLARE @b Bigint = 73051550389305359
select from test where ((64 - Bit_Count(b A @b))	100 / 64)>92
.00 % -
Щ Результаты Ф Сообщения
Зремя скятахскчесхого анализа и компиляции SQL Server: время ЦП = 0 мс, истекшее время = 0 мс.
Зремя работы SQL Server:
Зремя ЦП = 0 мс,
Теперь по затратам времени и ресурсов. На этот Proof of concept ушло несколько часов - большая часть на подготовку и написание поста. Добавить его на любой свой сайт я могу за несколько часов. Нагрузку на сервер вы можете видеть в статистике запроса к БД. По-моему скромному мнению - она никакая. А если учесть, что эти запросы будут редкими - только при создании новых постов, то ими вообще можно пренебречь. Железу, на котором запущен sql сервер более пяти лет. Более того, пять лет назад это был бюджетный домашний комп.

GlaDOS ChatGPT

Давно была идея сделать GlaDOS + ChatGPT + Голосовая модель. Решил на волне хайпа ChatGPT немного накодить.
Описание:
GlaDOS ChatGPT с голосовой моделью Ellen McClain
Репозиторий:
В репозитории есть все инструкции.
На всякий случай продублирую тут.
Установка:
1. Установите node.js - https://nodejs.org/en
2. Установите python - https://www.python.org/downloads/
3. Установите espeak - https://github.com/espeak-ng/espeak-ng/releases
4. Скачайте архив glados_chatGpt_v0.1.zip - https://drive.google.com/file/d/1icdFWhFjF_0Ny4ecWWsVEI8QVOgzDre5/view?usp=sharing
5. Разархивируйте папку glados_chatGpt из архива
6. Перейдите в папку glados_chatGpt
7. Запустите файл run.bat
8. Откроется браузер с чатом http://localhost:4173/
9. Проверьте консоль с логами, должны записываться сообщения
Демо:
Видео инструкция по установке:
Здесь мы собираем самые интересные картинки, арты, комиксы, мемасики по теме разработка (+197 постов - разработка)