YellowStar
poon
offline
Опыт:
15,144Активность: |
Было локальным - стало общим?
Хотелось бы локальные данные выводить всем игрокам (интегеры).
Сделал функцию где создается юнит - локально пикается, проверяется на выбор и добавляем к общему значению. Функция вышла очень медленная (при значении сто - расчет идет секунд 5). Так собственно вопрос, можно ли как нить лок данное - сделать общим (синкСторедИнтеджер - не предлагать , пашет некоректно) narayan добавил: Желательно более быстрый чем я сказал :) |
03.02.2010, 01:28 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Vampirrr
O_o
offline
Опыт:
19,286Активность: |
а не мог ты подробнее изложить суть? а то даже неясно, что за значение 100.. |
03.02.2010, 05:27 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
синхронизация выполняется крайне медленно. |
03.02.2010, 07:18 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YellowStar
poon
offline
Опыт:
15,144Активность: |
Ну синхронизирует кэш он быстро, только вот синхронизирует значение с хостом, а если брать кого нить еще 0.о то они в ауте их данные обнуляются. Конечно можно будет создавать группу юнитов которая будет пикатся (одни за десятки, другие за сотни итд.) но вот незадача - для 12 игроков (учитывая что у меня числа 10к) будет 60 юнитов, и это для каждои переменнои, а если их много тт. Может есть еще способ? К примеру через ТригСинхСтарт (не понял как пашет сия система) |
03.02.2010, 12:08 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
тоадкоп синхронизировал одним юнитом и набором абилок которые вызываются через форс юи кей.
насколько мне известно этот метод куда быстрее чем все остальные и обеспечивает полноценную синхронизацию, так как можно иметь абилку под число 0-9 + 3 служебных знака, например лайнбрейк пробел и точка.
таким нехитрым образом можно заставить локальную машину сообщить игре локальные данные которые попадут на машины всех игроков разом.
кстати я бы хотел протестировать сохранение кода в прелоадер и сообщение его хосту, демокарта будет через 2-3 часа если есть желание приглашаю.
DioD добавил: вот карта как бы частично работает и синхронизация и прочие необходимые вещи. |
03.02.2010, 16:48 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YellowStar
poon
offline
Опыт:
15,144Активность: |
Заценимс..
narayan добавил:
Не. Инициализация кэша в локальном фаиле - десинк. Я передаю данные 3 способами - ограничение обзора по координатам , местоположение камеры по трем осям и гандикап игрока. Все работают локально (хотя последний десинк вызывает если умирает юнит игрока (я Юзаю 13 и 14)) narayan добавил:
Не. Инициализация кэша в локальном фаиле - десинк. Я передаю данные 3 способами - ограничение обзора по координатам , местоположение камеры по трем осям и гандикап игрока. Все работают локально (хотя последний десинк вызывает если умирает юнит игрока (я Юзаю 13 и 14)) narayan добавил: Плюс, система почему то после перезаписи значения возвращает предыдущее - что очень странно 0.о |
03.02.2010, 21:04 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
тестированно в сети, локальное создание кеша не вызывает десинка, так как другие игроки тоже получают локальные кеши, долго с этим мучился по началу, не учёл что кеш каждый раз создаёт новый указатель, хотя адресное пространство остаётся неизменным. |
03.02.2010, 21:10 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YellowStar
poon
offline
Опыт:
15,144Активность: |
Да я уже понял как ты это синхронизировал. То же по сетке потестил, работает раз в 50 быстрее моего (за что спасибо) в целом тогда моя система готова, если интересно могу поделится в личку ) |
03.02.2010, 21:19 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
само собой интересно
вот только результаты тестирования не очень хорошие, я могу синхронизировать данные с любым игроком, но вот любой игрок не может сделать это в отношении меня, так как прелоадер создаёт кеши, в случае отсутствия прелоадера синхронизация провалиться.
тоадкоп нашел солюшин во включении нулевого прелоадера в фаил карты и загрузки его в случае отсутствия сохранённого, это решает проблему, но не включено в данную карту.
кроме того были разработки еще более быстрого синхронизатора, вот только там много веселья, если получиться то синхронизация будет протекать максимально быстро (менее секунды) и не тратить 100500 кешей за запуск.
для завершения работы мне нужно больше информации. Отредактировано DioD, 03.02.2010 в 21:37. |
03.02.2010, 21:32 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YellowStar
poon
offline
Опыт:
15,144Активность: |
Хорошо. Сейчас оформлю свои метод (с твоим методом синхронизации данных) жди минут через 10. |
03.02.2010, 21:51 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|