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

[SoC] Ковыряемся в файлах


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

@Х_и_м_и_к, нужны все подробности. Чем снимал, чем монтировал, чем конвертировал, как добавлял.

Снимал в игре frapsom, нарезал  movi  makerom))) и еще какой-то прогой(с сохранением качества), потом в формат понятный игре конвертировал. Проще говоря подменял, родной ролик тч своим. Если воспроизвести этот ролик в уменьшенном размере(после манипуляций в папке ui), то фон вокруг видео почему то будет зеленым.  Собственно суть вопроса заключается в следующем, возможно ли сделать показ ролика, в какой нибудь рамке меньшего размера, чем полно экранный или как то изменить фон вокруг видео на черный...

Изменено пользователем Х_и_м_и_к

При загрузки уровня, фреймы начинаются идти до того как игра полностью запустится. Вот тут надо узнать, когда именно игра полностью запустилась, и игрок получил картинку и может управлять персонажем. Мне надо для сохраняемых осветительных ракет, у меня они гаснут до того как игра запустится, думаю ракеты надо "замораживать" на это время.

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

Посмотри паузу при загрузке у Charsi, а вообще net_spawn по идее то что нужно, не?

@Kondr48, 

[3826]: CFlareRocket:__init(obj) ID-27649

[3826]: CFlareRocket:load(reader) ID-27649
last_lvel[-7.5561890602112, 53.48055267334, -0.33860471844673], times[618]
[3826]: CFlareRocket:net_spawn(data) ID-27649
name_particle[explosions\signal_light_00]
Particle name:
explosions\signal_light_00
explosions_signal_light_00_light
[3827]: delta[22878]
[3828]: delta[317]
[3829]: delta[88]
[3830]: delta[84]
[3831]: delta[36]
[3832]: delta[27]
[3833]: delta[46]
[3834]: delta[27]
[3835]: delta[28]
[3836]: delta[28]
[3837]: delta[41]
[3838]: delta[51]
[3839]: delta[26]
[3840]: delta[20]

 

 

После net_spawn как минимум пара фреймов идут до момента игрок в игре. Ладно гляну скрипт Charsi.

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

Ну так о некоторое определенное количество фреймов посчитать - не ?

device().precache_frame >= 2 - точно не то, что надо ?

Вот такой прикол.

[5007]: CFlareRocket:__init(obj) ID-27649


[5007]: CFlareRocket:load(reader) ID-27649
last_lvel[-7.5561890602112, 53.48055267334, -0.33860471844673], times[618]
[5007]: CFlareRocket:net_spawn(data) ID-27649
Particle name:
explosions\signal_light_00
explosions_signal_light_00_light
[5008]: precache_frame[27], delta[25607]
[5009]: precache_frame[26], delta[363]
[5010]: precache_frame[25], delta[94]
[5011]: precache_frame[24], delta[93]
[5012]: precache_frame[23], delta[46]
[5013]: precache_frame[22], delta[43]
[5014]: precache_frame[21], delta[34]
[5015]: precache_frame[20], delta[42]
[5016]: precache_frame[19], delta[28]
[5017]: precache_frame[18], delta[27]
[5018]: precache_frame[17], delta[30]
[5019]: precache_frame[16], delta[50]
[5020]: precache_frame[15], delta[26]
[5021]: precache_frame[14], delta[21]
[5022]: precache_frame[13], delta[27]
[5023]: precache_frame[12], delta[27]
[5024]: precache_frame[11], delta[26]
[5025]: precache_frame[10], delta[23]
[5026]: precache_frame[9], delta[20]
[5027]: precache_frame[8], delta[20]
[5028]: precache_frame[7], delta[20]
[5029]: precache_frame[6], delta[103]
* DVB created: 6144K
* DIB created: 512K
- r__tf_aniso 4
- r2_tf_mipbias 0.
* GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30)
* GPU vertex cache: recognized, 24
*** RESET [606 ms]
[5030]: precache_frame[19], delta[892]
[5031]: precache_frame[18], delta[192]
[5032]: precache_frame[17], delta[48]
[5033]: precache_frame[16], delta[23]
[5034]: precache_frame[15], delta[36]
[5035]: precache_frame[14], delta[32]
[5036]: precache_frame[13], delta[29]
[5037]: precache_frame[12], delta[29]
[5038]: precache_frame[11], delta[29]
[5039]: precache_frame[10], delta[34]
[5040]: precache_frame[9], delta[20]
[5041]: precache_frame[8], delta[26]
[5042]: precache_frame[7], delta[23]
[5043]: precache_frame[6], delta[22]
[5044]: precache_frame[5], delta[23]
[5045]: precache_frame[4], delta[24]
[5046]: precache_frame[3], delta[46]
[5047]: precache_frame[2], delta[29]
[5048]: precache_frame[1], delta[25]
* MEMORY USAGE: 243073 K
[5049]: precache_frame[0], delta[40]
[5050]: precache_frame[0], delta[10]
[5051]: precache_frame[0], delta[12]
[5052]: precache_frame[0], delta[13]
[5053]: precache_frame[0], delta[10]
[5054]: precache_frame[0], delta[12]
[5055]: precache_frame[0], delta[12]
[5056]: precache_frame[0], delta[13]
[5057]: precache_frame[0], delta[13]
stack trace:

