Сообщений: 23
Тем: 1
Зарегистрирован: Mar 2017
Репутация:
154
4ipolino Написал:кто использовал данный вариант поделитесь пропатченой nwindow.dll (или патчем)
Вот отрывок из моего динамического патчера:
Код: /* Replace first instruction of code at src with jump to repl */
bool replaceFuncAtAddr(void* src, void* repl, uint8_t bak[static 6]);
/* Replace data in .text. Back up is written to bak and should be at least as
* large as replSz
*/
bool patchText(void* dst, const uint8_t* repl, uint8_t* bak, size_t replSz);
__attribute__ ((stdcall))
int repl_CompileUIScript(void* a0) {
return 0;
}
/* ... */
/* Compile Interface.xdat from UIEditor Interface *.xml */
uint8_t movb_1_ecx[] = {0xb1, 0x01};
patchText((void*)(0x103a0855 + nwindow_offs), movb_1_ecx, NULL, sizeof(movb_1_ecx));
/* Disable UIScript recompile.. */
replaceFuncAtAddr((void*)(0x103a09d0 + nwindow_offs), repl_CompileUIScript, NULL);
При загрузке nwindow рассчитывается nwindow_offs – смещение адреса загрузки nwindow.dll, и выполняется непосредственно патчинг.
Сообщений: 2
Тем: 0
Зарегистрирован: Oct 2017
Репутация:
0
Ребят, подкиньте добряка.
Хочу поменять положение систем чата и обычного. Скачал пару патчей, где это уже измненено, сравниваю с дефолтным interface.xdat через editor, но в упор не вижу, как называются окна чата и сис.чата. Упоролся уже перепроверять по координатам и выравниванию...
Сообщений: 1,610
Тем: 44
Зарегистрирован: Jan 2016
Репутация:
1,353
Bollo, SystemMsgWnd.
Если хочешь двинуть, придётся отвязывать его от парент окна - ChatWnd.
Сообщений: 2
Тем: 0
Зарегистрирован: Oct 2017
Репутация:
0
Emperor Написал:Bollo, SystemMsgWnd.
Если хочешь двинуть, придётся отвязывать его от парент окна - ChatWnd. Так он в interface.u... Вот я олух, что xdat чекал сначала. Спс за подсказку. Кинул бы спасибку, да че то прав нету.
Сообщений: 1,610
Тем: 44
Зарегистрирован: Jan 2016
Репутация:
1,353
Bollo, interface.u - логика окон, на основе API nwindow. interface.xdat - просто вывод элементов, на основе скриптов interface.u.
Есть в обоих местах.
Сообщений: 3
Тем: 1
Зарегистрирован: Jan 2018
Репутация:
0
Помогите плиз, в теме видел скрипт по вырезке камаэлей при создании персонажа, но у меня в клиенте Хелиоса нету CharacterCreateSetupWnd, и ни чего похожего на это. Может кто знает как вырезать камаэлей и артей из клиента ?
Сообщений: 162
Тем: 0
Зарегистрирован: May 2012
Репутация:
310
Rogzi Написал:Помогите плиз, в теме видел скрипт по вырезке камаэлей при создании персонажа, но у меня в клиенте Хелиоса нету CharacterCreateSetupWnd, и ни чего похожего на это. Может кто знает как вырезать камаэлей и артей из клиента ?
Это теперь в ui
Код: flash_begin window=[characterCreateMenuWnd] file=[ui4] flash_end
Проще сменить режим запуска клиента на Classic в Option.ini
[LobbyMap]
SavedLobbyMapType=1 = классик клиент
Сообщений: 3
Тем: 1
Зарегистрирован: Jan 2018
Репутация:
0
01-14-2018, 08:54 PM
(Сообщение последний раз редактировалось: 01-14-2018, 09:13 PM Rogzi.)
ChaosPaladin Написал:Это теперь в ui
Код: flash_begin window=[characterCreateMenuWnd] file=[ui4] flash_end
Проще сменить режим запуска клиента на Classic в Option.ini
[LobbyMap]
SavedLobbyMapType=1 = классик клиент
Поменял на классик, все равно можно создавать камаэлей и артей
Это теперь в ui... А можно поподробнее, если не сложно
Сообщений: 243
Тем: 15
Зарегистрирован: Oct 2011
Репутация:
887
включи в игре просмотр названия окон от имени админа прописав ///show windowname потом сделай рестарт, тебя выкинет до выбора персов и будет показывать название окон, войди в создание персонажей и посмотри названия окна. от него и пляши в том же xdat редакторе.
Сообщений: 5,863
Тем: 105
Зарегистрирован: Sep 2010
Репутация:
13,014
Phantom-Dev Написал:включи в игре просмотр названия окон от имени админа прописав ///show windowname потом сделай рестарт, тебя выкинет до выбора персов и будет показывать название окон, войди в создание персонажей и посмотри названия окна. от него и пляши в том же xdat редакторе. Ога, с окнами на флеше ;D
|