Кодерские работы
131 subscribers
651 photos
205 videos
31 files
129 links
Немного (а может и нет) программирую 👾

Сайт - https://wixdev.netlify.app
Download Telegram
👨‍💻 Чутка пропал, но не просто так - погрузился в код по уши, пока есть время, а то скоро диплом писать надо... ну да ладно, вот чё творил эту неделю:

🎮 CmdWalker
🧱 Заморочился со столкновениями - хотел сделать что-то вроде коллайдера, как в Unity, но в консольной версии.
🧩 В итоге появились компоненты: Collider - чтобы определять столкновения, Glyph - хранит цвет и символ объекта.
🔧 Это всё для того, чтобы немного перейти от наследования к композиции.
📤 Ещё залил коммит на GitHub.

🌐 ASP.NET
📚 В основном эта неделя была по ASP.NET, решил всё-таки, что будет полезно изучить.
🧭 Разобрался с фильтрами, маршрутизацией, привязкой данных, валидацией и т.д.
📖 Прочитал 6-ю главу и дочитал 7-ю из ASP.NET в действии - медленно, но уверенно двигаюсь.

🫠 На скриншотник времени не хватило, но на следующей неделе всё будет!
11💯11
📸Субботний скриншотник!📸

👑 Победитель прошлого скриншотника:
👾 ArGul Games 🎮👾, с игрой по Backrooms.

👇 Заходите в чатик, делитесь прогрессом в комментах.

#screenshotsaturday
8
This media is not supported in your browser
VIEW IN TELEGRAM
🎮 Добавляю новую фишку.

👾 Ее суть в том что при экипировке предмета, он отображается на карте, будто игрок его подобрал.
🤦🏻‍♂️ Но я забыл прописать условие и получился паровозик.
⚙️ Ну и с визуалом эксперементирую.
👏511
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Новый апдейт CmdWalker!

👾 Главный фокус на инвентаре, сценах и стильном меню. Вот что удалось сделать:

🎒 Инвентарь: Переработал систему экипировки, добавив метод UnEquip (убрать в инвентарь), а также TryEquip с проверкой через делегат Func<ICollectable, bool>. Это помогло мне исправить баг, когда стоя рядом со стеной, предмет появлялся прямо в ней.
🚫 Теперь, если использовать предмет в направлении стены, стоя рядом с ней, то предмет просто не будет экипироваться.

🌍 Сцены: давно вынашивал эту идею и вот, ввел систему сцен для разделения игры на разные состояния: меню, игровая карта и другие экраны в будущем. Создал интерфейс IScene с методами Enter, Update, Exit, а также менеджер SceneManager для управления стеком сцен.
🎮 Теперь при запуске игры открывается меню, а по нажатию Enter переключается на карту.

🎨 Меню: Для визуала немного поэкспериментировал с чатиком GPT, чтобы узнать, что он может предложить.
🎆 Получилось довольно круто, а ещё с помощью библиотеки на Python сделал текст в стиле ASCII.
621
🤯 Sprite в консоли!?
👾 Я не сошёл с ума, просто добавляю многоклеточные сущности.
🤯8😁2
📸 Screenshot Saturday!📸

🏆 Мои итоги недели:
👾 Добавил в CmdWalker возможность добавления сцен с разной логикой работы.
🎒 Фикс инвентаря, чтобы предметы в стенах не застревали.

👑 Победитель прошлого скриншотника:
marmunc | Разработка игр, разрабатывает метроидванию с уникальными способностями и стихийными взаимодействиями.

👇 Заходите в чатик, делитесь прогрессом в комментах.

#screenshotsaturday
10
Что же за спрайты я тут добавлял?

👀 Из поста выше у вас мог появиться такой вопрос.
🧩 Но всё просто: sprite - это обозначение многоклеточных сущностей, которые занимают сразу несколько клеток на консоли.
🔧 Чтобы это реализовать, я добавил абстракцию IVisual, которая хранит в себе char[,] - визуальное представление объекта.
🚀 Благодаря этому и прошлому апдейту с системой сцен, появились порталы - входя в них, игрок теперь телепортируется в другие локации.

🏠 Плюс скоро у игрока появится своя база - место, где можно будет выкладывать подобранные по пути предметы и строить свой уголок выживальщика.


🖌 Но это ещё не всё - я решил подтянуть систему рендера и добавил Canvas для единообразной рисовки символов в консоли.
🛠 В основе - паттерн Компоновщик. Канвас умеет содержать дочерние объекты, которые делегируют ему отрисовку, а он собирает всё в единую картинку.
🎨 На скрине выше видно, что разные компоненты выделены своими цветами.
63
👾 А вот и новый коммит в репозиторий, со всеми нововведениями.
🔗 https://github.com/W1xon/CmdWalker
👏431
This media is not supported in your browser
VIEW IN TELEGRAM
😎 Всем добрый вечер!

🛠 Я к вам с новостями и свежим апдейтом.

🏠 Во-первых, у игрока теперь появилась база! В будущем её можно будет обустраивать: ставить верстаки, сундуки, предметы декора.

🌀 Во-вторых, порталы теперь бывают двух типов:
🔴 Красный - это тот, из которого мы пришли. Обратно в него зайти нельзя.
🟢 Зелёный - тот, в который можно перейти.
👾 В будущем появятся разные виды порталов, которые будут отличаться по сложности и местам, куда ведут.

🤔 На этом пока всё. Сейчас думаю над тем, как сохранять состояние игрока при переходе между уровнями.
😅 А то пока он каждый раз создаётся заново.
721
📸 Screenshot Saturday! 📸

🏆 Итоги недели:


🔹 Cmd Walker - теперь поддерживает сцены с уникальной логикой, многоклеточных существ, систему порталов, появилась база игрока и канвас для рендера.

👑 Победитель скриншотника - уголок Wishl'a разрабатывает Secretes of Anderia - пиксельная метроидвания.


👇 Заходи в чатик, делись своими апдейтами в комментах - расскажи, что ты накодил или нарисовал на неделе!

#screenshotsaturday
531
🎮 Пришло время презентовать мой логотип!

🤔 Долго думал над собственным лого, чтобы он был минималистичный и стильный.
👾 Теперь он будет присутствовать во всех моих проектах.

👉 Лого Unity убрал, т.к. это их товарный знак.

😥 Ещё убил несколько часов на вектор, но Adobe крашнулся и не сохранился, только растр остался.


👇 Оцените в комментах.
12🤩31
😅 Тестирую систему для спавна GameEntity (Item, Unit и т.д.).

⚙️ У меня есть LvlConfig, в котором генерируется количество сущностей в зависимости от сложности.
🗃 Потом в дело вступает MapContent, он заполняется обектами исходя из конфига.
🧱 После чего MapBuilder собирает уровень и привязывает все сущности к карте.

🎮 Но походу я переборщил с настройками конфига, ведь теперь вся карта состоит из порталов.
9
🎮 Вроде подредачил формулу для спавна игровых сущностей, но с ней нужно еще эксперементировать, чтобы подобрать играбельные настройки.
⚰️ Также наконец руки дошли до экрана смерти, а то раньше с ошибкой все падало)

🔗 А также свежий релиз на GitHub.
82
🧑‍💻 FPS-ики!
🎮 Нужно, чтобы понять насколько игра оптимизированна.
4
🔥 Всех с праздником!!!
🎉91
📸 Screenshot Saturday! 📸

🏆 Итоги недели:

🔹 Cmd Walker получил v0.1-alpha!
Добавил экран смерти, систему спавна с конфигами и базовой логикой, а ещё запилил свой минималистичный логотип.

👑 Победитель скриншотника - FiolDoll с проектом Pray to the darkness - психологический хоррор.

👇 Делитесь своими апдейтами, заходите в чатик, в комментах - покажите, над чем потели всю неделю!

#screenshotsaturday
51
🎮 FPS до небес или как я выжал максимум из производительности

📋 Погнали по шагам:

⌨️ 1. Вывод в консоль
⚠️ Проблема:
курсор прыгал по консоли, как итог: лаги, фризы.
Как решил: вместо посимвольного вывода - сразу целая строка. Меньше возни, больше фпс!

До: Console.Write('H');
После: Console.Write("Hello world");


⚙️ 2. Проверка столкновений
🐌 Проблема:
каждую итерацию создавались временные массивы позиций - нагрузка дикая.
Как решил: переписал на сравнение границ коллайдеров - без мусора, всё чётко.

До: создавались массивы с позициями
После: просто сравнил границы объектов


🚀 Итог: FPS вырос в 5 РАЗ!

🗑️ А значит, как и обещал - пойдет даже на тостере.
331