Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Работа с геодатой (https://forum.zone-game.info/forumdisplay.php?f=38)
-   -   GeoEngine (https://forum.zone-game.info/showthread.php?t=18827)

x3k 31.03.2012 20:54

Re: GeoEngine
 
В общем проблема немного поменяла свое направление. Описываю все подробно: сорсы взяты от L2jFrozenInterlude. Присутствует одна единственная проблема: если два объекта стоят в плотную к стене (двери) с разных сторон соответственно, то любой из объектов может атаковать другого, если же хотя бы один из них чуть отходит, то атаковать уже нельзя. Подозреваю, что дело в geoengine. Геодата ставилась как от ластим, так и от Acumu.

Вопрос, сам собой разумеющийся: как с этим бороться?!

KilRoy 06.04.2012 16:12

Re: GeoEngine
 
Цитата:

Сообщение от x3k (Сообщение 174088)
Вопрос, сам собой разумеющийся: как с этим бороться?!

Просчитывать точки до запрещенной и в зависимости от просчитанного количества - запрещать движение дальше (тут могут возникнуть проблемы конечно...)
---
Кто может объяснить работу движка, с осадными и нет - дверями??!!
А точней, по какой причине коллизия дверей может не обрабатываться, как это происходит на ребоподобных сборках с дверями, не относящимся к осадным... (проверяется свободно, в клиенте вырезаются все двери, и свободно ходим сквозь установленную коллизию на дверях КХ, и прочих дверок. В то время как с фортами и замками - это невозможно)

Azagthtot 06.04.2012 16:22

Re: GeoEngine
 
Если проблема у стены, то переписываем нафиг определение видимости. Добавляем двойной контроль по NSWE и по высотам. Проблема с дверями - правим обработку коллизий дверей. К геодвину это не имеет никакого отношения. Или делайте как фениксы - регистрируйте дверь как геообъект.

KilRoy 06.04.2012 16:46

Re: GeoEngine
 
Цитата:

Сообщение от Azagthtot (Сообщение 176084)
NSWE

NSEW ;)

Цитата:

Сообщение от Azagthtot (Сообщение 176084)
Проблема с дверями - правим обработку коллизий дверей. К геодвину это не имеет никакого отношения. Или делайте как фениксы - регистрируйте дверь как геообъект.

Дядь, я понимаю что нужно править :) Мне бы принцип работы сего на офе, как должно, и и как может. (Писал же, "Кто может объяснить работу движка, с осадными и нет - дверями ", и дальше уже описал проблему работы с коллизиями ;))
P.S у фениксов та же дырка ;)

linliss 06.04.2012 17:03

Re: GeoEngine
 
Цитата:

Сообщение от KilRoy (Сообщение 176095)
Дядь, я понимаю что нужно править :) Мне бы принцип работы сего на офе, как должно, и и как может. (Писал же, "Кто может объяснить работу движка, с осадными и нет - дверями ", и дальше уже описал проблему работы с коллизиями ;))
P.S у фениксов та же дырка ;)

все просто) через любые двери нельзя ходить

KilRoy 06.04.2012 17:32

Re: GeoEngine
 
Цитата:

Сообщение от linliss (Сообщение 176099)
все просто) через любые двери нельзя ходить

off:
Свернуть ↑Развернуть ↓

hex1r0 06.04.2012 17:48

Re: GeoEngine
 
хз как на офе, смотри как я делал на л2жфри, у мну двери как Azagthtot сказал обрабатываются как гео, НСВЕ, пасфаинд...

KilRoy 06.04.2012 17:58

Re: GeoEngine
 
Цитата:

Сообщение от hex1r0 (Сообщение 176107)
хз как на офе, смотри как я делал на л2жфри, у мну двери как Azagthtot сказал обрабатываются как гео, НСВЕ, пасфаинд...

нсев :) Чуть опять не туда, но спасибо :)
П.С спасли Инки - реализация вообще на высоте.

hex1r0 06.04.2012 18:10

Re: GeoEngine
 
Цитата:

Сообщение от KilRoy (Сообщение 176111)
нсев :) Чуть опять не туда, но спасибо :)

север, юг, запад, восток = noth, sount, west, east

EDIT:
че за инки?

Azagthtot 06.04.2012 18:16

Re: GeoEngine
 
1. Обработка дверей. Чар не должен пересекать своим радиусом дверь. Т.е. главное что чар не точка, а целых 8-10 точек.
2. Проверка нахождения дверей. Для этого, решайте задачу пересечения прямой четырех прямых (сторон дверей). Так же проверяйте z координату.
Собственно соблюдение этих простых правил приводит к четкой обработке двери.


Текущее время: 00:04. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot