XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
ZeToX2007

offline
Опыт: 7,009
Активность:
Преолад с сервака.
Возможно такое реализвовать ? и как путь прописывать в таком случае?
и что с записью ?
Старый 21.04.2011, 14:37
Clamp
Lost in space
offline
Опыт: 71,258
Активность:
ZeToX2007:
Возможно такое реализовать?
Да.
ZeToX2007:
и как путь прописывать в таком случае?
что с записью?
экспериментируй, что
только напрямую как вар предлагает ничего не выйдет, используй exploit bug
Старый 21.04.2011, 14:52
ZeToX2007

offline
Опыт: 7,009
Активность:
Хм, а что нибудь ещё можно зделать при помощи exploit bug, кроме хранение инфы на серваке?
Старый 24.04.2011, 00:14
ZeToX2007

offline
Опыт: 7,009
Активность:
Народ кто подскажет как правильно делать синхронизацию (для N количество игроков) ? пробовал по приказам, записыал/загружал файлы каждые 0.25 секунд, в итоге получилась фигня. В каждом компе была разная картина... как я понял, все должно обрабатываться у сервака, а к подключенным компам должна посылаться инфа о место расположении юнитов, хп, и прочих данных. Кто нибудь уже пробовал такое?
Старый 11.06.2011, 13:58
Clamp
Lost in space
offline
Опыт: 71,258
Активность:
ZeToX2007, позволите Ваш код/карту в ЛС?
Старый 11.06.2011, 15:26
ZeToX2007

offline
Опыт: 7,009
Активность:
Если интересно, лучше обсудить в аське (394610403)
у меня 2 карты, серверная и клиентская.
Серверная обеспечивает регистрацию и саму механику игры. Основная часть работы в этой карте. Периодично создает файл со всеми данными о юнитах, а так же обрабатывает поступавшие данные(на данный момент нажатие стрелок клавиатуры, движение пока реализовано так)

На клиентской все проще:

Код:
function main_syn takes nothing returns nothing
    local integer i = 0
    local integer r_u = 0  // Размер юнитов, которое нужно обработать
    local unit u = null
    
    call ReadMyData(gn_server+"main_fail.txt")// Читаем общедоступные данные с сервера
    
    set r_u = GetPlayerTechMaxAllowed(Player(15),0)
    
    loop
    exitwhen i > r_u
    if ( GetPlayerTechMaxAllowed(Player(15),5+r_u*5) != 0x10) then
        set u = Unit_car[GetPlayerTechMaxAllowed(Player(15),1+r_u*5)]
        call SetUnitX(u,Unit_real[2+r_u*5])
        call SetUnitY(u,Unit_real[3+r_u*5])
        call SetUnitFacing(u,Unit_real[4+r_u*5])// ставим наших юнитов в указанную точку, заданным поворотом.
        set r_u = r_u + 1
    else
        call RemoveUnit(Unit_car[GetPlayerTechMaxAllowed(Player(15),1+r_u*5)])
    endif
    
    endloop

endfunction


Пока пересылает (номер юнита, координаты, угол,и в игре ли он).Частые обновления вызывают лаги, но есть несколько идей, как снизить их...
Старый 11.06.2011, 17:51
DotaMaster666
Silenced by GadenbIsh
offline
Опыт: 1,259
Активность:
у меня 2 карты, серверная и клиентская.
Карта одна, про ее экземпляры запущены на разных машинах и отвечают за что то свое?
но есть несколько идей, как снизить их...
Использовать отдельную программу - сервер, а запуск карты делать с помощью загрузчика, который будет сплайсингом вклеивать новые native функции.
Старый 12.06.2011, 00:01
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 02:06.