Перейти к контенту

X-Ray extensions


Malandrinus

Рекомендуемые сообщения

пытаюсь собрать xrGame.dll но ничего не выходит. 

при запуске make_src_dll.cmd вот такие вот ошибки. (masm32 ставил, его папка в корне диска C )

 

 

 

 

"..\tools\ml" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Microsoft ® Incremental Linker Version 5.12.8078
Copyright © Microsoft Corp 1992-1998. All rights reserved.

LINK : fatal error LNK1181: cannot open input file "mydll.obj"
Не удается найти D:\XRE\3312_shoc_10006\mydll.obj
Не удается найти D:\XRE\3312_shoc_10006\mydll.exp
Не удается найти D:\XRE\3312_shoc_10006\mydll.lib
Для продолжения нажмите любую клавишу . . .

 

 

 

сам лог наводит на мысль что в \tools чего то не хватает. Вопрос: чего имено не хватает, и где это достать ?

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

менял только make_3312.cmd в корневой папке с файлами

 

вот батник

 

 

 

@echo off
cd 3312_shoc_10006
if exist mydll.obj del mydll.obj
if exist mydll.dll del mydll.dll
if exist mydll.exp del mydll.exp
if exist mydll.lib del mydll.lib
if exist xrGame.dll del xrGame.dll

c:\masm32\bin\ml /c /coff /Fo mydll.obj mydll.asm
c:\masm32\bin\Link /SUBSYSTEM:WINDOWS /DLL /OUT:mydll.dll /DEF:mydll.def mydll.obj
..\tools\bspatch.exe xrGame_orig.dll xrGame.dll xrGame.diff
..\tools\patcher.exe xrGame.dll mydll.dll corrections_list.txt

del /Q mydll.obj
del /Q mydll.dll
del /Q mydll.exp
del /Q mydll.lib
pause

 

 

может у меня с masm32 что то не то.

@Struck, , Ай ладно, мне всего-то нужен xrGame.dll для 1.0006 последней версии. Раз у тебя всё компилится норм, можешь скинуть?

Изменено пользователем Max_Raf

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

@sto1en, Спасибо большое, помогло. Скомпилировалось вроде бы нормально.

 

Ловлю правда вылет, загружая поздние сохранки:

 

001B:03C9CECD xrGame.dll

 

или такой:

001B:03CFCECD xrGame.dll

 

Начал новую игру, вроде бы норм всё, уровень загрузился. Видимо конфликт какой старого с новым.

Изменено пользователем Max_Raf

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

Здрасте. Застрял. балуюсь с LWO, и мне приспичило обновить xrGame.dll . Использую SVN_portable_r232 (24_oct_2015) выложенный ранее. Вроде бы всё нормально компилится, менюшка загружается, но правки ну никак не нравятся игре.

первый вылет при начале новой игры:

stack trace:

001B:75A3D3CF KERNELBASE.dll
001B:6D988E89 MSVCR80.dll, EH_prolog()
001B:6D98937F MSVCR80.dll, _RTDynamicCast()
001B:03C399B8 xrGame.dll 

второй - при загрузке старого сейва:

stack trace:

001B:039DCECD xrGame.dll

corrections_list.txt:

 

 

0x10190492 5 ; jmp global_space_ext ; скриптовые методы в глобальное пространство имен (часть 1)
0x10149CA2 5 ; jmp global_space_ext2 ; скриптовые методы в глобальное пространство имен (часть 2)
0x10149D24 5 ; jmp global_space_ext2_additional ; скриптовые методы в глобальное пространство имен (часть 3)
0x10155D87 5 ; jmp game_object_fix ; новые скриптовые методы в CScriptGameObject
0x1014A7CA 5 ; jmp game_object_fix2 ; новые скриптовые свойства в CScriptGameObject

0x101A6E50 5 ; jmp call_key_press_callback
0x101A71F0 5 ; jmp call_key_release_callback
0x101A7330 5 ; jmp call_key_hold_callback
0x101A6CA5 5 ; jmp call_mouse_wheel_callback
0x101DE710 5 ; jmp call_mouse_move_callback
0x101C6DC0 5 ; jmp CActor_HitSignal_ext ; скриптовый колбек на хит актора
0x10204D75 5 ; jmp on_belt_callback
0x10204F13 5 ; jmp on_ruck_callback
0x10204BCF 5 ; jmp on_slot_callback
0x1004C9AD 5 ; jmp alife_simulator_fix ; скриптовые методы в класс CALifeSimulator
;0x1024C290 1 ; retn ; правка смены визуала актора (устарела, внизу есть альтернативный вариант - примечание by Macron)
0x1028E30E 5 ; jmp add_console_commands_fix ; новые консольные команды
0x102862E0 5 ; jmp inventory_box_fix ; скриптовый колбек на перемещение предмета в ящик
0x101AEF0F 5 ; level_ns_extension_1 ; скриптовые методы в пространство level (часть 1)
0x101AF1C1 8 ; level_ns_extension_2 ; скриптовые методы в пространство level (часть 2)

; отключение вывода в лог ненужной информации
0x103561C9 5 ; jmp     addr_103561DD ; skip annoying msg "sv ownership id_parent ..."
0x103561DD 8 ; part2: mov esi,10h; nop; nop; nop;
0x1035646D 5 ; jmp     addr_10356481 ; skip annoying msg "sv reject. id_parent ..."
0x10356481 8 ; part2: mov ebx,10h; nop; nop; nop;
0x10355D85 5 ; jmp addr_10355D9B ; skip annoying msg "sv destroy object ..."
0x103B8DEB 5 ; jmp addr_103B8DFF ; skip annoying msg "[16-9] get_xml_name for ..."

0x1004C3D2 5 ; jmp release_fix ; при попытке удалить объект два раза через alife():release() игра теперь вылетает
0x101477AF 6 ; отключение проверки при выкидывании из ящиков скриптовой функцией CScriptGameObject::DropItem
0x102042FD 6 ; активировать 8-й слот (детекторы)
0x1026C525 5 ; jmp car_fix ; скриптовый колбек на подрыв (смерть) машины
0x10269391 5 ; jmp car_panel_fix ; врезка для управления видимостью панели машины
0x103FB34F 5 ; jmp cuiwindow_fix ; скриптовые методы в класс CUIWindow
0x102C4632 5 ; jmp ctime_fix ; скриптовые методы в класс CTime
0x101398CD 5 ; jmp matrix_fix ; скриптовые методы в класс matrix
0x1045E73C 6 ; фикс имени скриптовой функции speed
;0x103C911D 5 ; тестовое слежение за закрытием диалога разговора
;0x10054AD7 7 ; фикс оффлайнового движения неписей
;0x1005568F 5 ; jmp mmm_fix
;0x1023CC8E 5 ;	jmp wpn_stat_mgun_fix ; попытка фикса станкового оружия
;0x1023CBDA 5 ; jmp wpn_stat_mgun__upatecl_fix0

;0x1023D870 5 ; 	jmp wpn_stat_mgun__cam_update_fix
0x10146D00 5 ; jmp disable_info_portion_fix ; убираем лишние действия при выключении уже выключенной инфопорции

;0x10221D75 12 ; блокирование кривого движкового переключения гранат (включаем только если имеем альтернативную скриптовую схему)

; =========================================================================================
; !!! кастомную заливку можно включать, когда имеем альтернативную скриптовую обвязку !!!
; А то в окне торговли станут невидимыми квестовые предметы раньше подсвечиваемые красным (примечание by Macron).
;0x103BF3C7 5 ; jmp CUITradeWnd__FillList_fix ; кастомная заливка предметов в окне торговли
;0x103CBF49 5 ; jmp CUICarBodyWnd__UpdateLists_fix ; кастомная заливка предметов в окне обыска ящиков
; !!! ручное управление можно включать, когда имеем альтернативную скриптовую обвязку !!!
;0x103BE8C0 5 ; jmp CUITradeWnd__CanMoveToOther_fix ; ручное управление торгуемостью предметов
;0x10416E89 5 ; jmp CUIInventoryCellItem__EqualTo_fix ; ручное управление группируемостью предметов
; =========================================================================================

; выводит в лог информацию типа "finished creating object" и т.п. (примечание by Macron)
;0x101AC832 5 ; jmp CLevel__g_sv_Spawn_fix ; отладочное сообщение о начале создания объекта
;0x101AC95A 5 ; jmp CLevel__g_sv_Spawn_fix2 ; отладочное сообщение о завершении создания объекта

;0x1020921F 5 ; jmp CInventoryItem_constructor_fix
;0x102094A8 5 ; jmp CInventoryItem_destructor_fix
0x104A067C 4 ; замена пустого виртуального метода Projector::Hit на наш

0x104760D4 4 ; CAI_Stalker__IsVisibleForZones
0x10118C50h 5 ; jmp CAI_Stalker__feel_touch_new_fix

;0x102196C7 5 ; jmp CWeapon__UpdateFireDependencies_internal_dbg_fix2 - отладка
;0x1021846B 5 ; 	jmp CShootingObject__RenderLight_dbg_fix2 - отладка
;0x10412EB0 5 ; jmp scroll_vew_fix

;0x101E2FC5 5 ; jmp CEntityCondition__UpdateConditionTime_dbg
;0x102A0848 5 ; jmp game_GameState__GetGameTime_dbg_fix
;0x102D5A00 5 ; jmp game_sv_Single__GetGameTime_dbg_fix
;0x102A0900 5 ; jmp game_GameState__SetGameTimeFactor_dbg_fix
;0x102A0940 5 ; jmp game_GameState__SetGameTimeFactor__INT64_float_dbg_fix

; восстанавливает солнечный диск, но могут заглючить скриптовые выбросы/погода (примечание by Macron)
;0x102AC460 5 ; jmp game_cl_GameState__net_import_GameTime_dbg_fix

;0x1020CFD1 5 ; jmp CInventoryOwner__OnEvent_dbg_fix
;0x1020D3F5 5 ; jmp near CInventoryOwner__TransferInfo_omit_event_send

;0x10253E2B 40 ; searchlight__turn_on

;0x10272746 8 ; попытка фикса вылезания из машины
;0x100681C6 5 ;	call    CALifeStoryRegistry__add - экспериментальные отладочные фиксы
;0x10068158 5 ; 	jmp CALifeSimulatorBase__register_object_debug_fix - аналогично
;0x1025828A 5 ; jmp CCustomZone__feel_touch_contact_dbg_fix
;0x10056370 5  ;	jmp CGameGraph__distance_fix

;0x102065B7 9 ; jmp loc_1020663C_return_true ; фикс инвентаря часть 1
;0x1020432D 5 ; jmp CInventory__CInventory_fix ; фикс инвентаря часть 2
;0x102046B1 5 ; jmp CInventory__Take_fix ; фикс инвентаря часть 3
;0x10204ED4 5 ; jmp CInventory__Ruck_fix ; фикс инвентаря часть 4
;0x10204A57 5 ; jmp CInventory__DropItem_fix ; фикс инвентаря часть 5

;0x102D5B17 5 ; jmp time_fix_jmp_label

;-------------- тест камеры машины
;0x1026F96E 5 ; 	jmp CCar__cam_Update_fix
;0x1026F820 5 ; jmp CCar__cam_Update_fix0 ; замена камеры машины
;-------------- end
;0x101DE76F 6 ; fdiv    ds:g_fov
;0x1023B20D 8 ; divss   xmm0, ds:g_fov
;0x1027401D 8 ; divss   xmm0, ds:g_fov
;0x10287828 8 ; divss   xmm0, ds:g_fov

0x1021CA2F 5 ; jmp UpdateAddonsVisibility_lab
0x1021CA37 5 ; jmp UpdateAddonsVisibility_fix
0x1021C632 5 ; jmp UpdateHUDAddonsVisibility_fix
;0x1021B80F 6

;0x100138F0 5 ;	jmp CHitMemoryManager__add3_fix
;0x101A6DC0 5 ; jmp call_mouse_move_callback

; восстановление работы параметр virtual_size для ламп
0x101F267F 5 ; 	jmp CHangingLamp__net_Spawn_fix

; добавляет новые флаги в объект лампы - flVolumetric, flUseFlare
; можно использовать, только когда оно действительно надо, иначе возможны вылеты
;0x101F269A 5 ; jmp CHangingLamp__net_Spawn_fix_2

0x101E1180 5 ; 	jmp CEntityAlive__Hit_fix
;0x101DFA30 5 ; 	jmp CEntity__Hit_fix
;0x10015B4E 5 ;  убираем фейковый хит из менеджера памяти
;0x101E1189 3 ; 	sub     esp, 50h ; 3 байта
0x101E35EC 4 ; убираем степень двойки иммунитета пси-хита

; скриптовый колбек на предиспользование предмета
0x1020616D 5 ; jmp CInventory__Eat_fix

0x1019FFA0 5 ; jmp [CEffectorZoomInertion__Process]

; rus_phantom aka _призрак_
0x103BFF64 5 ; скриптовый колбек на выделение контакта в ПДА во вкладке "Контакты"
0x103E5C6E 5 ; добавляет в xml параметры adjust_height_to_text и adjust_width_to_text

; использование патронов на поясе
0x10205D71 5
0x1021C266 5
; использование гранат на поясе
0x10221BFD 5
0x10221C2C 5
0x10205F1B 5
0x10222067 5
0x10221C58 2
0x10221B93 5

; новые слоты в инвентаре (нож, бинокль, фонарь)
;0x103BA6AD 5 ;CUIInventoryWnd__Init__
;0x103BBD8D 5 ;CUIInventoryWnd__InitInventory__
;0x103BC590 5 ;CUIInventoryWnd__GetSlotList
;0x103BC5E0 5 ;CUIInventoryWnd__ClearAllLists
;0x10204311 5 ;CInventory__Init__ отключение худа слотов
;0x1042AA44 5 ;память под объект CInventory
;0x1042B8A8 5 ;память под объект CInventory
;0x10206C02 3 ;количество слотов в xr_vector_CInventorySlot_xalloc_CInventorySlot____resize
;0x10206C1F 5 ;количество слотов в xr_vector_CInventorySlot_xalloc_CInventorySlot____resize
;0x10206C35 6 ;количество слотов в xr_vector_CInventorySlot_xalloc_CInventorySlot____resize
;0x10206951 6 ;количество слотов в CInventory__SetSlotsBlocked

; учет предмета в шлемовом слоте при расчете хита актору (включать, если есть слот шлема)
;0x101C9B80 5

; включение сетки под броней в инвентаре
;0x103BD9E0 5
;0x103BD592 5

; тень ГГ на R2 (требует также включения в рендере)
0x101C85CF 6 ; jmp CActor__Update_fix
0x101C8946 5

;kstn-------------->
;Перекл. на болт + откл/вкл колеса мышки для переключения м/у слотами
;0x101DEEA0 7 ; jmp CActor__OnNextWeaponSlot
;0x101DEF40 7 ; jmp CActor__OnPrevWeaponSlot

;Инверсия колеса мышки для смены оружия
;0x101DE3F2 6 ; CActor__IR_OnMouseWheel
;0x101DE400 6 ; CActor__IR_OnMouseWheel

;Коллбэк актора на выделение предмета в инвентаре
0x103E1B28 5 ; jmp CUIItemInfo__InitItem_EXT_CHUNK

;Исправление растянутых иконок подбираемых предметов на 16:9
;0x103D24BB 6 ; jmp CUIMainIngameWnd__UpdatePickUpItem_EXT_CHUNK

;Исправление растянутых иконок патронов в ui актора на 16:9
;0x103D0D70 6 ; jmp CUIMainIngameWnd__SetAmmoIcon_EXT_CHUNK

;Исправление статистики в КПК (Вариант 1: расчёт по очками)
;0x101AE902 3

;Исправление статистики в КПК (Вариант 2: расчёт по штукам)
;0x101AE8FD 8
;0x104C5118 4
;------------------<

; скриптовые методы в CUIListWnd
0x10420423 5 ; jmp CUIListWnd__script_register_fix

; поддержка русского языка в поле ввода (язык переключается функцией set_input_language(0/1))
0x103F5F3A 5 ; jmp CUICustomEdit_fix
0x103F4B21 5 ; jmp CUICustomEdit__KeyPressed_fix
0x103F4CCD 5 ; jmp CUICustomEdit__KeyPressed_fix_1
0x103F4CE6 5 ; jmp CUICustomEdit__KeyPressed_fix_2
0x103F4CFF 5 ; jmp CUICustomEdit__KeyPressed_fix_3
0x103F4D15 5 ; jmp CUICustomEdit__KeyPressed_fix_4
0x103F4D60 5 ; jmp CUICustomEdit__KeyPressed_fix_5
0x103F4D79 5 ; jmp CUICustomEdit__KeyPressed_fix_6
0x103F4D47 5 ; jmp CUICustomEdit__KeyPressed_fix_7

; скриптовые методы в CUITrackBar
0x1040B935 5 ; jmp CUITrackBar_fix

; ???
0x103D7BC4 5 ; jmp CUIOptionsItem__SaveOptFloatValue_fix
0x1040E540 5 ; jmp CUIComboBox__SaveValue_fix

; вырезаем кривой постэффект контролёра
;0x100E15A4 5 ; jmp CController__CController_fix
;0x100E21A6 5 ; jmp CController__Load_fix_lab1
;0x100E2BC4 5 ; вырезаем вызов CControllerAura__update_frame
;0x100E2C21 5 ; вырезаем вызов CControllerAura__update_schedule
;0x100E2C43 5 ; jmp loc_100E2C77
;0x100E2C99 5 ; jmp loc_100E2CCD
; вырезаем эффект приближения камеры
;0x1019C4C3 10 ; jmp loc_1019CCFD

; скриптовые методы в CUIComboBox
0x1040EF76 5 ; jmp CUIComboBox_fix

; исправляеем феерический баг движка в функции CUIComboBox::SetListLength
0x1040DF6A 5 ; jmp loc_1040DFA5

; добавляем свои опции, требующие рестарта видео (после нажатия кнопки "Применить" в окне опций или после ввода команды vid_restart)
0x103D7C60 5 ; jmp CUIOptionsItem__SaveValue_fix

; убираем столбец дополнительных назначений клавиш в окне опций управления
;0x103DF607 5 ; jmp no_alternative_keyboard_binding
;0x103DF1A6 5 ; jmp no_third_optins_row

; добавление скриптовых свойств в класс CSE_Abstract
0x102EA535 5 ; jmp CSE_Abstract__script_register_fix

; затычка на вылет "по xrServer::Process_event_reject ... e_parent && e_entity"
0x10356433 5 ; jmp xrServer__Process_event_reject_fix

; скриптовые методы в класс CSE_ALifeObject
0x102F3663 5 ; jmp CSE_ALifeObject__script_register_fix

; дебаговый фикс для трассировки скриптовых хитов
;0x10141C60 5 ; jmp CScriptGameObject__Hit_dbg_fix

; управление инерцией худа из скриптов
;0x1024DCDC 8
;0x1024DCFA 8

; =========================================================================================
; ========================= added by Ray Twitty (aka Shadows) =============================
; =========================================================================================
; ====================================== START ============================================
; =========================================================================================
0x103581CE 8 ; для работы консольной команды ph_gravity
0x103CC560 2 ; костыль от вылета при юзе предмета из трупа (часть 1) [Cut X-Ray]
0x103CC564 2 ; костыль от вылета при юзе предмета из трупа (часть 2) [Cut X-Ray]
0x103CC56A 5 ; костыль от вылета при юзе предмета из трупа (часть 3) [Cut X-Ray]
0x103F12C5 5 ; регистрация скрипт. методов в классе CUIStatic
0x103BB997 5 ; скрипт. коллбек на дроп предмета из интерфейса инвентаря
0x103E0123 5 ; фикс статика биографии в ПДА, в "Рангах"
0x103E0D97 5 ; убираем из описания ножей прогресс-бары оружия

; требует дополнительных секций в xml, иначе будут вылеты при обращении к PDA/карте (примечание by Macron)
;0x103C0D87 5 ; фикс выдачи инфо во вкладках ПДА (часть 1)
;0x103C0E05 5 ; фикс выдачи инфо во вкладках ПДА (часть 2)

;0x103DBC23 5 ; выдача инфо при переключ. между "описанием задания" и "картой" во вкладке "Задания" (часть 1)
;0x103DA737 5 ; выдача инфо при переключ. между "описанием задания" и "картой" во вкладке "Задания" (часть 2)
0x101C6D69 5 ; скрипт. коллбек на появление хитэффектора на экране (часть 1)
0x1007DC5B 5 ; скрипт. коллбек на появление хитэффектора на экране (часть 2)
0x104BD2DC 1 ; убираем из лога сообщения "!SV:ge_destroy: [%d] not found on server"
;0x1024DB00 10 ; инерция во время прицеливания из оружия
;0x1044D15E 6 ; круглый курсор, как в билдах [Cut X-Ray]
;0x101C43F8 2 ; исправление вида от 3-го лица (часть 1) [Cut X-Ray]
;0x101D20B0 2 ; исправление вида от 3-го лица (часть 2) [Cut X-Ray]
;0x10017E9B 6 ; шкала "освещения ГГ" вместо шкалы "заметности ГГ", как в билдах (часть 1) [Cut X-Ray]
;0x103D09CF 3 ; шкала "освещения ГГ" вместо шкалы "заметности ГГ", как в билдах (часть 2) [Cut X-Ray]
;0x10269AE2 4 ; руки на руле в машине (часть 1) [Cut X-Ray]
;0x1026F808 3 ; руки на руле в машине (часть 2) [Cut X-Ray]
;0x1026F9A7 2 ; руки на руле в машине (часть 3) [Cut X-Ray]
;0x1026F9B6 2 ; руки на руле в машине (часть 4) [Cut X-Ray]
;0x1044CC94 6 ; выключение распознавания неписей перекрестием прицела [Cut X-Ray]

;0x101407F3 2 ; возможность использовать скрипты в мультиплеере (включение биндеров) [Cut X-Ray]
; еще в config\mp\mp_actor.ltx в секцию [mp_actor] надо добавить строчку: script_binding = bind_stalker.actor_init (примечание by Macron)

;0x101D922B 5 ; измененная анимация безоружного ГГ "_torso_0_aim_0"->"_torso_5_aim_0" [Cut X-Ray]
;0x103CAD20 6 ; увеличение дистанции диалога до 150 метров [Cut X-Ray]
;0x10491C28 4 ; возможность поднимать болты как обычные инвентарные предметы [Cut X-Ray]
;0x1044CB92 3 ; замена стандартного шрифта под прицелом на билдовский "DI"
;0x10147737 2 ; фикс скриптового метода unload_magazine - теперь патроны разряжаются в инвентарь
;0x101DE150 6 ; отключение использования аптечек и бинтов быстрыми клавишами

; в сингле нормально, а в мультиплеере будут глюки при слезании с подствольником с лестниц (примечание by Macron)
;0x1022A155 2 ; включение миксовки анимаций у оружия с подствольником (часть 1)
;0x1022B4F9 2 ; включение миксовки анимаций у оружия с подствольником (часть 2)
;0x1022B66E 2 ; включение миксовки анимаций у оружия с подствольником (часть 3)
;0x1022B6A4 2 ; включение миксовки анимаций у оружия с подствольником (часть 4)
;0x1022B847 2 ; включение миксовки анимаций у оружия с подствольником (часть 5)

;0x101BB9B7 5 ; замена текстуры трассера "fx\fx_tracer"->"effects\bullet_tracer"

; =========================================================================================
; ======================================= END =============================================
; =========================================================================================

; ======================== Cut X-Ray start ============================
0x10443CED 8 ; предотвращение вылета при невключении ствола в mp_ranks
0x101C748C 10 ; смерть от первого лица
0x103917B5 5 ; коллизия трупов для ГГ

0x101CF1DF 5 ; запрет на использование любого оружия в машине и на лестнице (часть 1)
0x1053E810 4 ; запрет на использование любого оружия в машине и на лестнице (часть 2)

;0x102340FA 2 ; из оружия на классе бинокля можно стрелять (часть 1)
;0x10495448 4 ; из оружия на классе бинокля можно стрелять (часть 2)
; ========================= Cut X-Ray end =============================

; =========================================================================================
; by Real Wolf
0x10258840 5 ; Скриптовый коллбек (128 для CCustomZone) аномалии на хит живого объекта.
0x10258CD1 5 ; Скриптовый коллбек (128 для CCustomZone) аномалии на хит неживого объекта.
0x102485D4 6 ; Скриптовый коллбек (134 для CTorch) на переключение состояния фонарика.
0x1006CA0A 5 ; Исправление вылета при дублировании story id и вывод самого айди в лог.
0x103CADB8 5 ; Исправление невыдачи инфопоршня при закрытии окна разговора.
0x1014369F 5 ; Скриптовый коллбек (135 для CAI_Stalker), который вызывается после вызова функции set_dest_level_vertex_id.

0x1008F72D 2 ; Исправление вылета f73e xrGame, возникающем при разрушении в аномалии CPhysicDestroyableObject.
0x101DF1D5 5 ; Скриптовый коллбек (137 для CActor) на посадку в машину.
0x101DF2AA 5 ; Скриптовый коллбек (139 для CActor) на выход из машины.
0x101DF506 6 ; Скриптовый коллбек (138 для CActor) на использование (но не посадку\выход) машины. Проверку на дистанцию делать в скриптах.
;0x104A5B84 1 ; Отключение вывода в лог "* Log file has been saved successfully!".
;0x104A5BAC 1 ; Отключение вывода в лог "* Log file has been cleaned successfully!".
0x1048C3C4 1 ; Отключение вывода в лог "Destroying local grenade[%d][%d]".

0x10418330 5 ; Скриптовый коллбек (136 для CActor) на создание объекта CUICellItem. Передается игровой объект. Статик получать в коллбеке
0x103FAD40 5 ; через подмененную функцию CUIFramWindow():GetTitleStatic()
0x103F0D18 5 ; Скриптовый коллбек (141 для CActor) на получение фокуса объектом CUICellItem. Использование аналогично приведенному выше.
0x103F0D50 5 ; Скриптовый коллбек (142 для CActor) на потерю фокуса объектом CUICellItem. Использование аналогично приведенному выше.
0x1006A189 5 ; Скриптовый коллбек (140 для CActor), вызываемый сразу после сохранения игры.

; Артефакты работают из всего инвентаря (рюкзак, слоты, пояс).
0x101C9A71 6
0x101C9B6F 3
; Правку "0x101C9B80 5 ;учет предмета в шлемовом слоте при расчете хита актору" НЕ СТОИТ включать,
; поскольку движок при хите сам учтет предметы на классе артефакта, так как теперь он учитывает и слот, и сам рюкзак.
0x101C9B95 6
0x101C9C12 3

0x1044D5A3 6 ; Регулирование чувствительности мыши в UI через консольную команду mouse_ui_sens.
; =========================================================================================

; замена шейдера текстур прицелов на шейдер hud\scope
;0x10227C07 5 
;0x10227D2D 5 

; принудительная очистка пула моделей при завершении игры (полезно, чистит память)
0x101A8C9D 2

; фикс для исправления соотношения сторон CUIStatic
; для работы, необходимо вызвать в _g.script - set_static_rescale_factor(device().height / device().width / 0.75)
; иначе изменений не увидите
0x103EDEE6 5 ; jmp CUICustomItem__Render_fix

; хак для более корректного учета бронебойности патронов (требуется правка конфигов патронов)
;0x1024BEF7 5

; затычка от вылета в деструкторе CGameObject
0x101E6505 5

; исправление неотключения света при выключении аномалии
0x10257BA4 5

; экспорт состояния включенности для источника света фонаря актора
;0x101DE0A2 5

; фикс сброса положения скролла при перекладывании вещей в окне обыска (CUICarBodyWnd)
0x103CC100 5

; отладка анимок
;0x10076229 5
;0x100762BB 5
;0x100762CC 5
;0x100FA47B 5

; фикс вылета по отсутствию анимации критического хита
0x100FF264 5

; отключение периодических автосейвов (отключено, потому что игра не становилась на паузу, и после этого отваливалась логика у объектов)
;0x101BE8C0 3

; фикс вылета there is no proper graph point neighbour
0x100563A5 1
0x10056920 5

; отключение движкового удаления патронов из неписей после смерти
0x100FA371 6 

; флаг в объекте оружия для принудительного отключения текстуры прицела
0x1022B3C0 5 ; jmp CWeaponMagazinedWGrenade__UseScopeTexture_fix
; замена дефолтовых виртуальных методов CWeapon__UseScopeTexture для всех остальных классов
;0x1048ADD4 4
;0x1048B7E4 4
;0x1048BF0C 4
;0x1048D1E4 4
;0x1048F47C 4
;0x1048FA4C 4
;0x10490144 4
;0x1049118C 4
;0x1049175C 4
;0x104921AC 4
;0x1049278C 4
;0x1049325C 4
;0x10493E04 4
;0x104943D4 4
;0x10494994 4
;0x10494F6C 4
;0x10495554 4
;0x10495C14 4
;0x104961FC 4
;0x104967C4 4
;0x10496E0C 4

; фикс аттача двух вещей неписям
;0x10207DF1 1

; исправление формулы рассчёта статистики убийств в КПК
;0x10203430 4

; фикс сброса визуала актора (чтобы выбрасываемый костюм не оставался на игроке при виде с внешней камеры - примечание by Macron)
;0x1024C2D2 5
;0x102049E1 5

; отключение квиксейва (потому что игра не становилась на паузу, и после этого отваливалась логика у объектов)
;(Пока проблем с квиксейвами не замечал, может от конкретного мода зависит? - примечание by Macron)
;0x101A7081 1

; фикс очистки базы отношений (требуется скриптовая обвязка)
;0x1005C7F8 5
;0x10213AFD 5

; фикс вылета по анимке критхита для анимслотов > 3
;0x100FF284 5

; масштабирование scope_zoom_factor в зависимости от текущего fov
0x1021CA90 5
0x1022B3F0 5
0x10234380 5
0x102343F0 5

; фикс вылета при активации артефактов, не использующих lvid и gvid
0x102413C0 5 

 

 

 

я что то забыл врубить, или лучше что то отключить?

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

@RayTwitty, спасибо большое за ответ.

 

Задам такой вопросец для уточнения: можно ли закидывать старый (из мода) xrGame.dll и его патчить правками? Или же обязательно нужен исходный файл из оригинала перед пропатчиванием?

 

П.С. Еси чо уточню по тому что выше: corrections_list.txt выше я изменял сам, мб от того и белиберда. Но дефолт у меня не сработал. Пробовал патчить файл, который уже был в SVN_portable_r232, и тот что в моде. И так и так не вышло.

 

Щас попробую то, чем вы поделились.

 

 

АПД.

 

Нашёл ответ на глупый вопросец.

 

По вылету: не помогло. ИМХО какая то новая правка не дружит со старыми скриптами. Искать какая - это перебирать всё. И тем более ещё сложней потому, что я не знаю какие были правки включены изначально в мод и хз как узнать. Вероятно лучше автора мода спросить.

Был бы не против узнать, от чего данный вылет может быть, чтобы методом тыка вырубить то, что мешает.

Изменено пользователем Max_Raf

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

Такой вопрос: кто-нибудь знает, какая правка отвечает за подсветку предметов в инвентаре? Точнее ищу правку, отвечающую за метод: 

...
static:SetColorMask(GetARGB(255, 255, 255, 100) )
...

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

Здрасте. Столкнулся с проблемой, которую не знаю как решить. Балуясь с LWO, решил обновить xrGame.dll и вылез прикол со скриптовой обвязкой гранат этого мода (grenade_ctrl.script by Charsi). Суть в том, что с новым xrGame происхододит какой то прикол: при бросании настоящей гранаты с рук в этот момент удаляется фэйк_граната на основе класса артефакта с пояса, а после сейв-лоада ловлю стабильный вылет:

 

 

stack trace:

001B:039F5AF0 xrGame.dll

[error][      87]    : Параметр задан неверно. 

 

 

если попробовать загрузить ещё раз новый сейв:

 

 

Ошибка! Критический сбой! Игра останавливается. Далее стек вызовов и информация об ошибке.
stack traceback:
....e.r. - lost world origin\gamedata\scripts\_g.script:1207: in function 'abort'
...st world origin\gamedata\scripts\bind_stalker.script:736: in function <...st world origin\gamedata\scripts\bind_stalker.script:729>

FATAL ERROR

[error]Expression    : assertion failed
[error]Function      : 
[error]File          : 
[error]Line          : 0
[error]Description   : Испорчено сохранение игрока.


stack trace: 

 

 

Проблема возникает именно тогда, когда удаляется фэйк с пояса. Я без понятия где связь между двумя гранатами. Даже когда обвязку можно сказать удалил и делать всё тоже что и обвязка, а именно: спавнил настоящую и фэйк, взял, положил фэйк на пояс, настоящую бросал и затем удалял фэйк на поясе вручную - вылет происходил снова. Не улавливаю где связь, кроме как новый xrGame. Вроде бы всё должно работать правильно. Ревизия 232 

 

 

0x10190492 5 ; jmp global_space_ext ; скриптовые методы в глобальное пространство имен (часть 1)
0x10149CA2 5 ; jmp global_space_ext2 ; скриптовые методы в глобальное пространство имен (часть 2)
0x10149D24 5 ; jmp global_space_ext2_additional ; скриптовые методы в глобальное пространство имен (часть 3)
0x10155D87 5 ; jmp game_object_fix ; новые скриптовые методы в CScriptGameObject
0x1014A7CA 5 ; jmp game_object_fix2 ; новые скриптовые свойства в CScriptGameObject

0x101A6E50 5 ; jmp call_key_press_callback
0x101A71F0 5 ; jmp call_key_release_callback
0x101A7330 5 ; jmp call_key_hold_callback
0x101A6CA5 5 ; jmp call_mouse_wheel_callback
0x101DE710 5 ; jmp call_mouse_move_callback
0x101C6DC0 5 ; jmp CActor_HitSignal_ext ; скриптовый колбек на хит актора
0x10204D75 5 ; jmp on_belt_callback
0x10204F13 5 ; jmp on_ruck_callback
0x10204BCF 5 ; jmp on_slot_callback
0x1004C9AD 5 ; jmp alife_simulator_fix ; скриптовые методы в класс CALifeSimulator
;0x1024C290 1 ; retn ; правка смены визуала актора (устарела, внизу есть альтернативный вариант - примечание by Macron)
0x1028E30E 5 ; jmp add_console_commands_fix ; новые консольные команды
0x102862E0 5 ; jmp inventory_box_fix ; скриптовый колбек на перемещение предмета в ящик
0x101AEF0F 5 ; level_ns_extension_1 ; скриптовые методы в пространство level (часть 1)
0x101AF1C1 8 ; level_ns_extension_2 ; скриптовые методы в пространство level (часть 2)

; отключение вывода в лог ненужной информации
0x103561C9 5 ; jmp     addr_103561DD ; skip annoying msg "sv ownership id_parent ..."
0x103561DD 8 ; part2: mov esi,10h; nop; nop; nop;
0x1035646D 5 ; jmp     addr_10356481 ; skip annoying msg "sv reject. id_parent ..."
0x10356481 8 ; part2: mov ebx,10h; nop; nop; nop;
0x10355D85 5 ; jmp addr_10355D9B ; skip annoying msg "sv destroy object ..."
0x103B8DEB 5 ; jmp addr_103B8DFF ; skip annoying msg "[16-9] get_xml_name for ..."

0x1004C3D2 5 ; jmp release_fix ; при попытке удалить объект два раза через alife():release() игра теперь вылетает
0x101477AF 6 ; отключение проверки при выкидывании из ящиков скриптовой функцией CScriptGameObject::DropItem
0x102042FD 6 ; активировать 8-й слот (детекторы)
0x1026C525 5 ; jmp car_fix ; скриптовый колбек на подрыв (смерть) машины
0x10269391 5 ; jmp car_panel_fix ; врезка для управления видимостью панели машины
0x103FB34F 5 ; jmp cuiwindow_fix ; скриптовые методы в класс CUIWindow
0x102C4632 5 ; jmp ctime_fix ; скриптовые методы в класс CTime
0x101398CD 5 ; jmp matrix_fix ; скриптовые методы в класс matrix
0x1045E73C 6 ; фикс имени скриптовой функции speed
;0x103C911D 5 ; тестовое слежение за закрытием диалога разговора
;0x10054AD7 7 ; фикс оффлайнового движения неписей
;0x1005568F 5 ; jmp mmm_fix
;0x1023CC8E 5 ;	jmp wpn_stat_mgun_fix ; попытка фикса станкового оружия
;0x1023CBDA 5 ; jmp wpn_stat_mgun__upatecl_fix0

;0x1023D870 5 ; 	jmp wpn_stat_mgun__cam_update_fix
0x10146D00 5 ; jmp disable_info_portion_fix ; убираем лишние действия при выключении уже выключенной инфопорции

0x10221D75 12 ; блокирование кривого движкового переключения гранат (включаем только если имеем альтернативную скриптовую схему)

; =========================================================================================
; !!! кастомную заливку можно включать, когда имеем альтернативную скриптовую обвязку !!!
; А то в окне торговли станут невидимыми квестовые предметы раньше подсвечиваемые красным (примечание by Macron).
;0x103BF3C7 5 ; jmp CUITradeWnd__FillList_fix ; кастомная заливка предметов в окне торговли
;0x103CBF49 5 ; jmp CUICarBodyWnd__UpdateLists_fix ; кастомная заливка предметов в окне обыска ящиков
; !!! ручное управление можно включать, когда имеем альтернативную скриптовую обвязку !!!
;0x103BE8C0 5 ; jmp CUITradeWnd__CanMoveToOther_fix ; ручное управление торгуемостью предметов
;0x10416E89 5 ; jmp CUIInventoryCellItem__EqualTo_fix ; ручное управление группируемостью предметов
; =========================================================================================

; выводит в лог информацию типа "finished creating object" и т.п. (примечание by Macron)
;0x101AC832 5 ; jmp CLevel__g_sv_Spawn_fix ; отладочное сообщение о начале создания объекта
;0x101AC95A 5 ; jmp CLevel__g_sv_Spawn_fix2 ; отладочное сообщение о завершении создания объекта

;0x1020921F 5 ; jmp CInventoryItem_constructor_fix
;0x102094A8 5 ; jmp CInventoryItem_destructor_fix
0x104A067C 4 ; замена пустого виртуального метода Projector::Hit на наш

0x104760D4 4 ; CAI_Stalker__IsVisibleForZones
0x10118C50h 5 ; jmp CAI_Stalker__feel_touch_new_fix

;0x102196C7 5 ; jmp CWeapon__UpdateFireDependencies_internal_dbg_fix2 - отладка
;0x1021846B 5 ; 	jmp CShootingObject__RenderLight_dbg_fix2 - отладка
;0x10412EB0 5 ; jmp scroll_vew_fix

;0x101E2FC5 5 ; jmp CEntityCondition__UpdateConditionTime_dbg
;0x102A0848 5 ; jmp game_GameState__GetGameTime_dbg_fix
;0x102D5A00 5 ; jmp game_sv_Single__GetGameTime_dbg_fix
;0x102A0900 5 ; jmp game_GameState__SetGameTimeFactor_dbg_fix
;0x102A0940 5 ; jmp game_GameState__SetGameTimeFactor__INT64_float_dbg_fix

; восстанавливает солнечный диск, но могут заглючить скриптовые выбросы/погода (примечание by Macron)
0x102AC460 5 ; jmp game_cl_GameState__net_import_GameTime_dbg_fix

;0x1020CFD1 5 ; jmp CInventoryOwner__OnEvent_dbg_fix
0x1020D3F5 5 ; jmp near CInventoryOwner__TransferInfo_omit_event_send

;0x10253E2B 40 ; searchlight__turn_on

;0x10272746 8 ; попытка фикса вылезания из машины
;0x100681C6 5 ;	call    CALifeStoryRegistry__add - экспериментальные отладочные фиксы
;0x10068158 5 ; 	jmp CALifeSimulatorBase__register_object_debug_fix - аналогично
;0x1025828A 5 ; jmp CCustomZone__feel_touch_contact_dbg_fix
;0x10056370 5  ;	jmp CGameGraph__distance_fix

;0x102065B7 9 ; jmp loc_1020663C_return_true ; фикс инвентаря часть 1
;0x1020432D 5 ; jmp CInventory__CInventory_fix ; фикс инвентаря часть 2
;0x102046B1 5 ; jmp CInventory__Take_fix ; фикс инвентаря часть 3
;0x10204ED4 5 ; jmp CInventory__Ruck_fix ; фикс инвентаря часть 4
;0x10204A57 5 ; jmp CInventory__DropItem_fix ; фикс инвентаря часть 5

;0x102D5B17 5 ; jmp time_fix_jmp_label

;-------------- тест камеры машины
;0x1026F96E 5 ; 	jmp CCar__cam_Update_fix
;0x1026F820 5 ; jmp CCar__cam_Update_fix0 ; замена камеры машины
;-------------- end
;0x101DE76F 6 ; fdiv    ds:g_fov
;0x1023B20D 8 ; divss   xmm0, ds:g_fov
;0x1027401D 8 ; divss   xmm0, ds:g_fov
;0x10287828 8 ; divss   xmm0, ds:g_fov

0x1021CA2F 5 ; jmp UpdateAddonsVisibility_lab
0x1021CA37 5 ; jmp UpdateAddonsVisibility_fix
0x1021C632 5 ; jmp UpdateHUDAddonsVisibility_fix
;0x1021B80F 6

;0x100138F0 5 ;	jmp CHitMemoryManager__add3_fix
;0x101A6DC0 5 ; jmp call_mouse_move_callback

; восстановление работы параметр virtual_size для ламп
0x101F267F 5 ; 	jmp CHangingLamp__net_Spawn_fix

; добавляет новые флаги в объект лампы - flVolumetric, flUseFlare
; можно использовать, только когда оно действительно надо, иначе возможны вылеты
;0x101F269A 5 ; jmp CHangingLamp__net_Spawn_fix_2

0x101E1180 5 ; 	jmp CEntityAlive__Hit_fix
;0x101DFA30 5 ; 	jmp CEntity__Hit_fix
;0x10015B4E 5 ;  убираем фейковый хит из менеджера памяти
;0x101E1189 3 ; 	sub     esp, 50h ; 3 байта
0x101E35EC 4 ; убираем степень двойки иммунитета пси-хита

; скриптовый колбек на предиспользование предмета
0x1020616D 5 ; jmp CInventory__Eat_fix

0x1019FFA0 5 ; jmp [CEffectorZoomInertion__Process]

; rus_phantom aka _призрак_
0x103BFF64 5 ; скриптовый колбек на выделение контакта в ПДА во вкладке "Контакты"
0x103E5C6E 5 ; добавляет в xml параметры adjust_height_to_text и adjust_width_to_text

; использование патронов на поясе
0x10205D71 5
0x1021C266 5
; использование гранат на поясе
;0x10221BFD 5
;0x10221C2C 5
;0x10205F1B 5
;0x10222067 5
;0x10221C58 2
;0x10221B93 5

; новые слоты в инвентаре (нож, бинокль, фонарь)
0x103BA6AD 5 ;CUIInventoryWnd__Init__
0x103BBD8D 5 ;CUIInventoryWnd__InitInventory__
0x103BC590 5 ;CUIInventoryWnd__GetSlotList
0x103BC5E0 5 ;CUIInventoryWnd__ClearAllLists
0x10204311 5 ;CInventory__Init__ отключение худа слотов
0x1042AA44 5 ;память под объект CInventory
0x1042B8A8 5 ;память под объект CInventory
0x10206C02 3 ;количество слотов в xr_vector_CInventorySlot_xalloc_CInventorySlot____resize
0x10206C1F 5 ;количество слотов в xr_vector_CInventorySlot_xalloc_CInventorySlot____resize
0x10206C35 6 ;количество слотов в xr_vector_CInventorySlot_xalloc_CInventorySlot____resize
0x10206951 6 ;количество слотов в CInventory__SetSlotsBlocked

; учет предмета в шлемовом слоте при расчете хита актору (включать, если есть слот шлема)
;0x101C9B80 5

; включение сетки под броней в инвентаре
0x103BD9E0 5
0x103BD592 5

; тень ГГ на R2 (требует также включения в рендере)
0x101C85CF 6 ; jmp CActor__Update_fix
0x101C8946 5

;kstn-------------->
;Перекл. на болт + откл/вкл колеса мышки для переключения м/у слотами
0x101DEEA0 7 ; jmp CActor__OnNextWeaponSlot
0x101DEF40 7 ; jmp CActor__OnPrevWeaponSlot

;Инверсия колеса мышки для смены оружия
;0x101DE3F2 6 ; CActor__IR_OnMouseWheel
;0x101DE400 6 ; CActor__IR_OnMouseWheel

;Коллбэк актора на выделение предмета в инвентаре
0x103E1B28 5 ; jmp CUIItemInfo__InitItem_EXT_CHUNK

;Исправление растянутых иконок подбираемых предметов на 16:9
0x103D24BB 6 ; jmp CUIMainIngameWnd__UpdatePickUpItem_EXT_CHUNK

;Исправление растянутых иконок патронов в ui актора на 16:9
0x103D0D70 6 ; jmp CUIMainIngameWnd__SetAmmoIcon_EXT_CHUNK

;Исправление статистики в КПК (Вариант 1: расчёт по очками)
0x101AE902 3

;Исправление статистики в КПК (Вариант 2: расчёт по штукам)
;0x101AE8FD 8
;0x104C5118 4
;------------------<

; скриптовые методы в CUIListWnd
0x10420423 5 ; jmp CUIListWnd__script_register_fix

; поддержка русского языка в поле ввода (язык переключается функцией set_input_language(0/1))
0x103F5F3A 5 ; jmp CUICustomEdit_fix
0x103F4B21 5 ; jmp CUICustomEdit__KeyPressed_fix
0x103F4CCD 5 ; jmp CUICustomEdit__KeyPressed_fix_1
0x103F4CE6 5 ; jmp CUICustomEdit__KeyPressed_fix_2
0x103F4CFF 5 ; jmp CUICustomEdit__KeyPressed_fix_3
0x103F4D15 5 ; jmp CUICustomEdit__KeyPressed_fix_4
0x103F4D60 5 ; jmp CUICustomEdit__KeyPressed_fix_5
0x103F4D79 5 ; jmp CUICustomEdit__KeyPressed_fix_6
0x103F4D47 5 ; jmp CUICustomEdit__KeyPressed_fix_7

; скриптовые методы в CUITrackBar
0x1040B935 5 ; jmp CUITrackBar_fix

; ???
0x103D7BC4 5 ; jmp CUIOptionsItem__SaveOptFloatValue_fix
0x1040E540 5 ; jmp CUIComboBox__SaveValue_fix

; вырезаем кривой постэффект контролёра
;0x100E15A4 5 ; jmp CController__CController_fix
;0x100E21A6 5 ; jmp CController__Load_fix_lab1
;0x100E2BC4 5 ; вырезаем вызов CControllerAura__update_frame
;0x100E2C21 5 ; вырезаем вызов CControllerAura__update_schedule
;0x100E2C43 5 ; jmp loc_100E2C77
;0x100E2C99 5 ; jmp loc_100E2CCD
; вырезаем эффект приближения камеры
;0x1019C4C3 10 ; jmp loc_1019CCFD

; скриптовые методы в CUIComboBox
0x1040EF76 5 ; jmp CUIComboBox_fix

; исправляеем феерический баг движка в функции CUIComboBox::SetListLength
0x1040DF6A 5 ; jmp loc_1040DFA5

; добавляем свои опции, требующие рестарта видео (после нажатия кнопки "Применить" в окне опций или после ввода команды vid_restart)
0x103D7C60 5 ; jmp CUIOptionsItem__SaveValue_fix

; убираем столбец дополнительных назначений клавиш в окне опций управления
;0x103DF607 5 ; jmp no_alternative_keyboard_binding
;0x103DF1A6 5 ; jmp no_third_optins_row

; добавление скриптовых свойств в класс CSE_Abstract
0x102EA535 5 ; jmp CSE_Abstract__script_register_fix

; затычка на вылет "по xrServer::Process_event_reject ... e_parent && e_entity"
0x10356433 5 ; jmp xrServer__Process_event_reject_fix

; скриптовые методы в класс CSE_ALifeObject
0x102F3663 5 ; jmp CSE_ALifeObject__script_register_fix

; дебаговый фикс для трассировки скриптовых хитов
;0x10141C60 5 ; jmp CScriptGameObject__Hit_dbg_fix

; управление инерцией худа из скриптов
;0x1024DCDC 8
;0x1024DCFA 8

; =========================================================================================
; ========================= added by Ray Twitty (aka Shadows) =============================
; =========================================================================================
; ====================================== START ============================================
; =========================================================================================
0x103581CE 8 ; для работы консольной команды ph_gravity
0x103CC560 2 ; костыль от вылета при юзе предмета из трупа (часть 1) [Cut X-Ray]
0x103CC564 2 ; костыль от вылета при юзе предмета из трупа (часть 2) [Cut X-Ray]
0x103CC56A 5 ; костыль от вылета при юзе предмета из трупа (часть 3) [Cut X-Ray]
0x103F12C5 5 ; регистрация скрипт. методов в классе CUIStatic
0x103BB997 5 ; скрипт. коллбек на дроп предмета из интерфейса инвентаря
0x103E0123 5 ; фикс статика биографии в ПДА, в "Рангах"
0x103E0D97 5 ; убираем из описания ножей прогресс-бары оружия

; требует дополнительных секций в xml, иначе будут вылеты при обращении к PDA/карте (примечание by Macron)
;0x103C0D87 5 ; фикс выдачи инфо во вкладках ПДА (часть 1)
;0x103C0E05 5 ; фикс выдачи инфо во вкладках ПДА (часть 2)

;0x103DBC23 5 ; выдача инфо при переключ. между "описанием задания" и "картой" во вкладке "Задания" (часть 1)
;0x103DA737 5 ; выдача инфо при переключ. между "описанием задания" и "картой" во вкладке "Задания" (часть 2)
0x101C6D69 5 ; скрипт. коллбек на появление хитэффектора на экране (часть 1)
0x1007DC5B 5 ; скрипт. коллбек на появление хитэффектора на экране (часть 2)
0x104BD2DC 1 ; убираем из лога сообщения "!SV:ge_destroy: [%d] not found on server"
;0x1024DB00 10 ; инерция во время прицеливания из оружия
;0x1044D15E 6 ; круглый курсор, как в билдах [Cut X-Ray]
0x101C43F8 2 ; исправление вида от 3-го лица (часть 1) [Cut X-Ray]
0x101D20B0 2 ; исправление вида от 3-го лица (часть 2) [Cut X-Ray]
;0x10017E9B 6 ; шкала "освещения ГГ" вместо шкалы "заметности ГГ", как в билдах (часть 1) [Cut X-Ray]
;0x103D09CF 3 ; шкала "освещения ГГ" вместо шкалы "заметности ГГ", как в билдах (часть 2) [Cut X-Ray]
;0x10269AE2 4 ; руки на руле в машине (часть 1) [Cut X-Ray]
;0x1026F808 3 ; руки на руле в машине (часть 2) [Cut X-Ray]
;0x1026F9A7 2 ; руки на руле в машине (часть 3) [Cut X-Ray]
;0x1026F9B6 2 ; руки на руле в машине (часть 4) [Cut X-Ray]
;0x1044CC94 6 ; выключение распознавания неписей перекрестием прицела [Cut X-Ray]

;0x101407F3 2 ; возможность использовать скрипты в мультиплеере (включение биндеров) [Cut X-Ray]
; еще в config\mp\mp_actor.ltx в секцию [mp_actor] надо добавить строчку: script_binding = bind_stalker.actor_init (примечание by Macron)

0x101D922B 5 ; измененная анимация безоружного ГГ "_torso_0_aim_0"->"_torso_5_aim_0" [Cut X-Ray]
0x103CAD20 6 ; увеличение дистанции диалога до 150 метров [Cut X-Ray]
;0x10491C28 4 ; возможность поднимать болты как обычные инвентарные предметы [Cut X-Ray]
;0x1044CB92 3 ; замена стандартного шрифта под прицелом на билдовский "DI"
;0x10147737 2 ; фикс скриптового метода unload_magazine - теперь патроны разряжаются в инвентарь
;0x101DE150 6 ; отключение использования аптечек и бинтов быстрыми клавишами

; в сингле нормально, а в мультиплеере будут глюки при слезании с подствольником с лестниц (примечание by Macron)
0x1022A155 2 ; включение миксовки анимаций у оружия с подствольником (часть 1)
0x1022B4F9 2 ; включение миксовки анимаций у оружия с подствольником (часть 2)
0x1022B66E 2 ; включение миксовки анимаций у оружия с подствольником (часть 3)
0x1022B6A4 2 ; включение миксовки анимаций у оружия с подствольником (часть 4)
0x1022B847 2 ; включение миксовки анимаций у оружия с подствольником (часть 5)

;0x101BB9B7 5 ; замена текстуры трассера "fx\fx_tracer"->"effects\bullet_tracer"

; =========================================================================================
; ======================================= END =============================================
; =========================================================================================

; ======================== Cut X-Ray start ============================
0x10443CED 8 ; предотвращение вылета при невключении ствола в mp_ranks
0x101C748C 10 ; смерть от первого лица
0x103917B5 5 ; коллизия трупов для ГГ

0x101CF1DF 5 ; запрет на использование любого оружия в машине и на лестнице (часть 1)
0x1053E810 4 ; запрет на использование любого оружия в машине и на лестнице (часть 2)

;0x102340FA 2 ; из оружия на классе бинокля можно стрелять (часть 1)
;0x10495448 4 ; из оружия на классе бинокля можно стрелять (часть 2)
; ========================= Cut X-Ray end =============================

; =========================================================================================
; by Real Wolf
0x10258840 5 ; Скриптовый коллбек (128 для CCustomZone) аномалии на хит живого объекта.
0x10258CD1 5 ; Скриптовый коллбек (128 для CCustomZone) аномалии на хит неживого объекта.
0x102485D4 6 ; Скриптовый коллбек (134 для CTorch) на переключение состояния фонарика.
0x1006CA0A 5 ; Исправление вылета при дублировании story id и вывод самого айди в лог.
0x103CADB8 5 ; Исправление невыдачи инфопоршня при закрытии окна разговора.
0x1014369F 5 ; Скриптовый коллбек (135 для CAI_Stalker), который вызывается после вызова функции set_dest_level_vertex_id.

0x1008F72D 2 ; Исправление вылета f73e xrGame, возникающем при разрушении в аномалии CPhysicDestroyableObject.
0x101DF1D5 5 ; Скриптовый коллбек (137 для CActor) на посадку в машину.
0x101DF2AA 5 ; Скриптовый коллбек (139 для CActor) на выход из машины.
0x101DF506 6 ; Скриптовый коллбек (138 для CActor) на использование (но не посадку\выход) машины. Проверку на дистанцию делать в скриптах.
;0x104A5B84 1 ; Отключение вывода в лог "* Log file has been saved successfully!".
;0x104A5BAC 1 ; Отключение вывода в лог "* Log file has been cleaned successfully!".
0x1048C3C4 1 ; Отключение вывода в лог "Destroying local grenade[%d][%d]".

0x10418330 5 ; Скриптовый коллбек (136 для CActor) на создание объекта CUICellItem. Передается игровой объект. Статик получать в коллбеке
0x103FAD40 5 ; через подмененную функцию CUIFramWindow():GetTitleStatic()
0x103F0D18 5 ; Скриптовый коллбек (141 для CActor) на получение фокуса объектом CUICellItem. Использование аналогично приведенному выше.
0x103F0D50 5 ; Скриптовый коллбек (142 для CActor) на потерю фокуса объектом CUICellItem. Использование аналогично приведенному выше.
0x1006A189 5 ; Скриптовый коллбек (140 для CActor), вызываемый сразу после сохранения игры.

; Артефакты работают из всего инвентаря (рюкзак, слоты, пояс).
0x101C9A71 6
0x101C9B6F 3
; Правку "0x101C9B80 5 ;учет предмета в шлемовом слоте при расчете хита актору" НЕ СТОИТ включать,
; поскольку движок при хите сам учтет предметы на классе артефакта, так как теперь он учитывает и слот, и сам рюкзак.
0x101C9B95 6
0x101C9C12 3

0x1044D5A3 6 ; Регулирование чувствительности мыши в UI через консольную команду mouse_ui_sens.
; =========================================================================================

; замена шейдера текстур прицелов на шейдер hud\scope
;0x10227C07 5 
;0x10227D2D 5 

; принудительная очистка пула моделей при завершении игры (полезно, чистит память)
0x101A8C9D 2

; фикс для исправления соотношения сторон CUIStatic
; для работы, необходимо вызвать в _g.script - set_static_rescale_factor(device().height / device().width / 0.75)
; иначе изменений не увидите
0x103EDEE6 5 ; jmp CUICustomItem__Render_fix

; хак для более корректного учета бронебойности патронов (требуется правка конфигов патронов)
;0x1024BEF7 5

; затычка от вылета в деструкторе CGameObject
0x101E6505 5

; исправление неотключения света при выключении аномалии
0x10257BA4 5

; экспорт состояния включенности для источника света фонаря актора
;0x101DE0A2 5

; фикс сброса положения скролла при перекладывании вещей в окне обыска (CUICarBodyWnd)
0x103CC100 5

; отладка анимок
;0x10076229 5
;0x100762BB 5
;0x100762CC 5
;0x100FA47B 5

; фикс вылета по отсутствию анимации критического хита
0x100FF264 5

; отключение периодических автосейвов (отключено, потому что игра не становилась на паузу, и после этого отваливалась логика у объектов)
;0x101BE8C0 3

; фикс вылета there is no proper graph point neighbour
0x100563A5 1
0x10056920 5

; отключение движкового удаления патронов из неписей после смерти
;0x100FA371 6 

; флаг в объекте оружия для принудительного отключения текстуры прицела
0x1022B3C0 5 ; jmp CWeaponMagazinedWGrenade__UseScopeTexture_fix
; замена дефолтовых виртуальных методов CWeapon__UseScopeTexture для всех остальных классов
0x1048ADD4 4
0x1048B7E4 4
0x1048BF0C 4
0x1048D1E4 4
0x1048F47C 4
0x1048FA4C 4
0x10490144 4
0x1049118C 4
0x1049175C 4
0x104921AC 4
0x1049278C 4
0x1049325C 4
0x10493E04 4
0x104943D4 4
0x10494994 4
0x10494F6C 4
0x10495554 4
0x10495C14 4
0x104961FC 4
0x104967C4 4
0x10496E0C 4

; фикс аттача двух вещей неписям
0x10207DF1 1

; исправление формулы рассчёта статистики убийств в КПК
0x10203430 4

; фикс сброса визуала актора (чтобы выбрасываемый костюм не оставался на игроке при виде с внешней камеры - примечание by Macron)
0x1024C2D2 5
0x102049E1 5

; отключение квиксейва (потому что игра не становилась на паузу, и после этого отваливалась логика у объектов)
;(Пока проблем с квиксейвами не замечал, может от конкретного мода зависит? - примечание by Macron)
;0x101A7081 1

; фикс очистки базы отношений (требуется скриптовая обвязка)
;0x1005C7F8 5
;0x10213AFD 5

; фикс вылета по анимке критхита для анимслотов > 3
0x100FF284 5

; масштабирование scope_zoom_factor в зависимости от текущего fov
0x1021CA90 5
0x1022B3F0 5
0x10234380 5
0x102343F0 5

; фикс вылета при активации артефактов, не использующих lvid и gvid
0x102413C0 5 

 

 

 

подскажите хотяб в каком направлении копать о_о

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

Столкнулся с проблемой. А именно отсутствием метода get_wpn_int8  в ревизии 232. Она была заменена на другой метод? На какой именно?

 

сам метод подглядел в каком то скрипте огсе:

 

 

function add_addon_flags(wpn, flags)
ASSERT(wpn:is_weapon(), "[add_addon_flags] not weapon object!")
local old_flags = wpn:get_wpn_int8(nil, 936)
local new_flags = bit_or(old_flags, flags)
wpn:set_wpn_int8(936, new_flags)
end

 

 

Изменено пользователем Max_Raf

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

@phorumer, пробни вот это:

 

 

function get_hud_offset(item)
	local v1 = item:get_hud_float(104)
	local v2 = item:get_hud_float(108)
	local v3 = item:get_hud_float(112)
	return {v1,v2,v3}
end
function get_hud_rotate(item)
	local v4 = item:get_hud_float(96)
	local v5 = item:get_hud_float(100)
	return {v4,v5}
end
function set_hud_offset(item, offset)
	item:set_hud_float(nil, offset[1], 104)
	item:set_hud_float(nil, offset[2], 108)
	item:set_hud_float(nil, offset[3], 112)
end
function set_hud_rotate(item, rot)
	item:set_hud_float(nil, rot[1], 96)
	item:set_hud_float(nil, rot[2], 100)
end
 

 

 

 

Откопал из какого-то файлика огсе.

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

@phorumer, как я понял, ты имеешь ввиду, как получить позицию худ модели в пространстве, а именно - на локации. Тоже хочу узнать. Вот, скажем, применять метод object:get_hud_bone_pos("bone") к какой то кости, то он выводит координату относительно какой то нулевой позиции 0,0,0 . А вот где эта нулевая координата на локации - без понятия как определить.

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение

@TIGER_VLAD, если я не забыл и не путаю, он привязывается в биндере самой аномалии. Прописывать на примере других коллбеков, ну скажем, как коллбеки актора. Срабатывает, когда аномалия наносит хит (относительно настроек конфигов). Внутри функции получаем онлайновый объект, по которому прошёл удар. К примеру:

function CAnomalyBinder:hit_gameobj(gameobj)
	if gameobj:is_inventory_item() and not gameobj:is_artefact() then
             -- шо то делаем
	end
end
  • Спасибо 1

... А наше дело маленькое - с ружьём да по болотам. (с)

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...