Пользователей: 0
Гостей: 842
Всего: 842

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

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









Автор Сообщение
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
14-12-2010 13:00 GMT3 час. #1397593   
psevdochel
Как делать новые слоты уже не секрет (кто их сделал самым первым - не знаю, но как минимум несколько месяцев назад технология уже была освоена некоторыми модмейкерами ) - в последнее время кто их только не делал.
В скрипте весь процесс подробно откомментирован - делай по аналогии.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
TYOPA
    
Посты: 129
Откуда:
Возраст: 27
14-12-2010 14:33 GMT3 час. #1397634   
Шаман Энт тык сюда

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

А теперь вопрос:
**5001b67681f3126adde4**tion(),db.actor:level_vertex_id(),db.actor:game_vertex_id(),db.actor:id())
end[/code]

отредактировал(а) TYOPA: 14-12-2010 14:37 GMT3 час.

S.T.A.L.K.E.R. Secret of the Zone: Gunslinger's Story. Prologue - разработка.
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
14-12-2010 14:40 GMT3 час. #1397640   
TYOPA
**5001b67681f3126adde4**or:id())
end
end [/code]


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
СТРАННИК3000
    
Посты: 28
Откуда: Волгоград
Возраст: 28
14-12-2010 14:53 GMT3 час. #1397645   
Люди как называется мод для ТЧ где можно выбрать групировку и кликуху


TYOPA
    
Посты: 129
Откуда:
Возраст: 27
14-12-2010 15:09 GMT3 час. #1397650   
Ещё вопрос: как будет выглядить функция на удаления предмета из инвентаря?


S.T.A.L.K.E.R. Secret of the Zone: Gunslinger's Story. Prologue - разработка.
Alex-San
    
Посты: 1015
Откуда:
Возраст: 51
14-12-2010 16:01 GMT3 час. #1397685   
TYOPA
В файле
\scripts\bind_stalker.script
есть событие на выбрасывание предмета
function actor_binder:on_item_drop (obj)

вот туда и пихай вызов своей функции.


Arist
    
Посты: 310
Откуда: Москва
Возраст:
14-12-2010 16:17 GMT3 час. #1397692   
TYOPA
Когда перечитывал этот форум,нашёл такое:
function minus_medkit()
local oItem = db.actor:object("medkit")
if oItem then
alife():release(alife():object(oItem:id()), true)
end
end

Работает - проверял.


Ma$ter
    
Посты: 477
Откуда: Tamboff
Возраст:
14-12-2010 16:33 GMT3 час. #1397698   
Пытался сегодня телепортировать актора:
function teleport()
db.actor:set_actor_position(vector():set(-443.7,-4.3,-148.1))
end

Ни чего не получается, проигрывается эффект телепорта, но актор не портируется... Странно как-то


Знание assembler, C/C++, Pascal, Lua.
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
14-12-2010 16:47 GMT3 час. #1397705   
TYOPA,
**5001b67681f3126adde4**
Сохраняешь в свой скрипт. При удалении предмета пишешь так: имя_твоего_скрипта.del_item(sect), где sect - это имя секции в инвентаре ГГ. Имя всегда пишется в кавычках, например: qqqqq.del_item("wpn_ak74")

Ma$ter, пробуй еще. Метод этот рабочий.

проигрывается эффект телепорта

Вообще-то этот метод только переносит ГГ на позицию, и никаких эффектов он не производит.


СТРАННИК3000, потому что ты не в той теме пишешь.

отредактировал(а) SkyLoader: 14-12-2010 17:02 GMT3 час.

Хочешь работать нормально, работай один!
Няшный Умник
    
Посты: 584
Откуда:
Возраст: 30
14-12-2010 16:59 GMT3 час. #1397712   
СТРАННИК3000 Это не по теме но вот Ссыль


;)
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
14-12-2010 22:16 GMT3 час. #1397946   

# Artos :
Возникла задачка: "Как передать значение переменной из стартового меню игры в запущенную игру без записи в какой-либо файл?"


