Алиенн Опубликовано 18 мая, 2013 Жалоба Поделиться Опубликовано 18 мая, 2013 Сегодня, прилетев СОЕ в Хантер, направила перса бежать от ворот (боковые, на взгорке), вниз, к ТП. Чуть-чуть ошиблась направлением. Перс пробегает насквозь изображенный забор и падает в ров. Конечно, сое оттуда достанет, но почему???? Раз уж препятствие - так препятствие, я правильно понимаю? Ссылка на комментарий Поделиться на другие сайты Поделиться
lLife Опубликовано 18 мая, 2013 Жалоба Поделиться Опубликовано 18 мая, 2013 Сейчас гайка все бросит и будет заборы чинить)) Ссылка на комментарий Поделиться на другие сайты Поделиться
Yurimiya Опубликовано 18 мая, 2013 Жалоба Поделиться Опубликовано 18 мая, 2013 Если долго бежать в стенку, то можно " просочиться " сквозь нее. В других более важных местах было так же ( тот же рб за стеной, можно было так же пройти хД) убрали. А в городе этого особого вреда не приносит. Ссылка на комментарий Поделиться на другие сайты Поделиться
Redfoo Опубликовано 18 мая, 2013 Жалоба Поделиться Опубликовано 18 мая, 2013 Если долго бежать в стенку, то можно " просочиться " сквозь нее. В других более важных местах было так же ( тот же рб за стеной, можно было так же пройти хД) убрали. А в городе этого особого вреда не приносит.На бая раньше так же заходили же Ссылка на комментарий Поделиться на другие сайты Поделиться
BymerkO Опубликовано 18 мая, 2013 Жалоба Поделиться Опубликовано 18 мая, 2013 На бая раньше так же заходили жеща на белефа некоторые так заходят))) - коротышка) Ссылка на комментарий Поделиться на другие сайты Поделиться
Алиенн Опубликовано 20 мая, 2013 Автор Жалоба Поделиться Опубликовано 20 мая, 2013 Сейчас гайка все бросит и будет заборы чинить))Типа - не лезьте с фигней, гражданка, не до Вас? Вот магов порезать, дроп убавить, ГОД затеять, или еще какую гадость изваять - это важно, а когда перс посреди города в яму, из которой только СОЕ делать, проваливается - это так и должно быть? И "не гавкайте, смерды"? Не удивительно тогда, что онлайн падает... А если ты не представитель администрации - то вообще с какой стати такие реплики подаешь?Кстати, я (перс) НЕ бежала долго. В абсолютно обычном режиме, как по чистому месту. Ссылка на комментарий Поделиться на другие сайты Поделиться
Gaikotsu Опубликовано 20 мая, 2013 Жалоба Поделиться Опубликовано 20 мая, 2013 таковы особенности геодвижка сервера - через тонкую и/или низкую преграду при удаче вполне можно просочиться, т.к. в геодате на этом месте могут быть "микродырки", в которых толщина препятствия как бы истончается до нуля, если препятствие расположено под углом к осям координат (о чем речь идет вы можете понять наглядно, если скажем нарисуете под углом тонкую линию в 1пиксель толщиной и сильно увеличите). ну или даже если препятствие точно горизонтально или вертикально расположено (если смотреть сверху), но опять же из-за своей тонкости занимает по толщине место, меньшее чем минимальная обрабатываемая ячейка геодаты (надеюсь никто не думает что минимальной ячейкой в геодате является 1 точка - в таком случае, учитывая размеры мира, даже один единственный сектор, коих в игре больше двух сотен, учитывая что слоев в нем обычно не один, весил бы многие гигабайты и никакой памяти бы не хватало чтобы размещать данные о геодате в ней). ну и собственно при такой ситуации сервер вполне может посчитать при запросе от клиента, проверить валидность текущих координат, что перемещение в текущие координаты вполне допустимо. и нет - исправлением этого я заниматься не буду - для этого придется перебрать весь геодвижок в поисках метода исправления и не факт что еще получится что-то без полного переписывания оного. а учитывая что геодвиг написан был еще в доисторические времена хз кем и написан так что при попытках разобраться в принципах его работы быстро можно заработать вывих мозга... было бы время - может бы и занялся, но на это надо потратить не то что дни/недели, а месяцы, учитывая с какими объемами почти нечитабельного кода придется работать... З.Ы. вот чисто ради примера, чтобы проникнулись - одна из самых простейших и малейших функций из геодвига, просто проверяющая возможность пройти из одной точки до другой по прямой. private static int canMove(int __x, int __y, int _z, int __tx, int __ty, int _tz, boolean withCollision, int geoIndex) { int _x = __x - World.MAP_MIN_X >> 4; int _y = __y - World.MAP_MIN_Y >> 4; int _tx = __tx - World.MAP_MIN_X >> 4; int _ty = __ty - World.MAP_MIN_Y >> 4; int diff_x = _tx - _x, diff_y = _ty - _y, diff_z = _tz - _z; int dx = Math.abs(diff_x), dy = Math.abs(diff_y), dz = Math.abs(diff_z); float steps = Math.max(dx, dy); if (steps == 0) return -5; int curr_x = _x, curr_y = _y, curr_z = _z; short[] curr_layers = new short[MAX_LAYERS + 1]; NGetLayers(curr_x, curr_y, curr_layers, geoIndex); if (curr_layers[0] == 0) return 0; float step_x = diff_x / steps, step_y = diff_y / steps; float next_x = curr_x, next_y = curr_y; int i_next_x, i_next_y; short[] next_layers = new short[MAX_LAYERS + 1]; short[] temp_layers = new short[MAX_LAYERS + 1]; short[] curr_next_switcher; for (int i = 0; i Config.MAX_Z_DIFF ? dz * 1000 : 0; }и как я и сказал выше - это одна из самых простых и понятных, а вообще подобного кода там где-то на сотню килобайт... 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения