Пользователей: 1
Гостей: 821
Всего: 822

» Подробно
» Сегодня

Привет, гость!









Автор Сообщение
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
30-06-2011 17:33 GMT3 час. #1497773   
singapur22, цель? Мне нужно на время (около минуты) куда-то скинуть хабар гг, но чтобы его никто не видел и не брал. Просто переспавн - это не решение.


Хочешь работать нормально, работай один!
Ma$ter
    
Посты: 477
Откуда: Tamboff
Возраст:
30-06-2011 17:37 GMT3 час. #1497776   
А если заспанить за забором? Или не пойдет?


Знание assembler, C/C++, Pascal, Lua.
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
30-06-2011 17:44 GMT3 час. #1497781   
Ma$ter, ну собирать потом его как? В таблицу что-ли запихивать их?


Хочешь работать нормально, работай один!
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
30-06-2011 17:45 GMT3 час. #1497782   
SkyLoader Ну и для какой цели тебе здесь точные координаты? Спавни его с координатой по Y, значительно ниже, или выше, чем ГГ.
Для предотвращения перехода его в оффлайн, пока ГГ находится на текущей локации, имеются соответствующие методы: can_switch_online(boolen) и can_switch_offline(boolen).

P.S. Кажется в АМК есть некие inventory_box, для подобных манипуляций, на каждой локации. Смотри, и делай по аналогии.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Artos
    
Посты: 4176
Откуда:
Возраст: 65
30-06-2011 17:48 GMT3 час. #1497784   
SkyLoader
Не морочь себе и другим голову.
1. Делаешь объект класса инвентарного ящика с прозрачной моделью (можно на базе нычки-рюкзака из АМК-мода). Так никто (даже ты не увидят ни ящик ни предметы в нем где бы он ни был).
2. Спавнишь этот объект где-тебе удобно (хоть в небесах).

Т.о. получаешь невидимый никому он-лайновый ящик для складывания туда всякой всячины.
Конкретный пример см. в Симбионе, там этот ящик даже таскается постоянно за ГГ с локации на локацию (дабы не плодить их в игре) и туда постоянно что-то складируется (менеджер оружия, перчатки, поясной сепаратор, ...).


singapur22
В АМК подобного нет. Фейковый ящик появился в моде менеджера оружия (by Bak) и по одному на каждой локации (точнее спавнятся по мере появления ГГ на новой локации).
Спавнить проще по координатам актора, взяв на сотню метров выше (так точно не попадешь в недоступное для спавна место).

отредактировал(а) Artos: 30-06-2011 18:02 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
30-06-2011 17:54 GMT3 час. #1497786   
singapur22, Artos, спасибо, что-то я забыл про прозрачную модель. И воспользуюсь can_switch_offline(false). :-)


Хочешь работать нормально, работай один!
Artos
    
Посты: 4176
Откуда:
Возраст: 65
30-06-2011 17:57 GMT3 час. #1497789   
SkyLoader
Не требуется ничего переключать, играясь с оффлайном. Ящик, будучи заспавненым (иль после загрузки сэйва) сам никогда не уходит в оффлайн. Вот если тебе потребуется, положив в него что-то (заспавнив/переместив), иметь это после сохранения - то придется позаботиться с переводом ->off->on line , иначе испарится из ящика.

отредактировал(а) Artos: 30-06-2011 18:05 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
30-06-2011 18:04 GMT3 час. #1497793   
Artos, ну ведь бывают непредвиденные ситуации. К примеру, если игрок сохранится в то время, когда у ГГ инвентарь лежит в ящике.


Хочешь работать нормально, работай один!
Artos
    
Посты: 4176
Откуда:
Возраст: 65
30-06-2011 18:13 GMT3 час. #1497796   
SkyLoader
Непредвиденных для кодера ситуаций НЕ бывает. Бывает его некомпетентность или ротозейство. ;-) . На то он и программер, чтобы написать так, чтобы все что ему нужно - предвидеть, а 'непредвиденное' запретить (по принципу: все что не разрешено - запрещено.).
Повторяю и объясняю:
1. Ящик(и) всегда в он-лайне.
2. Если игрок кладет через интерфейс использования ящика - движок обновляет состояние ящика (предметы будут запомнены) и при загрузке сохранения все будет на месте (в ящике).
3. Если спавнить/перемещать/... предметы скриптами - ящики (без логики) не апдейтятся (у них нет биндера) и все, что было в них заспавнено, после загрузки сэйва исчезнет из ящика.
Так что смотри сам (нам твои задумки неведомы), нужно ли и когда заморачиваться с состояниями ящика.
(я бы сделал проще - один раз по коллбэку на сохранение актора делать манипуляции с офф-он-лайном).


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
DmBorn
    
Посты: 2007
Откуда: Москва
Возраст: 28
30-06-2011 19:50 GMT3 час. #1497818   
Сделал свой ПДА на базе обычного, а он почему-то в игре маленький по размерам. Поэтому кривизна получается. Из-за чего это может быть?


SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
30-06-2011 20:02 GMT3 час. #1497825   
Artos, эм... я сейчас создал ящик скриптом и трансферил все вещи гг. Сохранился, загрузился - все на месте. :blink


Ну ладно, спс :)

отредактировал(а) SkyLoader: 30-06-2011 20:26 GMT3 час.

Хочешь работать нормально, работай один!
Artos
    
Посты: 4176
Откуда:
Возраст: 65
30-06-2011 20:09 GMT3 час. #1497830   
SkyLoader
Если ты достиг того, чего хотелось - считай достиг.
В отличии от тебя, меня не интересуют некие частные случаи ... дабы не сетовать и не тратить время в дальнейшем на поиск причин коллизий/ошибок. :-G


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
30-06-2011 20:58 GMT3 час. #1497850   
Аррр.. :obstenu: Что ж такое?
В общем, я написал **5001618d69873ce82a42**fer_item(item,victim)
end
end
, who)
end[/code]
Пытаюсь ей пользоваться, но происходят какие-то чудеса:
1) Перенос из инвентаря непися в инвентарь гг работает нормально, а наоборот - нет. Также не получилось трансферить в ящик (только один раз, когда я вызвал ее из меню).
2) Ф-ция медленно обрабатывается. После вызова этой ф-ции у меня стоит перенос позиции ГГ. Так вот, если вместо метода трансфера (ну он не работает) поставить просто выкидывание из рюкзака, то сначала выполнится перенос позиции, а потом уже все выбросит.


Хочешь работать нормально, работай один!
Artos
    
Посты: 4176
Откуда:
Возраст: 65
30-06-2011 21:42 GMT3 час. #1497861   
SkyLoader
Бывает 2D, бывает 3D, а бывает и 4D ...
Если ты привык кодить в 'плоскости' и ли даже в 'объеме', то теперь начинаешь сталкиваться и с четвертым измерением - временем.
Ты когда-нибудь задумывался: "А что в 'реале' происходит при работе моих кодов с точки зрения ООП?". Что означает твоя функция трансфера 'transfer_item' ты догадываешься, но(!) это всего лишь команда, а не само дейстыие. И это действие растянуто во времени. Предмет не мгновенно оказывается ы другом месте, а спустя циклы апдейта актора и твоего непися.
Можно наблюдать, что в следующем цикле апдейта актора после цикла отдачи команды тренсфера предмет оказывается у непися, но его 'parent_id' - еще акторский, в следующем вроде как уже все на месте, но многие методы отказываются работать. Т.о. на одно действие по трансферу требуется 3-4 цикла апдейтов актора.
Так что не удивительно, что одновременно (в одном цикле) отдав комадну 'выкинуть + переместиться' - твой ГГ начинает выкидывать предметы будучи уже на новом месте.

