Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 7 из 10 ПерваяПервая ... 5 6 7 8 9 ... ПоследняяПоследняя
Показано с 61 по 70 из 96

Тема: Geebrox

  1. #61
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Так и есть. И с этим нужно как-то бороться, если есть возможность. Собственно, поэтому я и поднял всю эту тему - всяко лучше, чем сидеть сложа руки.
    Локальное исправление в лице этого мода не изменит общей картины. Да и даже если ты в правилах форума начнёшь требовать соблюдение лицензии - не изменится ничего. SA-MP является слишком неофициальной и слишком доступной площадкой для того, чтоб пытаться внедрить туда какие-то правовые требования.

    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Я, конечно же, сомневаюсь, что Oracle будет подавать в суд на столь мелких нарушителей, но кто знает... А если и будут, то мы об этом до последнего не сможем узнать - они, скорее всего, заставят нарушителей подписать NDA (договор о неразглашении) взамен на снижение суммы штрафа, чтобы другие не могли заранее узнать о грядущих исках.
    Тебе самому не кажутся эти слова слишком фантастическими?
    Oracle, как и другим компаниям, нет смысла подавать в суд, так как в SA-MP для них нет потенциального рынка, который они теряют при нарушении их лицензий. Да и с кого им спрашивать-то? Со школьника Васи? Они больше потеряют с этих исков, чем приобретут. В случае с Google ситуация была же совершенно противоположная, так что странно приводить в пример её.



    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Почти закончил работу над файлом LEGAL.md, в котором будут перечислены все лицензии.

    Некоторые (не)интересные моменты, с которыми пришлось столкнуться:
    1. Старая версия sscanf2.
    2. Откуда взят инклуд foreach? Тоже, скорее всего, устаревшая версия.
    3. Другие инклуды/плагины также могут быть устаревшими. Предлагаю проверить их самостоятельно по ссылкам в тексте ниже.
    4. Перевод мода с лицензии MIT под GPLv3 никак не оправдан. Впрочем, скорее всего, в этом и я виноват отчасти из-за дезинформацией с лицензией плагина MySQL.
    5. В некоторых инклудах (mdialog.inc, rustext.inc, a_mysql.inc) не было лицензии - пришлось выискивать их оригинальные репозитории на GitHub, чтобы скопировать текст лицензии из отдельного файла, что не очень-то удобно. И хотя лицензия сделана в отдельном файле, в самом тексте лицензии сказано, что она должна быть воспроизведена в лицензируемом коде. Т.е. файл отдельный, но для легального использования он всё равно должен распространяться в тандеме с инклудом. Назревает закономерный вопрос к авторам инклудов: так и задумано?

    Как только все эти проблемы будут решены (за исключением последней - это уже к авторам инклудов/плагинов), я доделаю LEGAL.md и сделаю PR.

    Собственно, сам текст файла (предварительная версия, ссылки на foreach и sscanf2 могут быть неверны):
    Код:
    This gamemode uses the following includes and plugins:
        * Pawn.CMD (https://github.com/urShadow/Pawn.CMD)
        * MySQL plugin (https://github.com/pBlueG/SA-MP-MySQL)
        * CrashDetect (https://github.com/Zeex/samp-plugin-crashdetect)
        * fixes.inc (https://github.com/Open-GTO/sa-mp-fixes)
        * foreach (https://github.com/Open-GTO/foreach)
        * mdialog (https://github.com/Open-GTO/mdialog)
        * rustext (https://github.com/ziggi/rustext)
        * sscanf2 (https://github.com/maddinat0r/sscanf)
        * Streamer plugin (https://github.com/samp-incognito/samp-streamer-plugin)
    
    
    The corresponding licenses are reproduced below:
    
    [список лицензий]
    Мартышкин труд, не?
    Я просто не понимаю кто в реальности будет заглядывать в этот файл и проверять, выполняется ли всё написанное в нём на деле или нет. Те, кто ищут мод для доработки, не закроют вкладку по причине того, что в моде не соблюдаются какие-то там лицензии. Компаниям, разработки которых используются в плагинах, тоже как-то ни холодно, ни жарко от этого всего (10 лет существования SA-MP должны дать понять это). Да и, как я уже сказал выше, общей картины это никак не изменит, ибо модов, что забили на все лицензии, в разы больше и все ваши старания просто затеряются. Дело, конечно, ваше, но пока это всё больше походит на пустую трату времени
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  2. #62
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    375
    Репутация:
    97 ±
    Обновлен до версии 2:

     Посмотреть список обновлений

    • Полностью переделан архитектура проекта
    • Регистрация переделана с использованием автоматонов, что теперь позволяет регистрироваться через обычный режим в диалогах, для тех игроков у которых не установлен локализация
    • Также переделана система авторизации через автоматоны
    • Разработан система администрации
    • Разработан система бана на время
    • Сделаны античиты на здоровье/бронью/деньги
    • Созданы несколько команд для администраторов
    • Сделан чат для администраторов
    • !! Система администратора находится в разработке, назначать администратора нужно вручную через базу данных


     Посмотреть новую архитектуру проекта

  3. #63
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    А как ты архитектуру нарисовал красиво, это прога какая то или сам ручками?

    - - - Добавлено - - -

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

    твой код к примеру

    Почему бы не ускорить всё и сделать к примеру так:
    PHP код:
    #if defined _armour_hack_protection
        #endinput
    #endif
    #define _armour_hack_protection

    #if !defined ARMOUR_HACK_UPDATE_INTERVAL
        #define ARMOUR_HACK_UPDATE_INTERVAL 1000
    #endif


    forward ahp_CheckPlayer(playerid);


    static 
    ahp_timer[MAX_PLAYERS], ahp_tick[MAX_PLAYERS char];


    stock ahp_OnPlayerLogin(playerid)
    {
        
    ahp_timer[playerid] = SetTimerEx(!"ahp_CheckPlayer",
            
    ARMOUR_HACK_UPDATE_INTERVALtrue, !"i"playerid); // пусть сам циклится, чё теребонькать то?))

        
    return 1;
    }


    public 
    ahp_CheckPlayer(playerid)
    {
        new
            
    Float:player_armour,
            
    Float:account_armour;

        
    GetPlayerArmour(playeridplayer_armour);
        
    GetAccountArmour(playeridaccount_armour);
        if(
    ahp_tick[playerid] > 0// зачем теребонькать функцию таймера, когда можно сделать легонько, переменной
        
    {
            
    ahp_tick[playerid]--;
            goto 
    skip_check;
        }

        if(
    _:player_armour == _:account_armour) goto skip_check// floatcmp не вызываем если броня не менялась(самый частый юз алгоритма будет)

        
    else if(player_armour account_armour// второй по счёту юз алгоритма если на этом сервере будут играть адекватные игроки
        
    {
            
    SetAccountArmour(playeridplayer_armour);
        }
        else if(
    player_armour account_armour// ну и третий если обнаружим читера(самый мало срабатываемый)
        
    {
            
    Kick(playeridKICK_TEXT_REASON"\
                Ïîäîçðåíèå â ÷èòåðñòâå, êîä: #ahp_CP"
    KICK_TEXT_TIP);
            return 
    0;
        }
        
    skip_check:
        
    // можно убрать goto и заменить возвратами; писал goto пока не увидел что ещё таймер вызывается частенько
        
    return 1;
    }


    stock ahp_GetPlayerArmour(playerid, &Float:armour)
    {
        return 
    GetAccountArmour(playeridarmour);
    }
    #if defined _ALS_GetPlayerArmour
        #undef GetPlayerArmour
    #else
        #define _ALS_GetPlayerArmour
    #endif
    #define GetPlayerArmour ahp_GetPlayerArmour


    stock ahp_SetPlayerArmour(playeridFloat:armour)
    {
        new 
    result// зачем тут 1 устанавливать, если ниже однозначно установится какое то значение из SetPlayerArmour
        
    ahp_tick[playerid] = 2//2 секунды раз таймер односекундый
        
    SetAccountArmour(playeridarmour);
        
    result SetPlayerArmour(playeridarmour);
        return 
    result;
    }
    #if defined _ALS_SetPlayerArmour
        #undef SetPlayerArmour
    #else
        #define _ALS_SetPlayerArmour
    #endif
    #define SetPlayerArmour ahp_SetPlayerArmour


    stock ahp_OnPlayerDisconnect(playerid)
    {
        
    KillTimer(ahp_timer[playerid]); // зачем было тогда тут ставить килл если таймер не циклился, в прочем теперь он тут пригодится...
        
    return 1;

    А и кстате почему каждый античит в отдельном таймере? Зачем плодить таймеры как кроликов?
    Один глобальный таймер и индивидуальный один каждому игроку я думаю вполне норма будет...
    Последний раз редактировалось vovandolg; 22.05.2017 в 14:02.
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  4. #64
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    375
    Репутация:
    97 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    А как ты архитектуру нарисовал красиво, это прога какая то или сам ручками?
    Photoshop CC


    Цитата Сообщение от vovandolg Посмотреть сообщение
    // пусть сам циклится, чё теребонькать то?))
    Сам циклится? Тогда с течением времени появится зазоры между времени срабатывание функции и таймера, то есть пока функция обрабатывается проходит несколько миллисекунд, и через какое-то время функция будет вызываться по 2, 3, 4 и тд раза. Из за этого я переместил таймер в саму функцию и отключил повтор.


    Цитата Сообщение от vovandolg Посмотреть сообщение
    // зачем теребонькать функцию таймера, когда можно сделать легонько, переменной
    Что значит "требонькать"? Я не вижу смысла так делать.


    Цитата Сообщение от vovandolg Посмотреть сообщение
    // зачем тут 1 устанавливать, если ниже однозначно установится какое то значение из SetPlayerArmour
    Клац

    + Откуда ты знаешь что будет устанавливаться 1? а может функция ничего не возвратит? Может будет изменение в самой функции в дальнейшем?


    Цитата Сообщение от vovandolg Посмотреть сообщение
    // зачем было тогда тут ставить килл если таймер не циклился, в прочем теперь он тут пригодится...
    Опять таки, откуда ты гадаешь, что при выходе игрока не будет запущен таймер? Может игрок выйдет именно тогда когда запуститься новый таймер, не?


    Цитата Сообщение от vovandolg Посмотреть сообщение
    А и кстате почему каждый античит в отдельном таймере? Зачем плодить таймеры как кроликов?
    Один глобальный таймер и индивидуальный один каждому игроку я думаю вполне норма будет...
    Может все системы перенести в основной гейммод? Зачем по твоему я разделил мод на части? Чтобы уменьшить зависимость систем друг от друга. А если я захочу отключить ач на хп, мне придется лазить по кучу кода и выискивать переменные и функции принадлежащие для этого ач? В чем профит?

  5. #65
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    так ладно ясно понятно, у меня мод готовый есть и я там всё так же делал как и тут предлагаю, что то ты с таймерами там не уверенный какой то))
    опыта у тебя видать ещё маловато поэтому так говоришь, ладно всё делай как знаешь))
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  6. #66
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    так ладно ясно понятно, у меня мод готовый есть и я там всё так же делал как и тут предлагаю, что то ты с таймерами там не уверенный какой то))
    опыта у тебя видать ещё маловато поэтому так говоришь, ладно всё делай как знаешь))
    Разделяя каждый античит на отдельный таймер, можно, соответственно, каждый античит отключать/включать индивидуально для игрока, а не делать заглушки в виде кучи проверок. Так что всё вполне оправдано. А идея лепить всё в один таймер пошла не от того, что этот вариант самый лучший, а, как и многое в сампе, по незнанию альтернатив
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  7. #67
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    Цитата Сообщение от Geebrox Посмотреть сообщение
    Клац

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

    А насчёт возвратов большинства функций, включая SetPlayerArmour - они всегда будут возвращать либо 1 либо 0, и даже когда какая-то функция не возвращает ничего, она возвращает 0 по умолчанию. Собственно, вместо заведения дополнительных переменных я бы лучше сразу вынес саму функцию в проверку на её выполненность.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  8. #68
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    375
    Репутация:
    97 ±
    Дальнейшая разработка проекта не возможна, так как в нашей стране GTA:SA попал в список запрещенных игр (звучит очень смешно, сам был в шоке). Если есть желающие, то могут продолжать разработку проекта, но при этом обсудив это автором (со мной), спасибо за понимание.

  9. #69
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    1,181
    Репутация:
    790 ±
    Цитата Сообщение от Geebrox Посмотреть сообщение
    Дальнейшая разработка проекта не возможна, так как в нашей стране GTA:SA попал в список запрещенных игр (звучит очень смешно, сам был в шоке). Если есть желающие, то могут продолжать разработку проекта, но при этом обсудив это автором (со мной), спасибо за понимание.
    И что теперь? В нашей стране много чего запрещено, однако все всё делают.

  10. #70
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    ну так MP for SA не попал под запрет, так что можешь разрабатывать его дальше,
    просто "самоудалятор" для SA сделать на всякий пожарный))
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

 

 
Страница 7 из 10 ПерваяПервая ... 5 6 7 8 9 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

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