Пользователей: 2
Гостей: 576
Всего: 578

» Подробно
Привет, гость!








Автор Сообщение
АнархОПанк
    
Посты: 998
Откуда:
Возраст:
14-08-2010 11:39 GMT3 час. #1316950   
batment с твоим опытом лучше этого пока не делать...


АнархОПанк
    
Посты: 998
Откуда:
Возраст:
14-08-2010 12:22 GMT3 час. #1316986   
batment а


конвертировать модели НПС через SDK


это тоже?

Поверь в это тебе пока лучше не лезть. Освой примитивные азы прежде.


Sine
    
Посты: 960
Откуда: Краснодар
Возраст: 30
14-08-2010 12:25 GMT3 час. #1316988   
singapur22 короче я вроде наколдовал с иммунитиес, но не могу ни как заставить нпс юзать именно те иммунитис которые я им даю.


Last Day Mod Team work |==>>>ПОСЛЕДНИЙ ДЕНЬ
Кто понял с первого раза,
Тот ловит музу,
Когда каждая фраза
Ломает все сразу.
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
14-08-2010 15:00 GMT3 час. #1317134   

# Artos :...А вот как влияет установленное db.actor.healt = iValue (где/как запоминается)...
Стал интересен ваш с singapur22 разбор этого параметра.
Решил сделать анало

отредактировал(а) Gun12: 14-08-2010 17:32 GMT3 час.

Не стань номинантом премии Дарвина.
VVV32768
    
Посты: 12
Откуда:
Возраст:
14-08-2010 15:26 GMT3 час. #1317151   
DudeFromThePasT Есть специльная прога RST Universal Patcher она патчит от 0 до 6 как туда так и обратно. Для неё нужен архив(спец.патчей) я двух не нашёл 4 и 5. В остальном работает безупречно. Но можно схитрить вернуть с 6 на 0 например ( т.е. вернуть к оригиналу)а потом поставить обычную 4.


GHOST
Artos
    
Посты: 4176
Откуда:
Возраст: 66
14-08-2010 15:33 GMT3 час. #1317155   
Gun12
Согласись, фраза "Работает как и задумывалось" - двусмысленна.
Собственно изначально есть две точки зрения:
1. (singapur22)
Установка параметра/свойства 'db.actor.health' является не приравниванием к задаваемому значению, а добавлением задаваемого значения (iValue) к текущему значению здоровья, неуказываемому при операции изменения, т.е.:
  db.actor.health = iValue
2. (Artos)
Установка 'db.actor.health' является непосредственным заданием требуемого значения здоровья, т.е. для увеличения/уменьшения требуется к текущему значения добавлять разницу (iValue):
  db.actor.health = db.actor.health + iValue

Собственно то, что в рабочемдиапазоне зоровья (0...1) однозначно справедлив вариант 2 - подтверждается на практике. Вариант 1 - некорректен.
Однако, при 'нештатных' значениях, т.е. за пределами рабочего диапазона (<0 or >1) вариант 1 вполне имеет место быть.

Некая странность все же есть: непосредственная установка db.actor.health = iValue НЕ(!) устанавливает 'db.actor.health' в заданное значение, а является отложенной установкой, т.е. это значение (скорректированное и др. влияющими на здоровье параметрами) возвращается параметром/свойством 'db.actor.health' только на следующем цикле апдейта.
Хотя это не особенно важно (вроде) для имеющихся алгоритмов в игре, но при некотрых новых - может повлиять на корректность выполнения задуманного ...

Прим: Собственно выход за рабочий диапазон здоровья меня как-то не касался ранее, т.к. при изменениях искусственно вношу нормадизацию рабочего диапазона значения, но ... может быть и интересным в каких-то нестандартных ситуациях/случаях ... :-)


DudeFromThePasT
'Пропатчить' нужно патчем желаемой версии, а вот чтобы он НЕ отказался пропатчить - требуется:
- или установить версию игры ниже желаемого патча;
- или воспользоваться заготовками типа RST Universal Patcher, упомянутого VVV32768;
- или изменить ключик номера установленного патча в реестре твоей ОС (подробности можно найти в инете) на номер ниже желаемого патча.

Более правильно использовать первый вариант, т.к. все последующие патчи вносят изменения и не факт, что при откате на более низкую версию в твоей папке 'gamedata' не останется изменений от более старших ...

отредактировал(а) Artos: 14-08-2010 15:49 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
14-08-2010 16:08 GMT3 час. #1317179   
Artos
Я конечно извиняюсь, что влезаю со своими двумя копейками в спор таких зубров, однако моя практика совпадает с мнением singapur22.
Вот код который именно добавляет ГГ толик


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
14-08-2010 16:10 GMT3 час. #1317182   
Artos
Все эксперименты с этим значение приводят только к тому, что прав Singapur22
Это именно! число, с которым оперирует функция. Не более того.
И это число находится в клиентской таблице.
А значение, которое считывается, берется из серверной.
Написав db.actor.health = db.actor.health + X мы всего лишь записываем сумму здоровья из серверной таблицы и Х в клиентскую.
Весь этот процесс я постарался наглядно продемонстрировать в примере.

