| Автор |
Сообщение |
|
| 13-08-2010 15:34 GMT3 час. #1316381 |
batment Это всё понятно. Просто я выдал тебе самый простой способ, который к сожалению требует новую игру. Если тебе нужно чтобы можно было спавнить в любое время, то сначала определись, как тебе удобней всего активировать функцию. (при разговоре/при входе в определённую зону/ и т. д.) |
|
|
|
| 13-08-2010 15:40 GMT3 час. #1316382 |
можно ли в подземельях Агропома когда появляется контролер сделать чтобы появлялись и зомби?:dry: |
|
|
|
| 13-08-2010 15:46 GMT3 час. #1316385 |
batment Можно. Тут нужно для начала, определить рестриктор, который его активирует (выводит в онлайн). Затем в логике данного рестриктора, помимо активации контролёра прописываем запуск собственной функции. Собственную функцию нужно создавать в файле xr_effects.script Думаю описывать как спавнить зомби тебе не нужно. Или же...?
В принципе, для начала, определи требуемый рестриктор. К сожалению это будет сделать не так просто. |
|
|
|
| 13-08-2010 15:52 GMT3 час. #1316387 |
кстати когда я добавил в свой мод Death news mod то при начале новой игры я не обнаружыл Сидоровича на своем месте |
|
|
|
| 13-08-2010 16:01 GMT3 час. #1316390 |
**50016ea8aab1bb10eeba**
Если это поставить на дроп_итем, то условие выполняется не только когда сьел аптечку, а даже когда выбросишь её.Как можно сделать, чтоб условие выполнялось только, когда сьел аптечку? |
|
|
|
| 13-08-2010 16:11 GMT3 час. #1316396 |
Stalk15 о господи ну это **50016ea8aab1bb10eeba**й используем - должен иметь класс антирада или аптечки - в общем то что юзается
thing = obj
end
end
[/code]
Вот эт допустим вызывается меню при съедании предмета item_filter_gp7 |
|
|
|
| 13-08-2010 16:12 GMT3 час. #1316397 |
Stalk15
Скрипт от камрада singapur22, пользуюсь уже чу**50016ea8aab1bb10eeba**on() == "medkit" then
item = obj
end
end[/code]
По названию догадаешься, что куда ставить. |
|
|
|
| 13-08-2010 17:22 GMT3 час. #1316443 |
пацаны выручайте не знаю как спавнить монстра через скрипт
если можно пример с зомби-гражданский |
|
|
|
| 13-08-2010 17:39 GMT3 час. #1316453 |
batment зайди в FAQ на сталкер портал. Зайди в тему "скриптовый спавн" на форуме. |
|
|
|
| 13-08-2010 17:42 GMT3 час. #1316456 |
singapur22
Как думаешь такой диапазон кода для замочка в самый раз будет? :-)
---------------------------------------------
так насчет сохранения юзердаты объекта - нет никаких вариантов? |
|
|
|
| 13-08-2010 18:00 GMT3 час. #1316475 |
В честь чего вылет? Не с того ни с сего. Поиграл, норм было. Потом запускаю игру, не хочет грузить и все. НА синхронизации:
Expression : fatal error
Function : weapon_hud_value::load
File : E:\stalker\patch_1_0004\xr_3da\xrGame\WeaponHUD.cpp
Line : 34
Description :
Arguments : There is no 'wpn_barrel_0' bone for weapon 'wpn_shotgun_hud' |
|
|
|
| 13-08-2010 18:07 GMT3 час. #1316490 |
erlik Не многовато? :-) Обычно используются 6-8 значные коды. Думаю и здесь можно этим ограничиться. Собсно я вообще думаю в игре нет смысла использовать громадные числа. Я использую рандом в пределах от 1000 до 999999.
Про юзердату. В каком смысле? Ну сохрани айди объекта, а потом по нему определяй уже юзердату. Обычно так и делается. Если не канает, то используй xr_logic.pstor_store(...) У меня в классе, именно данное сохранение и используется.
P.S. |
отредактировал(а) singapur22: 13-08-2010 18:22 GMT3 час.
|
|
|
| 13-08-2010 18:43 GMT3 час. #1316509 |
singapur22
Мне нужно чтобы юзердата сохранялась в поле моей таблицы (а значит нетпакетом) - просто если записывать и айди и секцию объекта (а нужно и то и другое), то табличку сильно поменять придется ( она сейчас очень удобна для рандомного перебора - а если менять, то даже пока ее новую структуру не очень представляю - так чтобы она соответствовала моим надобностям.) В общем было бы проще если бы можно было все таки юзердату сохранять.
Странно, что разрабы такого метода не предусмотрели в классе нетпакет.
-------------------------------------------------------------------------------------------------
на самом деле у меня код пока двузначный - тут и так вариантов перебора навалом.&P
-----------------------------------------------------------------------------------------------------------
|
|
|
|
| 13-08-2010 18:55 GMT3 час. #1316520 |
|
|
|
|
|
| 13-08-2010 18:58 GMT3 час. #1316525 |
Мне нужно чтобы юзердата сохранялась в поле моей таблицы (а значит нетпакетом)
Зачем нет-пакетом? Юзердату можно сохранять в таблицу, да тем же 'table.insert(t, obj)'. |
|
|
|
| 13-08-2010 19:01 GMT3 час. #1316528 |
АнархОПанк А в честь чего он может быть? Игра не может найти кость wpn_barrel_0 в модельке wpn_shotgun_hud. Чего тебе еще нехватает? |
|
|
|
| 13-08-2010 19:10 GMT3 час. #1316536 |
blackraven6 с чего бы вдруг??? У меня конечно игра любитель, за ночь например, пока комп выключен там чего нибудь сломается в моде/игре. Но тут я не знаю че с ним, играл вроде и при следующем запуске облом. |
|
|
|
| 13-08-2010 19:13 GMT3 час. #1316539 |
А можно как-нибудь НПС в машину посадить?:-).Или такого вообще нет в игре? |
|
|
|
| 13-08-2010 19:17 GMT3 час. #1316541 |
Да и шотган_худ у меня нету... Не в конфиге, не в ОГФ модели...
добавлено спустя 25 секунд
Stalk15 движок не позволяет, насолько я помню говорили в OGSE |
отредактировал(а) АнархОПанк: 13-08-2010 19:17 GMT3 час.
|
|
|
| 13-08-2010 19:20 GMT3 час. #1316545 |
АнархОПанк С чего - незнаю. Нет, значит создай.
Про тачки. Мы ж у тебя в журнале обсуждали. Там и видяха есть. Все можно. |
|
|
|
| 13-08-2010 19:22 GMT3 час. #1316547 |
Darien Fx
Так я о чем. Просто закинуть в таблицу юзердату через table.insert проблем нет(я так и делал пока не увидел чем мне это грозит) - и это очень удобно в дальнейшем - так как к ней можно и метод id() (или свойство id) применить и так же section() .
А вот если надо чтобы таблица сохранялась? Метода для юзердаты тю-тю. Стринги там, числа, вектора или булеан - все можно сохранять. Даже матрицу можно и какой то token, а юзерадату нет. Облом.
Пришлось структуру таблицы организовать иначе(усложнив себе жизнь):
-------------------------------------------------------------------------------------
Artos
Ну как сохранять то и загружать таблички я знаю - плавали :-)
Возни просто много с таблицами со сложной структурой.
И все таки очень жаль, что нельзя юзердату сохранять через методы класса нетпакет. |
отредактировал(а) erlik: 13-08-2010 19:43 GMT3 час.
|
|
|
| 13-08-2010 19:25 GMT3 час. #1316551 |
erlik
Наверное не стОит удивляться, почему разрабы не дали метода работы с юзердатами в нет-пакетах.
Класс нет-пакетов - это типовые 'кирпичики', которые могут быть использованы для построения любого 'здания'. Если тебе потребовалось 'строить этажами', то 'этажные' модули тебе и тервуется самому делать из имеющихся уже 'кирпичиков'.
1. Способы хранения таблиц ((рас)паковка массивов) уже есть в модах (AMK,Simbion,...), так что можно и в них глянуть.
2. Собственно и модули нет-пакетов (как в Simbion'е) и те же se_ОБЪЕКТ:STATE_Read/Write() - по сути и работают (уже!) с юзердатами серверных объектов. И сам видишь, что каждому классу юзердате требуется свой (суб)модуль.
3. Только зная полную структуру юзердаты(ключи/значения) можно с ней работать. Передавать помимо самой юзердаты и ее структуру в какой-нить модуть нет-пакетов - по сути писать огромный новый класс, способный воспринимать структуру и обрабатывать по ней текущую юзердату. ИМХО, нерационально!
singapur22
Начал немного возиться и 'db.actor.health' и иже ...
Однозначно и ты заблуждаешься о том, что это некоторы образом параметр для добавления значения к текущему, но и однозначно нельзя сказать и о том, что это параметр для установки конкретного значения здоровья.
Все очень нетривиально. Собственно 'db.actor.healt' - некий параметр, который получается от серверного объекта актора (alife():actor():healt()) в начале каждого цикла. Его изменение возможно в текущем цикле.
Но ... А вот тут пока столкнулся со странностями. Если параметр изменить и тут же считать - никакого изменения параметра НЕТ!(???).
Ну и то, что после окончания цикла апдейта актора и до следующего движок обрабатывает все значения влияющие на здоровье (текущее,кровотечение, сытость, радиацию, ....) и выдает некое новое значение в новый цикл - не поддается никаким обдозначностям, т.к. у нас нет собственно формулы зависимостей от всех этих параметров.
Копаюсь далее ... |
|
|
|
| 13-08-2010 19:35 GMT3 час. #1316560 |
blackraven6 Чего создать? Кость или модель? Поверь, я просто не пойму опять, из за чего этот долбанный вылет. В игре нет не модели, не конфига подобных. |
|
|
|
| 13-08-2010 19:40 GMT3 час. #1316564 |
АнархОПанк Модель создай. А потом либо ищи где там что глючит и требует файл, либо забить если вылета нового не будет. |
|
|
|
| 13-08-2010 19:44 GMT3 час. #1316565 |
Artos Я не говорил, что это параметр для добавления значения. Это скорее свойство. Я н**50016ea8aab1bb10eeba** |
отредактировал(а) singapur22: 13-08-2010 19:49 GMT3 час.
|
|
|
| 13-08-2010 19:48 GMT3 час. #1316569 |
blackraven6 о Боже... Отукда игра только взяла это??? Ну запускал же игру все норм было, вышел. Захожу уже этот бред.... Пффф |
|
|
|
| 13-08-2010 19:50 GMT3 час. #1316571 |
АнархОПанк Не по адресу вопрос. Хотя у меня такое было как-то я забыл что закинул новую модель в папку с игрой и потом мучался с вылетами. Правда безлоговыми. |
|
|
|
| 13-08-2010 20:11 GMT3 час. #1316597 |
singapur22
'Health += value;' - это и назвал/подразумеваю 'добавление к текущему'.
Если даже это и свойство, то однозначно не такое простое и новое значение (value) НЕ обрабатыается этим свойством, а вероятно запоминается и передается серверу.
Изменение db.actor.healt = iValue НЕ приводит к мгновенному изменению этого параметра, возвращается прежнее значение (т.е. пока можн сделать вывод, что он НЕ изменен в одном цикле апдейта).
db.actor - это массив клиентской юзердаты актора.
healt - это ключ массива, которому определено числовое значение (а не какие то get/set), постоянное на весь период апдейта актора.
alife():actor() - серсерная юзердата объекта-актор
alife():actor():healt() - метод, возвращающий значение здоровья серверного актора, постоянное на весь период апдейта актора (и отличное от клиентского значения!).
Пока получил однозначно: alife():actor():healt() - db.actor.healt = (0.01...0.015) - т.е. клиентская юзердата однозначно уже не тождественна серверной, что означает - запрос о значении здоровья клиентского объекта актора (db.actor.healt) берется из массива (число!), а не возвращается сервером, обработкой неким методом/свойством.
А вот как влияет установленное db.actor.healt = iValue (где/как запоминается) - пока изучаю ... |
|
|
|
| 13-08-2010 20:46 GMT3 час. #1316625 |
Люди объясните что значит этот лог
Expression : !object->used_ai_locations() || ai().level_graph().valid_vertex_id(object->m_tNodeID)
Function : CALifeSwitchManager::add_online
File : E:\stalker\patch_1_0004\xr_3da\xrGame\alife_switch_manager.cpp
Line : 64
Description : Invalid vertex for object
Arguments : mil_wpn_vintorez
когда я захожу со своим модом на радар и прохожу 10 метров вперёд игра зависает |
|
|
|
| 13-08-2010 20:54 GMT3 час. #1316630 |
win win а что тут не понятного? "Ругается" на винторез, а вот из-за чего (что ему не нравится конкретно) ищи сам. |
|
|
Эта тема закрыта, публикация новых сообщений недоступна.