В общем это еще долго пояснять, а я сейчас подустал ... повозись до завтра самостоятельно.
В поясном скрипте (m_belt.script OnUpdate) из Симбиона можно посмотреть достаточно подробно процесс передачи сепаратора из ящика к ГГ и обратно. Там я использую каждый цикл, поэтому достаточно подробно прокомментировано.

отредактировал(а) Artos: 30-06-2011 21:54 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
karavan
    
Посты: 940
Откуда:
Возраст:
01-07-2011 01:30 GMT3 час. #1497899   
Товарищи, а кто-то пытался добавить в игру новый ранг? **5001618d69873ce82a42** = 0
experienced = 0
veteran = 0
master = 0
[/code]

И почему здесь все значения равны нулю?

И еще за всю историю моддинга сталкер кто-то пытался менять параметры файла game_relations.ltx?
Я вот только могу вспомнить добавление новой группировки и увеличение таблиц со списками группировок, а вот изменений коофициентов отношений с НУЛЯ на какие либо другие значения не помню.

З.Ы.: Поменял значение таблицы [communities_relations], чисто ради эксперимента, отношения, группировки stalker к самой этой группировки с "0" на "-5000", так новички друг дружку перестреляли. :-)
Вот бы сделать такого монстра, типо контролера, что бы при его приближении менялась группировка на враждебную самой себе. :prankster:


Анонс мода-аддона "S.T.A.L.K.E.R. - Безопасная земля"
Узнай о моде больше - подпишись на канал (кликабельно)
H_I_V
    
Посты: 3
Откуда: Барнаул
Возраст: 32
01-07-2011 07:08 GMT3 час. #1497908   
Не подскажите, как изменить скорость востановления энергии у ГГ?


singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
01-07-2011 08:00 GMT3 час. #1497916   
H_I_V Смотри файл gamedata/config/creatures/actor.ltx, там всё подписано.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Призрак зомби
    
Посты: 482
Откуда:
Возраст: 28
01-07-2011 08:50 GMT3 час. #1497933   
люди сделайте пожайлуста мод где у стрелка рост ниже примерно на голову очень надо!(v.1.0006)


\
вуу4
    
Посты: 74
Откуда: Москва
Возраст: 25
01-07-2011 09:35 GMT3 час. #1497937   
Люди хотел сделать выброс ну сделал он в начале начанается и все он кончился я иду документы из лаборотории класть украл перехажу на другую локацию и вылет ругается на этот файл db.script

