LINUX.ORG.RU
ФорумGames

BlockField - Самопальный сетевой шутер

 , , ,


11

18

Описание
Делаю в свободное время собственный мультиплеерный командный шутер (подобие Ace Of Spades), на Unity3d. Unity3d используется только для GUI + 3d рендер, всё остальное чистый C#.
Самые свежие бинарники
Скриншот

Прочее
В будущем планируются классы игроков, захват точек, разнообразие текстур и много-другого. Если есть предложения пишите.
Если игра выстрелит ( :) ) Всем плюшки при релизе альфы/беты и так далее.

Компоненты с открытым исходным кодом
LiteNetLib - сеть
LiteJson - парсинг конфигов и мелочи


P.S.
Если у кого какие баги с видео - попробуйте запускать с ключом -force-opengl
Буду рад вашим отзывам!

Ответ на: комментарий от kir64

Просто сейчас я учу его видеть и реагировать на полученную информацию, хотя бы чтоб мог найти определенные блоки на карте и копать только их.

я учу его видеть

OpenCV?

edigaryev ★★★★★ ()
Ответ на: комментарий от RevenantX

Погоди, у тебя там разве много интерфейсов? Вроде все за несколько вечеров переписывается.

Ну и, опять же, зависимый репозиторий (или, даже, просто в ignore). У меня NGUI вроде был.

Quickern ★★ ()

Огромное обновление

Огромное обновление.
- Добавлены боты!
- Новая анимация локальной смерти.
- Теперь видно поворот рук и головы по вертикали.
- Забавный эффект постпроцесса.
- Теперь нельзя стрелять на бегу.
- Поправлено сглаживание приседания (теперь все красиво и плавно).
- Новый графический интерфейс.
- Сообщения об устаревшем игровом клиенте.
- Теперь на старте есть выбор из 3х оружий (дробовик, автомат, снайперка)
- Новый снайперский прицел.
- Билдер блоков теперь более удобный (смена типа блока кнопками E, R)
- Балансировка оружия.
- Новая система спавна.
- Новый блок - куст. (как в battlecity)
- Тысячи исправленных багов ( и вероятно две тысячи новых )
- Всякие мелочи о которых я забыл.
- Фиксы крешей на Linux.
- Обновлен Unity3d до версии 5.2.2p2
- Обновлен NGUI до версии 3.9.4 (что фиксит много крашей связанных с текстом)

RevenantX ★★★★ ()
Последнее исправление: RevenantX (всего исправлений: 1)
Ответ на: комментарий от RevenantX

Плюс Unity3d Editor только под Win/Mac

Вот в этом для меня и проблема... Уже много игр убедило меня в том, что Unity3D это прекрасный инструмент для старта в геймдеве, но тот факт что виндовс онли + в качестве основного скриптинга использует C# (js вообще в расчет не беру), постоянно заставляет меня забить на Unity3D, несмотря на все ее плюсы...

comp00 ★★★★ ()
Ответ на: комментарий от comp00

Уже есть версия редактора для Linux. Я специально несколько патчей делал для редактора Atom, точнее omnisharp-atom, чтоб нормально работала поддержка C# для Unity3d проектов.

RevenantX ★★★★ ()
Ответ на: комментарий от RevenantX

Как-то все размыто в этом юнити, не знаю даже. Вот непонятно, зачем вообще было связываться с C#, когда можно было взять кроссплатформенную Java.
Вроде и годно, и вкусно, но в то же время как-то неприятно. Возможно, конечно, предрассудки...

comp00 ★★★★ ()
Ответ на: комментарий от comp00

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

RevenantX ★★★★ ()
Ответ на: комментарий от timdorohin

В ближайшее время допилю точки спавна и классы ( а так-же настройки ). Потом куча мелочи и на гринлайт вероятно. Если там взлетит буду продолжать развивать.

RevenantX ★★★★ ()

Игра выглядит круто. Если не секрет, для сетевого взаимодействия вы использовали готовое решение типа фотона или использовали собственные наработки? Кстати, вы писали, что используете ngui в этом проекте. Вы используете его потому что привыкли к этому плагину или потому что он все еще превосходит новый unity ui?

freedev ()
Ответ на: комментарий от freedev

Для сети готовое решение. Lidgren Network Gen3.
Оно не такое навороченное как Photon. Это по сути аналог enet - то есть протокол поверх UDP с возможностью гарантированной доставки пакетов. Однако недавно встретил несколько сложных багов и перехожу на собственную разработку https://github.com/RevenantX/LiteNetLib.

NGUI использую по нескольким причинам. Во-первых его легче использовать с разными версиями юнити. Он обновляется отдельно и его легко модифицировать. Так-же привычка конечно-же. Ну и в UnityUI были страшные баги связанные с поддержкой Linux потому пришлось его оперативно выбросить.

RevenantX ★★★★ ()
Ответ на: комментарий от RevenantX

Ясно, спасибо за ответы. Вы писали что у вас есть опыт коммерческой разработки игр. Вы в компании работаете или на себя? Если в компании - было бы очень интересно узнать, какие сейчас требования при приеме на работу на джуниора. Что нужно знать, нужны ли законченные проекты в качестве портфолио итд. Я самостоятельно изучаю юнити и уже кое что получается, но мне кажется что очень трудно научиться делать сложные игры с продвинутой архитектурой без опыта работы в команде.

freedev ()
Ответ на: комментарий от freedev

В разных компаниях работал. И сейчас работаю. Данный проект делаю чисто по вечерам и выходным когда есть силы. Для джуниора надо понимание основ программирование и хорошее знание хотя-бы одного языка. Для unity3d - понятно надо знать еще и Unity3d. Ну и поначалу придется работать вероятно вообще во всяких стрёмных конторах) Которые делают совсем странные игры)

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

В целом да. Но можно и работать над opensource проектом каким и подглядывать как там сделано. Ну и не копипастить а обдумывать каждую идею и строчку кода)

RevenantX ★★★★ ()

Кстати, что вы думаете о Unet? Я просто работал только с клиентской частью всегда и серверной не интересовался. Ну вот недавно мне захотелось чисто ради интереса сделать сетевой шутер от первого лица. Сам я полностью написать сетевое взаимодействие не смогу, поэтому пока что выбираю между Unet и Photon. Вообще какие еще сетевые решения вы можете посоветовать? Желательно максимально простые для понимания и обладающие достаточной гибкостью чтобы сделать нормальный шутер.

freedev ()
Ответ на: комментарий от freedev

Unet - достаточно мутная библиотека которая зависит от Unity и пока если деплоить сервер с этой технологией придется запускать сервер с Unity что тянет производительность и некоторые неудобства.
Photon - это вообще муть полная совсем не для шутеров сделана. Очень не советую использовать. Слишком много абстракций там. И для меня огромный минус - невозможность запустить сервер на Linux.
А так в целом UNet нормально конечно подходит. Про Lidgren-Network-Gen3 я уже писал. Достаточно мощная и хорошая библиотека с кучей фич и при этом не сильно высокоуровневая.
А вообще сетевой шутер это не только сетевая библиотека. Все фичи вроде антилага, античита, сихронизации правильной и многие вещи придется делать руками. Это самая сложная часть.

RevenantX ★★★★ ()

Выложил обновление. В этой версии всякие тюнинги в основном.
Скорость бега, always run, настройки всякие.
И переход на собственную сетевую либу https://github.com/RevenantX/LiteNetLib
Едиенственное что. Походу поломался шейдер для чанков на Linux.
Если у кого тоже такое. Пришлите пожалуйста инфу о видеокарте и версии OpenGL.

RevenantX ★★★★ ()

Поправил шейдера. Сделал кучу оптимизации. И должны полечиться краши на разных видеокартах.
Проверил на встроенном Intel и NVIDIA через primusrun.

RevenantX ★★★★ ()