Сейчас 20:19:11 Понедельник, 25 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Выкидывает игроков с моей игры
Svanir2Дата: Суббота, 13 Июня 2015, 18:52:51 | Сообщение # 1
2 уровень
Группа: Пользователи
Сообщений: 32
Награды: 0
Репутация: 2
Блокировки:
Добрый вечер!
Проблема состоит в том, что с моей карты постоянно выкидывает половину игроков, то есть при старте у всех, кто "пережил" загрузку появляется окошко с отсчётом для тех, кто откинулся, а затем игра спокойно продолжается без половины её участников.
Вся ерунда в том, что отрубает всегда рандомную половину игроков, не зависимо от какого-то конкретного цвета или ещё чего.
Джасс на карте не используется, триггерно скрываются тексты.
В качестве протектора и оптимизатора использую SLQOPT.
Раньше тестил карту с двух компов, карта весила больше и использовался иной оптимизатор, загрузка на втором компе (не хосте) вставала на половине, после чего я резко сменил оптимизатор и уменьшил вес карты на 2/3 и проблема отпала, но что там происходит у людей с паблика сказать не могу.
В чём может состоять проблема? В карте или всёже во мне (кому-то из игроков перекрываются мои порты может)?
 

KaotikaДата: Воскресенье, 14 Июня 2015, 08:07:43 | Сообщение # 2
5 уровень
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 20
Блокировки:
Цитата Svanir2 ()
Джасс на карте не используется

То есть GUI и Jass - не имеют отношения друг другу ?
Цитата Svanir2 ()
использовался
Цитата Svanir2 ()
оптимизатор

Может проблема в этом?


Тискаю клаву... остальных пока некогда!
 

BiboДата: Воскресенье, 14 Июня 2015, 08:24:22 | Сообщение # 3
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Описание проблемы выше не дает ничего, что могло бы дать наводку на причину проблемы.
Нужно смотреть триггеры карты.
 

Svanir2Дата: Воскресенье, 14 Июня 2015, 08:52:23 | Сообщение # 4
2 уровень
Группа: Пользователи
Сообщений: 32
Награды: 0
Репутация: 2
Блокировки:
Цитата Kaotika ()
То есть GUI и Jass - не имеют отношения друг другу ?

То есть это отметает возможные проблемы с getlocalplayer, были использованы только функции из гуишных выпадающих списков.
Цитата Kaotika ()
Может проблема в этом?

Возможно. Пробовал не оптимизировать карту, а лишь протектить mpq extprotect'ором, вылеты всёравно наблюдались.
Цитата Bibo ()
Описание проблемы выше не дает ничего, что могло бы дать наводку на причину проблемы.
Нужно смотреть триггеры карты.

А какие гуишные функции могут привести к вылету/застреванию загрузки? Триггеров у меня много, проще будет найти возможно проблемные функции и отключить их, я не думаю, что кто-то будет перебирать сотни моих однотипных триггеров.
 

BiboДата: Воскресенье, 14 Июня 2015, 09:10:36 | Сообщение # 5
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Цитата Svanir2 ()
То есть это отметает возможные проблемы с getlocalplayer, были использованы только функции из гуишных выпадающих списков.

Множество GUI действий использует функцию GetLocalPlayer. Такие действия есть в разделах "Камера", "Выбор", "Видимость" и многих других.
Так же, может произойти разрыв с игроками, в случае выполнения действий из раздела "Видимость" по отношению к нейтрально-враждебному и нейтрально-пассивному игроку.


Сообщение отредактировал Bibo - Воскресенье, 14 Июня 2015, 09:11:12
 

Svanir2Дата: Воскресенье, 14 Июня 2015, 09:32:52 | Сообщение # 6
2 уровень
Группа: Пользователи
Сообщений: 32
Награды: 0
Репутация: 2
Блокировки:
Хочу уточнить, что вылеты всегда происходят только в самом начале, то есть вероятно при инициализации, и всё бы было логично и понятно, если бы вылетали все, но вылетает всегда примерно половина (при старте 3х3 остаётся 2х1, при 2х2 1х2) и никогда не вылетает, если стартуют 1х1.
В инициализации карты только устанавливается огромное количество массивных переменных, устанавливаются флаги игроков, меняются аспекты союзов, всем юнитам на карте выставляются уникальные обычные значения, скрываются все нейтралы на карте с помощью юнит-спрятать и перед игроками появляются плавающие тексты, которые скрываются для всех, а затем показываются отдельно каждому игроку свой текст. Такая же технология с текстами используется на протяжении всей игры и те, кто не вылетел, без проблем играют.
Ещё предполагаю, что игроки могут вылетать/застревать на стадии загрузки, но в таком случае, наверное бы игра вообще не стартовала. При загрузке все игроки становятся "зелёными" на экране загрузки, потому наверное тут всё в порядке.

Добавлено (14 Июня 2015, 09:32:52)
---------------------------------------------

Цитата Bibo ()
Множество GUI действий использует функцию GetLocalPlayer. Такие действия есть в разделах "Камера", "Выбор", "Видимость" и многих других.
Так же, может произойти разрыв с игроками, в случае выполнения действий из раздела "Видимость" по отношению к нейтрально-враждебному и нейтрально-пассивному игроку.

Да, но я не думаю, что гуи может использовать эту функцию как-то не верно, по крайней меря я не наблюдал, чтобы проблемы с вылетами у других людей возникали из за гуи функций. Но раз уж так, то при инициализации много раз пикаются все игроки, один раз добавляются в группу и затем этим игрокам из группы постоянно устанавливаются их персональные камеры. С видимостью манипуляций не произвожу. Всех нейтрально-враждебных прячу при инициализации тем же гушным действием: боевая еденица -> спрятать.
Тут есть какая-то проблема?
 

BiboДата: Воскресенье, 14 Июня 2015, 09:35:45 | Сообщение # 7
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Описание редко отражает действительность.
Нужно смотреть триггеры карты.
 

Svanir2Дата: Воскресенье, 14 Июня 2015, 09:49:01 | Сообщение # 8
2 уровень
Группа: Пользователи
Сообщений: 32
Награды: 0
Репутация: 2
Блокировки:
Вот 2 скрина с триггером, в котором почти все действия при инициализации. Всё остальное - тонны установок пременных для разных систем.
http://hkar.ru/BKt7
http://hkar.ru/BKt8
 

BiboДата: Воскресенье, 14 Июня 2015, 12:31:05 | Сообщение # 9
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Я не вижу опасных моментов на этих фото. По крайней мере, на сколько могу разобраться в русифицированных триггерах.
 

EnforcerДата: Воскресенье, 14 Июня 2015, 14:52:40 | Сообщение # 10
Энф
Когда-то смотрел за порядком
Группа: Ветераны
Сообщений: 3127
Награды: 7
Репутация: 981
Блокировки:
Svanir2, вылеты могут наблюдаться если слишком много выбрано юнитов в переменной или выдается одновременный приказ всем юнитам и начинается рассинхрон с другими игроками.
Попробуй поставить в циклах типа Sleep (ждать) 0.1 секунду и проверь остался вылет или нет.


 

Svanir2Дата: Воскресенье, 14 Июня 2015, 19:06:59 | Сообщение # 11
2 уровень
Группа: Пользователи
Сообщений: 32
Награды: 0
Репутация: 2
Блокировки:
Цитата Enforcer ()
Svanir2, вылеты могут наблюдаться если слишком много выбрано юнитов в переменной или выдается одновременный приказ всем юнитам и начинается рассинхрон с другими игроками.
Попробуй поставить в циклах типа Sleep (ждать) 0.1 секунду и проверь остался вылет или нет.

Да. действительно, поставил в некоторых триггерах событие "Времени прошло" вместо "Инициализация" и уже никого не выкинуло, видимо проблема была в высокой нагрузке на инициализацию карты.
Вроде как проблема отпала, а может просто рандом мне улыбнулся, но скорее всего первое.
 

Samedy_Дата: Воскресенье, 14 Июня 2015, 20:44:04 | Сообщение # 12
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
Цитата Svanir2 ()
поставил в некоторых триггерах событие "Времени прошло" вместо "Инициализация"

Все время так делаю. Уже не помню где прочитал, но в какой-то теме на инфо есть пост о том, что событие инициализации карты должно быть только одно (на этом внимание не акцентировалось, но себе на заметку я это не зря взял, видимо). :)
 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz