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

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


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

почему если сделать как написано, то совсем не работает?

У всех работает, а у тебя нет... Не странно-ли ?

Выкладывай, что ты там сделал "как написано", будем посмотреть... и поправить.

Изменено пользователем UnLoaded
  • Согласен 1
Ссылка на комментарий

Я наверное слоупок. Узнал, что сталкеры могут подбирать то, что плохо лежит, не только под управлением watcher_act.script, но и под движковым управлением. Есть там соответствующая схема поведения. Да еще как подбирать, со свистом. Кто играл в Солянку, могут вспомнить гаусс-пистолет в ТД. Естественно, никакие скриптовые исключения на это дело не действуют. Я нашел единственный способ, как уберечь предмет от этих хапуг. В его нетпакете нужно сбросить флаг flUsefulForAI:

function clear_useful_for_ai( sobj )
  local pk = get_netpk( sobj, 1 )
  ASSERT( ( pk and pk:isOk() ), "can't read netpacket of %s", sobj:name() )
  local data = pk:get()
  data.object_flags = bit_and(
    data.object_flags, bit_not( object_flags.UsefulForAI )
  )
  pk:set( data )
end

И делать это нужно до того, как предмет выйдет в онлайн, т.к. этот флаг копируется в клиентский объект.

Изменено пользователем dsh
  • Полезно 3
Ссылка на комментарий

Узнал, что сталкеры могут подбирать то, что плохо лежит

Во дела. А я все время думал, что возможность установить/убрать в СДК параметр Visible for ai всего лишь фикция и не работает. Ну во всяком случае не помню, чтобы у меня подбирали предметы и так и эдак.

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

@HellRatz, я в исходниках не докопался, по какому признаку определяется, какой предмет подбирать, а какой нет. Все, что понял, что подбираться будет инвентарный предмет и чем дороже, тем вероятнее.

 

Еще эту схему можно разрешать и запрещать, как любую другую схему поведения. В некоторых скриптах это делается, в xr_wounded к примеру и в state_mgr.

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

Всем привет.  Подскажите пожалуйста, возможно сделать такое в ТЧ?  Суть вопроса, стоит кучка нпс(ов), допустим полукругом или кругом. Как эту кучку отшвырнуть в разные стороны хотя бы на 1.5м, без хита. Пробовал баловаться с аномалией gravi , эффект не впечатлил, потому как отталкивает и вновь затягивает во внутрь. Аномалия лифт, тоже не дала нужного эффекта, может кто пробовал, добиться чего то подобного, поделитесь  пожалуйста. 

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

@Х_и_м_и_к, попробуй так, грубо, без подробностей. Берешь клиентский объект каждого непися, берешь его физическую оболочку и прикладываешь к ней нужную тебе силу, в нужном направлении. Или, если нужно их как-то кувырком раскидать, берешь нужную кость и так же прикладываешь силу.

 

Физическая оболочка получается вот так:

obj:get_physics_shell()

Кость, к которой можно силу приложить, получается вот так:

obj:get_physic_shell():get_element_by_bone_name( "bip01_head" )

Сила прилагается вот так

:apply_force( x, y, z )

Это метод полученной оболочки или элемента кости. Параметры - сила по соотв. оси.

Изменено пользователем dsh
  • Нравится 1
Ссылка на комментарий

Все, что понял, что подбираться будет инвентарный предмет и чем дороже, тем вероятнее.

На самом деле там таких схем 2 штуки: одна для алайфа, другая для комбата. Подбирается только оружие, если определится, что оно "лучше" имеющегося.

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

Ребята, кто не будь пробовал исправить проблему последнего дня - месяца?

Я гуглил но кроме темы на этом форуме не чего найти не удалось. Есть плагин но он только на чистый АМК, а желательно бы на чистую игру 1.0006.

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

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

Берем, и ВЕЗДЕ меняем. Либо на game.CTime(), либо сохранения делаем как-то типа вот так:

 

    local n = 0    -- корректировка и сохранение времени
    for k, v in pairs( tm_sec ) do n = n + 1 end
    pk:w_u32( n )
    for k, v in pairs( tm_sec ) do pk:w_stringZ( k ); pk:w_float( v - game_time_sec ) end
    n = 0
    for k, v in pairs( tm_ms ) do n = n + 1 end
    pk:w_u32( n )
    for k, v in pairs( tm_ms ) do pk:w_stringZ( k ); pk:w_float( v - game_time_ms ) end

преимущества последнего варианта - меньший объем сэйва, быстрее все вычисления, недостаток - кто-то из принципа может проторчать на одной локации не сохраняясь до 35 мая. ;)
 

Ссылка на комментарий
Ребята, кто не будь пробовал исправить проблему последнего дня - месяца?

Я уже не сильно давно такой вопрос задавал. Радикальное решение- лезть в движок, но оно мне не катит. И один человек мне кидал ссылки, мод УЗИ, если что. В итоге, он выложил скриптовые правки в файле amk.script, и все покатило. Можно смело больше месяца играть, сейвиться и все работает: погода, выбросы. сон и прочее. На форуме АГФЦ есть такой человек - gruzin, рекомендую стукнуть к нему в личку, может поможет. По факту, там правились только таймеры.

 

П.С. Я просто сейчас уже не вспомню, какие конкретно строки менялись, чтоб не вводить в заблуждение (пишу с работы).

 

П.П.С. тебе ж чистый ТЧ нужен, мой вариант не прокатит.

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

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

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

выкладываю:

[trader]
buy_condition = generic_buy
sell_condition = generic_sell

[generic_buy_light]
........
wpn_ak74                 = 1,   1
.......   

wpn_lr300   = 1, 1   

Т.е прописал, чтобы покупали ВСЕ нпс именно эти стволы к примеру. И что я вижу? Крайне редко кто, его сразу  берет, обычно надо кидать под ноги и надеяться что он его возьмет!!! И никак иначе!

Изменено пользователем Eugen81
Добавлено Eugen81,

Заканчиваем эксперименты со шрифтами - есть тег [ code ]...[ /code ]

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

@Dennis_Chikin, это в g.script?

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

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

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

[trader]

buy_condition = generic_buy

sell_condition = generic_sell

Это все из секции [trader] ? Обычно в этой секции три параметра: buy_condition, sell_condition и buy_supplies.

Что за секция [generic_buy_light] ? Её нет нигде в секции [trader], она и обрабатываться не будет.

 

Крайне редко кто, его сразу  берет

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

То, что непись будет "согласен" купить у ГГ прописывается в buy_condition, у тебя там одна секция generic_buy, следовательно в ней должны быть прописаны предметы которые тебе хочется продавать неписям.

Изменено пользователем UnLoaded
Ссылка на комментарий
это в g.script?

 

Ну, у меня отдельным модулем. И все "временные" данные на сохранение везде кладутся в отдельное место, и сохраняется тоже  в отдельное место.. Можно и прямо по месту сохранений, но их - МНОГО.

 

Принципиальная разница между двумя вариантами - либо операции с 64 битами, и время от старта игры или от изобретения персоналок, либо 32 бита "от загрузки".

Изменено пользователем Dennis_Chikin
  • Спасибо 1
Ссылка на комментарий
Что за секция [generic_buy_light] ?

Сорри,так: generic_buy_default!!!(не то копирнул)

[trader]

buy_condition = generic_buy

sell_condition = generic_sell

 

 

[generic_buy_default]

af_medusa                               

af_cristal_flower                 

af_night_star

........

    wpn_ak74                 = 1,   1

.......   

 

wpn_lr300   = 1, 1       

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

вот дословно ,с начала:

[trader]

buy_condition = generic_buy

sell_condition = generic_sell

 

 

[generic_buy_default]

af_medusa                               

af_cristal_flower                 

af_night_star                           

af_vyvert                               

af_gravi                                

af_gold_fish  

и тд...дальше         

может какой косяк в файле?
так вы скинте  тогда как должно быть правильно.У меня именно так,я ничего не менял,кроме правок оружия.

 

Изменено пользователем oleg-ba
  • Не нравится 1
Ссылка на комментарий
Читай, делай...

Спасибо вам конечно,по торговцам я знаю,а как добиться по нпс,не ясно,ибо мои правки НЕ РАБОТАЮТ СОВСЕМ.

Вы пишете что нету строки:Ну так и [generic_buy_default] нигде в [trader] нет

А у меня она есть([generic_buy_default]) не я же ее написал,короче отчего торговля с нпс не работает,не ясно.

Я же не буду САМ с нуля переписывать файл trade_generic.ltx, если там что то не так.

Изменено пользователем oleg-ba
Добавлено Kirgudu,

Пункт 2.5 правил форума, предупреждение.

Также повторное предупреждение по поводу калейдоскопа со шрифтами в постах (пункт 2.4).

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

Господа,мне кто нибудь может помочь по существу проблемы или будем выискивать,на техническом форуме, шрифты,орфографию и прочую муть???? 

зы:есть такой дшн,он тут тоже походу тусуется,так вот: он банил(и забанил) на сутки на своем амк.......за невыверение в тексте ПРОБЕЛОВ.Эти действия без комментариев,т.к это-за гранью понимания.

Добавлено Dennis_Chikin,

По существу вопроса будет 33 балла в шкалу и трое суток на чтение пп правил 2.5, 2.1.1 и 9.1

 

  • Не нравится 3
  • Сомнительно 2
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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