1. Соблюдайте Правила форума и проявляйте уважение к другим участникам беседы.

OpenSource Помощь в кодинге

Тема в разделе 'Кодинг/Собственные решения', создана пользователем Deals, 4 авг 2012.

  1. Deals Старожила

    Сообщения:
    784
    Спасибы:
    21
    Сборка бота GHost:
    Ghost One 1.7.266
    Skype:
    Мой статус
    1. Если прервать обработку екшенов - при нормальной унпаузе, кикнет тех кто пытался унпаузить. Писалось НЕ РАЗ!
    2. "Первая унпауза возобновит игру, не имеет значения какое количество екшенов на паузу было отправлено до этого"
    3. Ты же в скайпе рассказывал о достижениях дизассемблера?
  2. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    Дизассемблер - это программа
    это не совсем одно и тоже, то есть первая анпауза действительно снимает паузу( не зависимо от того солько пауз было послано), но в этой фразе не написанно, что анпауза должна быть одна, и ничего про вылет не написанно.

    если игнорировать паузу от игрока, то тебя выкенет, а если отложить обработку всех пакетов( от того кто послал пакет екшинов анпаузы) до момента анпаузы от админа, то выкинуть не должно, просто после анпаузы моментально обработать все пакеты от всех пользователей которые нажимали анпаузу, таким образом варику покажется что из-за лагов пакеты просто не успели дойти.
    Deals нравится это.
  3. Deals Старожила

    Сообщения:
    784
    Спасибы:
    21
    Сборка бота GHost:
    Ghost One 1.7.266
    Skype:
    Мой статус
    Я знаю что это программа. Не придирайся к словам. Ты прекрасно понял о чем речь. А вот на счет пакетов нужно сразу было написать 'отложить'. Это тоже нужно проверить. Сокет может ошибку выдать или еще что. И кстати нельзя останавливать все экшены. Т.к. там и написано что во время паузы/лагскрина остальные экшены работают.
  4. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Код:
    if((*action->GetAction( ))[0] == 0x02)
    m_Actions.push(NullAction)
    else
    m_Actions.push(action); 
    Можно так попробовать
  5. MuP .

    Сообщения:
    653
    Спасибы:
    202
    Сборка бота GHost:
    Ghost++ rev 579
    Дата начала использования бота:
    00.00.0000
    Вопрос такой возник, в варике можно делать вручную скриншотом.
    внимание вопрос: можно ли через бота послать команду на скрин, чтобы варик сам сделал скриншот за игрока?
  6. s1f0N Наш человек

    Сообщения:
    113
    Спасибы:
    22
    Сборка бота GHost:
    Brt
    Дата начала использования бота:
    16.05.2010
    да, как вариант проверки на мх прикольно было бы, только если бы оно еще сохраняло куда на серв
  7. MuP .

    Сообщения:
    653
    Спасибы:
    202
    Сборка бота GHost:
    Ghost++ rev 579
    Дата начала использования бота:
    00.00.0000
    Нет необходимости. Делать скрин у админа который послал команду, и у игрока. Потом тупо сверить скрины, а также на присылку скрина от игрока дать мало времени, чтобы мастера фотошопа не успели постараться. Мельчайшие нестыковки трактовать в сторону виновности игрока.
  8. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    Нет я не придираюсь, просто меня еще никто не называл программой.

    там написано, что екшены "МОГУТ быть" изза лагов после паузы, но нигде не написано, что сеть должна работать исправно.
  9. s1f0N Наш человек

    Сообщения:
    113
    Спасибы:
    22
    Сборка бота GHost:
    Brt
    Дата начала использования бота:
    16.05.2010
    Теоретически можно создать 1 паблик гаме и 1 админ?
    Можно ли убрать ограничитель и создать 2-3 админ игры?
  10. MuP .

    Сообщения:
    653
    Спасибы:
    202
    Сборка бота GHost:
    Ghost++ rev 579
    Дата начала использования бота:
    00.00.0000
    А нафига тебе 2-3 админ игры? Там 1 админ игры за глаза и за уши хватает
  11. s1f0N Наш человек

    Сообщения:
    113
    Спасибы:
    22
    Сборка бота GHost:
    Brt
    Дата начала использования бота:
    16.05.2010
    это только верхушка айсберга (нужна просто инфа)
  12. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    боже, само собой, что ты можешь создавать сколько угодно экземпляров класса.
  13. VladGod2 Парнишка с небывалым умом

    Сообщения:
    228
    Спасибы:
    4
    Сборка бота GHost:
    Ghost One 1.7.266
    Дата начала использования бота:
    01.01.00
    Skype:
    Мой статус
    Если в конфиге карты прописано:
    Код:
    map_type = dota
    то бот будет хостить как обычно.
    Если этого нету то бот будет хостить на всех серверах кроме "сервер".
    Такое вообще возможно?
  14. MySQL123 Guest

    Сообщения:
    117
    Спасибы:
    0
    Вобщем:
    Каманда 1=10.000 птс
    Команда 2=1.000 птс

    если побеждает команда 1 каждому игроку даст +50 птс(пример), а у команды проигравшых -50 птс
    если побеждает команда 2 каждому игроку даст +100 птс(пример), а у команды проигравшых -100 птс

    вобщем ясно? если у команды меньше птс чем у команды противника и они побеждают им даст больше птс.

    как это реализовать? или как должна выглядеть формула...

    ПС: за лив и дискон отнимало автоматом допустим 200 птс и не щитало победила его команда или проиграл, тупо ровно -200 птс.
  15. Suicider Старожила

    Сообщения:
    673
    Спасибы:
    117
    Сборка бота GHost:
    Ghost++ 17.1 by w3gh
    Дата начала использования бота:
    12.07.2011
    + если игрок не играл на боте раньше, при заходе в игру ему сразу начислялось 1к птс и отображало при его заходе, что у него 1к птс
    + как сделать задержку между сообщениями типа:
    Код:
    ...
    "Привет"
    //задержка в какой-то промежуток времени
    "Как дела?"
    ...
    (как добавить эти сообщения знаю, просто сразу выходит целая пачка данных сообщений, поэтому нужна задержка между выводом сообщений, все сообщения выводятся при выполнении какой-либо команды)
  16. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Через Update()
  17. s1f0N Наш человек

    Сообщения:
    113
    Спасибы:
    22
    Сборка бота GHost:
    Brt
    Дата начала использования бота:
    16.05.2010
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
    Дилс, появилась идея сделать для каждого Админа собственный бан-лист.
    Когда создается игра, овнер игры берется и вставляется в запрос :
    Код:
        if( ip.empty( ) )
            Query = "SELECT name, ip, DATE(date), gamename, admin, reason, expiredate FROM bans WHERE server='" + EscServer + "' AND name='" + EscUser + "' AND warn='" + EscWarn + "' AND admin = '" + EscOwnerName +"' AND (TO_DAYS(expiredate)> TO_DAYS(CURDATE()) OR expiredate = \"\")";
    
    можешь плз расписать как это сделать (примерно догадываюсь, но ничерта не получается).

    Пытался таких способом сделать:
    m_Game->m_OwnerName - некатит.
  18. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    По-моему он немного забыл про вас :D
    s1f0N, го помогу. Нужен скайп и вивер.
  19. MuP .

    Сообщения:
    653
    Спасибы:
    202
    Сборка бота GHost:
    Ghost++ rev 579
    Дата начала использования бота:
    00.00.0000
    Сифон, не там тебе менять. Запрос не меняй, пусть все остается по старому.
    При заходе игрока в игру в game_base.cpp, там где игрок проверяется на бан, проверять на соответствие не только имя\айпи, но и сверять имя овнера(m_OwnerName) с именем админа который выдал бан.
    UPDATE: глянул, тут надо менять просто функции IsBannedName и IsBannedIP в bnet.cpp/h , передавать в эти функции вторым параметром m_GameOwnerName
    Ну и изменить эти функции чтобы проверялось m_GameOwnerName == (*i)->GetAdmin()
    Там делов на 3 минуты, сущий пустяк :D
    p.s. Точный код - бери либо у Deals'a, либо у Longmana
    Guard нравится это.
  20. Sawaof Ньюфаг

    Сообщения:
    35
    Спасибы:
    5
    4) ПТС статистика:
    а)собственно команда !pts, которая авотматом отображает всем вошедшим сообщение о статистике птс каждого игрока + при вводе вручную показывает свою статистику типа :
    Ник_игрока(+сервер с которого он зашёл), <количество птс>pts, <система rank (if pts<1000; rank=rank_1; if pts<2000 ;rank=rank_2; ... ; if pts<n ; rank=rank_n)>, wins%/losses%/leaves%
    б)птс насчитываеться с учётом hcl мода (каждый мод имеет свой коефициент),с учётом количества игроков (при ливе во время игры команде с меньшым количеством игроков начисляеться больше очков), ливера наказываються на пару птс; с учётом конечной статистики. Птс формула розмещена в .кфг файле.
    в)возможность автобаланса по птс(обсуждалось в п.3) и запись в БД (обсуждалось в п.2)
    5)рандомный цвет отсчётных цыфр перед началом игры.
    6)собственный банлист для каждого игрока написавшего команду !бан name или !банласт name.
    7)Новый тип пользователя ghost (прототип admins) user:
    когда игрок пишет команду !регистрация логин пасс - его регистрируют в бд как юзера.
    Созданий файл для добавления админс или нонадминс команд для user.