ShopWatch
Introducing ShopWatch
Introducing ShopWatch! Owning a ChestShop was never this much fun!
A Bukkit plugin by SudoCheese and Ampt. Read on for more about this work-in-progress plugin.
Introduction
Hello Bukkit community! After two years of running a Bukkit server on campus Ampt and I have decided to put my Computer Science degree to good use! The purpose of this write up is to explain the reasoning behind this plugin, how we plan to implement it, and tentative command and permissions references.
Problem Statement
When you are offline, you don't get to see when people buy and sell to your ChestShop shops. This mod aims to solve that problem! The goal of the first version is to tell you how much money you gained and spent selling and buying items respectively, while you were offline.
Features
- When a player logs in, they receive a private chat message from the server telling them how much total profit or loss they have made since the last time they logged in.
See In-Game design section
Commands
In the first milestone release there will be no commands, and the only way to see the ShopWatch report will be when the player logs in. I would like to eventually add the following command:
/command_name_WIP - Shows the ShopWatch report on demand
Permissions
In the first milestone release there will not be support for permissions. I would like to eventually add the following permissions:
shopwatch.onDemand - Allows the player to use the /command_name_WIP command to see ShopWatch reports on demand.
Configuration
The first milestone release will not be configurable, however I would like to add the following configurations:
enableShopWatch - Boolean value, if false the plugin will not function. enableReportOnLogin - Boolean value, if true the ShopWatch report will automatically be displayed when the player logs in. enableReportCharge - Boolean value, if true the player will be charged costReport currency in iConomy whenever the on-demand report functionality is used.
Requirements
This plugin requires the ChestShop and iConomy plugins.
Database Schema
This plugin will record all transactions done by ChestShop and store them in a single SQLite database table called Transactions. See design below.
Transactions
- id - int - primary key - auto increment - used to reference unique transactions when needed
- shopOwner - tinytext - secondary key - the name of the shop owner where the transaction took place
- value - int - the amount of currency change, in reference to the shop owner. For example, when someone buys something from you, you gain money. When someone sells to you, you lose money. (may be either positive or negative)
- isRead - boolean - used to keep track of whether or not a transaction has been viewed. After a transaction has been viewed once, it is marked as read.
In-Game Design
The initial release will only have notifications when the player logs in. This is shown below.
Comments