Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 9
    Гостей: 5
    Пользователи: - отсутствуют
    Роботы: Mail Ru, Mail Ru, Mail Ru, Mail Ru

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 14-12-2011, 00:28 Просмотров: 7358

    Урок 7. Что такое алгоритм и как его составить.

    Что такое алгоритм


    Что бы написать любой плагин, нам нужно четко представлять себе как он должен работать, что должен делать, в какой последовательности, в принципе это и есть очень грубое определение алгоритма.

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

    Это немного урезанное определение специально для плагинов ;))
    На самом деле мы каждый свой день проживаем с помощью циклов и алгоритмов, просто не задумываясь об этом.

    Кто из вас задумывался как он ходит в школу или на работу? Пожалуй ни кто, ни кто не задумывался о том, что бы просто дойти до школы он выполняет целую кучу действий:
    1. ( проснулся, умылся, собрался)
    2. вышел из квартиры
    3. закрыл квартиру ( я уже молчу о достать ключи, выбрать нужный ключ, вставить в замочную скважину, подумать в какую сторону закрывается замок и так далее)
    4. вызвал лифт
    5. подождал лифт
    6. зашел в лифт
    7. и так далее,
    , целые тысячи мелкий, но для нас простых операций. Которые происходят каждый раз в одной и той же последовательности, совсем немного изменяясь, но в целом остается все одинаково в общих чертах.

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

    1. Если давать оружие при событии старта раунда, то нужно его отловить
      отловили ( есть разные способы,решать вам каким пользоваться)
    2. Далее нам необходимо выбрать кому именно (допустим админу) выдать оружие.
      С помощью цикла вычисляем админов.
    3. Даем им оружие.


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

    Зачастую проблема в редактировании плагина заключается не в том, что человек не знает как дать еще жизней игроку, а в том что не знает в каком месте это нужно сделать, ведь на вопрос как добавить hp на любом форуме дадут ответ через 10 секунд. Если же человек сначала пропишет на бумажке (именно на бумаге лучше составлять алгоритм, там легче рисовать стрелочки что с чем взаимосвязано) и потом в коде плагина попробует найти сначала большие блоки ( события ), то ему через какое то время ( особенно если он знаком с основным набором функций) не составит отыскать в коде нужное место и добавить туда свою идею.

    Необходимо четко запомнить что плагин это не только набор функций, а в первую очередь Идея и четко продуманный алгоритм, и только потом функции, переменные и массивы. Так как все функции сами по себе ни чего не сделают и только если их расставить в определенном порядке, они создадут какое то действие, то действие которое запланировал автор.

    Не путайте так же Идею и алгоритм.
    Например:
    Идея дать игроку бессмертие за 10 фрагов.
    Алгоритм же будет такой (грубо говоря):
    • Нужно для каждого игрока подсчитывать его убийства.
    • После подсчета убийства проверять сколько уже у него убийств.
    • Если больше 10 до дать бессмертие.

    Но это тоже не совсем верно, если игрок выйдет? то на id останется бессмертие, то есть необходимо не забыть учитывать ВСЕ возможные случаи.
    Не забывайте что вы человек и понимаете что игрок вышел, а вот вашему коду только вы! сможете объяснить "Что нужно делать в том или ином случае."

    Практики из этой стати ноль, но теория тоже очень важна. надеюсь у меня хоть немного получилось пояснить вам важность алгоритма и с чего начинается разработка плагина.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    Урок 7. Что такое алгоритм и как его составить.
    bestnamebest

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    У меня есть маленькое предложение)
    В 4 уроке Вы написали:

    Для окончательного закрепления материала попробуйте написать плагин в котором будет выводиться имя игрока который коннектится к серверу.


    Было бы здорово, если бы Вы после каждого урока, в конце, предлагали написать простой плагин относящийся именно к этому уроку smile Тем самым новички, в том числе и я закрепляли бы материал =))
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    Если не забуду, то постараюсь писать.
    --------------------
    bestnamebest

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Спасибо! smile
    hummer

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Цитата: bestnamebest
    Для окончательного закрепления материала попробуйте написать плагин в котором будет выводиться имя игрока который коннектится к серверу.


    Полностью согласен, а то теория да теория.=)
    артист

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Наверное это должен быть первый урок ))
    Знакомство, теория и т.п.
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    Простите меня грешного, что не имею педагогического образования, и не умею составлять правильного оглавления и писать книжки.
    --------------------
    артист

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Да ладно...И так нормально... what
    pashalevitsky12345

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Полезный урок ! Если было бы по больше бы практики ,на плагинах примеры ,было бы еще лучше ,а так не плохо )
    gavrilyuc

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    feeriha, это уже смотря кто пишет и для кого.
    насколько я знаю, мне лень писать что то существующее, я его сначала ищу.

    -- Если нету, берусь писать с нуля.
    -- Если оно есть и уж очень корявое, берусь писать с нуля.

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама