awesomesk1ll, если твоя карта довольно популярна то могут допилить мх чтобы обходил твой антимх
ну это то да, я и не говорил того что этот способ 100%ная защита, но тем не менее от кучи дефолтных мх это работает. Да и потом обновлять можно варианты защиты, тут смысл в самой идее, просто я удивлён что это ни где не применили..(например dota), способ ведь неплохой в принципе, хоть и старый.
Поменьше лица в кадре. (всем кто тебя не знает лично, не очень интересно будет смотреть на тебя)
Заместо лица лучше добавь видео-ряд из ск2, в идеале из галакси эдитора - например как работает ландер в ускоренном темпе. И создаёт красоту.
Больше експресии в озвучке, а паузы чёткие выдержанные, не на середине словосочетания или предложения. У тебя начало рваное получилось, тишина тишина и потом крик Я НАРКАНОТ! потом вспоминаешь что нужно сказать дальше.. потом опять что-то быстро проговариваешь потом опять зависаешь). Должно более плавно и размеренно всё быть.
Когда перечисляешь призы или условия можно визуализировать их картинками/видеорядом.
Из всего видео понравилась только отличная концовка.
Читы могут не показывать карту никак, а отображать только юнитов, предметы.
Проверять видимость области тут не прокатит.
Предложенный вариант в этом ресурсе позволяет выкинуть игрока если он увидел юнита которого не должен был увидеть.
Но бывает, что читы могут вообще ничего не показывать, а например, отрисовывать информацию только на миникарту.. от такого данный метод, конечно не сработает.
Необходимо поставить юнита с типом портал. Перейти в него, использовать умение выбора привязки цели, затем выбрать обводкой юнита на которого необходимо производить телепортацию. Юнит-цель может быть любого типа, например патрулём или же циркуляром.
Много полезной информации и список команд изложены в квестах (F9) и окне ALT+H.
Всех юнитов с их настройками, координатами и прочим можно сохранять и загружать в виде файлов уровней.
локально менять модельку юниту
юнит будет видим всем но для всех кроме красного игрока у него не будет модели и узнать что там юнит можно будет лишь по хпбару либо выбрав рамочкой этого юнита
иначе никак
этому юниту можно дать Aloc, и никаких хпбаров небудет. А так всё верно сказано
В общем подытожу дискуссию по поводу начального вопроса. Данные транслировать(синхронизировать) можно только между всеми игроками. От одного игрока другому одному конкретному игроку - невозможно. Тем не менее у нас была проблема с большим подвисанием управления, после синхронизации. И мы решили мы этот момент способом описанным в комменте #10. По поводу обсуждения ниже - скоро доделаем версию 0.2 там можно будет пощупать все обсуждаемые моменты на деле. (сколько данных в одном прелоаде, скорость передачи и синхры данных и прочее)
Мы практически решили все наши проблемы с синхрой и теперь можем загружать на 10 игроков отдельно взятые уровни или же целые паки уровней (до 1000-1500 уровней!)~ файлы которых находятся только у одного игрока. Т.е. я запустил карту, построил в ней десяток уровней, десяток уровней обьединил в "пак". Затем в другой игре ко мне зашло 9 человек, у которых моих уровней нет. Но данные подгружаются от меня всем остальным игрокам. Так это и работает.
считай количество call Preload( "") в файле
ведь именно с помощью них данные заносятся в файл
а с помощью call SetPlayerName и call ExecuteFunc("ESD") считываются
кстати можно обойтись и без "У всех игроков должно быть одинаковое количество вызовов функции ESD"
хотя этот цикл мне вообще не понятен
set i = StrCount
loop
exitwhen (i >= dataCount)
call ExecuteFunc("ESD") // У всех игроков должно быть одинаковое количество вызовов функции ESD
set i = i + 1
endloop
зачем мы вызываем ESD если она в прелоад файле вызывается
прелоад вызывается только у 1 игрока же, у других ESD выполняется для синхронизации.
Имею ввиду не для синхронизации данных, а что бы не было десинка от прелоада
(файл прелоада есть только у одного игрока например, который его загружает)
таким образом мы считываем файл одному игроку в память, без рассинхрона. затем передача данных другим игрокам
function ESD takes nothing returns nothing
set StrData[StrCount] = GetPlayerName(Player(15))
if (StrData[StrCount] == " ") then
set StrData[StrCount] = null
endif
set StrCount = StrCount + 1
endfunction
private method loadDataFromPlayer takes string name, integer dataCount, player p returns nothing
local integer i
set StrCount = 0
call SetPlayerName(Player(15), " ") // Пробел считается за пустую строку
if (GetLocalPlayer() == p) then
call Preloader(name) // Загрузить файл от игрока
endif
call SetPlayerName(Player(15), " ")
set i = StrCount
loop
exitwhen (i >= dataCount)
call ExecuteFunc("ESD") // У всех игроков должно быть одинаковое количество вызовов функции ESD
set i = i + 1
endloop
call SetPlayerName(Player(15), null) // Вернуть имя по умолчанию
endmethod
В одном файле 24~кб данных. Сам файл прелоада 44кб.
Вроде я внимательно всё читал.
У нас обьёмы данных думаю на порядок больше чем у тебя на 10 игроков синхронишь. Мы целые уровни передаём между игроками, хотим вообще целые карты передавать (коллекции уровней) в идеале.
этот проект xgm.guru/p/ice/alpha
ну сейчас вроде вообще норм работает).. скоро 0.2 версию выпустим думаю
Такая вот синхронизация потока была
loop
exitwhen (Condition)
call TriggerSyncStart()
call TriggerSyncReady()
endloop
такие замеры
Переделали на
loop
exitwhen (Condition) call TriggerSyncStart() call TriggerSyncReady()
call TriggerSleepAction(0.1)
endloop
Лага после синхры теперь нету. Не совсем понятно чем это чревато правда.
у меня синхра занимает не более 20 секунд на 10 игроков
если юзать не засинхроненные данные то будет десинк за исключением чисто визуальной части
так что синхронить придётся как не крути
либо переписывай варик
а какой обьём данных)?
у нас при 2 игроках моментально всё работает, залагов нет. при 5 игроках секунд 30 лагает управление, большее колво игроков не тестили, просто обьёмы данных довольно большие могут быть.
изза чего вообще появляется этот лаг управления, знает кто?
И? проверил я, выяснил что у синего предлоад файла нету. Что дальше? Если начинаю синхронизацию с 5 игроками большого обьёма данных, управление у игроков подвисает на приличное время. (до 40 и более сек) nvc123:
данные надо синхронить со всеми иначе десинк
Ну собственно об этом вопрос и был. Синхра большого объёма данных между 5 игроками занимает много времени, я ищу решение этой проблеме: quq_CCCP:
» WarCraft 3 / Вопрос про тайлы ( Почва )?
» WarCraft 3 / Анти MapHack
Ред. awesomesk1ll
» WarCraft 3 / Анти MapHack
Ред. awesomesk1ll
» XGM Team / SC2-ланд-месиво-2015
Ред. awesomesk1ll
» WarCraft 3 / Анти MapHack
Проверять видимость области тут не прокатит.
Предложенный вариант в этом ресурсе позволяет выкинуть игрока если он увидел юнита которого не должен был увидеть.
» WarCraft 3 / Анти MapHack
» WarCraft 3 / Анти MapHack
Ред. awesomesk1ll
» Ice World / Версия 0.2a
\\89.189.178.93\db\
Ред. awesomesk1ll
» Ice World / Версия 0.2a
Всех юнитов с их настройками, координатами и прочим можно сохранять и загружать в виде файлов уровней.
» WarCraft 3 / Скрыть юнитов для всех игроков кроме одного
» WarCraft 3 / Точечная синхронизация данных
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
Имею ввиду не для синхронизации данных, а что бы не было десинка от прелоада
(файл прелоада есть только у одного игрока например, который его загружает)
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
Вот код
Вроде я внимательно всё читал.
» WarCraft 3 / Точечная синхронизация данных
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
этот проект xgm.guru/p/ice/alpha
ну сейчас вроде вообще норм работает).. скоро 0.2 версию выпустим думаю
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
loop
exitwhen (Condition)
call TriggerSyncStart()
call TriggerSyncReady()
endloop
loop
exitwhen (Condition)
call TriggerSyncStart()
call TriggerSyncReady()
call TriggerSleepAction(0.1)
endloop
Лага после синхры теперь нету. Не совсем понятно чем это чревато правда.
» WarCraft 3 / отсутствует ebooleanBJ
» WarCraft 3 / Точечная синхронизация данных
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
у нас при 2 игроках моментально всё работает, залагов нет. при 5 игроках секунд 30 лагает управление, большее колво игроков не тестили, просто обьёмы данных довольно большие могут быть.
изза чего вообще появляется этот лаг управления, знает кто?
Ред. awesomesk1ll
» WarCraft 3 / Точечная синхронизация данных
nvc123:
quq_CCCP:
» WarCraft 3 / Очередной фатал
» WarCraft 3 / Очередной фатал