# Magic Bank

Сначала прочитайте статью [Установка модификации](/workshop/ustanovka-modifikacii.md).

## Файлы модификации

В архиве с модификацией можно найти следующие файлы:

* Папка DZB - в этой папке содержатся файлы конфигурации и локализации модификации. Помещается в папку профиля сервера.
* Папка MagicBank - в этой папке содержится pbo-файл модификации.
* Файл ConfigConvert.html - конвертер файлов данных игроков из других модификаций-банкингов. Открывается с помощью браузера.

## Конвертирование файлов данных игроков

Чтобы конвертировать файлы данных игроков от старой модификации, необходимо запустить ConfigConvert.html, после чего в браузере откроется вкладка с конвертером. Сначала нужно выбрать, файлы какой модификации конвертировать, после чего нужно нажать на кнопку "выбрать файлы" и выбрать файлы данных игроков (можно выбрать несколько файлов).

![](/files/gyhCxx1pU8SGHF7cj9k4)

После подтверждения выбора файлов, конвертер автоматически преобразует все файлы в формат, используемый модификацией Magic Bank, и предложит сохранить архив с ними. Если какие-то файлы не удастся преобразовать, они будут проигнорированы.

## Добавление банкоматов

Модификация добавляет 3 стандартных банкомата, представленных класснеймами: DZB\_ATMTinkoff, DZB\_ATMMagicBank, DZB\_ATMKramtsovBank. Для их работы достаточно создать их в мире в любом удобном месте.

## Логи модификации

Модификация ведёт логи всех совершаемых игроками операций. Логи попадают в папку *профиль\_сервера/DZB/logs.* Каждый лог имеет название *DayZBank\_год\_месяц\_день\_час\_минута\_секунда.txt.* Дата и время в названии соответствуют времени запуска модификации. Вся информация в логе соответствует операциям, совершённым после этого времени.&#x20;

## Конфигурация мода

Файл конфигурации мода находится по пути *профиль\_сервера/DZB/config.json*. В приведённом ниже файле конфигурации используются комментарии (символ '//' и следующие после них слова). Используемый формат (JSON) не поддерживает комментарии, поэтому данные файлы не могут быть использованы в качестве файлов конфигурации.

```json5
{
	"Commission": 0.3, //Комиссия, взымаемая при переводе другому игроку 
	"OperationDelay": 5, // Задержка между действиями (снять/пополнить/перевести) в секундах
	"CurrencyConversionRate": { //Список поддерживаемой валюты в формате "класснейм": стоимость_единицы
		"kr_money_rub10": 10, //Один kr_money_rub10 стоит 10 ед. валюты
		"kr_money_rub50": 50, //Один kr_money_rub50  стоит 50 ед. валюты
		"kr_money_rub100": 100, //Один kr_money_rub100 стоит 100 ед. валюты
		"kr_money_rub500": 500, //Один kr_money_rub500 стоит 500 ед. валюты
		"kr_money_rub1000": 1000, //Один kr_money_rub1000 стоит 1000 ед. валюты
		"kr_money_rub2000": 2000, //Один kr_money_rub2000 стоит 2000 ед. валюты
		"kr_money_rub5000": 5000, //Один  kr_money_rub5000 стоит 5000 ед. валюты
	},
	"Account": { //Настройки счёта игрока
		"DefaultCurrencyLimit": 10000, //Стандартный лимит счёта
		"InitialAmount": 1000 //Изначальный баланс счёта
	},
	"Payday": //Настройки системы зарплаты
	{
		"Enable": true, //Вкл/Выкл систему
		"AccumulatePlaytime": true, //Вкл/выкл накопления отыгранного времени
		"Interval": 60, //Сколько времени (в секундах) нужно отыграть, чтобы получить зарплату
		"BasePay": 1000 //Стандартная зарплата
	}
}
```

## Файл данных игрока

Файлы данных игроков находится в папке *профиль\_сервера/DZB/users*. Название файла совпадает со SteamID64 игрока. В приведённом ниже файле конфигурации используются комментарии (символ '//' и следующие после них слова). Используемый формат (JSON) не поддерживает комментарии, поэтому данные файлы не могут быть использованы в качестве файлов конфигурации.

**Важно: изменения в файле данных игрока применяются, только когда игрок не находится на сервере. Изменения, сделанные, пока игрок находится на сервере, отменяются.**

```json5
{
	"AccumulatedPlaytime": 8, //Отыгранное время с прошлой зарплаты (в секундах)
	"Amount": 13000, //Баланс счёта
	"PayModifiers": { //Модификаторы зарплаты игрока в формате "уникальное_название": сумма
		"Example": 500 //Увеличивает зарплату игрока на 500
	},
	"LimitModifiers": { //Модификаторы лимита счёта игрока в формате "уникальное_название": сумма
		"Test": 1000, //Увеличивает лимит счёта игрока на 1000
		"Test2": 2000 //Увеличивает лимит счёта игрока ещё на 2000
	}
}
```

### Модификаторы лимита счёта

В отличие от других модификаций, Magic Bank использует не одно поле бонуса лимита счёта, а систему модификаторов. Это позволяет совмещать несколько бонусов и легко отличать их, а также другим даёт других модам возможность добавлять свои бонусы, не конфликтуя с другими бонусами. Каждый модификатор должен иметь уникальное (для этого игрока) название.

Лимит счёта игрока равен: стандартный лимит счёта + сумма модификаторов. Для файла данных и конфига выше лимит счёта этого игрока будет равен: 10000 + 1000 + 2000 = 13000.

### Модификаторы зарплаты игрока

Аналогично модификатором счёта, модификация также добавляет модификаторы зарплаты. Сумма модификаторов добавляется к **каждой** зарплате игрока. Название каждого модификатора должно быть уникальным.

Зарплата игрока равна: базовая зарплата + сумма модификаторов. Для файла данных и конфига выше зарплата игрока равна: 1000 + 500 = 1500.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://workshop-guide.magicbyte.ru/mods/magic-bank.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