001B:01B9CB14 xrRender_R2.dll
001B:01B8D07E xrRender_R2.dll

[error][ 259] : Дополнительные данные отсутствуют.

 

Код такой.

local delta = device().time_delta
log1("["..device().frame.."]: precache_frame["..device().precache_frame.."], delta["..delta.."]")

На уровне одна ракета, сейчас добиваюсь что бы при загрузки они нормально работали, сейчас у меня гаснет партикл. Ракета на базе артефакта сделана. Хотя конечно проще их удалять, если баг не получится по фиксить, то так и сделаю.

ЗЫ

При вылете игры, экран внезапно установился на 800х600 и 256 цветов, не когда такого не было. :blink: Установлен XRay-Extensions.

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

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

какой-то прогой(с сохранением качества), потом в формат понятный игре конвертировал

Вспоминай что это за проги.
что это за проги.

Привет, проблема не в прогах которыми я делал ролик,  просто после конвертации в ogm(утилиткой теора вроде),  видео теряет качество. Вот я и подумал, сделать ролик большего размера, а в конфигах(ui)  выставить малое разрешение, и вроде как становиться лучше качество. Но при малом разрешении в конфигах, вокруг видео зеленый фон, а как его изменить на черный, или сделать рамку на подобие ui_load(как при загрузке уровня)  я не в курсе... 

Изменено пользователем Х_и_м_и_к

Есть еще вопрос.  Подскажите вариант функции,  для выдачи 1 инф. поршна, при наличии у гг 3 предметов(неважно каких, но именно нескольких). Это нужно,  не для появления диалога с нпс(ом), а для срабатывания рестрик-а. Тч - 04(чистый)

Что-то типа этого

 

function test()
if db.actor:object("item1"),("item2"),("item3") then

db.actor:give_info_portion("info")
end
end

 

Изменено пользователем Х_и_м_и_к

 

Х_и_м_и_к ну явно не так, как минимум пробовать:


if db.actor:object("item1") and db.actor:object("item2") and db.actor:object("item3") then

Кто разбирается в патрульных путях, расскажите пожалуйста. Вот есть непись, есть у него путь из четырех точек. Бежит он значит от точки 0 к точке 1. И тут бац, на пол-пути разворачивается и бежит обратно к точке 0. Добежал, разворачивается и снова бежит к точке 1. И тут бац... Ну в общем вы поняли. И так до бесконечности. В округе ни одной аномалии нет. Лезу в move_mgr.script и вставляют отладочный вывод в extrapolate_callback(). Вижу, что он разворачивается и бежит обратно сразу после срабатывания этого коллбека. Бежит к точке 1, срабатывает на полпути коллбек, в нем self.object:get_current_point_index() возвращает 0. Ладно, непонятно. Но не в первый раз. Добавляю в этот коллбек вот такие две строчки

 self.object:set_start_point(self.current_point_index)
 self.object:set_patrol_path(self.path_walk, patrol.next,    patrol.continue, true)

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

Это, скорее всего, его кто-нибудь для чего-нибудь прервал.

И самое поганое, что механизма отследить - КТО - нет.

 

А коллбэк - да, честно возвращает "текущую", поскольку до следующей еще не добежали.

Костыль - в общем, зависит от того, что там где ЕЩЕ понапихано.

как минимум пробовать

Спасибо попробую!

 

Может кто подскажет, как бороться с очень маленькой дистанцией между ботами(при движении по одному  пути).  Уж очень не красиво смотрится, когда толпа нпс(ов) бежит,  дыша друг дружке в затылок))).

Изменено пользователем Х_и_м_и_к
@Dennis_Chikin, в процессе отладки у меня сложилось стойкое впечатление, что это движок его туда-сюда пинал, почему-то. Вот нутром чую, никто его скриптово не отвлекал. И даже если бы кто-то и мешал и отвлекал, почему две добавленных строчки его тут же в чувство привели? Ответа я наверное не найду.
  • Полезно 1

Не так давно я писал про странный вылет, причем только при переходах с одной-единственной локации:

 

0023:7699C54F KERNELBASE.dll
0023:73EC8E89 MSVCR80.dll, EH_prolog()
0023:03B76DA8 xrGame.dll
0023:03D979DD xrGame.dll

[error][     183]    : Невозможно создать файл, так как он уже существует.

 

Так вот, дело было в дубликатах строчки name = бла-бла-бла в файле alife_имя_локации.ltx  в спавне. Как только дубли убрал - вылет пропал. Может, пригодится кому...

  • Полезно 2

Сталкер - наше всё!

как минимум пробовать:

Вот что я делал

При входе в этот рестрик, должна сработать функция(xr_effects.hana_ano)

 

[251]

 

; cse_abstract properties

section_name = space_restrictor

name = anomaliii

s_rp = 0

position = 22.482372283936,-2.4042422771453,70.77449798584

direction = 0, 0, 0

version = 118

script_version = 6

 

; cse_alife_object properties

game_vertex_id = 598

level_vertex_id = 129370

object_flags = 0xffffff3e

custom_data = <[logic]

active = sr_idle

 

[sr_idle]

on_actor_inside = {+top_bor} nil %=xr_effects.hana_ano%

END

 

; cse_shape properties

shapes = shape0

shape0:type = sphere

shape0:offset = 0,0,0

shape0:radius = 2

 

; cse_alife_space_restrictor properties

restrictor_type = 0

 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Срабатывает, только один раз(выдает инф.поршен)!  Т.е после загрузки сохранения(для проверки работа-способности), уже больше не работает!

 

function hana_ano()

if db.actor:object("tv_1") and db.actor:object("tv_2") and db.actor:object("tv_3") then

db.actor:give_info_portion("anom_tyty")

end

end

 

Может здесь чего-то не хватает?

 

 

 

 

Изменено пользователем Х_и_м_и_к

@Х_и_м_и_к,

active = sr_idle

[sr_idle]
on_actor_inside = {+top_bor} nil %=xr_effects.hana_ano%
вот этот вот "nil" завершает работу данной логики. Окончательно и бесповоротно.

Соответственно, раз зайдя в рестриктор, ты сам же запрещаешь повторное его срабатывание.

Изменено пользователем Kirgudu
  • Спасибо 1

Свои работы и совместные проекты: Инструмент, OGSM CS, Final Stroke, HARDWARMOD

Полезное: модули Артоса, XML парсер

ты сам же запрещаешь повторное его срабатывание.

Да нет же, я имел в виду что если сделать сохранку до входа в рестрик, и потом повторно(после загрузки сохранения проверить) то больше не срабатывает! хотя должно... Суть проблемы, нужен  инф.поршен, который выдается после появления в рюкзаке 3 предметов.

Изменено пользователем Х_и_м_и_к

Привет! Можно  небольшой вопросик по  NLS 7: как сделать так, чтобы все неписи покупали у меня стволы? Пробовал ковырять (в гугле нашел) папку миск далее файл трейд дженерик, нефига не выходит. Утомился подкидывать к ногам стволы и ждать подберут или нет. Вот долг на свалке, около блокпоста берет с удовольствием дрободаны, а те же сталкеры НЕТ. Где настройки на эту правку?

 

Прошу помощи плиз!

Изменено пользователем oleg-ba
  • Не нравится 1

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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