ПОМОГИТЕ ПОЖАЛУСТА!!!8-(8-(8-(8-(8-(8-(8-(8-(8-(


Делаю свой мод:-)
CoP01
    
Посты: 57
Откуда:
Возраст:
01-07-2011 10:06 GMT3 час. #1497945   
вуу4
Ответ в личке. И не используй так много смайлов в одном сообщении, это запрещено.

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

Призрак зомби
Параметр camera_height_factor в actor.ltx

отредактировал(а) CoP01: 01-07-2011 10:07 GMT3 час.

VOva-VIP
    
Посты: 325
Откуда: Миасс
Возраст: 27
01-07-2011 14:39 GMT3 час. #1498008   
Нужна помощь. Сделал мод. Скинул его другу, но там просто не мод, а ужас получается.
Вот снимок с моего мода:

А вот картинка с компа друга:

Тут различий просто куча и я не знаю почему так. Я понимаю экран широкий, но не в этом то дело. Я так же пробывал передавать мод к другому другу, у него все нормально, так же как и у меня. Версии совпадают кстати. Вот что это такое?

отредактировал(а) VOva-VIP: 01-07-2011 14:53 GMT3 час.

singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
01-07-2011 15:12 GMT3 час. #1498019   
VOva-VIP Играете на разных разрешениях экрана. Правя файл inventory_new.xml, мог бы поднапрячься, и проделать ту же операцию с файлом inventory_new_16.xml, отвечающего за инвентори-меню на широких разрешениях.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Mehanik Yar
    
Посты: 469
Откуда: Уфа
Возраст:
01-07-2011 15:16 GMT3 час. #1498020   
Помогите плиз! Недавно появилась ошибка. Уж не знаю от куда. Нашел причину этой ошибки. Вылет возникает, если вызывать функции из моего файла swamp_spawn_new
Раньше вылетов не было. С какого фигу взялись непонятно. Пробовал в файле xr_logic переисывать фрагмент функции по новой.

Хоть сам фрагмент небольшой, но выложу всю функцию на всякий случай (мож не там вставил)

function pick_section_from_condlist(actor, npc, condlist)
local rval = nil -- math.random(100)
--printf("_bp: pick_section_from_condlist: rval = %d", rval)

local newsect = nil
local infop_conditions_met
for n, cond in pairs(condlist) do
infop_conditions_met = true -- изначально считаем, что все условия переключения удовлетворены
for inum, infop in pairs(cond.infop_check) do
if infop.prob then
if not rval then
rval = math.random(100)
end
if infop.prob < rval then
infop_conditions_met = false -- инфопоршен есть, но он не должен присутствовать
break
end
elseif infop.func then
--printf("_bp: infop.func = %s", infop.func)
if not xr_conditions[infop.func] then
abort("object '%s': pick_section_from_condlist: function '%s' is " ..
"not defined in xr_conditions.script", npc:name(), infop.func)
end
--if xr_conditions[infop.func](actor, npc) then
if infop.params then
if xr_conditions[infop.func](actor, npc, infop.params) then
if not infop.expected then
infop_conditions_met = false -- инфопоршен есть, но не должен присутствовать
break
end
else
if infop.expected then
infop_conditions_met = false -- инфопоршен есть, но не должен присутствовать
break
end
end
else
if xr_conditions[infop.func](actor, npc) then
if not infop.expected then
infop_conditions_met = false -- инфопоршен есть, но не должен присутствовать
break
end
else
if infop.expected then
infop_conditions_met = false -- инфопоршен есть, но не должен присутствовать
break
end
end
end
elseif has_alife_info(infop.name) then
if not infop.required then
--'printf("FAILED: actor has infop '%s', which is NOT needed [%s]", infop.name, tostring(has_alife_info(infop.name)))
infop_conditions_met = false -- инфопоршен есть, но он не должен присутствовать
break
else
--'printf("PASSED: actor has infop '%s', which is needed [%s]", infop.name, tostring(has_alife_info(infop.name)))
end
else
if infop.required then
--'printf("FAILED: actor has NO infop '%s', which is needed [%s]", infop.name, tostring(has_alife_info(infop.name)))
infop_conditions_met = false -- инфопоршена нет, но он нужен
break
else
--'printf("PASSED: actor has NO infop '%s', which is not needed [%s]", infop.name, tostring(has_alife_info(infop.name)))
end
end
end
--printf("_bp: infop_cond_met = %s", utils.to_str(infop_conditions_met))
if infop_conditions_met then
-- Условия выполнены. Независимо от того, задана ли секция, нужно проставить требуемые
-- infoportions:
for inum, infop in pairs(cond.infop_set) do
if db.actor == nil then
abort("TRYING TO SET INFOS THEN ACTOR IS NIL")
end
if infop.func then
local func=nil
local module,fname=string.match(infop.func,"(.+)[.](.+)")
if not fname then
func=xr_effects[infop.func]
else
if _G[module] and _G[module][fname] then
func=_G[module][fname]
end
end
if not func then
abort("object '%s': pick_section_from_condlist: function '%s' is " ..
"not defined in xr_effects.script", if_then_else(npc, npc:name(), "nil"), infop.func)
end
if infop.params then
func(actor, npc, infop.params)
else
func(actor, npc)
end
elseif infop.required then
if not has_alife_info(infop.name) then
actor:give_info_portion(infop.name)
end
else
if has_alife_info(infop.name) then
actor:disable_info_portion(infop.name)
end
end
end
if cond.section == "never" then
return nil
else
return cond.section
end
end
end

--printf("_bp: pick_section_from_condlist: nil")
return nil
end


Ошибка всегда такая.

Expression : fatal error
Function : CScriptEngine::lua_error
File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line : 73
Description :
Arguments : LUA error: ...er - Зона поражения\gamedata\scripts\xr_logic.script:602: attempt to call local 'func' (a nil value)


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


erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
01-07-2011 15:19 GMT3 час. #1498021   
karavan

кто-то пытался добавить в игру новый ранг?

Разумеется. И неоднократно. Расписывать не буду - все банально(по аналогии с имеющимися - главное не забыть про скрипты, где используются имена рангов).
rank_kill_points - возможно неиспользуемая вовсе секция параметров (не проверял), так как очки рейтинга начисляются из соседней секции action_points.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Mehanik Yar
    
Посты: 469
Откуда: Уфа
Возраст:
01-07-2011 16:34 GMT3 час. #1498042   
Ответ на мой же собственный вопрос. (может кому пригодится).
Если вы изменили в файле xr_logic кое-какие строчки и умеете вызывать функции в логике из других файлов, то ошибка

Expression : fatal error
Function : CScriptEngine::lua_error
File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line : 73
Description :
Arguments : LUA error: ...er - Зона поражения\gamedata\scripts\xr_logic.script:602: attempt to call local 'func' (a nil value)


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


Artos
    
Посты: 4176
Откуда:
Возраст: 65
01-07-2011 16:54 GMT3 час. #1498047   
Mehanik Yar
Не говори, и тем более не советуй другим, ЧЕПУХУ!
В файле скрипта может быть любое (разумное) кол-во функций и/или переменных.


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
01-07-2011 16:57 GMT3 час. #1498049   
Mehanik Yar Чёт ты бред какойто написал. Не имеет значения, сколько функций имеется в том, или ином файле. Хоть все функции игры, запихай в один скриптовый файл. Разбиенеие по типовым файлам, производится лишь для удобства.

attempt to call local 'func' (a nil value)

Данное описание ошибки говорит о том, что вызываемая функция или не существует, или просто напросто, не была загружена в окружение. Причина может быть даже не в самой функции, а в том, что находится перед ней (выше, по телу файла). Если, над функцией имеется малейшая ошибка (не приводящая к крашу игры), то всё, что находится под ... не читается, и не загружается в окружение. Соответственно, смотри последние коды, файла xr_logic.script
Как видно по логу, ты работаешь с модификацией "Зона поражения". В этом вся проблема всех новичков. Лично я не рекомендую работать поверх других модов. Так как, ошибки могут быть именно в них, что в некоторых случаях приводит к подобным багам и глюкам. А после, и к неверным выводам.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
вуу4
    
Посты: 74
Откуда: Москва
Возраст: 25
01-07-2011 17:08 GMT3 час. #1498054   
люди сделал выброс в начале а потом типо через 3-6 но его нет в чем дело??

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

в начале есть а потом нет

отредактировал(а) вуу4: 01-07-2011 17:09 GMT3 час.

Делаю свой мод:-)
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
01-07-2011 17:48 GMT3 час. #1498064   
вуу4
1. Что сделал?
2. Как сделал?
3. Код, отвечающий за желаемое действие!


Это минимальный набор пунктов, которые нужно выкладывать изначально, чтобы получить хоть какойто ответ. Иначе, тебя просто все будут игнорировать. Что собственно и происходит в настоящий момент.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
вуу4
    
Посты: 74
Откуда: Москва
Возраст: 25
01-07-2011 18:35 GMT3 час. #1498087   
1 добавел выброс в начале он происходи
2 мне помог друг
3 вопрос: я хочу что бы выбросы происходили через 3-5 часов

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

4 в чем дело : они не происходят

отредактировал(а) вуу4: 01-07-2011 18:36 GMT3 час.

Делаю свой мод:-)


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


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

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