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

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


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

@DarkSnowder а, ты об этом.

 

Впиши в логику:

show_spot = false

  • Согласен 1

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

Hello,
Someone can explain me what is this and how it works:

Привет,
Кто-нибудь объяснит мне, что это такое и как это работает:

game_graph.ltx

[location_1]
  000          = "..."
  001          = "ограниченный доступ"
  002		   = "запрещенный доступ"
  
[location_2]
  000          = "..."
  001		   = "не для игрока"

[location_3]
  000          = "..."



как работает иерархия Team>Squad>Group (spawn section properties)?

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

@Borovos по логике запрещает передвижения по граф поинтам для нпс, ваш кэп.

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

1 час назад, imcrazyhoudini сказал:

@Borovos logically prohibits movement on graph points for NPC, your cap.

 

I understand this:
location_1 : 000 : open to all npc and monsters

location_1 : 001: some can go here but not all of them (so, who is limited? How control the limited access if it's possible?)

location_1 : 002: npc or monsters can't go here

 

location_2: 000 : by default, the player can be here (spawn at the relaod?)

location_2: 001: the player can not be here

 

location_3 : unknow

 

Есть варианты, откуда украсть способность котэ-баюна к усыплению? Хочу прикрутить на OGSM.

@Hind в золотом шаре баюн ненадолго заставлял гг закрыть глаза.

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

14 часов назад, Borovos сказал:

location_1 : 000 : open to all npc and monsters

При расстановки графпоинтов в сдк, по-умолчанию в свойствах:

Location, из game_graph.ltx
1: ...
2: ...
3: ...
4: ...

 

У ии (creatures\m_) есть параметр terrain:

[stalker_terrain]
255,000,255,255 ; ограничения по location_1, остальное разрешено
008,001,255,255 ; разрешено ходить по опасным местам на баре

 

На карте Бар, есть графпоинты с настройками:

Location
1: "Бар"
2: "ограниченный доступ"
 

В такие места, можно только нпс.

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

[burer_terrain]
255,000,255,255 ;на всех уровнях, по графам без описания
255,008,255,255 ;на всех уровнях, по туннелям
255,009,255,255 ;на всех уровнях, по подземельям


[location_0]
000 = "..."
001 = "эскейп (escape)"
002 = "свалка (garbage)"
003 = "агропром (agroprom)"
004 = "темная долина (dark valley)"
005 = "темная лаборатория (l04u_darklab)"
006 = "Росток (bar-rostok)"
007 = "Янтарь"
008 = "Милитари"
009 = "Мертвый город"
010 = "Болота"
011 = "Радар"
012 = "Радар бункер"
013 = "Припять"
014 = "станция АЭС"
015 = "Саркофаг"
016 = "Генераторы"
017 = "Военная лаборатория"

 

[location_1]
000 = "..."
001 = "равнина"
002 = "склоны"
003 = "болото"
004 = "мертвая земля"
005 = "деревня"
006 = "город"
007 = "промзастройка"
008 = "туннели"
009 = "подземелье"
010 = "водоем"
011 = "берег"
012 = "канал"
013 = "дороги"
014 = "железнодорожные насыпи"
015 = "искусственные заграждения"
016 = "крыши строений, вышки"

 

[location_2]
000 = "..."
001 = "здание"
002 = "свалка"
003 = "бурелом"
004 = "деревья"
005 = "кустарник"
006 = "радиационный очаг"

 

[location_3]
000 = "..."
001 = "Эскейп: Блокпост"
002 = "Эскейп: Заброшенная фабрика"
003 = "Эскейп: Нычка новичка"
004 = "Лаб X18: Коридор бюрера"

 

Всё это для раннего концепта "свободный алайф", где ии бродил на картах, случайным образом от графпоинта к графпоинту, и никаких смартов / ограничивающих рестрикторов. Можно и в финалке, всем нпс / мутантам прописать: [smart_terrains]
none = true, но без настройки графпоинтов почти бесполезно.

 

  • Спасибо 1

@h0N0r а что location 3 даёт? Да и 2 зачем, вроде 0 и 1 хватает...

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

привет
 

я работаю над Shadow Addon 0.8.8

с содержанием build 2232,2571,2588

компания-разработчик (признана нежелательной)* SDK save scene (SoC terrain/lh-maps/maps/work)
мои собственные дополнения

Hello
I'm working on Shadow Addon 0.8.8, with content from builds 2232 to 2588, spawn from old компания-разработчик (признана нежелательной)* save scene and my own addition. 

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


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

+ config folder: correct wrong, duplicate, disable and missing $spawn lines "Option for level editor"

#########################SPAWN FIX##############################

- all.spawn Shadow Addon 0.8.8 : 
    alife_l04u_labx18 : dar_karlik replaced by snork_indoor ; because of troubles in SDK
    alife_l05_bar: for bar_bolt spawn, section_name = stalker_ph_box_small replace by section_name = stalker ; because of troubles in SDK
    alife_l08u_brainlab: karlik_weak replaced by snork_indoor ; because of troubles in SDK
 
+fix errors in spawn 
Rename several spawn section and/or way using the same name 
 
Expression    : !m_border.empty()
Function      : CSpaceRestrictorWrapper::build_border
File          : .\space_restrictor_wrapper.cpp
Line          : 215
Description   : space restrictor has no border
Arguments     : mil_blockpost_sniper_position
=> not a restrictor

 

Expression    : assertion failed
Function      : CLevelGraph::vertex_position
File          : d:\games\stalker_src\trunk\xrai\level_graph_inline.h
Line          : 99
Description   : iFloor((source_position.z - header().box().min.z)/header().cell_size() + .5f) < (int)m_row_length
=> Error is in the next level => check Radar scene : Fixed by removing two mil_pseudodog_strong + a mil_zone_radioactive_strong_0008 which are outside the aimap, very far away.
Fixed by moving mil_af_dummy_dummy to 345,87/-45,55/-153,59 coordinates

 

[error]Expression    : !m_border.empty()
[error]Function      : CSpaceRestrictorWrapper::build_border
[error]File          : .\space_restrictor_wrapper.cpp
[error]Line          : 215
[error]Description   : space restrictor has no border
[error]Arguments     : sar_teleport_zone_0001
=> not a restrictor fo all of sar_teleport_zone_xxxx & sar_teleport_sphere_xxxx

 

error]Expression    : assertion failed
[error]Function      : CLevelGraph::vertex_position
[error]File          : d:\games\stalker_src\trunk\xrai\level_graph_inline.h
[error]Line          : 99
[error]Description   : iFloor((source_position.z - header().box().min.z)/header().cell_size() + .5f) < (int)m_row_length
stack trace:
=> Fix by moving aes2_zone_teleport_0026 & aes2_teleport_0026 to the roof of a unused building closed to the ai grid

 

[error]Expression    : !m_border.empty()
[error]Function      : CSpaceRestrictorWrapper::build_border
[error]File          : .\space_restrictor_wrapper.cpp
[error]Line          : 215
[error]Description   : space restrictor has no border
[error]Arguments     : aes2_space_restrictor_no_weapon
stack trace:
=> new parameter "Not a restrictor"

 

[error]Expression    : !m_border.empty()
[error]Function      : CSpaceRestrictorWrapper::build_border
[error]File          : .\space_restrictor_wrapper.cpp
[error]Line          : 215
[error]Description   : space restrictor has no border
[error]Arguments     : exit_to_generators_01
stack trace:
=> new parameter "Not a restrictor"

 

[error]Expression    : !m_border.empty()
[error]Function      : CSpaceRestrictorWrapper::build_border
[error]File          : .\space_restrictor_wrapper.cpp
[error]Line          : 215
[error]Description   : space restrictor has no border
[error]Arguments     : gen_zone_gravi_zone_0045
=> new parameter "Not a restrictor" for all gen_zone_

 

#########################MONSTERS and STALKERS##############################

+ config\creatures\game_relations.ltx
Add notes in english (googletranslate of developers comments)
[rank_relations] add build 2232 values 
[reputation_relations] add build 2205 values
Add more "goodwill_names" & values from build 1994
[communities_sympathy] add 0.1 value for ecolog
[rank_kill_points] add my own test values
[action_points]enemy_kill_reputation            = 5;0

[monster_relations] edits:
Replace all -2 values by -1 (now, the actor is not a prior target for all creatures, including npc)
Dogs are attacked by snorks - Dogs are neutrals with snorks : according to "dogs are afraid by snork" in design documents
Bloodsuckers are attacked by pseudodogs - Bloodsuckers are neutrals with dogs : according to "bloodsuckers are afraid by pseudodogs" in design documents
Rats are attacked by dogs & cats / rat have no enemy in Shadows Addon when they have a lot in build 2205
Add new species in table : dog_rat_eater : enemy with rat and tushkano / attacked by others monsters

 

+ config\creatures\m_stalker.ltx
Add new burn immunities to Kruglov - restored anomalies in rostok tunnel

 

+ config/creatures/m_phantom.ltx
Add more visual

 

+ m_dog.ltx
new section [dog_bulterier] with new species for specific monster_relations : according to "a sub species of dogs eating only rats" in design documents

+ config/text/eng/string_table_enc_mutants.xml - add dog_rat_eater species, named bullterrier
+ config/gameplay/encyclopedia_mutants.xml - add dog_rat_eater species, named bullterrier
+ config/gameplay/info_known_objects.xml - add dog_rat_eater species, named bullterrier
+ config/text/eng/stable_statistic_caption.xml - add dog rat eater species, named bullterrier
+ scripts/dialog_manager.script - add dog_rat_eater species, named bullterrier
+ scripts/xr_info.script - add dog_rat_eater species, named bullterrier

* config/creatures/m_snork.ltx [snork_indoor]:snork_weak replaced by [snork_indoor]:snork_strong


#########################GAME MTL##############################

+ gamemtl.xr : add friction to bushes mtl (value at 0.5;0)

 

#########################ZONE & ARTEFACT##############################

+/- zone_burningfuzz.ltx
remove [zone_burning_fuzz1] to clean up the file
replace section_name = zone_burning_fuzz1 by _weak to _strong version in all save scenes
min_speed_to_react decrease from _weak to _strong
reduce min_start_power & max_start_power for burning_fuzz_bottom_
add visual = physics\anomaly\tp_bottom for _bottom_

 

+ [zone_ameba] renamed to [zone_studen] according meshes name ; add particles; class = Z_RUSTYH

+/-[zone_ameba1] renamed to [zone_hvatalka] according meshes name ; remove ability to spawn artefacts

+ [zone_emi] add af_dummy spawn with low probability

+ [zone_no_gravity] add af_dummy_spring spawn with low probability

+ [torrid_zone] add af_cristall spawn with low probability

 

+ artefacts.ltx
all artefacts are spawn by anomalies
*Notes for my self: todo list about high tiers artefacts spawn

 

+ zones.ltx
add #include zone_ton.ltx + new file created
new section [zone_ton] = concept based on old dynamics ton.object for agr_underground level - use Z_RUSTYH Class and new meshes

 

#########################SPAWN ADDITION##############################
+ escape scene: 
add zone_burning_fuzz in tunnel

 

+garbage
add zone_studen in water

 

+ agroprom scene:
add zone_studen in water
add torrid_zone using old .anm path (move a waypoint for boar smarty) as in l03_agroprom.level.user_01-22-05_19-17-42

 

+ darkvalley scene:
add zone_studen in water
add unique_outfit for quest
add zone_burning_fuzz

 

+ bar scene:
add sim_ecolog_zob
add unique_wpn for quest
add zone_burning_fuzz

 

+ rostok scene:
add torrid_zone & fireball using old .anm path
add burning_fuzz anomalies
*Notes for my self: ecolog immutities to pass through fire anomaly field

 

+ military:
add a wpn_knife_m1
add zone_studen in water
add burning_fuzz anomalies

 

+yantar:
add statics particles to studen up and bottom in tunnel
replace physics object physics\anomaly\topolinypuh by zone_burning_fuzz_average

 

+ deadcity:
add unique item for quest
add burning_fuzz anomalies


+ military:
add a wpn_knife_m1 


#########################QUESTS##############################
config/misc/task_manager.ltx
config/misc/unique_items.ltx
config/gameplay/character_desc_military
config/gameplay/character_desc_darkvalley
config/gameplay/character_desc_agroprom
config/text/eng/string_table_enc_weapons.xml
config/text/eng/stable_task_manager.xml


Restore:
tm_find_item_2
ecolog_monster_part_6
ecolog_monster_part_7
ecolog_monster_part_8
ecolog_find_artefact_6
ecolog_kill_stalker_1

dolg_kill_stalker_2
dolg_kill_stalker_3
dolg_kill_stalker_4
dolg_kill_stalker_5
dolg_kill_stalker_6        

dolg_find_item_2
dolg_find_item_3
dolg_find_item_4

freedom_kill_stalker_1
freedom_kill_stalker_2
freedom_kill_stalker_3
freedom_kill_stalker_7

freedom_find_item_1
freedom_find_item_2


#########################WPN/OUTFIT############################
Restore:
wpn_knife_m1 (increase hit_impulse)
susat_anom
scope_m1

outfit_bandit_anom

 

 

#########################SCRIPT##############################

+xr_info.script
local info_by_rank = {stalker...

when there is no stalker rank for npc, so, replaced by

local info_by_rank = {experienced...

 

+xr_statistic.script
add the new species dog_bulterier

 

+ _g.script

function set_actor_rank(rank)
    if rank == "novice" then
        db.actor:set_character_rank(0)
    elseif rank == "stalker" then
        db.actor:set_character_rank(300)
    elseif rank == "veteran" then
        db.actor:set_character_rank(600)
    elseif rank == "master" then
        db.actor:set_character_rank(900)
    end
end

 

replaced by

function set_actor_rank(rank)
    if rank == "novice" then
        db.actor:set_character_rank(0)
    elseif rank == "experienced" then
        db.actor:set_character_rank(300)
    elseif rank == "veteran" then
        db.actor:set_character_rank(600)
    elseif rank == "master" then
        db.actor:set_character_rank(900)
    end
end

 

 
Вот два отчета об одной и той же ошибке, Аварийный выход L04u_labx18

During a test game, I obtain this crash at the exit of Lab X18.
 

Unconventional M_SPAWN received : cgf[false] | bReady[true]
- Game configuring : Finished 
stack trace:

0023:05E4BD49 xrGame.dll
 
[error][     259]    : No data available.

и загрузка автоматического резервного копирования
And this log when I reload the auto save.

CLIENT: Spawning...
- Game configuring : Started 
- Game configuring : Finished 
* phase time: 175 ms
 
FATAL ERROR
 
[error]Expression    : fatal error
[error]Function      : mem_usage_impl
[error]File          : E:\stalker\sources\trunk\xrCore\memory_usage.cpp
[error]Line          : 156
[error]Description   : <no expression>
[error]Arguments     : bad node in heap
 

stack trace:

 

Если эти отчеты что-нибудь тебе скажут. Я думаю о проблеме с зонами ameba, studen...

спасибо за помощь

 

If you have a info about this log. I think the troubles are related to zone_ameba, zone_studen...
Thank you.
 

Скрытый текст
[zone_studen]
GroupControlSection	= spawn_group_zone
$spawn 			= "zones\ameba_studen"
;$prefetch 		= 16
class			= Z_RUSTYH;Z_AMEBA
visual			= physics\anomaly\anomaly_studen

hit_impulse_scale	= 0.0
effective_radius	= 0.75 ;размер радиуса в процентах от оригинального, где действует зона
max_velocity_in_zone= 0.5
sound			= 
postprocess		= postprocess_new

ef_anomaly_type			= 1
ef_weapon_type			= 13

artefacts		= af_rusty_thorn,0.7,af_rusty_kristall,0.25,af_rusty_sea-urchin,0.05
BirthProbability = 0.1

;----------- Anomaly settings -----------------------
min_start_power		= 0.9;90
max_start_power		= 1.0;100
attenuation			= 1
period				= 1
min_artefact_count	= 1
max_artefact_count	= 2
min_speed_to_react  = 1.0

hit_type		= chemical_burn

idle_particles				= anomaly2\studen_idle_bottom
blowout_particles			= anomaly2\studen_blowout

hit_small_particles			= anomaly2\group_items\studen_idle_bottom_00
hit_big_particles			= anomaly2\group_items\studen_idle_bottom_00

idle_big_particles		= anomaly2\anomaly_studen
idle_small_particles		= anomaly2\studen_idle_up

entrance_small_particles	= anomaly2\group_items\studen_idle_bottom_00
entrance_big_particles		= anomaly2\group_items\studen_idle_bottom_00

disable_time		= -1	;время игнорирования неживого объекта в зоне (-1 если не нужно)
disable_time_small	= 500		;время игнорирования маленького неживого объекта в зоне (-1 если не нужно)
disable_idle_time	= -1	;время отключения idle партиклов

ignore_nonalive		= false;
ignore_small		= false;
ignore_artefacts	= true

awaking_time		= 1000
blowout_time		= 5000	
accamulate_time		= 10000

attack_animation_start	= 0
attack_animation_end	= 5000

blowout_light		= off
idle_light			= off

;light_color		    = 1.4,1.6,1.3
;light_range		    = 30.0
;light_time 		    = 0.8;0.35
;light_height		= 1.5			;rise to the height of the light source

visible_by_detector = off

blowout_wind		= off

;blowout_wind_time_start     = 0
;blowout_wind_time_peak      = 1500
;blowout_wind_time_end		= 2501; 2499
;blowout_wind_power			= 0.5			;Wind power raises (from 0 to 1), at the moment blowout_wind_time_peak

;Old personnal parameters
;idle_sound			= anomaly\gravi_idle00							;constant sound
;blowout_sound		= anomaly\teleport_work_2	;during ejection (stroke) in the center of the anomaly	
;hit_sound			= anomaly\fear_1  ;anomaly\anomaly_gravy_hit1	;on the character when he gets hit
;body_tearing_sound	= anomaly\anomaly_body_tear_1						;sound of tearing of the corpse
;entrance_sound		= anomaly\swamp_appear_1						;in contact with the object of an anomaly

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;рождение артефактов во время срабатывания
spawn_blowout_artefacts = off

[zone_hvatalka]
GroupControlSection	= spawn_group_zone
$spawn 			= "zones\ameba_hvatalka"
$prefetch 		= 64;16
class			= Z_RUSTYH ;Z_AMEBA
visual			= physics\anomaly\anomaly_hvatalka

hit_impulse_scale	= 0.
effective_radius	= 0.75 ;размер радиуса в процентах от оригинального, где действует зона
max_velocity_in_zone= 0.5
sound			= zone_mosquito_bald
postprocess		= postprocess_new

ef_anomaly_type			= 1
ef_weapon_type			= 13

artefacts		= 
BirthProbability = 0.0

;----------- Anomaly settings -----------------------
min_start_power		= 0.9;90
max_start_power		= 1.0;100
attenuation			= 1
period				= 1
min_artefact_count	= 1
max_artefact_count	= 2
min_speed_to_react  = 1.0

hit_type		= chemical_burn

disable_time		= -1	;время игнорирования неживого объекта в зоне (-1 если не нужно)
disable_time_small	= 500		;время игнорирования маленького неживого объекта в зоне (-1 если не нужно)
disable_idle_time	= -1	;время отключения idle партиклов

ignore_nonalive		= false;
ignore_small		= false;
ignore_artefacts	= true

awaking_time		= 1000
blowout_time		= 5000	
accamulate_time		= 10000

attack_animation_start		= 0
attack_animation_end		= 5000

blowout_light		= off
idle_light			= off

visible_by_detector = off

blowout_wind		= off

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;рождение артефактов во время срабатывания
spawn_blowout_artefacts = off

 

 

 

 

Изменено пользователем Опричник
спойлер

Попробовал я все-таки перенести свои наработки на движок OGSR, но возникло пара проблем:

1) Поменялся террейн всех локаций (абсолютно хаотичный) + непонятные дыры в некоторых местах

2) Не отображаются некоторые иконки в инвентаре (черные ячейки)

@ALEKCZY покажи лучше.

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

@ALEKCZY чёрные ячейки - наверное нет иконок (может в логе указано), пересмотри координаты.

 

На счёт террейна - что-то с шейдерами, я надеюсь ты свои шейдеры удалил и оставить лишь те, что с ОГСР.

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

В общем, хочу сделать в моем моде (который на базе OGSM + FWR Lite Pack) чтобы в зоне постоянно была пасмурная, мрачная погода. 
Для этого в ванильном моде есть скрипт с настройкой, где от имени переменной (dark / defaukt) будет соотвественно мрачная или обычная погода.

В этой сборке - кто то поковырялся, и вырезал эту мрачную погоду (sect_dark) из инклудов в environment.ltx. Я поправил - и вот что выходит:
Изначально, при загрузке сохранения, погода такая же как и была - солнечная, без облаков, дождика, и прочей атрибутики. Стоить поспать, чтобы часы перевалили за 00:00 - как сразу становится та, мрачная погода. При сохранении, и загрузке сейва с "Мрачной" погодой, она автоматом ставиться на обычную, и так по кругу.

Что делать? Прилагаю ниже папку weathers и скрипт level_weather, где записана "что будет, если переменная будет..."

Большое пожалуйста, помогите :wacko2:

 

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

 

function WeatherManager:reset()
    --printf                    ("WeatherManager:WeatherManager():Reset()")
    -- Загрузить кондлист с погодой.
    local ini = ini_file("game.ltx")
    local weather
    if ogsm_options.weather == "dark" then
        weather = utils.cfg_get_string(ini, level.name(), "weathers2", db.actor, false, "", "dark")
    else 
        weather = utils.cfg_get_string(ini, level.name(), "weathers", db.actor, false, "", "default")
    end
    local postprocess = utils.cfg_get_string(ini, level.name(), "postprocess", db.actor, false, "")
    if postprocess ~= nil then
        --printf("LEVEL POSTPROCESS: level: [%s], postprocess: [%s]", level.name(), postprocess)
        level.add_pp_effector(postprocess, 999, true)    
    else
        --printf("LEVEL POSTPROCESS: level: [%s], postprocess: [none]", level.name())
        level.remove_pp_effector(999)
    end    

    if (level.name() == "l08_yantar" and has_alife_info("yan_controller_respawn_01")) or
       (level.name() == "l10_radar" and has_alife_info("bun_antenna_off")) or
       (level.name() == "l11_pripyat" and has_alife_info("freeplay")) or
       (level.name() == "l12_stancia" and has_alife_info("freeplay")) or
       (level.name() == "l12_stancia_2" and has_alife_info("freeplay")) then
        self.weather_list = xr_logic.parse_condlist(db.actor, level.name(), "weather", ogsm_options.weather)
    else
        self.weather_list = xr_logic.parse_condlist(db.actor, level.name(), "weather", weather)
    end    
    self:select_weather(true)
end

 


Гугл Диск папки weathers

@Hind зачем скрипт?

 

Укажи в game_maps_single.ltx вместо обычной погоды dark (кроме подземок).

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

@imcrazyhoudiniА всё равно, поменял - захожу на сейв (картинка кстати с мрачной погодой) - и ничё.

@Hind @Hind оставь оригинальный скрипт. Проверено много раз.

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

@imcrazyhoudini поменял - не помогает.

Разобрался. Проблема оказалась в enviorment.ltx, создатель сборки (rnm) поменял все погоды на свою секцию.

Дёрнул из золотого шара функцию "усыпление" актора котами. cats() поставил на апдейт в бинд.сталкер. При загрузке - 

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

[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp
[error]Line          : 73
[error]Description   : <no expression>
[error]Arguments     : LUA error: ...d\s.t.a.l.k.e.r. hum 1.1\gamedata\scripts\hum.script:588: attempt to index global 'self' (a nil value)


 

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

function cats()
local obj  = self.object
local id = get_clsid(obj)
if (id == clsid.cat_s and self.object:alive() and self.object:see(db.actor)) then
local posit = self.object:position()
    if posit:distance_to(db.actor:position()) < 10 then
            cat_sleep()
    end
end
end


 

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

function cat_sleep()
rnd = math.random(1, 10)
if rnd == 1 then 
    level.add_pp_effector("agr_u_fade.ppe", 2007, false)
    level.add_pp_effector("total_recall.ppe", 2008, false)
    db.actor:stop_talk()
    db.actor.power =-0.05
end
if rnd == 2 then 
    --level.add_pp_effector("agr_u_fade.ppe", 2007, false)
    --level.add_pp_effector("total_recall.ppe", 2008, false)
    --db.actor:stop_talk()
    --db.actor.power =-0.05
end
if rnd == 3 then 
    --level.add_pp_effector("agr_u_fade.ppe", 2007, false)
    --level.add_pp_effector("total_recall.ppe", 2008, false)
    --db.actor:stop_talk()
    --db.actor.power =-0.05
    --soundtrack.actor_need_sleep()
end
end

 

@Hind возможно нет каких-то скриптовых функций в движке.

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

16 часов назад, Hind сказал:

attempt to index global 'self'

Насколько я понимаю - self это ссылка на переменную/функцию внутри собственно скрипта в котором он, селф, вызывается. Соответственно вылет скорее всего идет по строке "local obj  = self.object", скорее всего у тебя в скрипте(до выше показанной функции) не задано, что\кто именно выступает в роли self.objectа.

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

Pz_3.gif

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

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

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

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

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

Войти

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

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

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