LINUX.ORG.RU
ФорумGames

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

 , блоки, ,


11

17

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

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

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


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

★★★★

Последнее исправление: RevenantX (всего исправлений: 29)

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

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

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

OpenCV?

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

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

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

Quickern ★★
()
15 ноября 2015 г.

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

Огромное обновление.
- Добавлены боты!
- Новая анимация локальной смерти.
- Теперь видно поворот рук и головы по вертикали.
- Забавный эффект постпроцесса.
- Теперь нельзя стрелять на бегу.
- Поправлено сглаживание приседания (теперь все красиво и плавно).
- Новый графический интерфейс.
- Сообщения об устаревшем игровом клиенте.
- Теперь на старте есть выбор из 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 ★★★★
() автор топика
26 января 2016 г.

Игра выглядит круто. Если не секрет, для сетевого взаимодействия вы использовали готовое решение типа фотона или использовали собственные наработки? Кстати, вы писали, что используете 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 ★★★★
() автор топика
16 апреля 2016 г.

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

RevenantX ★★★★
() автор топика