Player-run sign shops for TF-Minecraft.
BarterShops turns a sign and a stocked chest into a place to trade. Players can buy goods from a shop or sell matching items back to its owner, with payments handled in denars. It gives market stalls and local businesses a practical role in the world: the stock is in the chest, the price belongs to the owner, and the transaction happens at the sign.
- Buy and sell shops — support both customers purchasing stock and customers selling goods to a shop.
- Chest-backed stock — move real items between the shop's storage and the customer's inventory.
- Owner-set trades — choose the quantity and price for each transaction through an in-game creation flow.
- Denar payments — connect customer spending and shop-owner bank balances through DenarEconomy.
- Diplomatic consequences — respect trade embargoes between nations when SimpleFactions is available.
BarterShops brings player businesses into the same economy as DenarEconomy and the diplomacy of SimpleFactions. Stock, available money, and national relationships all affect whether a trade can happen.
Technical documentation is maintained in TF-Minecraft/Docs.
Install the pinned shared plugin dependencies, download the private build inputs, then run the build with Java 21. In Bash:
python3 path/to/TLibs/tools/install-plugins.py --pom pom.xml --mode pinned &&
(read -rsp 'ServerAssets token: ' GH_TOKEN && echo && export GH_TOKEN &&
bash .github/scripts/prepare-release.sh) &&
mvn clean verifyThe installer comes from a separate TLibs checkout
(git clone https://github.com/TF-Minecraft/TLibs.git); point path/to/TLibs at it. The token needs Contents read access
to TF-Minecraft/ServerAssets. The prompt keeps it out of shell history, the
subshell keeps it out of your session and Maven, and Maven only runs if both
preparation steps succeed. CI supplies it from DEPS_TOKEN.
Tests use JUnit and Mockito and run without a live Minecraft server.
Copyright (c) 2026 TF-Minecraft contributors.
TF-Minecraft-authored material in this repository is licensed under the Artistic License 2.0. Third-party dependencies and bundled material retain their own licenses.