добавлено спустя 13 минут

Ключевые слова - это setmetatable и __index.
Когда значения db.actor.health а клиентской таблице не существует, а мы обращаемся к нему, то именно эти слова и заставляют искать это значение в серверной таблице.
Т.е. Практически может существовать 2 значения health
один в серверной таблице, который показывает реальное значение жизни
второй в клиентской, который только лишь участвует в вычислениях.
Также в примере можно увидеть почему изменение значения производится не сразу.
Т.е. необходимо дождаться апдейта.
Конечно же всё это сделано приблизительно, но как вариант для понимания сойдет.

отредактировал(а) Gun12: 14-08-2010 16:50 GMT3 час.

Не стань номинантом премии Дарвина.
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 16:45 GMT3 час. #1317202   
Ну наконецто откликнулись здравомыслящие люди. Я если честно, просто устал спорить. Да собсно и не зачем было. Главное сам знаю как с ним работать, а мнения других, и как они будут здесь справляться меня както мало интересует.
Artos Не в обиду. Но ты действительно не прав. Тестируя, ты всё время пытаешся оперировать действиями сложения, причём в глубоких смыслах понимания кода. А нужно то было, всеголишь попытаться изменить значение здоровья не в положительную сторону, а именно в сторону его уменьшения. Тоесть. Например, имеем текущее здоровье 1.0 Нам нужно его уменьшить до значения 0.8 Работая м клиентской переменной health, имеется только один способ этого добиться. А именно:

db.actor.health = -0.2

И никак по другому. Испробовано многократно на опыте.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Artos
    
Посты: 4176
Откуда:
Возраст: 66
14-08-2010 16:45 GMT3 час. #1317203   
Gun12
Сорри, что-то мы запутались в определениях и выводах :-(

1. Все мои эксперименты и уже многомесячная работа некоторых практических модулей из мода (те же лечебные костюмы) говорят о том, что только:
  db.actor.health = db.actor.health + iValue
корректно работает, т.е. изменяет значение здоровья до устанавливаемого уровня.
Эксперименты с:
  db.actor.health = iValue
приводят к тому, что какого-либо влияния на изменение здоровья НЕ происходит, т.е. 'лечебный 'эффект отсутствует.
Повторю, что имеб ввиду рабочий диапазон значений здоровья (0...1).

2. Ты не прав и относительно 'серверного' толкования. Серверный объект 'alife():actor()' и соответственно метод 'alife():actor():health()' совершенно иное, чем в твоих эквивалентах!
Уже писал ранее, что значение здоровья, возвращаемого серверным объектом НЕ равно клиентскому и никак не может трактоваться как ты описал:

Написав db.actor.health = db.actor.health + X мы всего лишь записываем сумму здоровья из серверной таблицы и Х в клиентскую.
'db.actor' - это клиентский объект и никакого обращения к серверному объекту НЕ производит.

Пока я пришел в выводу, что существует 3 (три) значения 'здоровья':
- alife():actor():health()
- db.actor.health - неизменное(!) в течении цикла апдейта
- отложенное устанавливаемое db.actor.health = iValue, которое где-то запоминается и влияет на алгоритм вычисления значения здоровья в следующем цикле апдейта.


singapur22
Ты опять оперируешь уходом из рабочего диапазона и только в меньшую сторону.
Я оперирую не искусственно задаваемой ситуацией, а реальной игровой:
Актор получает урон -> здоровье падает до, например, 0.5
Если подлечивать по твоему варианту:
  db.actor.health = 0.0025 (к примеру, раз в секунду), то НИКАКОГО лечения не происходит.
Вариант с:
  db.actor.health = db.actor.health + 0.0025 - плавно поднимает здоровье

Как ты объяснишь это?
(обижаться при поиске истины -? Что-то ты меня за институтку принимаешь :-))

Ну а фраза об усталости 'спорить' - хм, вероятни это никому не нать ... Останемся при своем ...

отредактировал(а) Artos: 14-08-2010 16:57 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 16:56 GMT3 час. #1317208   
Artos Просто, зайди ко мне в журнал. И почитай две страницы "Супер_Мега_Пупер_Броник" (лечение) и "Результат нового хитпараметра "вирус"" (уменьшение здоровья). Если есть желание, можешь потестировать имеющиеся там коды. Я правда создавал их ещё пол года тому назад, или даже больше, но они работают именно так, как и планировалось.
А с твоим вариантом, здоровье сразу увеличится до максимума. Тобишь до единицы.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Artos
    
Посты: 4176
Откуда:
Возраст: 66
14-08-2010 17:00 GMT3 час. #1317210   
singapur22
Я тебе привел тоже пример/коды из уже пару лет работающего модуля 'супер-пупер-броник' ...
Гляну конечно, но именно практическая проверка НЕ подтверждает твои данные (см. пост выше).


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 17:10 GMT3 час. #1317216   
Artos Вот тебе практический к**50016ea8aab1bb10eeba** med_obc = 0
end
end
end
[/code]

Это код из моего броника. Функция стоит на апдейте. Запуск оздоровления производится путём изменения значения переменной med_obc на единицу при падении здоровья ниже значения 0.6. Время оздоровления примерно две игровых минуты. Работает идеально.
Я не знаю, почему у тебя по другому. Может ты совсем с другой игрой копаешся?! :-)


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Artos
    
Посты: 4176
Откуда:
Возраст: 66
14-08-2010 17:28 GMT3 час. #1317235   
singapur22
Я взглянул твой 'super_outfit.script'. единственная операци


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 17:38 GMT3 час. #1317244   
Artos Нет. Как раз увеличивая его до минимально допустимого значения 0.4.
Ещё раз говорю, переменная health не устанавливает значение, а прибавляет. Это сделано в целях синхронизации множественных действий, связанных с увеличением, или уменьшением здоровья. Да. Вполне возможно что со здоровьем связанно не две, а три переменные. Первая (приватная) имеет реальное значение, вторая (публична, наша health) отвечает за передачу указанного значения третьей переменной путём сложения, и наконец третья (приватная, накопительная) после всех операций связанных со здоровьем в одном цикле, изменяет значение первой переменной. Это и может объяснять разность значений метода Health() и переменной health. Так как метод Health() определяет именно значение первой переменной.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Artos
    
Посты: 4176
Откуда:
Возраст: 66
14-08-2010 17:41 GMT3 час. #1317249   
singapur22
Похоже ты не слышишь/не читаешь ...
Никакая 'health' не переменная! (я пришел к такому выводу).
Присвоение db.actor.health = X никак не влияет db.actor.health (!) в текущем цикле.

Если бы ты был прав, то db.actor.health = db.actor.health + Х приводило бы к практически переполнению при половинном здоровье, т.е. мгновенному излечения.
В то же время db.actor.health = 0.00Х - НЕ приводит к излечению (а только по параметрам самоизлечения)


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 17:44 GMT3 час. #1317253   
Artos Походу ты меня тоже. Ладно, замяли. Останемся каждый при своём. Не имеет значения, как кто добивается реального результата. Лишь бы работало без тормозов и багов. Пожмём друг-другу руки и разайдёмся по своим лавочкам. :-)


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Artos
    
Посты: 4176
Откуда:
Возраст: 66
14-08-2010 17:45 GMT3 час. #1317255   
singapur22 :-beer)


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
Fazes
    
Посты: 112
Откуда: Иркутск
Возраст: 28
14-08-2010 17:55 GMT3 час. #1317263   
А можно так сделать чтобы зомби с определённым оружием был и ещё им стрелял бы


Движок в Stalker 2 будет взят из Crysisa,а сюжет по книге Слепое пятно)),и будет называться Новый Союз)

Аэродинамику придумали те,кто не умеет строить мощные моторы.
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 18:02 GMT3 час. #1317273   
Fazes Ты имеешь ввиду гражданских зомби чтоли? Нет, нельзя. Гражданские зомби относятся к монстрам. И выдать им оружие равносильно выдать его слепым псам, или свиньям.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
blackraven6
    
Посты: 624
Откуда: СПб
Возраст: 32
14-08-2010 18:04 GMT3 час. #1317275   
singapur22 Ну так есть же игра С.В.И.Н. даже название почти сталкерское! ;-)



Журнал
- модель M79
- модель HK SL-8
- модель Milkor m32 WIP
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
14-08-2010 18:10 GMT3 час. #1317281   
blackraven6 И что там? Гражданские с оружием? Это может объясняться только тем, что они просто вставили свои модели сталкеров. По сути, тут не шибко сложно. Если умеешь рисовать, то берёшь модель сталкера, и изменяешь его текстуру на свой вкус. Вот тебе и гражданский зомби с оружием. По сути, это будет уже сталкер группировки "зомбированные", но с визуалом гражданского зомбака. С тем же успехом его можно выдать кровососу и контролёру. Их же визуал похож на человека. Исправляй текстуру сталкера, и любуйся результатом.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
blackraven6
    
