Jump to content
Korean Random
Dragon armor

Мод "Эмулятор сервера World of Tanks".

Recommended Posts

3 минуты назад, Dragon armor сказал:

@StranikS_Scan Что ты имеешь в виду? О какой механике речь?

 

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

Share this post


Link to post

Short link
Share on other sites

@StranikS_Scan А где коллижены? Те, что в клиенте - это очень упрощенный вариант, где показано лишь бронирование. А как на сервере у них реализовано? Как у картохи осуществляется пробитие при выстреле в открытую рубку? А в закрытую? Имею в виду, что в физическом движке происходит.

Share this post


Link to post

Short link
Share on other sites
34 минуты назад, Dragon armor сказал:

@StranikS_Scan А где коллижены? Те, что в клиенте - это очень упрощенный вариант, где показано лишь бронирование. А как на сервере у них реализовано? Как у картохи осуществляется пробитие при выстреле в открытую рубку? А в закрытую? Имею в виду, что в физическом движке происходит.

 

Коллижены можешь посмотреть - тут. Там хорошо виден принцип реализации у картошки.

 

Про механику пробития у картошки можешь почитать - тут (устарело немного) и еще тут в первом посте.

 

Отвечая на твой вопрос о рубках и уроне - у картошки есть слои, которые помечены как слои контроля попадания снаряды в заброневое пространство. Если снаряд такой слой пробивает, то срабатывает флаг попадания в заброневое пространство и включается расчет урона по танку. Чтобы не было "дырок" в танках картошка часто примеяет слои мембраны с толщиной 0 мм, задача которых исключительно контролировать попадание снаряды в заброневое пространство. Например такой слой часто присутствует в башне танка, где закрывает пространство между орудием и краями отверстия башни.

 

spacer.png

 

 

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

Edited by StranikS_Scan

Share this post


Link to post

Short link
Share on other sites

@StranikS_Scan 

4 часа назад, StranikS_Scan сказал:

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

Всё-таки броня нулевой толщины должна быть. Без внутренних слоёв.

4 часа назад, StranikS_Scan сказал:

Коллижены можешь посмотреть - тут. Там хорошо виден принцип реализации у картошки.

Броня башни отсутствует.

424781370_.thumb.png.4c22282025dd0452adb6fdef5647d6e0.png

Ещё там регистрация требуется для просмотра чего-то более высокоуровнего. Если есть у тебя, как сделана броня башни у вафлепазика и гриля.

Это почти тоже самое, что и в клиенте доступные коллижн модели. Тут отдельными плоскостями сделано. Сейчас сам не знаю, как именно делать. Ограничения физического движка на коллизию динамического объекта - замкнутый невыпуклый 3d объект (их можно объединять прямо в физическом движке для создания любой формы). Если делать плоскостями или полигонами, то это уже статика будет. Иначе физический движок не поддерживает.

4 часа назад, StranikS_Scan сказал:

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

Это ты про питон? Но ему эти данные предоставляют. Т.е., это опять в реализацию в физическом движке упирается. А питон уже готовые данные обрабатывает.

Ну вот су-5, как раз рубка похожа на то, что надо.

1788429389_.png.5820a0da11af21bdd7b400a5b6c910ae.png

Если навести на внутреннюю часть, то не покажет ничего. Если на орудие - 0 мм. Тогда тут должны быть ограничивающие плоскости, чтобы при стрельбе сзади в рубку был урон.

Share this post


Link to post

Short link
Share on other sites
33 минуты назад, Dragon armor сказал:

Всё-таки броня нулевой толщины должна быть. Без внутренних слоёв.

 

Да, такая броня есть и пердически встречается, т.к. без неё не всегда можно сделать целостное заброневое пространство. Что касается слоев в коллижене, то у них есть набор свойств, относящихся к механике снарядов. Например у каждого слоя есть вот такие свойства

  <materials>
    <armor_1>
      <vehicleDamageFactor>	1.0	</vehicleDamageFactor>
      <useArmorHomogenization>	true	</useArmorHomogenization>
      <useHitAngle>	true	</useHitAngle>
      <useAntifragmentationLining>	true	</useAntifragmentationLining>
      <mayRicochet>	true	</mayRicochet>
      <collideOnceOnly>	false	</collideOnceOnly>
      <checkCaliberForRichet>	true	</checkCaliberForRichet>
      <checkCaliberForHitAngleNorm>	true	</checkCaliberForHitAngleNorm>
    </armor_1>

Обращаем внимание на первый параметр vehicleDamageFactor - это и есть атрибут заброневого пространства. Все слои у кого он равен 1.0 - это слои образующие заброневое пространство. Их пробитие приводит к расчету урона по танку. Все эти свойства доступны и через пайтон. Поискать код с ними может так - тыц. Это кстати позволяет пилить моды на анализ бронепробития, например для аимов.

 

57 минут назад, Dragon armor сказал:

Броня башни отсутствует.

 

Вполне может быть. Либо это косячок у Мастера Моделей в его коде расшифровке havok-файлов, либо именно так ВГ и задумано. Скажу по своему опыту многолетнего изучения механики игры, что там таких "странных" на первый взгляд коллиженов не мало. Ну в этом и разница между игроком, который лупит по визуальной модели, думая что она и есть настоящая и игроком, который изучил коллижены и потому стреляет согласно им ))))

 

1 час назад, Dragon armor сказал:

Ещё там регистрация требуется для просмотра чего-то более высокоуровнего. Если есть у тебя, как сделана броня башни у вафлепазика и гриля.

Это почти тоже самое, что и в клиенте доступные коллижн модели.

 

Напиши Мастеру Моделей, спроси. Может даст бесплатно доступ, как коллеге-мододелу, чтоб взнос не платить.

 

Что касается вопроса - есть ли различие между havok-коллиженами в клиенте и ими же на сервере - то я склонен думать, что либо нет, либо эти различия не относятся к рассматриваемой механике, а касаются только программной реализации. Почему? Ну потому что у танков клиент-серверная технология. Нет ни какого смысла делать расчеты точнее или подробнее той инфы, которая будет отправлена игроку. В противном случае либо игрок начнет видеть, что его мир отличается мира сервера, либо сервер будет попусту загружен ненужными объёмами данных или ненужными вычислениями, результаты которых будут просто нивелироваться при отправке данных игроку. Вот например кодирование точки попадания.  Вот тут я разбирался с координатами попадания. Это номера сегментов модели, коих берется 256 по ширине и по высоте. Такое кодирование означает округление до 1/256. Возникает сразу вопрос, нужно ли на сервере делать расчеты с большей точностью, если игрок в итоге увидит результат с таким округлением?

 

1 час назад, Dragon armor сказал:

Если навести на внутреннюю часть, то не покажет ничего. Если на орудие - 0 мм. Тогда тут должны быть ограничивающие плоскости, чтобы при стрельбе сзади в рубку был урон.

 

Тут еще стоит поспрашивать Мастера Моделей какие он вносит правки в их отображение. Он ведь может при раскодировки немного вносить свои правки чтоб сделать красивую и понятную визуализацию.

 

Share this post


Link to post

Short link
Share on other sites

@StranikS_Scan Благодарю за информацию.

2 часа назад, StranikS_Scan сказал:

Что касается слоев в коллижене, то у них есть набор свойств, относящихся к механике снарядов.

Вот про это не знал. Тогда это немного облегчает создание хитбокса. Получается, что для брони достаточно будет указать один индекс, а по нему уже можно будет определить всё остальное.

 

Share this post


Link to post

Short link
Share on other sites
1 час назад, Dragon armor сказал:

@StranikS_Scan Благодарю за информацию.

Вот про это не знал. Тогда это немного облегчает создание хитбокса. Получается, что для брони достаточно будет указать один индекс, а по нему уже можно будет определить всё остальное.

 

 