Целый день долбался...
Пытался передать через глобальные таблицы, которые (в принципе не должны трогаться), но ... После "Старт:Сервер:" всё равно зачищается.
По ходу на стадии запуска игры ТАКИ создается новый стек Luа.
В момент запуска главного меню (при старте игры) загружается xrGame_spy(я с тела, поэтому точно не помню, но что-то именно "SPY").
А только потом, после выбора в меню - xrGаmе.dll.
Это, по ходу, и есть ключевой момент.
Одна (первая, мною указанная) библиотека загружает стартовый экран. И только!
После неё стек чистый.
Включается хrGаmе.dll.
По ходу она запускает новую копию Luа (уже игровую) со своим стек-ом, который (естественно) не может быть виден из первого, так как в Luа может существовать, единовременно, только один стек.
Я не считаю себя знатоком Luа, но применил все свои навыки и ... результата не получил.
Нужно копать ещё глубже (ну по крайней мере я так считаю).
Если кто знает - растолкуйте пожалуйста. Интерес аж раздирает, как же это так сделано?
А из всего выше сказанного получается, что лучший путь передачи параметров через тот же файл.
УВЫ!?
Р.S. Копать всё равно буду (трудно воспринять собственную несостоятельность).
Arist
Когда листаешь страницы , и попадается твой ник, я думаю (да и многие, наверное) что это Artos.
Ты хоть немного смени ник (что ли? Не в обиду.).

отредактировал(а) Gun12: 14-12-2010 22:54 GMT3 час.

Не стань номинантом премии Дарвина.
СидырыЧЪ
    
Посты: 208
Откуда:
Возраст: 30
14-12-2010 22:39 GMT3 час. #1397961   
WildVepr
Лог вылета выложи


Horrible area mod Видео в журнале
--------------------------------------------------------------------
Важнейшая задача цивилизации - научить человека мыслить
Artos
    
Посты: 4176
Откуда:
Возраст: 65
14-12-2010 23:37 GMT3 час. #1397990   
Gun12
Спасибо за информацию. И хотя информация собственно не дает пути к решению, но все же ... отрицательный результат и/или его подтверждение - экономия и времени и сил. :-)
Аналогично тебе, не успокаиваюсь пока и не принимаю 'невозможность' ... еще покопаюсь, а может и как и раньше - отложу до лучших времен.
Все же не зря похоже сами разрабы все опции заводят через 'user.ltx'.

Если все же кто-то еще из модмейкеров копает в эту сторону:
С появлением NLC6, точнее LUA-перехватчика (luacap.dll), примененного в нем, есть обходной вариант - передавать значения требуемых переменных через 'внешнюю навеску'.
С точки зрения модмейкерства - вполне реальный вариант и даже имеет плюсы, хотя для игрока - есть пока немало минусов.

P.S. Пропустил как то добавку поста от Sapsan'а, поэтому прокомментрирую тут:

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

Все это подразумевает передачу из УЖЕ запущенной игры в другую копию запущенной игры.
Требуется же из еще НЕ запущенной, или даже еще не созданной (НИ), игры передавать в новую и/или сохраненную.
Это может быть востребовано, например, при 'лечении' сэйвов, в которых из-за наличия/отсутствия баговых объектов/инфопоршней требуется удалить/добавить/изменить объект/инфопоршень при инициализации проблемного сэйва, т.е. ДО активизации объектов в тех же биндерах иль подобном.
Это может быть востребовано при инициализации схем/модулей, которые оставляют следы в игре ...
И т.п.


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
14-12-2010 23:44 GMT3 час. #1397992   

# erlik :...for i=1, 10 do

А если в инвентаре нет 10-и аптечек прокатит?


Не стань номинантом премии Дарвина.
Artos
    
Посты: 4176
Откуда:
Возраст: 65
14-12-2010 23:45 GMT3 час. #1397993   
SkyLoader, Arist
Я бы рекомендовал писать скрипт с уд


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
batment
    
Посты: 267
Откуда: Киев
Возраст: 30
15-12-2010 00:19 GMT3 час. #1398010   
что нужно для создания смарт терейнов ?


-=NSM=-
Artos
    
Посты: 4176
Откуда:
Возраст: 65
15-12-2010 00:25 GMT3 час. #1398015   
Gun12
Разбавлять 'user.ltx' нештатными параметрами далеко не лучший вариант. И движек ругается в лог при загрузках (хотя и паплевать можно) и в случае ошибки - игрок может впасть в ступор ... (не каждый знает, что достаточно удалить 'битый' файл).
Использовать другие/свои файлы - и 'мусорить' не хотелось бы и ... при опять же сбоях при загрузке - подобные файлы могут быть уже и рудиментами, от которых больше мороки, чем пользы. Делать же излишние файловые перепроверки и пр. - всего все одно не упредить ...
Ну а DLL'ка конечно не быстрее работает имеющихся. Просто она избавляет от ручных операция по чистке (возможного) мусора.

Вот простейший пример, когда нужна бы такая передача 'на лету':
В топике разработки Симбиона у игрока возник в игре объект с некорректной секцией. Может он что подправил некорректно, может еще какая причина, но ... требуется объект удалить из сэйва.
Сейчас вариант: прописать в специальном файле (_removed.ltx) 'битую' секцию и соотнести ей имеющуюся аналогичную, типа: 'mutant_sfork_leg:mutant_snork_leg'.
игра постепенно засоряется такими записями ... Требуется ручками чистить.
А если на старте ввести в окошко едит-бокса 'битую' и взвести флажек удаления иль даже замены - то и сэйв реанимирован и следов не остается ... и от игрока не требуется познаний по структуре файлоа, навыков по форматам записей в файлах и ... от описок застрахован.


