Новости Ремейк "Готики 1" | Трейлер Showcase 2024
  • 6.560
  • 9
Новички, пришло время принять реальность и смириться с судьбой. Чувствуйте себя как дома в Долине Рудников, месте, полном опасностей, преступлений и жадности. Вам предстоит оставаться здесь очень...
Готика 2: Другая история Gothic II: Other Story - Описание мода
  • 28.242
  • 79
Готика 2: Другая история / Other Story - это глобальная модификация для игры «Готика 2: Ночь Ворона». Её цель - сделать игру более нелинейной, с большим количеством вариантов выбора и...
Новости Старт 6го сезона Grim League
  • 4.404
  • 2
4 мая в 18-00 стартует шестой сезон Community лиги по одной из лучших игр в жанре arpg Grim Dawn. Сезон представляет собой глобальную модификацию игры, включающую в себя расширение мира, изменение...
Новости Дата релиза Baldur's Gate III
  • 23.142
  • 2
Наконец-то дождались - "Baldur's Gate III" покидает ранний доступ, и в августе 2023 выходит в полноценный релиз, о чём стало известно на церемонии "The Game Awards 2022". С момента выхода игры в...
Иконка ресурса

Дополнительный лут неписям и в сундуки 2.9

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

Plasquar

Постоялец
Участник форума
Регистрация
20 Июн 2021
Сообщения
98
Реакции
100
Баллы
41
Лучшие ответы
3
Хорошо, спасибо. Извините, я не нашел описание.
 

Vismyt P.

Житель города
Участник форума
Регистрация
1 Фев 2019
Сообщения
208
Реакции
24
Баллы
40
Лучшие ответы
1
Здравствуйте. Обнаружил ещё один, думаю, недочёт. С духов волков (тотем призыва у шамана) есть дроп. Я так понимаю с них дропа не должно быть по идее, т.к. волков бесконечно можно призывать.
 

bobyk23

Новичок
Участник форума
Регистрация
18 Сен 2014
Сообщения
22
Реакции
5
Баллы
23
Лучшие ответы
0
Можно ли как-то выставить настройки, чтобы при добавлении лута мобам, у них росло только ХП, но не урон.
 

tilil2670

Гвардеец
Участник форума
Регистрация
25 Авг 2022
Сообщения
1.930
Реакции
462
Баллы
121
Лучшие ответы
3
Можно ли как-то выставить настройки, чтобы при добавлении лута мобам, у них росло только ХП, но не урон.
Переведи настройки ини настроек опционалки на Ру язык, вроде можно. Они конечно зря что на инглише.
 

Csor

Труженик
Участник форума
Регистрация
11 Ноя 2018
Сообщения
334
Реакции
127
Баллы
66
Лучшие ответы
2
@punkkk, да на здоровье. Выпиливать не собираемся.

