Друзья всем привет! Делал для себя приложение на ПК чтобы общаться в игровых чатах с дивана без клавиатуры. Возможно есть такие же как я, которые играют на ПК с геймпада. Причины у всех разные, начиная от "надоело сидеть за компом", заканчивая физическими ограничениями и здоровьем. Изначально идея была сделать поддержку только геймпада, но со временем понял что и поддержку клавиатуры добавить будет не лишним. Теперь я вам расскажу что оно умеет и как может быть вам полезным.
Простой интерфейс. Вы можете нажать мышкой или использовать свою комбинацию клавиш на геймпаде или клавиатуре.
По запросу друзей, добавил кнопку копирования текста из приложения (далее поймете зачем).
Главное окно приложения.
3. После скачки приложения и модели распознавания, работает полностью автономно, вам не нужен интернет для использования. Поддержка 5 самых популярных языков в Steam (русский, английский, китайский (упрощенный), немецкий, испанский). Как это работает: Вы говорите на русском любую желаю фразу в свой микрофон, получаете перевод в виде текста в любом активном приложении. Для этого я и выводил кнопку копирования текста в главном окне приложения.
Мне лично хватает базовой модели для игровых чатов, но если вы будете использовать как переводчик, то возможно вам нужна будет нужна модель получше. Просто выберите то что вам подходит и используйте без каких либо ограничений. Потребление оперативной памяти, будет пиковым. Т.е. прирост потребления только в момент распознавания. После распознавания (1-2 секунды), лишняя память освобождается.
Меню выбора модели распозавания.
4. В интерфейсе вы можете включить автозапуск, выключить оверлей и т.д.
Настройки интерфейса.
5. Поддержка ваших комбинаций клавиш. Для клавиатуры это ctrl+любая клавиша или shift+любая клавиша (либо ctrl+shift+любая клавиша). Для геймпада любая комбинация клавиш. Главное требование это поддержка вашим геймпадом XInput (геймпады сертифицированные Microsoft). У меня просто нет другого типа дуалшоков, поэтому написать и протестировать не могу.
Приложение полностью бесплатное без рекламы и скама. Просто качаете его на моем гитхабе вот тут и пользуетесь. На сертификацю от microsoft 200 баксов в год я платить не могу, поэтому возможно ваш защитник винды может ругаться при первом запуске. Просто ждете 5 секунд (при первом запуске), запускаете приложение, на предупреждение даете согласие и пользуетесь.
Вроде все просто, но на всякий случай тут видео как пользоваться.
Я начинающий .NET разработчик. Приложение делал для себя и использую как свой пет проект. Потратил кучу времени на него, очень хотелось бы добавить поддержку linux (для stemdeck), но я уже не могу себе позволить его развивать, так как пока писал совсем забросил обучение разработке.
Если кому-то приложение окажется нужным, пожалуйста не поленитесь оставить звездочку на гитхабе. Или если вы .NET разработчик, присоединяйтесь к разработке.
Ну или если вам совсем лень, хотя бы на юутбе лайк поставьте. Я хочу устроиться на работу без накруток опыта и вранья. Только с теми знаниями и умениями которые есть, по честному.
Дорогие друзья, делаю cozy кликер игру, визуально напоминающую игры по Гарри Поттеру, которые были у многих из нас в детстве. Хочется передать атмосферу магии, волшебства и чего-то уютно-волшебного. Какой вариант обложки вам больше нравится?
Напишите, пожалуйста, в комментариях Ваше мнение, буду очень рад. Какой вариант дорабатывать?
Привет. Меня зовут Демид, мне 30 лет. Почти 10 лет я проработал в зоопарке — сначала в Калининграде, потом в Варшаве. Где-то полтора года назад стал интересоваться геймдевом.
Сперва стал изучать тридешку, потом заинтересовался геймдизайном, а в конце перешёл на программирование. Как-то пришло осознание, что всех может не быть в проекте, а вот без программиста игры не будет в принципе. Зависеть от настроения и желания других не хотелось — так и выбрал путь.
Моделил в Blender и сопутствующих программах. Даже что-то получалось:
1/9
Со временем нашел группу людей с которыми стал делать учебные проекты и втянулся в геймдизайн, так как нам не хватало геймдиза. Читал статьи и книги, пробовал себя и в этой роли.
Из учебного проекта
И в конце пришло получив урок, что если прогер уходит из проекта, проект заканчивается, начал изучать C# и Unity.
Для себя выбрал C# и Unity. Как по мне, для первых проектов и знакомства с индустрией он куда лучше подходит. До того работал в Блендере и сопутствующих программах.
Планирую написать серию постов, поэтому начну с того, на каком этапе я сейчас.
Сейчас игра, которую я придумал, в которой выступаю лидом и кодером — в раннем доступе на Стиме. Она довольно простенькая и ещё сыровата (на то и ранний доступ), но уже играется.
Всех, кто захочет потестить и дать обратную связь, приглашаю на страницу в Стиме.
Следующий пост напишу через пару дней.
Кстати, если ты тоже хочешь делать игры — у нас есть сообщество в Телеге для начинающих. Там чуть более опытные помогают менее опытным, а потом они, научившись, помогают следующим — и так кольцо замыкается.
Сообщество никак не связано с финансами, так что это не реклама, а просто приглашение:))
Всем привет. Суть такая. Спорили на тему тех. характеристик грузовика и движков камминс. Я проиграл. Теперь я должен за максимум месяц разработать что угодно и выгрузить бесплатно в стим ( предварительно оплатив внос :) ). У меня идей никаких нет. Вот сижу думаю...разработать игрульку мелкую или софт какой-то. Есть мысль банальную игру 2048 сделать в кубическом формате( не на 1 стороне, а сразу на 6 сторонах с режимом пвп сделать). Или какую-то игру в пары ( видел такое на смартфонах ). Просто много всего навалено в кучу, а вы должны найти пары объектов. Или из полезного приложение для гимнастики глаз с стерео картинками ( было у меня такое мобильное приложение давно ) Или программируемый рабочий стол в лайт версии...ну короче Просьба. Подкиньте идею. Автора идеи увековечу в самом конечном продукте. еще раз. продукт должен быть бесплатный :))) спасибо.
Всем привет! Хочу поделиться небольшим скриптом на Python для отслеживания активности пользователей Steam. Если вам нужно следить за тем, когда ваши друзья заходят в Steam или начинают играть в какую-то игру, то этот скрипт может вам пригодиться.
Основные возможности:
Проверка статуса пользователя (онлайн/офлайн, в игре/не в игре).
Уведомление о смене статуса или игры.
Отслеживание активности друзей, играющих в ту же игру (опционально).
Как использовать:
Установите необходимые библиотеки:
pip install configparser requests colorama или pip install -r requirements.txt
Забегая вперед - все получилось, игра в стиме, скоро пригласят делать ведьмака 8 и диабло 12
Сухо и кратко. Игры до этого никогда не делал, с Unity познакомился через курс на Udemy. Есть огромное желание делать игры, давно об этом мечтал и в один момент понял, что пора завязывать с мечтаниями, надо делать.
Скриншот из моей игры Cyber Workshop
Мой бэкграунд это фулстек на .NET/C#. Из фронты знаю HTML/CSS, React, Blazor и в том же духе. ЭС КЮ ЭЛЬ тоже знаю. Не могу сказать, что я стронг мидл, но и джуном себя не назову. В определенный момент я перестал придавать этому значение, сосредоточился на решении проблем, развитии своих скиллов. Понятие не имею, сколько там всего структур данных и как считать сложность алгоритмов, а так же сколько транзисторов используется при вызове моих методов.
Игра создана на Unity, формат 2.5D (2D модели в 3D мире). Из допольнительного это UI Toolkit. Платные и бесплатные ассеты звуков и спецэффектов.
Активно использовал ChatGPT4, все картинки в игре получены с помощью Midjourney.
На процесс разработки было потрачено 4.5 месяца, так вышло, что начал с начала 24 года, а публикация произошла 16 мая. Можно сюда заложить вынашивание идеи и грубо сказать, что игру делал 5 месяцев.
Посмотреть как я рассказываю про мою игру можно на Youtube: Мой канал
Вкратце об игре. Есть мастерская в сеттинге будущего, в которой необходимо крафтить предметы для продажи. Крафт происходит в машинах, которые располагаются в мастерской, все машины делают разные предметы, у каждого предмета своя схема крафта. Полученные предметы помещаются в Заказ, выполняя который, получаешь деньги. Таким образом проиходит заработок в игре и последующее развитие, путем покупки новых машин, которые открывают крафт новых предметов, котоыре сложнее изготовить, но они и стоят дороже.
Скриншот из моей игры Cyber Workshop
Начнем. Уверен, как и у всех, при столкновении с чем то новым, возникает ощущение, что скорей всего ты делаешь это не правильно, не соблюдаешь какие либо принципы, которые не будут закрывать тебе двери в будущем. Это образно говоря, я описываю, как умею. Вот в таком состоянии, что я делаю явно не то, что нужно, я начал разрабатывать игру. Естественно, что все эти ценные элементы, ценная информация, которая может возникнуть только в полевых условиях, мне на тот момент не была доступна, но я приянл решение продолжать.
Если ты хочешь делать игру и утебя нет навыков в программирование от слова совсем, то вот тебе та самя мотивирущая фраза от меня:
Сейчас делать игры легче и доступнее, чем когда-либо.
В прямом смысле этого слова. Начиная огромным количеством ассетов на платной и бесплатной основе, заканчиая нейросетями, которые тебе бесконечно могут объяснять одно и тоже в плане кода, плане устройства фреймворка, что можно, а что нельзя, что предпочтительнее, а что нет. Золотой век информационных технологий идет прямо сейчас, я в этом уверен. Легче делать игры будет только, образно говоря, "завтра". И то это прям реально может быть прямо завтра. Поэтому тут совет один, все упирается в твою идею. Если она есть, то тогда применяем все эти ваши декомпозиции, что бы увидеть, как это может быть реализованно, достигнуто и так далее.
То ценное, что я получил при разработе в техническом плане:
Перое. Я уверен в том, что Unity, Unreal Engine и другие движки, это инструменты для создания инструментов для создания вашей игры. Грубо говоря, тебе нужно написать свой фреймворк, для разработки твоей игры. Как только я это осознал, то автоматиески появились такие штуки, как например Система Схем (смотри описание игры). Весь этот объект настроен таким образом, что бы в одном месте добавлять и изменять схемы, которые используются в игре. Что бы сделать золотой слиток, необходимо две золотые руды. Ничего не мешает изменить золотой слиток так, что бы запихать в него все возможные к созданию предметы в мастерской, то есть реакторы, имплатны и так далее, все это будет работать, подсчитываться, сколько и чего нужно заказать для изготовления, а UI будет выстраиваться корректно.
Возможно, ты это уже знаешь, мне это не известно, я делюсь своим опытом.
Второе, что можно отметить, так это то, что спецэффекты и звуки очень работают над увеличением привлекательности игры. Это и мешает разработке, и добалвяет удовольствие. В самом начале, я пытался вести разработку визуала и основных механик одновременно. Эти метания из одной стороны в другую очень сильно отвлекали, а в последствии, все визуальные элементы неоднократно переделывались, это мешало сосредоточится на создании какой то механики, на тот момент. Так что я принял четкую позицию, что сначала логика, бэк, функционал, а уже потом надо это раскрашивать. Однако, ничего не мешает потратить разумное время (пару тройку часов), что бы накидать какие то спрайты и спецэффекты, лишь бы были. То есть мой посыл в данном случае, такой: этап полноценного создания визуала игры должен быть после основных механик, ядра игры. Если решишь все таки раскрашивать игру, до того, как все сформировано и работает как надо, то готовься к тому, что все будет переделано. Не делай ставки вот именно на первый шаг в плане визуальной составляющей, спецэффектов и звуков. Это все пойдет под нож и будет изменено либо и вовсе удалено.
Возможно и это ты тоже уже знаешь.
Третье. Создание книги, настольной игры, компьютерной игры имеет под собой одинаковые принципы. У тебя есть идея, тебе нужно выложить ее из головы в реальность в определенной форме - книга бумажная, книга электронная, смс знакомому, надпись на заборе. Относительно игр это настольная игра, это устное обговаривание правил, то есть передача информации об правилах и принципах игры в головы других людей с помошью речи (например игра в города, если другой человек не знает, что это вообще такое и как в это играть). Это касается и компьютерных игр. Я осмелюсь выделить две состовляющие, которые необходимо принять. Есть идея игры, которую ты закладываешь в какую то форму, которая существует в реальности. Есть инструменты повествования этой идеи, которая заложена. Рассказываю как умею. Грубо говоря, в шахматы можно играть на компьютере и без интерфейса о том, сколько фигур срубил противник, сколько времени до конца хода и так далее. Ты можешь это и в голове держать. Но тогда можно оказаться в ситуации, когда ты прирожденный игрок в шахматы, но ты не смог въехать в игру, так как над доской не показывались клетки, по котором фигура может ходить и идею ты не уловил, ну его, пойду лучше тик ток посмотрю. Еще раз. Есть идея, которую автор закладывет в книгу. Есть способы получения заложенной информации наружу, в головы других людей. Если атор накосячил со средствами повествования инфомрации наружу, то возникает ситуация, что одни люди сумели понять глубокий смысл, а другие нет - слишком "сложна". Но тут и обратная ситуация может быть - идея легко извлекатеся, но она слишком проста, не очень интересно, что тут сложного. На мой взгляд это можно представить, как лабиринт с призом в центре. Если лабиринт сложный, это автоматически увеличивает ценность награды, однако это может создать ситуацию, когда в это не интересно играть. Слишком сложно, а награда недостаточно мотивирует сама по себе. Справедливо и обратно - лабиринт слишком простой, нет интереса его проходить, желанность награды становиться меньше, даже если награда очень ценная сама по себе. Как то так, я не писатель, как могу, так описываю. К чему это все. Баланс игры должен заключается в комбинации уровня сложности достижения цели и ценности цели самой по себе. Причем если сложность лабиринта повысить, то и желание получить что то ценное, потратив столько сил, становиться больше. Если лабиринт слишком простой, ну ты понял.
Если в Counter Strike дать возможность летать по карте, то играть становиться легче, интерес играть на разных картах уменьшается - нет никаких ограничений и уникальных ситуаци. Это как пример, на мой взгляд.
Все описанное выше, я постарался применить в своей игре - рецепты крафта не должны быть слишком простые или слишком сложные, это понятно. Действия, которые нужно делать для того, что бы непосредственно играть, сводяться к клику мыши, это очень легко. В противовес этому, есть сложные вещи типа "А какие именно ресурсы я могу складывать в машину, что бы получить требуемый предмет?", "Что именно мне нужно заказать для крафта?", "Выполнение каких заказов принесет больше денег?". Из этого "выстраивается" интерес к игре, на мой взгляд.
Четвертое. Настает момент создание доп механик, которые как раз помогают осуществлять заложенный автором, процесс игры или процесс извлекания информации об идее игры. Описываю как могу. К сути. Как только я реализовал механику крафта, заказа ресурсов, выполенния заказов и получения денег за них, возникли вещи, которые просто невозможно предвидеть на стадии идеи или ее ранней реализации. Например, в моей игре это инфомрация о том, а какие предметы и сколько требуется сейчас для поступившых заказов. Это просто неудобно и отталкивает каждый раз заходить в UI окна зкаказов и смотреть, что там надо изготовить. Поэтому появилась необходимось создать что то, что будет помогать играть. Вот тут важный момент - это не является основной механикой, это не появиться на стадии идеи игры. И может показаться, что это "испортит" ту идею, которую ты там себе придумал (это я про себя). В определенный момент, я понял, что без этого просто никак, и что бы я там себе не навыдумывал, в реальности в это оказалось неудобно играть. Собственно вот это то ценное, к чему я так долго подводил. Основая механика крафта - это классно! Но так же надо и механики для устранения явных неудобных моментов. И вот этим доп механикам я противился, считая, что таким образом мое виденье игры изменяется и отходит от изначальной картины. Собственно, и желание реализовывать их, не было. Плавно перетекаем в тестирование на людях.
Пятое. Надо тестировать игру на людях, которые не бум бум, что там вообще за игра и как в это играть. Тогда открываются очень ценные знания. Но сначала очень больно, так как видишь, что другие люди просто не понимают, что надо делать в твоей игре. Даже не буду это описывать, это надо прочувствовать и принять. Из интересного, это то, что тестить надо всех по отдельности, что бы второй игрок не видел, как играет первый и представал перед игрой без какого либо опыта вообще. Касательно моей игры, это момент с DragAndDrop предметов между машинами. Все, кто пробовал играть, пытались зажать предмет и перетащить его между машинами. Я настраивал все как можно проще, что бы минимум кликов было, а тут оказалось, что суть не в этом, а в привычном удобном поведении. Такие вещи, опять же, невозможно предвидеть. Точнее невозможно узнать заранее, будет ли это востребованно игроком. Потому что могла быть и обратная ситуация - я заранее реализовал это перетаскивание зажатой мышью, но никому бы это не понадобилось, никто бы это не использовал. В общем, надо тестить именно для выяснение проблем с получением информации об идее игры. Надеюсь, понятно все это описал. К слову, тест нужно провдить именно после реализации основной механики, тогда и становиться понятно, что нужно добавлять.
Думаю, ты тут ожидал кучу скринов, встаки с кодом. Я так и хотел сначала, но после передумал. Посмотреть игру можно на youtube, а вставки моего кода просто не пременимы к твоей игре, твоему проекту. Так что постарался выделить ценные вещи на примере своей игры, своего опыта.
Шестое и последнее. Моя главная ошибка, это отсутсвие какого либо продвижения себя, свой игры. Я слаб в этом, просто боюсь этого всего. Боюсь, того, что люди напишут в комментах под этим постом, на yutube и так далее. Но желание довести дело до конца больше, так что надо чем то жертвовать. В данном случае, я жертвую комфортом пребывания в неведении о том, а что там интернет думает обо мне и моей игре. К сути. Я только начинаю полноценно рекламировать себя, свою игру и вообще быть активным публично в этом плане. Что то ценного конкретно я назвать не могу - я просто не знаю. Но то, что надо начать продижение как можно раньше, это мне уже понятно. Так как я опоздал с этим, дофига как, то делаю такие вещи как: видео блог разработки, заметки в соцсетях, публикации в группах. Собственно, и это статья для рекламы меня, моей игры. Я верю, что то, чем я поделился выше, очень ценно. Но вот насколько это ценно кому-то помимо меня, это другой вопрос. Я прекрасно понимаю, что это может быть совершенно не применимо к тебе и ты зря дочитал то этого момента. Чтож, де*ьмо случается.