Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Виталий Зверь 7 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Gonarh, Мне и надо удалить всех... А за что отвечает esc_prison? Ссылка на комментарий
Gonarh 5 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 ты не понел, нуно удалить этот рестриктор чтобы вылета небыло, на него повешана проверка находения в нем непися со стори_ид 24, а раз такого нету - нате вам вылет :ny_biggrin: Строгое предупреждение от модератора n6260 Пишите без ошибок. 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Monnoroch 6 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 (изменено) Какой максимальный обьем переменной в ЛУА сталкеровском можно сделать?Если у меня таблица,допустим,килобайт 300 будет - это нормально? ==== И еще: вот у меня есть обьект.Как мне определить клиентский он или серверный? Изменено 27 Декабря 2009 пользователем Monnoroch Ссылка на комментарий
Krevedko 0 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Как повысить живучесть главного героя? Ссылка на комментарий
Monnoroch 6 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 (изменено) Krevedko, както так... class "ggg" -- вызывать из bind_stalker.actor_binder:update(delta) function ggg:init() for i = 0,65535,0 do local obj = level.object_by_id(i) if obj:id() and obj:id() == db.actor:id() then obj = db.actor end end if obj.health >0.1 then self:gg_bessmerten(obj) else self:gg_bessmerten(obj) end end function ggg:gg_bessmerten(obj) for i = 1,(3-math.floor(16-225/15)-1) do if obj.health <0.1 then obj.health = obj.health+1 end if obj.health >0.1 then obj.health = obj.health+1 end if obj.health =0.1 then obj.health = obj.health+1 end end end в bind_stalker.actor_binder:update(delta) (=скрипт bind_stalker, функция actor_binder:update(delta)) пишешь твое_название_скрипта.ggg:init() где название скрипта - тот скрипт,куда ты написанное мной допишешь Лучше создай новый скрипт. n6260,ахахаха gamedata\scripts\bind_stalker.script ('это я продолжил твой путь ) Изменено 27 Декабря 2009 пользователем Monnoroch Ссылка на комментарий
Krevedko 0 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 я вобще ничего в этом не фурычу поэтому напиши в какой файл залесть и т.д Строгое предупреждение от модератора n6260 Пишите грамотно. Добавлено через 6 мин.: дай путь на файл! пример:\STALKER GOLD\STALKER SHADOW OF CHERNOBYL Ссылка на комментарий
Gonarh 5 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 (изменено) Моннорох, ты изверг, зачем апдейтер так мучать, да еще класс вешать?! Достаточно в апдейтере написать db.actor.health = 1 и все в шоколаде :ny_megalol: Изменено 27 Декабря 2009 пользователем Gonarh 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Darien 0 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Krevedko Всё что тебе надо, это gamedata\scripts\bind_stalker.script и в этой же папке свой файл с расширением .script. Если ты конечно собрался использовать такую систему Ссылка на комментарий
Monnoroch 6 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 (изменено) Darien, Не сметь порочить мою систему!Она рабочая на все 100! Gonarh, на самом деле все еще проще - можно почитать шапку темы Изменено 27 Декабря 2009 пользователем Monnoroch Ссылка на комментарий
Malandrinus 615 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Какой максимальный обьем переменной в ЛУА сталкеровском можно сделать?Если у меня таблица,допустим,килобайт 300 будет - это нормально?Это зависит от типа хранимых в этой таблице объектов. Если чисто объекты Lua, то количество ограничено только объёмом свободной памяти. Хотя разумеется, если занять всю память, то это косвенно может сказаться и на хост-программе (на игре то бишь). Если вдруг в таблице хранятся пользовательские объекты, т.е. объекты игры, то здесь всё зависит от способа хранения конкретных объектов. Сдаётся мне, что для некоторых объектов для хранения выделяется ограниченный пул в памяти. И еще: вот у меня есть обьект.Как мне определить клиентский он или серверный?По составу методов и свойств. К примеру. У всех серверных type(<имя_объекта>.id) вернёт строку "number", а для game_object вернёт соответственно "function" Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Monnoroch 6 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 malandrinus, я нетпакеты неписей пишу в таблицу.это я так понимаю обьекты LUA? Ссылка на комментарий
Malandrinus 615 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Monnoroch, Если ты имеешь в виду разбор в стиле АМК, то чаще всего это обычные данные Lua - строки, числа и т.п. Но вот например vector - уже пользовательский тип. А он вроде как там встречается. Если его на запчасти разобрать, то никаких проблем быть не должно. А может и так не будет, кто его знает... Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Monnoroch 6 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Я составляю таблицу полных нетпакетов НПС в онлайне которые. Тут проблема просто - зависают они иногда.Причину обыскалисть - не нашли. Теперь вот решили сделать как: переписываем пстор и нетпакет.Для этого нужна таблица нетпакетов.Вот я и думаю если в онлайне 60 НПС будет игра не рухнет? Ссылка на комментарий
Garry_Galler 7 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 (изменено) Вот функция которая у меня должна возвращать случайное имя итемса из списка и число вероятности список обычного вида [generic_list] ammo_9x18_fmj = 0.9 ammo_9x18_pmm = 0.9 ammo_9x19_pbp = 0.9 и т.д. сто с лишним строчек Сама функция все вроде отлично возвращает - (проверял через вывод всех значений функции в консоль) function test() local ini = ini_file("misc\\items_link.ltx") if not ini then ini=system_ini() end if ini:section_exist("generic_list") then local n = ini:line_count("generic_list") local key = math.random(n) local result, item, val = ini:r_line("generic_list",key,"","") --решил добавить еще этот метод - так как числа то в списке не целые - но толку никакого local num = ini:r_float("generic_list", item) return item, num end end (если вместо num вернуть val - то в основном скрипте получал вылет - попытка сравнить число с nil - а в консоли все норм. выводится) но стоит ее вызвать в другом коде - и начинается какая то фигня - то то вместо чиcла передается nil, то строка, то игра ругается что не может найти переменную в списке... это вот в последний раз. в списке все имена итемсов игры. function all_secrets() local id, pos, lvid, gvid, count local n=4999 for col=1, 481 do local obj = alife():story_object(n+col) if obj then id = obj.id pos = obj.position lvid = obj.m_level_vertex_id gvid = obj.m_game_vertex_id count = math.random(30) for i=1, count do local item, num = this.test() item =tostring(item) num = tonumber(num) if math.random() < num then alife():create(item, pos, lvid, gvid, id) end end end end end В общем пришел к выводу что вылет из-за цикла - сделал вывод в консоль с циклом - и получил тот же вылет - Can't find variable in [generic_list] а без цикла - то есть когда вызов функции test одноразовый - все норм. Никто не подскажет в чем тут дело? Уфф проблему решил - надо же было парсить списoк от 0 и до n-1 а не от 1 и до n пол дня ушло чтобы понять что вылет именно из-за этого был. Изменено 27 Декабря 2009 пользователем Garry_Galler Ссылка на комментарий
Kreizifroggy 0 Опубликовано 27 Декабря 2009 Поделиться Опубликовано 27 Декабря 2009 Простите немного глупый вопрос но все же: КАК убрать этот ....баный новый ремонт из народной солянки и сделать чтоб все было по старому. Сообщение от модератора n6260 Взять и сравнить как было "по старому" и как теперь "по новому". Или просто сделать своего личного НПСа-ремонтника. Строгое предупреждение от модератора n6260 Еще раз будете выражаться подобным образом - пожалеете. Ссылка на комментарий
Malandrinus 615 Опубликовано 28 Декабря 2009 Поделиться Опубликовано 28 Декабря 2009 Для этого нужна таблица нетпакетов.Вот я и думаю если в онлайне 60 НПС будет игра не рухнет? Нетпакет имеет размер 8 кб и чаще всего используется не полностью. 8*60 = 480 кб - примерно полмегабайта. Добавь ещё служебную информацию: расходы на организацию блоков динамической памяти и ключи таблиц Lua - пусть будет условно столько-же. Итого, в районе мегабайта - сущие копейки. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Бубалех 0 Опубликовано 28 Декабря 2009 Поделиться Опубликовано 28 Декабря 2009 уж извените что постю на темах но никто мне почему то не хочет отвечать. дело вот в чем: знающие люди подскажите пожалуйста как исправить этот очень досадный баг? Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ....r. - shadow of chernobyl\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) Я догадываюсь что ошибка в логике нового нпс. я хотел создать торговца и логику взял из тутора вот: [smart_terrains] none = true [logic] active = walker trade = misc\trade_kntrader.ltx trader_flags = 0 inv_max_weight = 10000 on_death = death [walker] path_walk = esc_sin_kntrader_walk path_look = esc_sin_kntrader_look meet = meet [meet] use = true use_wpn = true meet_talk_enabled = true . но с этой логикой вылеты! что делать? я все правильно писал и перепроверял. стоит только убрать trade = ... и все нормально. помогите дорогие ветераны убийство гарика и жорика главный стимул дойти до бара Ссылка на комментарий
Gonarh 5 Опубликовано 28 Декабря 2009 Поделиться Опубликовано 28 Декабря 2009 (изменено) походу не находит секции death on_death = death ты её определил но не описал проверь наличие файла trade_kntrader.ltx в папке gamedata\config\misc если он там есть, показывай его сюда Изменено 28 Декабря 2009 пользователем Gonarh 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Darien 0 Опубликовано 29 Декабря 2009 Поделиться Опубликовано 29 Декабря 2009 (изменено) Всех с Наступающим. У меня есть очень важный вопрос(для меня), от которого в общем зависит судьба моего мини мода. Проблема такая - я функцией выдаю актору случайное однотипное задание из таблицы. А проблема в том, что когда я записываю в таблицу названия однотипных тасков(например tm_eliminate_camp_1) из task_manager.ltx, то при старте ф-ии выскакивает такой баг: Expression : start_node && path Function : CXml::NavigateToNode File : E:\stalker\patch_1_0004\xrXMLParser\xrXMLParser.cpp Line : 97 Description : NavigateToNode failed in XML file Arguments : gameplay\game_tasks.xml Раньше успешно тестил на вырезанных задания(типа 'sar_warlab'), и вот перед самым релизом такой досадный баг :ny_sad: Помогите пожалуйста. Изменено 29 Декабря 2009 пользователем Darien Ссылка на комментарий
lekzd 1 Опубликовано 29 Декабря 2009 Поделиться Опубликовано 29 Декабря 2009 Darien, gameplay\game_tasks.xml менял? - если да, то в нем ошибка i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти