Level System

Level System 1.2.3

Нет прав для скачивания
Сообщения
1,082
Реакции
58
Помог
11 раз(а)
Кстати да, это не твой вариант, а -
AUF, поправки были с твоим авторством
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
Code_0xABC, вот я про это и говорю
 
Сообщения
1,082
Реакции
58
Помог
11 раз(а)
BiZaJe, ну вотрой вопрос всё ровно адресован тебе))
Код:
-@ShowHud(iPlayer){
    if(g_bHudShow[iPlayer]){
        g_bHudShow[iPlayer] = false;
    }else{
        g_bHudShow[iPlayer] = true;
    }
}

+@ShowHud(iPlayer)
    g_bHudShow[iPlayer] ^= true
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
Code_0xABC, думаешь стоит использовать xor ?
Или просто экономия спичек?
Или же просто кода меньше?
Столько вопросов так мало ответов
 
Сообщения
1,082
Реакции
58
Помог
11 раз(а)
BiZaJe, а ты как думаешь? Кстате, меня к этому решению подвели достойные скриптеры, я раньше точно так же думал как ты!!!
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
Code_0xABC, Окей, я просто на листочке начал выполнять эту операцию)0
Ну в итоге стоит
 
Сообщения
1,082
Реакции
58
Помог
11 раз(а)
BiZaJe, тебе просто надо избавляться от вредной привычки)) CTRL + C
Элиментарные вещи, а ты до сих пор делаешь по старинке))
Код:
-g_MaxPlayers = get_maxplayers();
+MaxClients
на дворе 23 год, или опять экономия спичек??? Лишний раз дергать нативы???
 
Последнее редактирование:
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
Code_0xABC, ну да, согласен
Ну и то самый минимум ctrl + c
Где не смог сам найти решение, пришлось подглядывать )0
 
Сообщения
83
Реакции
14
Спс за плагнин, все работает без инцестов. Позволяет, в отличие от АЕС, сделать бесконечное кол-во уровней без прописывания каждого. Поставил на замену <exp> AES, т.к. по дурости запихнул в aes_exp систему прокачки/ставок, а "опыта" не хватало.
Соединил EXP отсюда с бонусами из AES. Прицепил опыт вместо aes к модулю gamecms - говорят, опыт в базе обновляется с дневным лагом, хотя user disconnected по-человечески. Мб кеш сайта, хз -
Скрытое содержимое для пользователей: BiZaJe
Я так понял худ-офф из коробки отсутствует, правки по этому поводу в обсуждениях работают? Мб обновление будет)
p.s. сайт прицепил на случай, если корректировка модуля заинтересует, скину, если будет потребность...
 
Последнее редактирование:
Сообщения
83
Реакции
14
Есть еще предложение писать в ХУДе не exp текущего уровня, а как в aes - общий опыт и в скобках опыт до след уровня. А то люди не понимают интуитивно систему. По идее формула для общего опыта:
new ls_total_exp_player[33] = ((ls_get_level_player * (ls_get_level_player - 1) / 2) * (ls_exp_next_level / ls_get_level_player)) + ls_get_exp_player;

Но надо проверять, чтобы нули не вылезали и не выводилась дробь на этапе. Мб есть готовая формула?
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
hello, Ну чтоб дроби не было округли через floatround, а по поводу нулей не совсем понял
 
Сообщения
83
Реакции
14
BiZaJe, чтобы дроби не было, можно же сначала умножить, потом делить :) Там же везде натуральные числа, но на этапе может выйти ошибка.
По поводу нуля - вот, например, (ls_get_level_player - 1): здесь может ноль выйти, как это на результат повлияет. Ну по идее все правильно считается... на первый взгляд.
Просто чтобы не изобретать велосипед, может уже готовая формула где-то спрятана. :)
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
hello, а лучше округлить
Если 0 уровень будет, покажет -1 либо в ошмбку
Через проверку если уровень <= 1
Но опять же костыль
Пересмотри логику 2 функций в level_system.sma
 
Сообщения
83
Реакции
14
Добавил проверку, нормально работает 👍
Код:
if(ls_get_level_player(iPlayer) < 1)
   {
    ls_total_exp_player[iPlayer] = ls_get_exp_player(iPlayer);
    ls_total_exp_next_level[iPlayer] = ls_exp_next_level(iPlayer);
   } else {
    ls_total_exp_player[iPlayer] = (((ls_get_level_player(iPlayer) * (ls_get_level_player(iPlayer) - 1) * ls_exp_next_level(iPlayer)) / (ls_get_level_player(iPlayer) * 2)) + ls_get_exp_player(iPlayer));
    ls_total_exp_next_level[iPlayer] = (((ls_get_level_player(iPlayer) * (ls_get_level_player(iPlayer) - 1) * ls_exp_next_level(iPlayer)) / (ls_get_level_player(iPlayer) * 2)) + ls_exp_next_level(iPlayer));
   }
 
Сообщения
83
Реакции
14
Не подскажешь, почему так происходит (на скринах)? Не могу понять.
Будто по нику подтягивает строку, присваивая новый steamid и добавляя exp к текущему.
Поэтому деф-ники сборок выходят в топ)
 

Download all Attachments

Сообщения
83
Реакции
14
Будто я один использую этот плагин) Придется отказаться из-за проблемы выше. 😶
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
hello, стимайди в бд имеют уникальный ключ, поэтому там ничего не должно подтягивать лишнее, возможно, повторяюсь возможно генерирует одинаковый steamid (Я не уверен, более опытные должны ответить на этот вопрос)
3 Июн 2023
hello, Пробуй подтягивать данные не только по steamid, но и по нику
 
Сообщения
83
Реакции
14
BiZaJe, да вот эти ники они явно не набирали столько опыта, как на 3-ем скрине. В коде я не нашел ничего с ником связанное, все по айди. Реюнион тип 3 с 32-символьной солью + ген2. Короче эта шляпа нивелирует ценность опыта, поэтому хз. Но нагрузка у информера ниже, чем у аес. Видимо, из-за дхуд. Короче,попробую на скальпеля перейти... он там обещает нулевую нагрузку) Оставлю пока без информера, а то я привязал к бонусам (число) настройки игрока :crazy:
 
Сообщения
1,041
Реакции
206
Предупреждения
1
Помог
6 раз(а)
hello, Да там много чего обещано...
 

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

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу