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

Редактирование движка X-Ray


Rolan

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

[ТЧ 1.0007rc1]

Приветствую.

Думал в теме про C++ задать этот вопрос, но он (имхо) ближе к движку и поэтому здесь. Итак...

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

Скрытый текст

    Flags8, Flags16, Flags32      <--- Что это за флаги? Для чего используются?
    u8, u16, u32                          <--- Это 'unsigned _int8', 'unsigned _int16', 'unsigned _int32' или что то другое?
    s16, s32                                <--- Это тип 'string' 16ти и 32х битные или нет?
    f32,                                        <--- Это тип 'float' 32х-битный? Если да, то чем отличается от стандартного 'float' ?
    BOOL, TRUE / FALSE           <--- Почему типы 'boolean' в верхнем регистре? Есть ли отличие от просто 'bool', 'true', 'false' ?
    LPSTR                                   <--- Что это за строка, чем отличается, например, от 's16', 'string16', 'char' ?
    IC, ICF                                   <--- Что это за тип / класс / структура / шаблон...?
    string16, string32, string64, string128, string256, string1024       <--- Чем эти строки отличаются от других?

                                                                                                                Цифры означают битность или размер чего-либо?
    
    (CParticlesObject*&   pParticles)        <--- Это ссылка и указатель одновременно? До сих пор, путаю указатели и ссылки, а тут всё в одном флаконе =)

 

Что это за типы? Чем отличаются от стандарта C++?

 

Скрытый текст

Так же, буду благодарен за объяснения "авторских" типов из движка, которые здесь не указаны.

Кроме стандартных, разумеется. А может и стандартные у GSC перегружены / переписаны.

Если это, уже где-то "разжёвано", то, пожалуйста, покажите направление куда смотреть.

 

Заранее, признателен за ответы.

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


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

Приветствую.

Собираю исходники ТЧ 1.0007rc1 от xp-dev (ревизии 188 и 201). Всё собирается и запускается.

Но, есть небольшая проблема: в игре при окончании разговора с НПС (кликаю в диалоге "До свидания.") - вылет.

Вылетает только(!) с тем НПС, которые в конце диалога что-нибудь выдают актору. С другими всё в порядке.

Например, в начале игры: Сидор - выдает нож в начале игры; Волк - выдает пистолет, патроны, аптечку; Шустрый - выдает флэшку для Сидора.

Каждый диалог заканчивается таким вылетом:(лог разбил на две части, для удобства восприятия текста)

Скрытый текст

[10/03/17 21:09:05]    * Detected CPU: GenuineIntel Intel(R) Celeron(R) CPU          925  @ 2.30GHz, F6/M23/S10
[10/03/17 21:09:05]    * CPU Features: RDTSC, MMX, SSE, SSE2, SSE3
[10/03/17 21:09:05]    
[10/03/17 21:09:05]    Initializing File System...
[10/03/17 21:09:05]    !WARNING: CLocatorAPI::check_for_file not found file fsgame.ltx in files list (size = 26)
[10/03/17 21:09:05]    !WARNING: CLocatorAPI::check_for_file not found file d:\games\s.t.a.l.k.e.r\bin\fsgame.ltx in files list (size = 26)
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db0
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db1
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db2
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db3
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db4
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db5
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db6
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db7
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db8
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.db9
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.dba
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.dbb
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.dbc
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\gamedata.dbd
[10/03/17 21:09:05]    using fs-ltx fsgame.ltx
[10/03/17 21:09:05]    --found external arch mp_military_2.xdb0
[10/03/17 21:09:05]    CLocatorAPI::ProcessArchive, path = d:\games\s.t.a.l.k.e.r\mods\mp_military_2.xdb0
[10/03/17 21:09:05]    FS: 28833 files cached, 4271Kb memory used.
[10/03/17 21:09:05]    Init FileSystem 2.171648 sec
[03.10.17 21:09:05.223] 'xrCore' build 6815, Oct  3 2017
[03.10.17 21:09:05.223]
[03.10.17 21:09:05.738] Initializing Engine...
[03.10.17 21:09:05.738] Loading  config for renderer
[03.10.17 21:09:05.738] Executing config-script "user.ltx"...
[03.10.17 21:09:05.769] [d:\games\s.t.a.l.k.e.r\stalker-shoc\user.ltx] successfully loaded.
[03.10.17 21:09:05.769] Starting INPUT device...
[03.10.17 21:09:06.081] Loading DLL: xrRender_R1.dll
[03.10.17 21:09:06.581] Loading DLL: xrGame.dll
[03.10.17 21:09:06.986] * [win32]: free[2012212 K], reserved[18520 K], committed[66356 K]
[03.10.17 21:09:06.986] * [ D3D ]: textures[0 K]
[03.10.17 21:09:06.986] * [x-ray]: crt heap[5991 K], process heap[647 K], game lua[0 K], engine lua[0 K], render[0 K]
[03.10.17 21:09:06.986] * [x-ray]: economy: strings[1032 K], smem[0 K]
[03.10.17 21:09:07.017] Executing config-script "d:\games\s.t.a.l.k.e.r\gamedata\config\default_controls.ltx"...
[03.10.17 21:09:07.080]  cant convert dik_name for dik[144], prop=[
[03.10.17 21:09:07.111] [d:\games\s.t.a.l.k.e.r\gamedata\config\default_controls.ltx] successfully loaded.
[03.10.17 21:09:07.111] Executing config-script "user.ltx"...
[03.10.17 21:09:07.127] Executing config-script "d:\games\s.t.a.l.k.e.r\gamedata\config\rspec_minimum.ltx"...
[03.10.17 21:09:07.142]  Unknown command:  r__dtex_range
[03.10.17 21:09:07.142]  Unknown command:  r__ssa_glod_end
[03.10.17 21:09:07.142]  Unknown command:  r__ssa_glod_start
[03.10.17 21:09:07.142]  Unknown command:  rs_detail
[03.10.17 21:09:07.142]  Unknown command:  rs_skeleton_update
[03.10.17 21:09:07.142]  Unknown command:  vid_bpp
[03.10.17 21:09:07.142] [d:\games\s.t.a.l.k.e.r\gamedata\config\rspec_minimum.ltx] successfully loaded.
[03.10.17 21:09:07.142] Executing config-script "d:\games\s.t.a.l.k.e.r\gamedata\config\default_controls.ltx"...
[03.10.17 21:09:07.142] [d:\games\s.t.a.l.k.e.r\gamedata\config\default_controls.ltx] successfully loaded.
[03.10.17 21:09:07.173] [d:\games\s.t.a.l.k.e.r\stalker-shoc\user.ltx] successfully loaded.
[03.10.17 21:09:07.236] SOUND: OpenAL: enumerate devices...
[03.10.17 21:09:07.236] SOUND: OpenAL: EnumerationExtension Present
[03.10.17 21:09:07.345] devices Generic Hardware
[03.10.17 21:09:07.361] SOUND: OpenAL: system  default SndDevice name is Generic Hardware
[03.10.17 21:09:07.361] SOUND: OpenAL: default SndDevice name set to Generic Software
[03.10.17 21:09:07.860] SOUND: OpenAL: All available devices:
[03.10.17 21:09:07.860] 1. Generic Software, Spec Version 1.1 (default)
[03.10.17 21:09:07.860] 2. Generic Software, Spec Version 1.1 (default)
[03.10.17 21:09:07.860] SOUND: OpenAL: SelectBestDevice is Generic Software 1.1
[03.10.17 21:09:07.910] SOUND: OpenAL: Required device: Generic Software. Created device: Generic Software.
[03.10.17 21:09:07.910] * sound: EAX 2.0 extension: absent
[03.10.17 21:09:07.910] * sound: EAX 2.0 deferred: absent
[03.10.17 21:09:07.938] * sound : cache: 49155 kb, 5707 lines, 8820 bpl
[03.10.17 21:09:07.942] Starting RENDER device...
[03.10.17 21:09:08.248] * GPU [vendor:8086]-[device:2A42]: Mobile Intel(R) 4 Series Express Chipset Family
[03.10.17 21:09:08.248] * GPU driver: 8.15.10.2869
[03.10.17 21:09:11.867] * CREATE: DeviceREF: 1
[03.10.17 21:09:11.867] * Vertex Processor: PURE HARDWARE
[03.10.17 21:09:11.947] *     Texture memory: 817 M
[03.10.17 21:09:11.947] *          DDI-level: 9.0
[03.10.17 21:09:13.137] * GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30)
[03.10.17 21:09:13.152] * GPU vertex cache: recognized, 32
[03.10.17 21:09:13.243] * DVB created: 4096K
[03.10.17 21:09:13.243] * DIB created: 512K
[03.10.17 21:09:15.618] count of .thm files=4
[03.10.17 21:09:15.835] load time=826 ms
[03.10.17 21:09:15.882] * distortion: used, dev(30),need(14)
[03.10.17 21:09:15.882] * SSample: 1280x768
[03.10.17 21:09:16.569] * SSample: enabled
[03.10.17 21:09:16.916] Script debugger succesfully restarted.
[03.10.17 21:09:17.448] Starting engine...
[03.10.17 21:09:19.629] Loading DLL: xrGameSpy.dll
[03.10.17 21:09:26.248] * DVB created: 4096K
[03.10.17 21:09:26.248] * DIB created: 512K
[03.10.17 21:09:26.248] * SSample: 1280x768
[03.10.17 21:09:26.260] * SSample: enabled
[03.10.17 21:09:26.260] * GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30)
[03.10.17 21:09:26.260] * GPU vertex cache: recognized, 32
[03.10.17 21:09:26.260] *** RESET [119 ms]
[03.10.17 21:09:26.305] "d:\games\s.t.a.l.k.e.r\bin\xr_3da.exe" -nointro
[03.10.17 21:09:26.307] * phase time: 0 ms
[03.10.17 21:09:26.309] * phase cmem: 84278 K
[03.10.17 21:09:26.309] Кэширование объектов...
[03.10.17 21:09:26.359] Loading objects...
[03.10.17 21:09:26.359] Loading models...
[03.10.17 21:09:43.513] * [prefetch] time:    17146 ms
[03.10.17 21:09:43.513] * [prefetch] memory:  82621Kb
[03.10.17 21:09:43.636] * phase time: 17328 ms
[03.10.17 21:09:43.645] * phase cmem: 163007 K
[03.10.17 21:09:43.645] Сервер: Старт...
[03.10.17 21:09:43.996] * phase time: 359 ms
[03.10.17 21:09:44.005] * phase cmem: 158431 K
[03.10.17 21:09:44.005] Сервер: Загрузка симуляции жизни...
[03.10.17 21:09:44.052] * phase time: 56 ms
[03.10.17 21:09:44.062] * phase cmem: 158431 K
[03.10.17 21:09:44.062] Загрузка игры "day_01_time_07_00_l01_escape.sav"...
[03.10.17 21:09:44.109] SE_DBG: CALifeSimulatorBase 'alife' ->m_objects = 0x0C79A680
[03.10.17 21:09:44.155] * Loading spawn registry...
[03.10.17 21:09:45.616] * 8641 spawn points are successfully loaded
[03.10.17 21:09:45.616] * Loading objects...
[03.10.17 21:09:46.260] * 17209 objects are successfully loaded
[03.10.17 21:09:48.588] * Game day_01_time_07_00_l01_escape is successfully loaded from file 'd:\games\s.t.a.l.k.e.r\stalker-shoc\savedgames\day_01_time_07_00_l01_escape.sav' (4.583s)
[03.10.17 21:09:48.588] * phase time: 4536 ms
[03.10.17 21:09:48.599] * phase cmem: 190379 K
[03.10.17 21:09:48.599] Сервер: Соединяемся...
[03.10.17 21:09:48.629] MaxPlayers = 32
[03.10.17 21:09:48.700] * phase time: 111 ms
[03.10.17 21:09:48.715] * phase cmem: 190411 K
[03.10.17 21:09:48.715] Клиент: Соединение с localhost...
[03.10.17 21:09:48.716]  Player not found. New player created.
[03.10.17 21:09:48.746] * client : connection accepted - <>
[03.10.17 21:09:48.770] * phase time: 70 ms
[03.10.17 21:09:48.780] * phase cmem: 190459 K
[03.10.17 21:09:48.780] Открытие потока...
[03.10.17 21:09:48.823] * phase time: 53 ms
[03.10.17 21:09:48.833] * phase cmem: 190459 K
[03.10.17 21:09:48.833] Загрузка формы объектов...
[03.10.17 21:09:54.522] * phase time: 5699 ms
[03.10.17 21:09:54.535] * phase cmem: 263128 K
[03.10.17 21:09:54.535] Загрузка шейдеров...
[03.10.17 21:09:56.749] * phase time: 2226 ms
[03.10.17 21:09:56.759] * phase cmem: 264610 K
[03.10.17 21:09:56.759] Загрузка геометрии...
[03.10.17 21:09:56.992] * [Loading VB] 65532 verts, 2047 Kb
[03.10.17 21:10:00.203] * [Loading VB] 65525 verts, 2047 Kb
[03.10.17 21:10:00.237] * [Loading VB] 65535 verts, 2047 Kb
[03.10.17 21:10:00.272] * [Loading VB] 65466 verts, 2045 Kb

 ...

Скрытый текст

 ...

[03.10.17 21:10:01.592] * [Loading IB] 1048575 indices, 2047 Kb
[03.10.17 21:10:01.632] * [Loading IB] 228285 indices, 445 Kb
[03.10.17 21:10:01.694] * phase time: 4944 ms
[03.10.17 21:10:01.704] * phase cmem: 264965 K
[03.10.17 21:10:01.704] Загрузка базы пространств...
[03.10.17 21:10:05.610] * phase time: 3916 ms
[03.10.17 21:10:05.621] * phase cmem: 269003 K
[03.10.17 21:10:05.621] Загрузка детальных объектов...
[03.10.17 21:10:05.756] * [DETAILS] VertexConsts(256), Batch(61)
[03.10.17 21:10:05.757] * [DETAILS] 40687 v(20), 26352 p
[03.10.17 21:10:05.757] * [DETAILS] Batch(61), VB(794K), IB(154K)
[03.10.17 21:10:05.760] * phase time: 150 ms
[03.10.17 21:10:05.771] * phase cmem: 269062 K
[03.10.17 21:10:05.771] Загрузка секторов и порталов...
[03.10.17 21:10:05.826] * Loading HOM: d:\games\s.t.a.l.k.e.r\gamedata\levels\l01_escape\level.hom
[03.10.17 21:10:05.865] * phase time: 104 ms
[03.10.17 21:10:05.875] * phase cmem: 269203 K
[03.10.17 21:10:05.875] Загрузка ИИ объектов...
[03.10.17 21:10:06.094] - Loading music tracks from 'l01_escape_musics'...
[03.10.17 21:10:06.211] * phase time: 346 ms
[03.10.17 21:10:06.222] * phase cmem: 269258 K
[03.10.17 21:10:06.222] Клиент: Создание...
[03.10.17 21:10:06.373] - Game configuring : Started
[03.10.17 21:10:06.419] - Game configuring : Finished
[03.10.17 21:10:07.305] * phase time: 1094 ms
[03.10.17 21:10:07.318] * phase cmem: 284949 K
[03.10.17 21:10:07.318] Загрузка текстур...
[03.10.17 21:10:13.352] * t-report - base: 864, 47944 K
[03.10.17 21:10:13.352] * t-report - lmap: 10, 10241 K
[03.10.17 21:10:13.352] ***FATAL***: Too many lmap-textures (limit: 8 textures or 32M).
[03.10.17 21:10:13.381]         Reduce pixel density (worse) or use more vertex lighting (better).
[03.10.17 21:10:13.382] * phase time: 6076 ms
[03.10.17 21:10:13.394] * phase cmem: 284950 K
[03.10.17 21:10:13.394] Клиент: Синхронизация...
[03.10.17 21:10:13.459] * phase time: 76 ms
[03.10.17 21:10:13.471] * phase cmem: 284950 K
[03.10.17 21:10:13.536] * [win32]: free[1362276 K], reserved[58760 K], committed[676052 K]
[03.10.17 21:10:13.536] * [ D3D ]: textures[58185 K]
[03.10.17 21:10:13.536] * [x-ray]: crt heap[284950 K], process heap[6470 K], game lua[22400 K], engine lua[168 K], render[0 K]
[03.10.17 21:10:13.536] * [x-ray]: economy: strings[3729 K], smem[28221 K]
[03.10.17 21:10:13.814] * phase time: 432 ms
[03.10.17 21:10:13.825] * phase cmem: 284973 K
[03.10.17 21:10:13.826] st_actor_netspawn...
[03.10.17 21:10:14.076] * phase time: 231 ms
[03.10.17 21:10:14.088] * phase cmem: 285019 K
[03.10.17 21:10:14.151] * [win32]: free[1361380 K], reserved[58688 K], committed[677020 K]
[03.10.17 21:10:14.151] * [ D3D ]: textures[58191 K]
[03.10.17 21:10:14.151] * [x-ray]: crt heap[285019 K], process heap[6470 K], game lua[23294 K], engine lua[168 K], render[0 K]
[03.10.17 21:10:14.151] * [x-ray]: economy: strings[3818 K], smem[28221 K]
[03.10.17 21:10:30.069] * MEMORY USAGE: 303628 K
[03.10.17 21:11:06.961] *** break by StackWalk ***
[03.10.17 21:11:06.961] DEBUG CONTEXT DUMP:
[03.10.17 21:11:06.961]  [21:10:50.766]. $#CONTEXT: cl remove [641][28064790] esc_zone_witches_galantine_0006, from v = 0C9D7B24, v.size = 335
[03.10.17 21:11:06.961]  [21:10:48.614]. $#CONTEXT: cl remove [155][1AFED0F8] vodka0155, from v = 0C9D7B34, v.size = 637
[03.10.17 21:11:06.961]  [21:10:44.626]. $#CONTEXT: cl remove [635][280631A0] esc_zone_witches_galantine_0000, from v = 0C9D7B24, v.size = 335
[03.10.17 21:11:06.961]  [21:10:42.260]. $#CONTEXT: cl remove [850][24C0B510] esc_trup_bratka, from v = 0C9D7B24, v.size = 336
[03.10.17 21:11:06.961]  [21:10:38.184]. $#CONTEXT: cl remove [850][24C0B510] esc_trup_bratka, from v = 0C9D7B34, v.size = 636
[03.10.17 21:11:06.961]  [21:10:33.465]. $#CONTEXT: cl remove [472][17B56910] wpn_ak74u0472, from v = 0C9D7B34, v.size = 637
[03.10.17 21:11:06.961]  [21:10:33.465]. $#CONTEXT: cl remove [472][17B56910] wpn_ak74u0472, from v = 0C9D7B24, v.size = 335
[03.10.17 21:11:06.961]  [21:10:33.414]. $#CONTEXT: cl remove [497][17B582A0] wpn_ak74u0497, from v = 0C9D7B34, v.size = 637
[03.10.17 21:11:06.961]  [21:10:33.414]. $#CONTEXT: cl remove [497][17B582A0] wpn_ak74u0497, from v = 0C9D7B24, v.size = 335
[03.10.17 21:11:06.961]  [21:10:33.259]. $#CONTEXT: cl remove [639][28064040] esc_zone_witches_galantine_0004, from v = 0C9D7B24, v.size = 336
[03.10.17 21:11:06.961]  [21:10:33.044]. $#CONTEXT: cl remove [429][17B53E60] wpn_ak74u0429, from v = 0C9D7B34, v.size = 636
[03.10.17 21:11:06.961]  [21:10:33.044]. $#CONTEXT: cl remove [429][17B53E60] wpn_ak74u0429, from v = 0C9D7B24, v.size = 336
[03.10.17 21:11:06.961]  [21:10:32.741]. $#CONTEXT: cl remove [480][17B57190] wpn_ak74u0480, from v = 0C9D7B34, v.size = 636
[03.10.17 21:11:06.961]  [21:10:32.741]. $#CONTEXT: cl remove [480][17B57190] wpn_ak74u0480, from v = 0C9D7B24, v.size = 336
[03.10.17 21:11:06.961]  [21:10:32.389]. $#CONTEXT: cl remove [439][17B546F0] wpn_ak74u0439, from v = 0C9D7B34, v.size = 636
[03.10.17 21:11:06.961] Unhandled exception stack trace:
[03.10.17 21:11:06.961]
[03.10.17 21:11:06.998] 001B:522A3260 (0x0018C300 0x2896B6BC 0x2896B748 0x0018C328) xrGame.dll, CVertex<CPhrase *,shared_str,CGraphAbstract<CPhrase *,float,shared_str> >::add_edge, x:\trunk\xray\xr_3da\xrgame\graph_vertex_inline.h, 68
[03.10.17 21:11:06.998] 001B:522A302A (0x280A5C60 0x0018C300 0x24E2AF90 0x52D6A1E0) xrGame.dll, CGraphAbstract<CPhrase *,float,shared_str>::add_edge(), x:\trunk\xray\xr_3da\xrgame\graph_abstract_inline.h, 59
[03.10.17 21:11:06.998] 001B:524C6B9B (0x24E2AF90 0x00000000 0x2896B740 0x0018C318) xrGame.dll, CPhraseDialog::AddPhrase(), x:\trunk\xray\xr_3da\xrgame\phrasedialog.cpp, 271
[03.10.17 21:11:06.998] 001B:522A39FA (0x03BF23D0 0x03D72B18 0x00D183F0 0xFFFFD8F0) xrGame.dll, CPhraseDialog::AddPhrase_script(), x:\trunk\xray\xr_3da\xrgame\phrasedialog.h, 132
[03.10.17 21:11:06.998] 001B:522A4075 (0x522A3980 0x00000000 0x6E192A4D 0x0A905100) xrGame.dll, luabind::detail::returns<CPhrase *>::call<CPhraseDialog,CPhraseDialog,luabind::detail::null_type,char const *,char const *,char const *,int>(), x:\trunk\xray\luabind\luabind\detail\call.hpp, 161
[03.10.17 21:11:06.998] 001B:522A3EED (0x0A905100 0x04420018 0x0A901CC8 0x6E1D74DD) xrGame.dll, boost::detail::function::function_obj_invoker1<luabind::detail::mem_fn_callback<CPhrase * (__thiscall CPhraseDialog::*)(char const *,char const *,char const *,int),CPhraseDialog,luabind::detail::null_type>,int,lua_State *>::invoke(), x:\trunk\3rd party\boost\boost\function\function_template.hpp, 117
[03.10.17 21:11:06.998] 001B:6E192A4D (0x04420018 0x00000000 0x0E7DD8B0 0x04420018) luabind.dll, luabind::detail::overload_rep::call(), x:\trunk\xray\luabind\luabind\detail\overload_rep_impl.hpp, 35
[03.10.17 21:11:06.998] 001B:6E19A91F (0x04420018 0x0BC304F0 0xFFFFFFFF 0x04420018) luabind.dll, luabind::detail::class_rep::function_dispatcher(), x:\trunk\xray\luabind\src\class_rep.cpp, 694
[03.10.17 21:11:06.998] 001B:6E1C62D3 (0xFFFFFFFF 0x0E7DD850 0x04420018 0x00000070) lua5.1.dll, luaJIT_run(), x:\trunk\xray\luajit\src\ljit_core.c, 223
[03.10.17 21:11:06.998] 001B:6E1CFE29 (0x04420018 0x0E7DD7F0 0x00000000 0x04420018) lua5.1.dll, luaD_precall(), x:\trunk\xray\luajit\src\ldo.c, 282
[03.10.17 21:11:06.998] 001B:6E1D00A4 (0x04420018 0x0E7DD7F0 0x00000000 0x6E1CF8AA) lua5.1.dll, luaD_call(), x:\trunk\xray\luajit\src\ldo.c, 384
[03.10.17 21:11:06.998] 001B:6E1D7E55 (0x04420018 0x0018C598 0x04420018 0x00000001) lua5.1.dll, f_call(), x:\trunk\xray\luajit\src\lapi.c, 795
[03.10.17 21:11:06.998] 001B:6E1CF8AA (0x04420018 0x6E1D7E40 0x0018C598 0x00000000) lua5.1.dll, luaD_rawrunprotected(), x:\trunk\xray\luajit\src\ldo.c, 120
[03.10.17 21:11:06.998] 001B:6E1D0258 (0x6E1D7E40 0x0018C598 0x00000050 0x04420018) lua5.1.dll, luaD_pcall(), x:\trunk\xray\luajit\src\ldo.c, 465
[03.10.17 21:11:06.998] 001B:6E1D81D1 (0x04420018 0x00000001 0x00000000 0x00000000) lua5.1.dll, lua_pcall(), x:\trunk\xray\luajit\src\lapi.c, 816
[03.10.17 21:11:06.998] 001B:6E199736 (0x04420018 0x00000001 0x00000000 0x0AB8DB40) luabind.dll, luabind::detail::pcall(), x:\trunk\xray\luabind\src\pcall.cpp, 40
[03.10.17 21:11:06.998] 001B:522A2BF8 (0x14B11120 0x24E2AF90 0x0018C61C 0x52D5A3B0) xrGame.dll, luabind::detail::proxy_functor_void_caller<boost::tuples::tuple<CPhraseDialog * const *,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type> >::~proxy_functor_void_caller<boost::tuples::tuple<CPhraseDialog * const *,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type(), x:\trunk\xray\luabind\luabind\functor.hpp, 284
[03.10.17 21:11:06.998] 001B:524C7220 (0x00000000 0x524C6A58 0x0AB71FC0 0x24E2AF90) xrGame.dll, CPhraseDialog::load_shared(), x:\trunk\xray\xr_3da\xrgame\phrasedialog.cpp, 223
[03.10.17 21:11:06.998] 001B:522A2B99 (0x0AB71FC0 0x24E2AF90 0x524C6335 0x0AB71FC0) xrGame.dll, CSharedClass<SPhraseDialogData,shared_str,0>::load_shared(), x:\trunk\xray\xr_3da\xrgame\shared_data.h, 101
[03.10.17 21:11:06.998] 001B:524C6A58 (0x0AB71FC0 0x00000002 0x24BDDC00 0x14B1111C) xrGame.dll, CPhraseDialog::Load(), x:\trunk\xray\xr_3da\xrgame\phrasedialog.cpp, 185
[03.10.17 21:11:06.998] 001B:524C6335 (0x0AB71FC0 0x0C7BCE38 0x1B0DC4DC 0x0C4F6100) xrGame.dll, CPhraseDialogManager::AddAvailableDialog(), x:\trunk\xray\xr_3da\xrgame\phrasedialogmanager.cpp, 110
[03.10.17 21:11:06.998] 001B:524EEF47 (0x0C7BCE38 0x1B0DC4DC 0x24B85EA0 0x0018C6B4) xrGame.dll, CActor::UpdateAvailableDialogs(), x:\trunk\xray\xr_3da\xrgame\actor_communication.cpp, 195
[03.10.17 21:11:06.998] 001B:523D5B6D (0x280AA930 0x523E260F 0x00000006 0x01036400) xrGame.dll, CUITalkWnd::UpdateQuestions(), x:\trunk\xray\xr_3da\xrgame\ui\uitalkwnd.cpp, 130
[03.10.17 21:11:06.998] 001B:523D624F (0x00000006 0x01036400 0x00F70BDE 0x01036240) xrGame.dll, CUITalkWnd::Update(), x:\trunk\xray\xr_3da\xrgame\ui\uitalkwnd.cpp, 229
[03.10.17 21:11:06.998] 001B:523E260F (0x01036240 0x00FB303C 0x01036534 0x01036414) xrGame.dll, CDialogHolder::OnFrame(), x:\trunk\xray\xr_3da\xrgame\uidialogholder.cpp, 213
[03.10.17 21:11:06.998] 001B:00F70BDE (0x01036534 0x01036414 0x00000000 0x01036240) XR_3DA.exe, CRegistrator<pureRender>::Process(), x:\trunk\xray\xr_3da\pure.h, 77
[03.10.17 21:11:06.998] 001B:00FB303C (0x69402AD0 0x0018E804 0x0018C730 0x00000000) XR_3DA.exe, CRenderDevice::FrameMove(), x:\trunk\xray\xr_3da\device.cpp, 426
[03.10.17 21:11:06.998] 001B:00FB35C1 (0x01041048 0x0018E804 0x0018C748 0x00000000) XR_3DA.exe, CRenderDevice::Run(), x:\trunk\xray\xr_3da\device.cpp, 275
[03.10.17 21:11:06.998] 001B:00FDCDD9 (0x01041048 0x002124F0 0x00000000 0x00000000) XR_3DA.exe, Startup(), x:\trunk\xray\xr_3da\x_ray.cpp, 300
[03.10.17 21:11:06.998] 001B:00FDD5C4 (0x00F30000 0x00000000 0x002124F0 0x00000001) XR_3DA.exe, WinMain_impl(), x:\trunk\xray\xr_3da\x_ray.cpp, 745
[03.10.17 21:11:06.998] 001B:00FDD7A3 (0x00F30000 0x00000000 0x002124F0 0x00000001) XR_3DA.exe, WinMain(), x:\trunk\xray\xr_3da\x_ray.cpp, 805
[03.10.17 21:11:06.998] 001B:00F8BEF7 (0x7FFDB000 0x0018FB8C 0x770337EB 0x7FFDB000) XR_3DA.exe, __tmainCRTStartup(), f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c, 547
[03.10.17 21:11:06.998] 001B:7628ED6C (0x7FFDB000 0x7752B0AB 0x00000000 0x00000000) kernel32.dll, BaseThreadInitThunk()
[03.10.17 21:11:06.999] 001B:770337EB (0x00F8C03A 0x7FFDB000 0x00000000 0x00000000) ntdll.dll, RtlInitializeExceptionChain()
[03.10.17 21:11:06.999] 001B:770337BE (0x00F8C03A 0x7FFDB000 0x00000000 0x00000000) ntdll.dll, RtlInitializeExceptionChain()

 

Что делал:

Скрытый текст

Отслеживал работу скриптов - ставил лог-сообщения. Скрипты отрабатываю нормально: выдают, определяют кто есть кто.

С этим вроде все нормально. Хотя, до конца не уверен.

Сравнивал файлы, которые указаны в логе (типа: ...\xrgame\graph_vertex_inline.h, 68 и т.д.) с другими исходниками (не от xp-dev)

Изменений нет. Сам ничего не правил в этих файлах.

Число в конце строки (например: 68) - это, наверное строка в файле (например: xrgame\graph_vertex_inline.h,) ???

Если так, то номер строки обычно ничего не проясняет (для меня)

  - он, обычно, указывает на пустую строку, либо на закрывающую фигурную скобку, либо на что-либо ещё мало информативное (для меня).

Уже раз 8 пере-собирал исходники с нуля с разными дэфайнами из build_config_defines.h - результат тот же.

 

Исходные данные:

    Win7 x86 Ultimate, VS2010_sp1, WinSDK_7.1, DX_SDK_Aug_2007, DX_SDK_June_2010 - инклуды и либы прописаны.

Исходники:

    X-Ray 1.0007rc1 от репо XP-DEV (by alpet, KD) - собирал ревизии 188 и 201.

Если нужно выложу логи сборки движка.

Буду рад любой инфе по этой теме. У кого-либо было что-то подобное, если да, как "лечили эту болезнь"?

 

И ещё вопрос: так как я сам не-программист, то очень интересует,

как грамотно разбирать такие логи с адресами памяти,

когда нет привычного сообщения в стиле "FATAL ERROR: bla_bla_bla"?

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


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

@abramcumner

5 часов назад, abramcumner сказал:

в этой строке?

В этой строчке '{'

Скрытый текст

 

5 часов назад, abramcumner сказал:

геймдата

Да от 6-го, но добавлены файлы из папки 'resources' (те, что в репо xp-dev).

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


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

[ТЧ 1.0007rc1 (xp-dev.com)]

Методы для CInventoryItem:  set_inventory_item_flags(flags16)  и  get_inventory_item_flags()

Если, есть те, кто разобрался как ими пользоваться.

Подскажите, пожалуйста (с примерами, если не трудно).

 

В движке из репо на xp-dev.com -- при обыске трупа или открытия ящика -- не работает выпадающий список действий (при нажатии правой клавиши мыши) на предмет.

Может, кто-нибудь поправил это? Если да - как исправить?

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


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

@dsh Наспавнил 5 бутылок водки в инвентарь гг.

Беру одну бутылку и пытаюсь установить ей флаг "не-группируемости" или "не-торгуемости".
Но, никакого результата (либо я его не вижу).

 

Что делал:

Скрытый текст

-- dbg_logf - это тот же log1, только для дебага.

-- Ставим флаг. --
function set_item_ungroupable( item )
    if not item then return end

    dbg_logf("* set_item_ungroupable -- 0 -- sect: "..tostring( item:section() ).." id: "..tostring( item:id() ))
    local f = item:get_inventory_item_flags()

    dbg_logf("* set_item_ungroupable -- 1 -- ")
    f:set( 16384, true )        -- const FIUngroupable      = 16384;
    -- f:set( 8192, true )      -- const FIAlwaysUntradable = 8192;

    dbg_logf("* set_item_ungroupable -- 2 -- ")
    item:set_inventory_item_flags( f )

    dbg_logf("* set_item_ungroupable -- 3 -- ")
end

-- Поиск предмета по секции в инвентаре. --
function search_item_in_inv( section )
    for i=0, db.actor:object_count()-1 do
        local obj = db.actor:object(i)
        if obj:section() == section then
            dbg_logf("* search_item_in_inv  >>>  sect:  "..tostring(section).."  >>>  id:  "..tonumber(obj:id()))
            -- return obj:id()  -- предмет найден
            return obj          -- предмет найден
        end
    end
    return nil
end

local sec = "vodka"
local act = db.actor
if act then
    local obj = search_item_in_inv(sec)
    if obj then
        dbg_logf("* set_item_ungroupable -- start -- ")
        set_item_ungroupable(obj)
        dbg_logf("* set_item_ungroupable -- finish -- ")
    end
end

 

Лог:

Скрытый текст

[02.11.17 01:08:15.656] ~~Start TESTING script!
[02.11.17 01:08:15.657] ~ --------------------------------------------------------
[02.11.17 01:08:15.658] * search_item_in_inv  >>>  sect:  vodka  >>>  id:  16905
[02.11.17 01:08:15.658] * set_item_ungroupable -- start --
[02.11.17 01:08:15.658] * set_item_ungroupable -- 0 -- sect: vodka id: 16905
[02.11.17 01:08:15.658] * set_item_ungroupable -- 1 --
[02.11.17 01:08:15.658] * set_item_ungroupable -- 2 --
[02.11.17 01:08:15.658] * set_item_ungroupable -- 3 --
[02.11.17 01:08:15.658] * set_item_ungroupable -- finish --
[02.11.17 01:08:15.658] ~ --------------------------------------------------------
[02.11.17 01:08:15.658] ~~Finish TESTING script!

 

Ожидания:

Скрытый текст

  Бутылка с флагом "должна" отделится от группы остальныих или,
  при торговле "должна быть": закрашена красным и не доступна,
  при соответствующем флаге, конечно.
  
  Но, этого не происходит.

 

Что я делаю не так?

 

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


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

@dsh

Вывод: прямо из скрипта нельзя настроить группирование/торгуемость (другие флаги не проверял)

(в xp-dev движке, на данный момент, для отдельно-взятого предмета).

Так? Или есть другие варианты?

 

Раньше я игрался с "кондишен" предмета для этих целей, либо использовал X-Ray extensions с их "set_inventory_item_int16".

А тут такой облом.

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


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

[ ЗП_1.6.02 / СоС_1.4/1.5 ]

В каком порядке движок "читает" db-файлы?

Как влияет расположение папок с ресурсами игры на это "чтение"?

Знаю только, что распакованную "gamedata" в последнюю очередь.

 

Интересуют как оригинальный двиг, так и от СоС.

Смотрел исходники, но не разобрался.

Заранее признателен.

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


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

Движок ЗП.

Что означает аббревиатура "SLS"?

Встречается у некоторых файлов/функций (например: Level_SLS_Default.cpp).

Вырезаю мп и всякий мусор, не могу понять - для чего и нужны ли...

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


Ссылка на сообщение
12 часов назад, ARTLantist сказал(а):

чтобы убрать автоперезарядку оружия?

Здесь можешь посмотреть, хотя там про ТЧ, для ЗП будет примерно так же.

  • Нравится 1

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


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

Парни, может кто знает, как изменить скорость проигрывания звука(ускорить)? Нужно для дела.

Сейчас разбираюсь в исходниках "xrSound/xrGame" и не знаю с какой стороны подступится.

Движок ЗП.

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


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

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