Install and configure Banking on a DayZ server
Banking needs CF, a currency supplied by another mod and at least one placed ATM. Start on a separate test world, then configure the files under DC_Banking in the server’s active profiles directory.
This procedure covers the original Banking, Workshop item 1836257061, by Deadcraft and HandsomeNipple. Other banking packages and the banking features in TraderPlus or Expansion have different files and behavior.
Check the release before public use
Section titled “Check the release before public use”The paths and settings below follow the author’s source revision b37ff206, checked on 6 October 2026. We haven’t matched it to an installed Workshop binary or run the procedure in game.
In that revision, the server’s deposit and withdrawal handlers identify the requesting player and limit amounts, but don’t check distance to an ATM. The transaction delay is enforced by the client menu. Changing m_TransactionDelayTime therefore doesn’t establish a server-enforced cooldown. See the transaction handlers and menu code.
Keep public deployment on hold until the exact package’s transaction controls have been reviewed and tested against your server’s rules. These are source findings, not a demonstrated exploit in the current Workshop release.
Install the packages on a test world
Section titled “Install the packages on a test world”Take a stopped backup of the mission, persistence, profiles and launch settings. If this introduces CF to an existing world, read its first-installation wipe requirement before using that save.
Install CF (1559212036) and Banking through VXPanel Mods with client-visible loading. Joining players need both packages and the package supplying your currency. For manual installation, follow the signing-key and load-order procedure, using the keys supplied with those releases and retaining signature verification.
The generated configuration names MoneyRuble100 through MoneyRuble1. Those items come from the Dr_J0nes Trader mod. If you use another currency, replace the mappings with classnames from that installed package before testing transactions.
Find the configuration and player balances
Section titled “Find the configuration and player balances”Start the test server once, check its startup logs, then stop it. The configuration loader and player-data class use:
<active profiles>/DC_Banking/BankingConfig.json<active profiles>/DC_Banking/PlayerDatabase/<Steam64 ID>.jsonPlayer files are created when the mod first needs an account. An empty PlayerDatabase before anyone interacts with Banking doesn’t establish a failed installation. If the main configuration is missing, check the active -profiles path and script errors before creating files by hand.
Back up the whole DC_Banking folder with the corresponding world and player save. Restoring only bank balances or only carried currency from an older backup can leave the two inconsistent. Don’t delete a player’s account file to fix a missing ATM.
Configure currency and limits
Section titled “Configure currency and limits”Edit the generated BankingConfig.json while the server is stopped. Preserve its JSON structure, validate it locally and restart after changes.
m_BankingCurrencyArraypairs eachm_ClassNamewith anm_Value. Use real, distinct item classnames and positive whole-number denominations. Keep a denomination worth one so change can represent every whole-number amount.m_DefaultMaxCurrencysets the base balance limit. A player’sm_MaxOwnedCurrencyBonusadds to it; keep their sum well below the signed integer limit of2,147,483,647.m_StartCurrencyapplies when a new account file is created. Changing it doesn’t reset existing balances.m_PlaceExcessiveCurrencyOnGroundchooses what happens when currency cannot fit. Enabled, it drops the remainder nearby; disabled, it credits the account, which can exceed the normal deposit limit. Test this with full inventory and occupied hands.m_CreateLogsenables Banking’s script-log messages. Leave it enabled during rehearsal so you can compare amounts before and after each transaction.
The currency class stores m_Value as a float, but the checked transaction code converts denomination values to integers for arithmetic. Use whole numbers such as 100, not fractional currency values. Zero can also reach division or remainder operations. These constraints come from the configuration fields, currency class and transaction code.
Place one ATM and check access
Section titled “Place one ATM and check access”Use the configured classname DC_BankingATM for the first placement. The author documents placement through the mission’s init.c; alternatively, follow the DayZ Editor Loader procedure if that is already your map-edit workflow. Load Banking’s assets while authoring the placement.
Choose a position on your actual terrain with room for a player to approach. Save the measured position and rotation, and let one placement system create the ATM. Loading the same placement through both an export and init.c can create duplicates. Don’t replace your mission’s complete initialization script with an ATM example.
Join with a normal player account and look for the Open banking menu action. If the object is visible but the action is missing, confirm its classname and matching client/server packages. If it disappears after restart, check the placement loader and its startup logs. Adding a currency item to types.xml won’t recreate an ATM placement.
Reconcile transactions and recovery
Section titled “Reconcile transactions and recovery”Record carried currency and the bank balance before a small deposit, then withdraw part of it and compare both totals. Repeat with mixed denominations, a nearly full bank account and no spare inventory space. Include a second player so you can check that each account remains separate.
Disconnect, reconnect and restart the test server, checking balances after each step. Rehearse restoring the matching world, player and Banking backups together. Keep the tested package versions and results with the backup so another admin can repeat the recovery.
For a mismatch, retain the affected copies and the relevant script logs before editing balances. Player files contain identifiers; remove private data from any material you share publicly. Resolve the exact-release transaction checks above before exposing Banking to public players. The author’s usage terms prohibit repacking and selling Banking features such as a higher balance limit.