batment
А посмотреть в том же all.spawn'е секциях уже имеющихся смарт-терейнов религия не позволяет?


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
15-12-2010 00:27 GMT3 час. #1398016   

# Artos :...передавать значения требуемых переменных через 'внешнюю навеску'...

А чем это лучше обыденного "user.ltx"?
Разве эта новая DLL быстрее работает?
Если это не так - то какой смысл?
---
=) Artos , да я (с пьяну) решил что Erlik удаляет =). Сорри.
Р.S.S. Что-то и Т9 уже не слушается?!!

# Artos :...Вот только вычислять 10 раз параметры для актора - не оптимально :-)


Вот черт, не зря Т9 не слушается =), я сразу и не обратил внимания.
Конечно же нужно при любых условиях стараться не создавать "лишних" не только глобальных, но и локальных переменных.
А тут 10 обращений к глобальным данным?!?
Естественно нужно сначала сохранить всю эту катавасию локально, а потом и сам черт по ...=)
---
Почитал под спойлером.
Должен согласиться - совершенно замечательная идея.
(как же такие простые вещи в голову не приходят??? Ну...не каждому дано =). Смиримся с судьбой, братья)

отредактировал(а) Gun12: 15-12-2010 00:45 GMT3 час.

Не стань номинантом премии Дарвина.
batment
    
Посты: 267
Откуда: Киев
Возраст: 30
15-12-2010 00:42 GMT3 час. #1398020   
просто я думал что кроме all.spawn нужно еще скрипты, так ведь ?

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

обязательно писать в смарт терейне строчку cound ?

отредактировал(а) batment: 15-12-2010 00:46 GMT3 час.

-=NSM=-
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
15-12-2010 00:52 GMT3 час. #1398025   
batment, дружище, ты спросил, - "Как создать смарт?"
Вот тебе ответ.
Если бы ты спросил, - "Как создать гулаг?" , то тут без скриптов не обойтись.


Не стань номинантом премии Дарвина.
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
15-12-2010 01:14 GMT3 час. #1398032   
Artos, согласен с вами :-) Но шанс вылета все-таки очень мал.
batment, статья на ВИКИ: Смарттеррейны и гулаги


Хочешь работать нормально, работай один!
Artos
    
Посты: 4176
Откуда:
Возраст: 65
15-12-2010 01:59 GMT3 час. #1398040   
SkyLoader
1. 'Малость' - понятие относительное ... да и зависит от места применения.
Попробуй подобное перед каким нибудь куском кода/схемы, которая 'подчищает' инвентори иль , например, удалить аптечку, предварительно 'съев' ее.
2. Когда такая 'малость' приводит хотя бы и к редким вылетам (безлоговым!) в игре - игрок(и) не считают это малостью.

ИМХО, не стОит экономить на строчках кода, если это конечно не заведомо черновой код.
Ну а если это идет как решение для другого, слабо в скриптах разбирающегося, то ... тем более не стОит тиражировать 'черновые коды'.


почему не стОит грузить сэйвы 'на лету'

Gun12, erlik
Получил еще немного информации для головоломки:
Немного выше (#1397990) комментировал пост Sapsan'а по 'остаткам' драфтов от диалогов при перезапуске сэйвов ... Наткнулся на аналогичное для окна инвентори.
Давненько уже прикрутил доп.слоты к окну инвентори и вроде как все нормально работало. Однако один из игроков-тестеров нарвался на вылет при запуске игры с пустыми слотами (ножа, бинокля ...). Поковырял коды, облегчил малость, отказавшись от статика (подложки) и оставив только кнопки с текстурами. Ошибка (вылет при наведении на пустой доп.слот) вроде как исчезла.
Однако продолжил поиск и оказалось: если в сэйве в слоты разместить предметы и после этого завершить игру (не выходя в ОС) и начать новую или загрузить иной сэйв (на лету) - в пустых слотах оказывается именно то, что было в них при завершении прошлой игры. Причем (у меня это дублируется и на основном экране) предметов в слотах точно нет, но обновлялка окон-слотов перестает работать. При попытке нажать слот-кнопку (выкинуть предмет) - вылет без лога.
Испробовал всевозможные варианты организации доп.окошек в окне инвентори, ошибок в скриптах точно нет, но ... из завершенной игры через выход из игры (disconnect или game_reload) объект окна
инвентори с его приаттаченными кнопками (текстуры/надписи) передается новой игре или запущенному сэйву.
Конечно такая передача скорее вредна, т.к. приводит к фатальным ошибкам (объект получается фейковым), но ... есть над чем подумать и учитывать.
Вероятно движек игры резервирует некие области памяти и, заполнив их однажды, не затрудняет себя очисткой/обновлением ...

erlik, вероятно с твоим рюкзаком должно происходить аналогичное, хотя ... ты запрещаешь инвентори при отсутствии рюкзака. Но проверить не смог. На чистой игре (патчи 1.0004 и 1.0005) с модом вылет с получаемых сохранок:
FATAL ERROR
[error]Expression : hFile>0
[error]Function : FileDownload
[error]File : E:\stalker\sources\trunk\xrCore\FS.cpp
[error]Line : 106
[error]Description : e:\games\stalker\shoc\gamedata\config\

- ковырять причину не стал.



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

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
15-12-2010 16:58 GMT3 час. #1398228   

# Artos :... завершить игру (не выходя в ОС) и начать новую или загрузить иной сэйв (на лету) - в пустых слотах оказывается именно то, что было в них при завершении прошлой игры.


Так-с-с. Значит надежда всё же есть.
Интересно-интересно. Обязательно гляну.


Не стань номинантом премии Дарвина.
SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
15-12-2010 18:43 GMT3 час. #1398302   
Artos, ну ладно. Мне не лень одну строчку написать ;-)


Хочешь работать нормально, работай один!
Сталкер43
    
Посты: 173
Откуда: Борисов
Возраст: 14
15-12-2010 19:00 GMT3 час. #1398313   
Подскажите функцию,после выполнения которой определенный сталкер становится враждебным актору.


Garcy
    
Посты: 3
Откуда:
Возраст:
15-12-2010 19:07 GMT3 час. #1398318   
Сталкер43
function actor_enemy(actor, npc)
npc:set_relation(game_object.enemy, actor) -- делает врагом
end
это через диалог.


Ты должен сделать добро из зла, потому что его больше не из чего сделать. Р.П.Уоррен
ВОИН
    
Посты: 218
Откуда:
Возраст: 33
15-12-2010 20:04 GMT3 час. #1398348   
нубо вопрос-как определённым неписям изменить их броню,оружие? в моём случае всем зомби....плиз кто хотябы немного вкурсе ответьте


Химер Роковой
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
15-12-2010 20:31 GMT3 час. #1398359   
Artos
Я никогда не использовал опцию меню "завершить игру"(а какой в ней смысл?) - всегда сразу выхожу в ОС.
При всех прочих вариантах загрузки сейвов - со слотами все в порядке.
PS:твой вылет [error]Description : e:\games\stalker\shoc\gamedata\config\ связан либо с твоим fsgame, либо все таки что-то несовместимо из-за различий файлов и конкретного патча игры. На моем 4-вом все в порядке. Сам по себе данный вылет не имеет отношения к игровым скриптам, а только к файловой системе и загрузке файлов.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
СидырыЧЪ
    
Посты: 208
Откуда:
Возраст: 30
15-12-2010 20:51 GMT3 час. #1398373   
Народ помогите настроить нпс чтобы те допустим (военные увидев гг, который их атаковал и убежал, начали преследование. Допустим от блокпоста до лагеря новичков они бы доходили) У меня было такое настроено, но щас перестало работать)


Horrible area mod Видео в журнале
--------------------------------------------------------------------
Важнейшая задача цивилизации - научить человека мыслить
Artos
    
Посты: 4176
Откуда:
Возраст: 65
15-12-2010 21:50 GMT3 час. #1398410   
erlik
Тоже предпочитаю закрывать игру полностью, выходя в ОС, но ... дал информацию по "завершить игру" вкупе и с "загрузить сэйв". Немало игроков, при смерти ГГ, тут же грузят ближайшее сохранение или, выйдя в игровое меню (по эни-кею) по сути "завершить игру", вновь грузят сэйв.

А по ошибке/вылету: Тебе решать ... искать/править ... 'fsgame' у меня конечно правленный под меня, но ... и чистые игры всех патчей и все(!) моды, которые пробую/играюсь - не имеют подобной ошибки на каких-либо сохранениях.

И, кстати, значительная нелогичность с выкидываемым рюкзаком и доп.слотами. Нет рюкзака - не возможности начего сделать н с поясом ни с доп.слотами (по сути это кабыра/карманы). А если понадобилось арт с поясв снять иль ножик/детектор выкинуть/поменять? ...

ВОИН
Вверху справа есть кнопочка: [F.A.Q.]

отредактировал(а) Artos: 15-12-2010 22:03 GMT3 час.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени


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


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

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