Если мне не изменяет память, картошка использует до 32 слоев, то есть индексация 1...32. Вроде для корпуса до 32 слоев, а для башни до 16 слоев. Но могу соврать, так как не помню точно.

Share this post


Link to post

Short link
Share on other sites

кто-нибудь пробовал постредством джаббера подключиться к xmpp серверу и вытащить список конференций?

 

Share this post


Link to post

Short link
Share on other sites

@HaterCheaters Нет, не пробовал. А в чём сложности? Ты хочешь клиентом подключиться к серверу? Или сервером получить список конференций у другого сервера?

У меня была другая проблема - не смог добавить необходимый функционал в виде [[CDATA]...], которого требует клиент картохи. А потом выяснил, что можно и без xmpp обойтись, поэтому и все эксперименты с ним закончил. Пробовал на jabberd2.

Share this post


Link to post

Short link
Share on other sites
Just now, Dragon armor said:

@HaterCheaters Нет, не пробовал. А в чём сложности? Ты хочешь клиентом подключиться к серверу? Или сервером получить список конференций у другого сервера?

У меня была другая проблема - не смог добавить необходимый функционал в виде [[CDATA]...], которого требует клиент картохи. А потом выяснил, что можно и без xmpp обойтись, поэтому и все эксперименты с ним закончил. Пробовал на jabberd2.

не клинтом игры подключаться, а клинтом xmpp. например psi+, поличать не только список конф, но и контактов по возможности

Share this post


Link to post

Short link
Share on other sites

@HaterCheaters Ясно, что не клиентом игры. Т.е., ты хочешь клиентом xmpp получить список конференций. Не, такое не делал, поэтому подсказать не смогу. У меня не было такой задачи.

Share this post


Link to post

Short link
Share on other sites

Как продвигается проект? 

Сожалею. Google перевел

Я тестирую решение с Bigworld Indie Server, но оно застряло в деталях при запуске клиента версии 0.8.9. У кого-нибудь есть опыт, которым можно поделиться?

Edited by freak527

Share this post


Link to post

Short link
Share on other sites

@freak527 It will be better if you write in English. If necessary, I myself will use google translate.

Цитата

Does anyone have any experience to share

 

I'm afraid there is no one. I only ran 0.9.22.

And my server is not BigWorld. A very simplified version of the server.
Edited by Dragon armor
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Yes it is a simplified version but, the procedure is still the same, i understand so far. Your project is awesome. Thank you for your fast reply. 

My problem is to add missing scripts to finalize the server start? I will send some screenshots to visualize the problem. Sincerely freak 

Share this post


Link to post

Short link
Share on other sites
10 минут назад, freak527 сказал:

the procedure is still the same

Maybe you are right.

What is your difficulty? What exactly are you failing to do?

Share this post


Link to post

Short link
Share on other sites

My last step was to patch the loginapp to work with my client version. But when I want to start the process there are some scripts needed. And I have big problems to understand the python scripts. No experience in python language programming. :sad:

A second big question are the persistent data. At the moment there is a big database. But no idea to fill for testing. Sincerely freak 

Share this post


Link to post

Short link
Share on other sites

@freak527 As far as I know, there is no complete source code for BigWorld. Did you get the open source BigWorld from version 1.9 or 2.01? They are not complete. And they are not suitable for WoT.

In any case, you can't just patch loginapp. You'd better write your own loginapp. I wrote my own for 0.9.22.

Share this post


Link to post

Short link
Share on other sites

It is a working version of the Indie Suite. My patched loginapp is working with 0.8.9 and 0.9.22 so far. It is a big surprise for me. I stuck on database and python issues i described. 

Version number is 2.1 it was nearly working out of the box with client version 0.8.9. I want to share the experience with the community for help. You are so close. That inspired me. I try it about a half year. But here no successful login so far. 

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...