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

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

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

8 часов назад, Купер сказал:

между конкретными

Это, типа, на распальцовке которые?

Переход как организован - прописан в алл.спавн или скриптово создается? Эти "конкретные" локации - оригинальные или добавлены вами?

P.S.

Учитесь правильно формулировать вопрос. Не мое авторство, но кем-то сказано гениально: правильно заданный вопрос - уже половина ответа на него...

  • Нравится 1
  • Согласен 2
  • Смешно 2
Ссылка на комментарий

Отнюдь. Это те, которые конкретные.

 

Поучусь, пожалуй, правильно формулировать вопросы. Net_packet level_changer-а:

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

 

function create_level_changer(p_story_id, p_position, p_lvertex_id, p_gvertex_id, p_dest_lv, p_dest_gv, p_dest_pos, p_dest_dir, p_dest_level, p_silent)
    local obj = alife():create("level_changer", p_position, p_lvertex_id, p_gvertex_id)
    --level.map_add_object_spot(obj.id, "level_changer", "")
    local packet = net_packet()
    obj:STATE_Write(packet)
    local game_vertex_id = packet:r_u16()
    local cse_alife_object__unk1_f32 = packet:r_float()
    local cse_alife_object__unk2_u32 = packet:r_u32()
    local level_vertex_id = packet:r_u32()
    local object_flags = packet:r_u32()
    local custom_data = packet:r_stringZ()
    local story_id = packet:r_u32()
    local spawn_story_id = packet:r_u32()
    local shape_count = packet:r_u8()
    for i=1,shape_count do
    local shape_type = packet:r_u8()
    if shape_type == 0 then
    local center = packet:r_vec3()
    local radius = packet:r_float()
    else
    local axis_x_x = packet:r_float()
    local axis_x_y = packet:r_float()
    local axis_x_z = packet:r_float()
    local axis_y_x = packet:r_float()
    local axis_y_y = packet:r_float()
    local axis_y_z = packet:r_float()
    local axis_z_x = packet:r_float()
    local axis_z_y = packet:r_float()
    local axis_z_z = packet:r_float()
    local offset_x = packet:r_float()
    local offset_y = packet:r_float()
    local offset_z = packet:r_float()
    end
    end
    local restrictor_type = packet:r_u8()
    local dest_game_vertex_id = packet:r_u16() 
    local dest_level_vertex_id = packet:r_u32() 
    local dest_position = packet:r_vec3()
    local dest_direction = packet:r_vec3()
    local dest_level_name = packet:r_stringZ()
    local dest_graph_point = packet:r_stringZ()
    local silent_mode = packet:r_u8()
    packet:w_begin(game_vertex_id)
    packet:w_float(cse_alife_object__unk1_f32)
    packet:w_u32(cse_alife_object__unk2_u32) 
    packet:w_u32(level_vertex_id)
    packet:w_u32(bit_not(193))
    packet:w_stringZ(custom_data)
    packet:w_u32(p_story_id)
    packet:w_u32(spawn_story_id)
    packet:w_u8(1)
    packet:w_u8(1)
    packet:w_float(2)
    packet:w_float(0)
    packet:w_float(0)
    packet:w_float(0)
    packet:w_float(4)
    packet:w_float(0)
    packet:w_float(0)
    packet:w_float(0)
    packet:w_float(4)
    packet:w_float(0)
    packet:w_float(0)
    packet:w_float(0)
    packet:w_u8(3)
    packet:w_u16(p_dest_gv)
    packet:w_u32(p_dest_lv)
    packet:w_vec3(p_dest_pos)
    packet:w_vec3(p_dest_dir)
    packet:w_stringZ(p_dest_level)
    packet:w_stringZ("start_actor_99")
    packet:w_u8(p_silent)
    packet:r_seek(0)
    obj:STATE_Read(packet, packet:w_tell())
end

 

Вызывается:

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

 

function level_to_level_dest()
   create_level_changer(story_id, vector():set(x, y, z),  l_vid, g_vid,
   l_vid_dest, g_vid_dest, vector():set(x, y, z),vector():set(x, y, z),"level_name_dest", silent_mode)
end

 

При установке silent_mode = 1

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

 

stack trace:

001B:03BE5AF0 xrGame.dll

001B:00423CF5 XR_3DA.exe, IInputReceiver::IR_OnDeactivate()

001B:00412076 XR_3DA.exe, CApplication::OnEvent()

001B:004BAE80 XR_3DA.exe, CEvent::Signal()

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

 

При размещении в all.spawn - лог выше.

 

Мда, и менторы притихли... Какая незадача.

Переход с добавленной локации на стандартную.

 

Изменено пользователем Купер
Ссылка на комментарий

Здравствуйте.

Репу в процессе игры можно как-то поправить или никак?

Через game_relations.ltx совсем не вариант.

 

PS: тапёра бы в бар посадить...

PPS: Сам эти дни ничего не делал с игрой и тупо лёжа на диване стрелял в бармена...

Ссылка на комментарий
1 час назад, Saboteur сказал:

Репу в процессе игры можно как-то поправить

Да, можно ф-ией 

db.actor:change_character_reputation(number)

  • Согласен 1

Здесь могла быть ваша реклама.

Ссылка на комментарий

@mole venomous спасибо за ответ.

Я неправильно выразил мысль.

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

Т.е., допустим, мы попортили репу с долгом,

Приходим к бармену и у нас диалог появляется,

- Ну кому ты сегодня опять успел насолить?

- Да я это, как его...

- Говори, не бойся - порешаем.

- С долгом что-то не то вышло.

- С долгом? Ну сейчас посмотрим что ты там отчубучил.

...

- Ты, что - дурной? Ты зачем вынес базу? Тебе будет это стоить... (появляется сумма).

И варианты ответов:

- Извини, у меня тет таких денег.

- Деньги - тлен. Платим.

 

Репу отремонтировали.

Ссылка на комментарий

@Saboteur Насколько я понял, приведён пример не с возможностью поправить репутацию, а отношение с группировкой.

Но так или иначе, нужно создавать диалог, который доступен лишь при условии, что ГГ кому то враг или имеет плохую репу. 

Насчёт отношений с группировками, это есть почти во всех модах на основе АМК, в т.ч. и весьма старых (всяческие Солянки, ОП, НЛС). Именно в них можно "подсмотреть" реализацию идеи.

 

 

Изменено пользователем mole venomous
  • Согласен 1
  • Полезно 1

Здесь могла быть ваша реклама.

Ссылка на комментарий

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

Изменено пользователем naxac
  • Полезно 3

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

Всем вечера доброго! При распаковке спавна от НС16, вылазит данная ошибка(наверное) и распаковка прекращается...

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

 

1.png

Ссылка на комментарий

@КрИвОй БоБ тут и дальше. Общий принцип. Кто-то из разработчиков во времена оны выкладывал. Не факт, что для актуального патча, но принцип понятен: ACDC НС-16.

  • Полезно 3
Ссылка на комментарий

Кто-нибудь пытался сделать ролик по этой инструкции?

http://stalkerin.gameru.net/wiki/index.php?title=Создание_и_конвертирование_видеофайлов_в_игровой_формат

Первый вариант не работает, т.к.  нужный кодек Theora  не появляется в списке доступных. Перебирал старые версии паков - без толку.

Второй вариант работает, но прога жутко режет битрейт. Для сравнения у меня на выходе получается 8 кбит/сек, в то время как у оригинальных в среднем 300-500 кбит/сек (dream_rats - 831!) Естественно, выглядит мой ролик не очень.

Есть какие-то мысли, что с этим делать? 

У второй проги есть настройки, только не пойму, как ими пользоваться. Кто-то знает?

Ссылка на комментарий

Вот так попробовал:

ffmpeg2theora-0.23 glitch.m2v -o glitch.ogv     --videoquality 10   --videobitrate 16778

Т.е. выставил максимальные качество и битрейт. На выходе получил 29 кбит/сек. Уже лучше, но далековато еще до нормы:grin2:

Ссылка на комментарий
6 минут назад, Muzafir сказал:

ffmpeg2theora-0.23 glitch.m2v -o glitch.ogv     --videoquality 10   --videobitrate 16778

ffmpeg2theora-0.23 --videoquality 10   --videobitrate 16778 glitch.m2v

Так пробуй.

Можно онлайн конвертером воспользоваться, если не получается. https://video.online-convert.com/ru/convert-to-ogv

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

ed_rez.gif

c1f11b67ff360413e81b4e4dcf21eb41.jpg

Ссылка на комментарий

Ок, спасибо, сейчас попробую. Мой ролик после конвертации игра не принимает. Просто крашится без лога, когда он начинается

Ссылка на комментарий

А где прописываются кнопки по умолчанию для панели управления в настройках? Добавил туда один элемент. Но надо назначать кнопку управления. И два элемента тоже не назначены.

Изменено пользователем Stalkersof
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

×
×
  • Создать...