YTDB

YTDB (http://ytdb.ru/index.php)
-   Ядро (http://ytdb.ru/forumdisplay.php?f=25)
-   -   Вопрос по зонам (http://ytdb.ru/showthread.php?t=2604)

Dasexler 23.01.2010 15:18

Вопрос по зонам
 
Доброго времени суток.
Хотелось бы спросить, где меняется тип определенной зоны? (Пример: Шатратт - Синяя зона , тесть нейтральная. А Гурубаши красная - Тесть свободное пвп)
Хотелось бы знать где это все можно найти, и например сделать Штормград и Оргриммар нейтральными городами (как пример)

Shadez 23.01.2010 15:22

Скорее всего, в AreaTable.dbc

DiffuSer 23.01.2010 15:22

Данные беруться из DBC, если не ошибаюсь.

Dasexler 23.01.2010 15:25

Просто на покойном форуме mangos.ru был топик про это, там кто то отвечал что это в ядре (эх жаль тогда не сохранил). Но судя по постам #2 и 3 все в дбц да?
Тоесть отредактировав сервеные дбц я смогу сделать допустим шторм нейтралкой?
Тогда собственно вопрос, возможно довольно "нубский" как отредактировать DBC файл?

timmit 23.01.2010 15:31

гугл уже отменили?

Dasexler 23.01.2010 15:34

Уже нашел на з-г, извиняюсь =)
сейчас посмотрим-с..
----Update----
Посмотрел AreaTable.dbc
как пример
Код:

1519,0,0,688,0x200138,0,0,31,13,61,10,,,,,,,,,"Штормград",,,,,,,,0xFF01FE,0x2,0,,,0,-500.0,0.0,,
3703,530,0,1327,0x4D28,0,0,409,311,0,0,,,,,,,,,"Шаттрат",,,,,,,,0xFF01FE,0x6,0,,,0,-500.0,0.600000023842,,
1741,0,33,740,0x40,0,0,0,0,0,43,,,,,,,,,"Арена Гурубаши",,,,,,,,0xFF01FE,0x0,0,,,0,-500.0,0.0,,
1637,1,0,707,0x200138,0,0,25,7,62,10,,,,,,,,,"Оргриммар",,,,,,,,0xFF01FE,0x4,0,,,0,-500.0,0.0,,

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

Chesterfield 24.01.2010 22:47

Смею предположить, что это аура (нейтральная зона, свободное пвп и т.п.)

Konctantin 24.01.2010 23:18

Код:

1519,0,0,688,0x200138,0,0,31,13,61,10,,,,,,,,,"Штормград",,,,,,,,0xFF01FE,0x2,0,,,0,-500.0,0.0,,
3703,530,0,1327,0x4D28,0,0,409,311,0,0,,,,,,,,,"Шаттрат",,,,,,,,0xFF01FE,0x6,0,,,0,-500.0,0.600000023842,,
1741,0,33,740,0x40,0,0,0,0,0,43,,,,,,,,,"Арена Гурубаши",,,,,,,,0xFF01FE,0x0,0,,,0,-500.0,0.0,,
1637,1,0,707,0x200138,0,0,25,7,62,10,,,,,,,,,"Оргриммар",,,,,,,,0xFF01FE,0x4,0,,,0,-500.0,0.0,,

Смею предположить, что флаги выделенные красным, вроде все совпадает
0x0 - враждебность
0x2 - только альянс
0x4 - только орда
0x6 - складывая 2 флага 0x2 и 0x4 получаем мир

Chesterfield 24.01.2010 23:41

Ну если оно так и есть, то тогда эти данные можно изменять при загрузке дбц, добавив обработку определенных зон в код :)

Konctantin 25.01.2010 00:03

это только предположение, надо смотреть больше данных, или же лезть идой в екзешку.

tempura 25.01.2010 10:08

...либо методом тыка. :) :) :)

Вовка 25.01.2010 12:17

Или хаком в коде... ;)
Перечисляешь зоны по аналогии
Код:

--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -6298,7 +6298,7 @@ void Player::UpdateZone(uint32 newZone, uint32 newArea)
            pvpInfo.endTimer = time(0);                    // start toggle-off
    }
 
-    if(zone->flags & AREA_FLAG_SANCTUARY)                  // in sanctuary
+    if(zone->flags & AREA_FLAG_SANCTUARY || GetZoneId() == 4298)                  // in sanctuary
    {
        SetByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_SANCTUARY);
        if(sWorld.IsFFAPvPRealm())



Текущее время: 06:12. Часовой пояс GMT +4.

YTDB - MaNGOS DataBase