Перейти к контенту

Курилка программистов


Рекомендуемые сообщения

 

 

  Malandrinus писал(а):
VOSTOK GAMES
кто то еще там работает до сих пор? Пилить, заранее мертвый проект, это не каждый  программист захочет. Да так рассуждать, как я, то все проекты умрут когда то.

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий

 

 

  _Призрак_ писал(а):
в Survarium отсутствуют боты в принципе

А не приходит такое соображение, что они там отсутствуют просто потому, что их нормально не сделать или сделать сложно? Ведь делают те же люди, что делали сталкира. Причём делают на постоянной основе, а не по вечерам ковыряются. Казалось бы, уж они то должны были за много лет запилить то, что не удалось в x-ray. И насчёт того, что "делать с нуля". Это серьёзно?! Это же разрабы сталкира почти в полном составе, включая Ясенева, который как раз и отвечал за весь AI (т.е. по сути почти весь xrGame). О работе с нуля здесь даже речи идти не может, всё уже есть. Если до сих пор не сделали, значит на то есть какие-то иные причины.

 

  Цитата
X-Ray уже есть боты (пусть даже в синглплеере) + весь синглплеер сделан по типу напоминающему клиент-серверное приложение

 

Во-первых, в сингле множество действий происходит напрямую в обход серверной архитектуры. Но на мой взгляд это не главная проблема. При работе по сети главной проблемой будет синхронизация всех персонажей, включая и физические объекты. Здесь начинают гадить задержки сети. Я уверен, что неслучайно в сурвариуме первыми сделали (точнее анонсировали, что сделали) именно мобов-людей для пострелушек. При этом намного легче скрыть дефекты синхронизации. Мне почему-то кажется, что до мобов-монстров им ещё как до луны. Там всё гораздо сложнее, поскольку монстры находятся при атаке в непосредственном контакте с игроком, и любые косяки сети там будут вылезать сразу.


 

 

  Дизель писал(а):
кто то еще там работает до сих пор? Пилить, заранее мертвый проект,

Не мне судить насчёт "заранее мёртвый", но фирма вроде есть и работает. Вот анонс же свежий.

  Полезный утиль (Показать)
Ссылка на комментарий

 

 

  Malandrinus писал(а):
.NET ? Мне собственно было интересно, какой вообще фреймворк.

.NET, да. Может быть ты имеешь ввиду, какие компоненты используются? Юзаю Devexpress из последних версий (15.2, кажется). Разрабы метро юзали для своего сдк Devexpress 2008, я решил по-новее взять.

 

 

 

  _Призрак_ писал(а):
Таким образом для того чтобы перенести ботов в онлайн нужно было заставить мультиплеерный сервер загружать АИ-сетки и запускать соответствующие скрипты, ответственные за поведение ботов (я скорее всего много чего забыл, но не суть).

Это самое меньшее из зол. Вернее самое первое, что требуется сделать. Основная проблема то в синхронизации и большом количестве отсылаемых пакетов.

 

 

 

  _Призрак_ писал(а):
А в Survarium отсутствуют боты в принципе. Вообще. Им все нужно делать с нуля - архитектуру, поведение и т.д.

Так на видео демонстрация ботов есть уже. Только неизвестно, будут ли в дальнейшем боты на серверах. Скорее всего их сейчас добавили только для отладки АИ.

 

 

 

  Malandrinus писал(а):
Если до сих пор не сделали, значит на то есть какие-то иные причины.

Какая-то причина уже как года 4. Возможно, это же причина послужила закрытию второго сталкира.

Ссылка на комментарий

 

 

  SkyLoader писал(а):
.NET, да.

Это ведь означает managed код. Или я что-то не понимаю? Как это всё совмещается с чисто С++ кодом игры?

  Полезный утиль (Показать)
Ссылка на комментарий
  Malandrinus писал(а):
Как это всё совмещается с чисто С++ кодом игры?

Это всё легко сделать, если использовать C++/CLI

Изменено пользователем User_X.A.R26
Ссылка на комментарий

 

 

  User_X.A.R26 писал(а):
C++/CLI

а как там с шаблонами C++ ? Движок их использует весьма интенсивно. Собственно вся игровая логика в xrGame строится на них. Плюс на шаблонах вся скриптовая система. Наверное можно это всё выкинуть, но тогда от игры останется голый рендер.

  Полезный утиль (Показать)
Ссылка на комментарий

 

 

  Malandrinus писал(а):
А не приходит такое соображение, что они там отсутствуют просто потому, что их нормально не сделать или сделать сложно?

Приходит, но все же я бы попросил бы определение "нормально сделанных ботов".

 

  SkyLoader писал(а):
Это самое меньшее из зол. Вернее самое первое, что требуется сделать. Основная проблема то в синхронизации и большом количестве отсылаемых пакетов.

Тут я могу поспорить. Да, можно просто сказать что количество пакетов будет большим, но мы можем посчитать насколько. Каждого НПС можно представить как игрока, за которого играет компьютер. Соответсвенно большое число пакетов = (число ботов + игроков) * среднее число отправляемых пакетов в секунду. Итого если мы имеем кооперативное прохождение (сколько это человек? 2-4?), мы можем без проблему заполнить карту еще 30 ботами (а скорее всего и большим числом) без проблем с сетью. К тому же, насколько я знаю, в планах ребят которые делают кооп (или было в планах) - введение системы алайфа в мультиплеер. У нас есть сервер который обсчитывает всех(?) ботов в онлайне, но каждому клиенту отправляет информацию только о НПС в радиусе алайфа. Сколько у нас на пике ботов может быть в радусе алайфа (возьмем стандартный в 150м)? 20? 30? Не думаю больше. Вот и вся проблема большого числа пакетов. Поправьте если я не прав.

 

 

 

  Malandrinus писал(а):
Во-первых, в сингле множество действий происходит напрямую в обход серверной архитектуры

Какие? Просто если мы говорим про диалоги/передача предметов, то это не является большой проблемой для исправления.

 

 

 

  Malandrinus писал(а):
Здесь начинают гадить задержки сети.

Ну для обычных игроков задержки тоже гадят. Поэтому у них происходит предсказывание траектории движения и т.д. Тоже самое включаем для мобов и все, проблема решена.

Freedom

Ссылка на комментарий
  Malandrinus писал(а):

И насчёт того, что "делать с нуля". Это серьёзно?! Это же разрабы сталкира почти в полном составе, включая Ясенева, который как раз и отвечал за весь AI (т.е. по сути почти весь xrGame). О работе с нуля здесь даже речи идти не может, всё уже есть. Если до сих пор не сделали, значит на то есть какие-то иные причины.

Сурвариум именно что "делают с нуля". Посмотри исходники xray 2.0. По слухам сурвариум построен на них.
Ссылка на комментарий
  Malandrinus писал(а):
а как там с шаблонами C++ ?

C++/CLI - просто прилепленные к "классическому" С++ расширения для работы с .NET типа всяких там управляемых классов и etc

Изменено пользователем User_X.A.R26
Ссылка на комментарий
  _Призрак_ писал(а):

я бы попросил бы определение "нормально сделанных ботов".

 

Хотя бы как в сингле сталкира.

 

 

  Цитата

предсказывание траектории движения и т.д. Тоже самое включаем для мобов и все, проблема решена.

 

Не соглашусь. Когда происходят пострелушки, то все эти манипуляции с экстраполяцией малозаметны. Вообще, когда один сетевой персонаж (непись или игрок, неважно) стреляет в другого, то это в сущности как в детской игре или в том анекдоте: "пиф паф, я попал, ты убит". Т.е. если хедшот был по экстраполированному положению, а это положение было неправильное на полметра-метр из-за задержки сети, то никто этого не заметит. Клиент посылает сигнал "я попал, получи хит", сервер сигнал транслирует, хит идёт. Никто ничего не заметит.

 

Совсем другое дело монстр, который: во-первых маневрирует куда быстрее человека, во-вторых его атаки не удалённые, а близкие и основаны на физическом контакте (т.е. это не абстрактное "я в тебя выстрелил, умри", а вполне конкретное движение из конкретной точки в определённую сторону), в-третьих монстров обычно больше, нежели людей (и все они близко к игроку). Здесь уже будет совершенно очевидно, что сеть лагает со всеми вытекающими: внезапные телепортации, хиты из ниоткуда и т.п.

 

Но вообще мне нравится это "проблема решена". пыс делали годами, ВГ делали, а воз и ныне там. А здесь раз - и проблема решена =)

 

 

  abramcumner писал(а):

Сурвариум именно что "делают с нуля". Посмотри исходники xray 2.0. По слухам сурвариум построен на них.

 

Исходники xray 2.0 - это конечно ни о чём. Но даже если это то, с чего начали сурвариум, и что с того? Я исхожу из того, что там присутствую все ключевые люди, которые отвечали за AI сталкира. Те, что делали рендер, свалили в 4A и, кстати, за пару лет сделали свою игру со своим рендером и своим ai (и вполне очевидно, что даже если делали с нуля, то знали что делать). При таком раскладе я вижу только одну прчину, почему до сих пор ВГ не сделали кооператив с мобами - потому что это таки сложно.

 

@User_X.A.R26,

ну вот я попробовал простой файл с шаблонами скомпилить в проекте C++/CLI. Не вышло, вылезла куча ошибок. Фичи C++11 не переваривает точно. Уж не знаю, как можно весь движок сталкира пересобрать под этим. Разве только поудалять большую часть кода на шаблонах. Ну может я что-то не понимаю. Давно с .NET не работал, так что наверное отстал от жизни.

  • Нравится 1
  Полезный утиль (Показать)
Ссылка на комментарий

 

 

  Malandrinus писал(а):
вылезла куча ошибок
Попробуй поиграться с настройками проекта. Возможно у тебя включен только "управляемый режим"
  Malandrinus писал(а):
Фичи C++11 не переваривает точно

С++11 должен тянуть... Хотя наверное от версии студии\компиляторов\тулсета зависит

Изменено пользователем User_X.A.R26
Ссылка на комментарий

@User_X.A.R26,

Я понял проблему. Нельзя аргументом шаблона сделать слово "event", видимо ключевое слово. Переименовал - собралось.

 

 

 

 

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

  Пример использования. (Показать)
Изменено пользователем Malandrinus
  • Нравится 2
  Полезный утиль (Показать)
Ссылка на комментарий

Насколько я понял, Microsoft так и не сделали редактора GUI для C++. И из набора доступных проектов в студии это тоже очевидно. Так что мой вопрос @SkyLoader-у по сути остаётся, что использовалось для GUI? C# ? А как тогда строится взаимодействие с запчастями от игры?

 

Впрочем, вопрос уже чисто теоретический. Лично я так делать бы не стал в любом случае. Взял бы любой из доступных для С++ фреймворков для окошек, скажем wxWidgets, поскольку я с ним знаком, и не парился бы.

Изменено пользователем Malandrinus
  Полезный утиль (Показать)
Ссылка на комментарий

 

 

  Malandrinus писал(а):
что использовалось для GUI? C# ?

Посмотри в исходниках ЧН или ЗП редактор погоды (src\editor\). Его я за основу брал. Там можно увидеть всё взаимодействие.

Ссылка на комментарий

 

 

  Malandrinus писал(а):
Microsoft так и не сделали редактора GUI для C++

 

  Malandrinus писал(а):
из набора доступных проектов в студии это тоже очевидно
Создай проект "VC++ для платформы CLR", добавь в него форму Windows Forms, открой и увидишь Дизайнер, аналогичный подобному в VC# и VB. :)

 

  Malandrinus писал(а):
что использовалось для GUI?
В оригинале, насколько я понимаю, где-то применяется C++ и MFC, ну а где-то как раз C++/CLI и Windows Forms (пример со вторым привёл комрад @SkyLoader постом ниже; там как раз используется C++/CLI)
Ссылка на комментарий

Есть мысль как реализовать движение гусениц танка в Сталкере.

Гусеницы можно внедрить в меш ГГ ( отдельный меш ГГ для каждого танка), собрать анимацию нпс, а в движок, в анимации ГГ за рулём, добавить вперёд - назад, влево - вправо там есть.

 

Движение будет правдоподобным от шейпов траков, толкающих меш танка. Как думаете, я ерунду толкую или дело?

 

Забыл, только про ограничение костей. Что же придумать? Надо как то сделать танк.

Изменено пользователем Дизель

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий

@Дизель, у гусеницы порядка 98 траков, и того порядка 230 костей надо, а ограничение 64 кости, и легкими методами это число не поднять. Я думаю проще объединить траки в группы  костей, и таких групп порядка 6-8, и всё, анимация только одна, делаем методы задающие скорость анимации, в том числе отрицательную скорость, что бы задом на перед можно было отыгрывать.

Хотя не, не получится, придётся делать по другому. Делаем эти группы не подвижными, а анимацию имитируем, задавая видимость и не видимость группы костей, согласно движению нашей гусеничной техники.

Давно мечтаю как было в диздоках, вернуть БМП-2, как раз идея для проекта Oblivion Lost Remake 3.0.

Изменено пользователем НаноБот
  • Полезно 1

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

Ссылка на комментарий
  НаноБот писал(а):

а ограничение 64 кости, и легкими методами это число не поднять

ОГСЕшники убрали лимит на 64 кости (Или сколько там в ТЧ ограничение) в своем моде.

Изменено пользователем HellRatz
Ссылка на комментарий

@HellRatz, в принципе можно и увеличить количество костей, например до 256. Но моя идей может быть реализована уже сейчас для проекта XRay-Extensions для ТЧ и ЗП. Надо только сделать соответствующий модель. Я так понимаю эти методы должны работать для костей не имеющих наследников. 

ЗЫ

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

Изменено пользователем НаноБот
  • Нравится 2

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...