Остальное там таймеры. Запуск зачастую из скриптов.
C++:
void RarePotion::CheckRarePotions( int index, int value ) {
        zSTRING inst = "";
        int isActive = 0;
        // магическое зелье
        if ( index == 1 && value == 0 ) {
            player->attribute[ NPC_ATR_MANAMAX ] -= 200;
            player->attribute[ NPC_ATR_MANA ] -= 200;
            if ( player->attribute[ NPC_ATR_MANA ] < 0 ) {
                player->attribute[ NPC_ATR_MANA ] = 0;
            }
        }
        // зелье неутомимости
        else if ( index == 4 && value > 0 ) {
            if ( *gameVars.staminaPtr < *gameVars.staminaMaxPtr * 10 ) {
                *gameVars.staminaPtr += 15;
                if ( *gameVars.staminaPtr > *gameVars.staminaMaxPtr * 10 ) {
                    *gameVars.staminaPtr = *gameVars.staminaMaxPtr * 10;
                }
            }
        }
        // зелье бесконечной маны
        else if ( index == 5 && value > 0 ) {
            if ( player->attribute[ NPC_ATR_MANA ] < player->attribute[ NPC_ATR_MANAMAX ] ) {
                player->attribute[ NPC_ATR_MANA ] += 50;
                if ( player->attribute[ NPC_ATR_MANA ] > player->attribute[ NPC_ATR_MANAMAX ] ) {
                    player->attribute[ NPC_ATR_MANA ] = player->attribute[ NPC_ATR_MANAMAX ];
                }
            }
        }
        // зелье регенерации
        else if ( index == 7 && value > 0 ) {
            if ( player->attribute[ NPC_ATR_HITPOINTS ] < player->attribute[ NPC_ATR_HITPOINTSMAX ] && !player->IsDead() ) {
                player->attribute[ NPC_ATR_HITPOINTS ] += ( player->attribute[ NPC_ATR_HITPOINTSMAX ] * 0.03f );
                if ( player->attribute[ NPC_ATR_HITPOINTS ] > player->attribute[ NPC_ATR_HITPOINTSMAX ] ) {
                    player->attribute[ NPC_ATR_HITPOINTS ] = player->attribute[ NPC_ATR_HITPOINTSMAX ];
                }
            }
        }
        // зелье скорости
        else if ( index == 8 && value == 0 ) {
            if ( additionalAcceleration ) {
                *additionalAcceleration = *additionalAcceleration - 50;
            }
        }
        // зелье магической мощи
        else if ( index == 10 && value == 0 ) {
            if ( CountLearnSpell ) {
                *CountLearnSpell = *CountLearnSpell - 50;
            }
        }

        for ( int i = 1; i <= 12; i++ ) {
            if ( i < 10 ) {
                inst = "rarePotion_0" + zSTRING( i ) + "_numOfSec";
            } else {
                inst = "rarePotion_" + zSTRING( i ) + "_numOfSec";
            }

            int value = parser->GetScriptInt( inst );

            if ( value >= 1 ) {
                isActive++;
            }
        }

        if ( !isActive ) {
            *rarePotion_isActive = FALSE;
        }
    }
void RarePotion::Loop() {

        //printWin("RefreshLocations loop");

        if ( !init ) {
            init = TRUE;
            Init();
        }

        // таймеры редких зелий
        if ( *rarePotion_isActive == TRUE ) {
            if ( !( player->GetInstanceName() == "PC_HERO" ) ) {
                return;
            }

            zSTRING inst = "";
            for ( int i = 1; i <= 12; i++ ) {
                if ( i < 10 ) {
                    inst = "rarePotion_0" + zSTRING( i ) + "_numOfSec";
                } else {
                    inst = "rarePotion_" + zSTRING( i ) + "_numOfSec";
                }

                int value = parser->GetScriptInt( inst );
                int tickValue = 1000;
                if ( gameVars.accelerationActive ) {
                    tickValue /= settings.worldTime_AccelerationRatio;
                }

                if ( value && MainTimer[ AST_TIMER_RarePotions + ( i - 1 ) ].Await( tickValue ) ) {
                    parser->SetScriptInt( inst, --value );
                    CheckRarePotions( i, value );
                }
            }
        }
    }
Хотел ослабить редкие зелья в НБ, а то не использовал их когда падали с помощью плагина на доп. лут. Скопировал твой код и создал .d файл в Autorun, но игра ошибку void выдает.
 

Haart

Герой
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
3 Дек 2012
Сообщения
6.330
Реакции
3.447
Баллы
676
Лучшие ответы
398
@Csor, покажи код.
 

Csor

Труженик
Участник форума
Регистрация
11 Ноя 2018
Сообщения
334
Реакции
127
Баллы
66
Лучшие ответы
2
@Haart, такой же код, который ты скидывал в сообщении #142 этой темы. Я скопировал всё, ничего не меняя и создал .d файл.
 
Последнее редактирование:

Haart

Герой
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
3 Дек 2012
Сообщения
6.330
Реакции
3.447
Баллы
676
Лучшие ответы
398
@Csor, а, так это код для c++) Его не перепишешь через скрипты. Это надо исходники иметь.
 

Cnupm

Наемник
Участник форума
Регистрация
27 Сен 2023
Сообщения
543
Реакции
150
Баллы
68
Лучшие ответы
0
Кто может исправить мод, что бы работали добавленные зелья манны +10 и рудная бижа на стойкость?
При использовании данных предметов ничего не происходит.

Вручную по инструкции лут-таблица не меняется (точнее мод ее не обнаруживает).
 

ToXaL1

Рыцарь
Участник форума
Регистрация
8 Окт 2017
Сообщения
2.599
Реакции
531
Баллы
230
Лучшие ответы
29
@Cnupm, оно не работает потому что было удалено
 
Сверху Снизу