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

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


Halford

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

PavelSnork, ну, за этим лезть только в движок. Ты будешь первым если найдешь переменную(ые) которые за них отвечают. :)

Legend of Stalker

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


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

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

FATAL ERROR

[error]Expression    : assertion failed
[error]Function      : doors::door::door
[error]File          : D:\prog_repository\sources\trunk\xrGame\doors_door.cpp
[error]Line          : 36
[error]Description   : m_object.get_door_vectors( m_closed_vector, m_open_vector )


stack trace:

 

Получил вот такой лог при загрузки той локи, на которой эта дверь заспавнена.

П.с. Модель двери сделана новая, но на костях стандартной двери.

 

 

Добавлено через 17 мин.:

Akella-96 aka SvD, новый класс регистрируется в class_registrator.script.

cs_register    (object_factory, "CAI_Trader", "se_stalker.se_trader",    "AI_TRD_S",     "script_trader")

CAI_Trader -клиентский класс для движка игры

se_stalker.se_trader - ссылка на скрипт, функцию, которая управляет этим классом(спавн и пр.)

AI_TRD_S - класс, который прописывается в конфиге созданного трейдера

script_trader - что это незнаю, но регистрируется в _g.script

 

 

Находим строчки

function start_game_callback()

aa = alife()

 

squad_community_by_behaviour = {

["stalker"] = "stalker",

["bandit"] = "bandit",

["dolg"] = "dolg",

["freedom"] = "freedom",

["army"] = "army",

["ecolog"] = "ecolog",

["killer"] = "killer",

["zombied"] = "zombied",

["monolith"] = "monolith",

["monster"] = "monster",

["monster_predatory_day"] = "monster",

["monster_predatory_night"] = "monster",

["monster_vegetarian"] = "monster",

["monster_zombied_day"] = "monster",

["monster_zombied_night"] = "monster",

["monster_special"] = "monster"

}

 

 

 

 

monster_classes = {

[clsid.bloodsucker_s] = true,

[clsid.boar_s] = true,

[clsid.dog_s] = true,

[clsid.flesh_s] = true,

[clsid.pseudodog_s] = true,

[clsid.burer_s] = true,

-- [clsid.cat_s] = true,

[clsid.chimera_s] = true,

[clsid.controller_s] = true,

-- [clsid.fracture_s] = true,

[clsid.poltergeist_s] = true,

[clsid.gigant_s] = true,

-- [clsid.zombie_s] = true,

[clsid.snork_s] = true,

[clsid.tushkano_s] = true,

[clsid.psy_dog_s] = true,

[clsid.psy_dog_phantom_s] = true}

 

stalker_classes = {

[clsid.script_actor] = true,

[clsid.script_stalker] = true}

 

weapon_classes = {

[clsid.wpn_vintorez_s] = true,

[clsid.wpn_ak74_s] = true,

[clsid.wpn_lr300_s] = true,

[clsid.wpn_hpsa_s] = true,

[clsid.wpn_pm_s] = true,

[clsid.wpn_shotgun_s] = true,

[clsid.wpn_auto_shotgun_s] = true,

[clsid.wpn_bm16_s] = true,

[clsid.wpn_svd_s] = true,

[clsid.wpn_svu_s] = true,

[clsid.wpn_rg6_s] = true,

[clsid.wpn_rpg7_s] = true,

[clsid.wpn_val_s] = true,

[clsid.wpn_walther_s] = true,

[clsid.wpn_usp45_s] = true,

[clsid.wpn_groza_s] = true,

[clsid.wpn_knife_s] = true,

[clsid.wpn_grenade_f1_s] = true,

[clsid.wpn_grenade_rgd5_s] = true,

[clsid.wpn_grenade_launcher] = true,

[clsid.wpn_grenade_fake] = true}

 

artefact_classes = {

[clsid.art_bast_artefact] = true,

[clsid.art_black_drops] = true,

[clsid.art_dummy] = true,

[clsid.art_electric_ball] = true,

[clsid.art_faded_ball] = true,

[clsid.art_galantine] = true,

[clsid.art_gravi] = true,

[clsid.art_gravi_black] = true,

[clsid.art_mercury_ball] = true,

[clsid.art_needles] = true,

[clsid.art_rusty_hair] = true,

[clsid.art_thorn] = true,

[clsid.art_zuda] = true,

[clsid.artefact] = true,

[clsid.artefact_s] = true}

 

printf ("start_game_callback called")

smart_names.init_smart_names_table()

task_manager.clear_task_manager()

sound_theme.load_sound()

xr_sound.start_game_callback()

dialog_manager.fill_phrase_table()

xr_s.init()

sim_objects.clear()

sim_board.clear()

sr_light.clean_up ()

pda.add_quick_slot_items_on_game_start()

-- Tестирование оптимизации

--local test_object = test_object.test_object_class()

--test_object:test()

end

 

и добавляем по анологии с другими классами. Например так:

monster_classes = {
        [clsid.bloodsucker_s]             = true,
...
Добавляем:
[code]monster_classes = {
        [clsid.bloodsucker_s]             = true,
        [clsid.script_trader]             = true,

[/code]

 

 

Все, наш класс добавлен и не будет вылетать при спавне. Удачи!

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

Legend of Stalker

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


Ссылка на сообщение
Akella-96 aka SvD, покажи что и как делал. Я не телепат.

Legend of Stalker

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


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

Akella-96 aka SvD, простыми словами. Поправь

CCropper

на

CSnork

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

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

Legend of Stalker

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


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

Artos, благодарю. Присоединяюсь ко второму вопросу Akella-96 aka SvD что за строка такая?

species        = snork

Legend of Stalker

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


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

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