- Статус
- Оффлайн
- Регистрация
- 13 Фев 2026
- Сообщения
- 663
- Реакции
- 18
Ковыряю на досуге сурс и столкнулся с задачей: нужно было прикрутить кастомного NPC с магазином, который работает на системе Quest Points (самописная награда за активность).
Основная проблема в таких случаях — найти свободное окно интерфейса, чтобы не вырезать стандартные функции типа Horse Racing. Методом перебора через тестового NPC удалось выцепить пачку ID, которые отвечают за вызов конкретных окон. Если кто-то занимается разработкой приваток Conquer Online, этот список сэкономит вам кучу времени.
Актуальные WindowCommands (ushort):
Что по магазинам и .ini файлам?
Логика простая: структура предметов и цены лежат в конфигах, но чтобы заставить NPC юзать конкретный .ini, нужно правильно привязать вызов окна. Если создаете новый конфиг, убедитесь, что ID окна в коде совпадает с тем, что вы подсовываете в логику обработки клика. С тем же CrapsTable (656) можно неплохо развлечься, если переписать его под свои нужды.
Кто-нибудь находил еще ID для свежих билдов или скрытые интерфейсы, которые остались в клиенте, но не юзаются?
Основная проблема в таких случаях — найти свободное окно интерфейса, чтобы не вырезать стандартные функции типа Horse Racing. Методом перебора через тестового NPC удалось выцепить пачку ID, которые отвечают за вызов конкретных окон. Если кто-то занимается разработкой приваток Conquer Online, этот список сэкономит вам кучу времени.
Актуальные WindowCommands (ushort):
Код:
public class WindowCommands
{
public const ushort
Compose = 1,
Craft = 2,
Warehouse = 4,
DetainRedeem = 336,
DetainClaim = 337,
VIPWarehouse = 341,
Breeding = 368,
PurificationWindow = 455,
StabilizationWindow = 459,
JiangHuSetName = 0x269,
TalismanUpgrade = 347,
GemComposing = 422,
OpenSockets = 425,
Blessing = 426,
TortoiseGemComposing = 438,
RefineryStabilization = 448,
HorseRacingStore = 464,
Reincarnation = 485,
SecondaryPasswordVerification = 568,
CrapsTable = 656;
}
Что по магазинам и .ini файлам?
Логика простая: структура предметов и цены лежат в конфигах, но чтобы заставить NPC юзать конкретный .ini, нужно правильно привязать вызов окна. Если создаете новый конфиг, убедитесь, что ID окна в коде совпадает с тем, что вы подсовываете в логику обработки клика. С тем же CrapsTable (656) можно неплохо развлечься, если переписать его под свои нужды.
Кто-нибудь находил еще ID для свежих билдов или скрытые интерфейсы, которые остались в клиенте, но не юзаются?