Посты: 624
Откуда: СПб
Возраст: 32
14-08-2010 18:43 GMT3 час. #1317315   
singapur22 Хе. Это был прикол. СВИН это типо Worms тока по навароченнее и со свиньями. Думал слышал о такой.

Stalk15
На сталкер-вики была статья как сделать чтобы машина заводилась только при наличии ключей от нее в инвентаре ГГ.



Журнал
- модель M79
- модель HK SL-8
- модель Milkor m32 WIP
Stalk15
    
Посты: 1023
Откуда: Как-бэ Новосибирск(Точно не знаю=))
Возраст: 30
14-08-2010 18:47 GMT3 час. #1317322   
blackraven6
Если бы был ответ на мой вопрос на сталкер-вики - я бы не задавал его тут.А в той статье, что ты говоришь, описан запрет на возможность сесть в машину, а не на возможность завести машину - то, что мне надо.
--------------------------------------------------------

blackraven6
Да, я ведь в вопросе подробно написал:-)


Новые фишки для сталкера(см. журнал)
blackraven6
    
Посты: 624
Откуда: СПб
Возраст: 32
14-08-2010 18:48 GMT3 час. #1317324   
А сталкеры с визуалом зомбака у кого то были в журнале. Так же как и кровососы.

добавлено спустя 32 секунд

Stalk15 А тебе именно завести...

отредактировал(а) blackraven6: 14-08-2010 18:48 GMT3 час.


Журнал
- модель M79
- модель HK SL-8
- модель Milkor m32 WIP
Gluc0
    
Посты: 1350
Откуда: Wonderland
Возраст: 31
14-08-2010 18:53 GMT3 час. #1317330   
Stalk15 убери команду в меню (управление)и не заведеш!


Darien Fx
    
Посты: 1372
Откуда:
Возраст: 30
14-08-2010 18:56 GMT3 час. #1317333   
Stalk15
Впринципе, сходу придумал такой вариант, хотя довольно глупый - по условию сменить в консоли через 'cfg_load' юзер файл на новый, в котором не прописан 'turn_engine' ;-).
get_console():execute("cfg_load user_new")
Да только будет куча неудобств, ибо настройки (графика / управления) могут / будут отличаться в разных юзверь-файлах. А тут уж изволь...
Если есть нормальные варианты - готов выслушать, ибо сам с машинами особо не возился - ничё не знаю.


blackraven6
    
Посты: 624
Откуда: СПб
Возраст: 32
14-08-2010 18:57 GMT3 час. #1317335   
Пытался заспавнить жгучий пух артефак

отредактировал(а) blackraven6: 14-08-2010 19:11 GMT3 час.


Журнал
- модель M79
- модель HK SL-8
- модель Milkor m32 WIP
Stalk15
    
Посты: 1023
Откуда: Как-бэ Новосибирск(Точно не знаю=))
Возраст: 30
14-08-2010 18:58 GMT3 час. #1317336   
Gluc0
Эх, ладно, напишу вопрос в полнейших подробностях, а старый удалю.

-------------------------------------------------------------------------------------------
Подскажите, как можно сделать запрет на возможность завести машину?То есть сел ГГ в машину и при нажатии на кнопку "Завести машину" ни чего не происходило.
Подробности:
Нужна функция, при вызове которой производился запрет на возможность завести машину, а также, чтоб этот запрет можно было отменить.Готовую функцию я не прошу(но не против:-)), а просто подскажите/посоветуйте, мож метод какой есть, а луа_хелп я поюзал - ни чего не нашел.

Darien Fx
Хех, интересный способ, в крайнем случае так и сделаю:-)
-------------------------------------------------------------------------------------------
Не совсем понял, что за юзер файл, типа ui_keybinding.xml, и заменить консолем этот файл на такой же, в котором нет команды turn_engine.Правильно я мысль понял?

-----------------------------------------------------------------------
Darien Fx
А-а, понятно, испробуем.

отредактировал(а) Stalk15: 14-08-2010 20:51 GMT3 час.

Новые фишки для сталкера(см. журнал)
Darien Fx
    
Посты: 1372
Откуда:
Возраст: 30
14-08-2010 20:18 GMT3 час. #1317382   
Stalk15
Изначально он лежит в папке 'stalker-shoc', в 'общих документах'. Просто скопируй и положи рядом, изменив название и убрав 'bind turn_engine kb'.
Загрузив новый user-файл, он будет активен всегда, пока ты не загрузишь другой или оригинальный. Даже при перезапуске игры (так в ЗП, в ТЧ не проверял).

отредактировал(а) Darien Fx: 14-08-2010 21:34 GMT3 час.



Форумы Архив » Свалка Вопросы и ответы (ТЧ по 11.09.10)


Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для
просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.

Использование материалов сайта возможно с разрешения администрации. Все права защищены. © 2004–2025 «Stalker-Portal.ru»