Fomin 53 Report post Posted September 9, 2018 (edited) Сталкивался кто с такой ошибкой при входе? Логи пустые. Ошибка выявляется не всегда, иногда ее нет. ctrl.lua function config(map) MapCanSavePos(map, 0) -- Возможность сохранять позицию персонажа на карте (1 - да, 0 - нет) MapCanPK(map, 1) -- Возможность атаковать других персонажей (1 - да, 0 - нет) MapCanTeam(map, 1) -- Возможность создавать отряды (1 - да, 0 - нет) MapCopyNum(map, 1) -- Количество копий карты (если параметр отсутствует, принимается равным 1) SingleMapCopyPlyNum(map, 300) -- Количество игроков на карте MapType(map, 4) -- Тип карты MapCanStall(map, 1) -- Возможность торговать (1 - да, 0 - нет) end function get_map_entry_pos_puzzleworld() local POS_X, POS_Y = 920, 1067 return POS_X, POS_Y end function init_entry(map) SetMapEntryMapName(map, "garner") SetMapEntryTime(map, "2018/01/01/00/00", "00/06/00", "00/01/00", "00/02/00") end function map_copy_close_puzzleworld(map_copy) ClearAllSubMapCha(map_copy) end -- Функция вызывается каждую секунду function map_copy_run_puzzleworld(map_copy) local HowManyNoDead = GetMapActivePlayer(map_copy) if HowManyNoDead > 0 then DealAllPlayerInMap(map_copy, "check_attribute_puzzleworld") end end -- Функция проверяет что характеристики персонажей соответствуют требованиям function check_attribute_puzzleworld(role) if (CheckLocationChar(role, 2) == 0) then MoveCity(role, "Элизиум") end end function after_enter_puzzleworld(role, map_copy) end function before_leave_puzzleworld(role) end function map_run_puzzleworld(map) end function map_copy_run_special_puzzleworld(map_copy) end function map_copy_before_close_puzzleworld(map_copy) end Есть подозрения, что данные строчки лишние, убрали, тестируем: function map_run_puzzleworld(map) end function map_copy_run_special_puzzleworld(map_copy) end function map_copy_before_close_puzzleworld(map_copy) end Edited September 9, 2018 by Fomin Quote Share this post Link to post Share on other sites
V3ct0r 2,117 Report post Posted September 9, 2018 puzzleworld\entry.lua В функции after_create_entry( ) вызывается функция GetMapEntryCopyObj( )? function after_create_entry(entry) local copy_mgr = GetMapEntryCopyObj(entry, 0) // !!! именно 0 . . . end Quote Some useful links / Полезные ссылки Tips for making a topic in 'Questions & Help' / Рекомендации по созданию тем в разделе "Помощь" Server Advertising Section Rules / Правила раздела "Реклама серверов" Available e-mail domains for registration / Допустимые e-mail домены для регистрации User groups / Группы пользователей User ranks / Звания пользователей "Broken" pictures on the forum / "Битые" изображения на форуме Beware of scammers! / Осторожно, мошенники! My developments / Мои разработки Mods for client and server / Моды для клиента и сервера PKOdev.NET website for Tales of Pirates Server / PKOdev.NET веб-обвязка для сервера Пиратии I do not provide any help in private messages and outside the forum. Use 'Questions & Help' section please. Thank you for understanding! Я не оказываю какую-либо помощь в личных сообщениях и вне форума. Пожалуйста, используйте раздел "Пиратия: Помощь". Благодарю за понимание! Share this post Link to post Share on other sites
Fomin 53 Report post Posted September 10, 2018 9 часов назад, V3ct0r сказал: puzzleworld\entry.lua В функции after_create_entry( ) вызывается функция GetMapEntryCopyObj( )? function after_create_entry(entry) local copy_mgr = GetMapEntryCopyObj(entry, 0) // !!! именно 0 . . . end Да, вызывается. function config_entry(entry) SetMapEntryEntiID(entry, 193,1) end function after_create_entry(entry) local copy_mgr = GetMapEntryCopyObj(entry, 0) local EntryName = "Мир демонов | 50-105" SetMapEntryEventName(entry, EntryName) map_name, posx, posy, tmap_name = GetMapEntryPosInfo(entry) Notice("Объявление: На Священной Горе ["..posx..","..posy.."] обнаружен портал, ведущий в [Мир Демонов]!") end function after_destroy_entry_puzzleworld(entry) map_name, posx, posy, tmap_name = GetMapEntryPosInfo(entry) Notice("Объявление: По имеющимся данным, портал ведущий в [Мир Демонов] исчез. Удачи! ") end function after_player_login_puzzleworld(entry, player_name) map_name, posx, posy, tmap_name = GetMapEntryPosInfo(entry) ChaNotice(player_name, "Объявление: На Священной Горе ["..posx..","..posy.."] обнаружен портал, ведущий в [Мир Демонов]! ") end function check_can_enter_puzzleworld(role, copy_mgr) if (CheckLocationChar(role, 2) == 0) then return 0 end return 1 end function begin_enter_puzzleworld(role, copy_mgr) SystemNotice(role,"Вы вошли в Мир Демонов #19") MoveCity(role, "Мир Демонов") end Quote Share this post Link to post Share on other sites
Fomin 53 Report post Posted September 15, 2018 Очередное зависание. Удаление функций не помогло. Quote Share this post Link to post Share on other sites
Knight 15 Report post Posted September 15, 2018 Особо вариантов нет, кроме как прицепиться к CheckLocationChar Quote Share this post Link to post Share on other sites
Fomin 53 Report post Posted September 15, 2018 28 минут назад, Knight сказал: Особо вариантов нет, кроме как прицепиться к CheckLocationChar function CheckLocationChar(role, setmap) local role = TurnToCha(role) if IsPlayer(role) == 1 then if (setmap == 2) then if ((Lv(role) < 50) or (Lv(role) > 105)) then SystemNotice(role, "Ошибка: Ваш уровень должен быть не менее 50-го и не более 105-го #19") return 0 end if (CheckFairyLv(role, 350) == 0) then SystemNotice(role, "Ошибка: Ваша фея должна быть не выше 350-го уровня #19") return 0 end -- Проверяем физ. защиту if (GetChaAttr(role, ATTR_PDEF) > 65) then SystemNotice(role, "Ошибка: Ваше физическое сопротивление должно быть не более 65 единиц #19") return 0 end -- Провеярем макс. атаку if (GetChaAttr(role, ATTR_MXATK) >= 60000) then SystemNotice(role, "Ошибка: Ваша максимальная физическая атака должна быть менее 60 000 единиц #19") return 0 end return 1 end end end Банальные проверки. Не думаю что в них проблема. Quote Share this post Link to post Share on other sites
Knight 15 Report post Posted September 17, 2018 Я уже не знаю даже че предложить. Пойдём по мере увеличения бреда. Попробуй русский текст закодить, мб он периодически не понимает русские строчки с birth'а Ну и системнотайсы введи на все функции ctrl и entry, где их нет. Посмотрим с этой стороны че ему не так. И посмотри, не может быть такого, что портал мапится с другим? Quote Share this post Link to post Share on other sites
Fomin 53 Report post Posted September 17, 2018 4 часа назад, Knight сказал: Я уже не знаю даже че предложить. Пойдём по мере увеличения бреда. Попробуй русский текст закодить, мб он периодически не понимает русские строчки с birth'а Ну и системнотайсы введи на все функции ctrl и entry, где их нет. Посмотрим с этой стороны че ему не так. И посмотри, не может быть такого, что портал мапится с другим? Уже все перепробовали.. Напомню, проблема "Копии не существует" была предположена в этой теме: Скорее всего, все-же проблема в garner и при зависании, он не пускает в порталы. При следующем падание попробуем войти в другой портал и проверим гипотезу. Quote Share this post Link to post Share on other sites