diff --git a/data/DB_PigBank_Diamond.dat b/data/DB_PigBank_Diamond.dat
new file mode 100644
index 0000000..75bdd9f
--- /dev/null
+++ b/data/DB_PigBank_Diamond.dat
@@ -0,0 +1,4 @@
+
+ 
+ (
+���/ 2
\ No newline at end of file
diff --git a/data/DB_PigBank_Diamond.json b/data/DB_PigBank_Diamond.json
new file mode 100644
index 0000000..ab24207
--- /dev/null
+++ b/data/DB_PigBank_Diamond.json
@@ -0,0 +1,22 @@
+{
+	"Arr": [
+		{
+			"Id": 1,
+			"BuyCountMin": 1,
+			"BuyCountMax": 1,
+			"CostDiamond": 30
+		},
+		{
+			"Id": 2,
+			"BuyCountMin": 2,
+			"BuyCountMax": 2,
+			"CostDiamond": 40
+		},
+		{
+			"Id": 3,
+			"BuyCountMin": 3,
+			"BuyCountMax": 99999999,
+			"CostDiamond": 50
+		}
+	]
+}
\ No newline at end of file
diff --git a/data/DB_Pigbank_Prop.dat b/data/DB_Pigbank_Prop.dat
new file mode 100644
index 0000000..49848a8
Binary files /dev/null and b/data/DB_Pigbank_Prop.dat differ
diff --git a/data/DB_Pigbank_Prop.json b/data/DB_Pigbank_Prop.json
new file mode 100644
index 0000000..3f155af
--- /dev/null
+++ b/data/DB_Pigbank_Prop.json
@@ -0,0 +1,579 @@
+{
+	"Arr": [
+		{
+			"Name": "不是VIP",
+			"Privilege1": [
+				100000,
+				2
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				0,
+				0
+			],
+			"Privilege4": 2,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				1
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 1,
+			"Name": "VIP1",
+			"Count": 1000,
+			"VipExp": 1000,
+			"Privilege1": [
+				100000,
+				100
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				1,
+				2
+			],
+			"Privilege4": 5,
+			"Privilege6": 2,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				2
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 2,
+			"Name": "VIP2",
+			"Count": 2000,
+			"VipExp": 2000,
+			"Privilege1": [
+				150000,
+				150
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				1,
+				2
+			],
+			"Privilege4": 9,
+			"Privilege6": 3,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				2
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 3,
+			"Name": "VIP3",
+			"Count": 5000,
+			"VipExp": 5000,
+			"Privilege1": [
+				200000,
+				200
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				2,
+				2
+			],
+			"Privilege4": 13,
+			"Privilege6": 4,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				3
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 4,
+			"Name": "VIP4",
+			"Count": 10000,
+			"VipExp": 10000,
+			"Privilege1": [
+				300000,
+				250
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				2,
+				2
+			],
+			"Privilege4": 17,
+			"Privilege6": 5,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				3
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 5,
+			"Name": "VIP5",
+			"Count": 20000,
+			"VipExp": 20000,
+			"Privilege1": [
+				400000,
+				300
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				2,
+				2
+			],
+			"Privilege4": 22,
+			"Privilege6": 6,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				4
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 6,
+			"Name": "VIP6",
+			"Count": 50000,
+			"VipExp": 50000,
+			"Privilege1": [
+				500000,
+				350
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				2,
+				3
+			],
+			"Privilege4": 27,
+			"Privilege6": 7,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				4
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 7,
+			"Name": "VIP7",
+			"Count": 100000,
+			"VipExp": 100000,
+			"Privilege1": [
+				600000,
+				400
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				2,
+				3
+			],
+			"Privilege4": 32,
+			"Privilege6": 8,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				3
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 8,
+			"Name": "VIP8",
+			"Count": 200000,
+			"VipExp": 200000,
+			"Privilege1": [
+				700000,
+				450
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				3,
+				3
+			],
+			"Privilege4": 37,
+			"Privilege6": 9,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				3
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 9,
+			"Name": "VIP9",
+			"Count": 500000,
+			"VipExp": 500000,
+			"Privilege1": [
+				800000,
+				500
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				3,
+				3
+			],
+			"Privilege4": 42,
+			"Privilege6": 10,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				4
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 10,
+			"Name": "VIP10",
+			"Count": 1000000,
+			"VipExp": 1000000,
+			"Privilege1": [
+				900000,
+				550
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				3,
+				3
+			],
+			"Privilege4": 47,
+			"Privilege6": 11,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				4
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 11,
+			"Name": "VIP11",
+			"Count": 2000000,
+			"VipExp": 2000000,
+			"Privilege1": [
+				1000000,
+				600
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				3,
+				4
+			],
+			"Privilege4": 50,
+			"Privilege6": 12,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				0
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 12,
+			"Name": "VIP12",
+			"Count": 5000000,
+			"VipExp": 5000000,
+			"Privilege1": [
+				2000000,
+				650
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				3,
+				4
+			],
+			"Privilege4": 60,
+			"Privilege6": 13,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				0
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 13,
+			"Name": "VIP13",
+			"Count": 10000000,
+			"VipExp": 10000000,
+			"Privilege1": [
+				3000000,
+				700
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				4,
+				4
+			],
+			"Privilege4": 70,
+			"Privilege6": 14,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				0
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 14,
+			"Name": "VIP14",
+			"Count": 20000000,
+			"VipExp": 20000000,
+			"Privilege1": [
+				4000000,
+				750
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				4,
+				4
+			],
+			"Privilege4": 80,
+			"Privilege6": 15,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				0
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 15,
+			"Name": "VIP15",
+			"Count": 50000000,
+			"VipExp": 50000000,
+			"Privilege1": [
+				5000000,
+				800
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				4,
+				4
+			],
+			"Privilege4": 90,
+			"Privilege6": 16,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				0
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{
+			"Id": 16,
+			"Name": "VIP16",
+			"Count": 100000000,
+			"VipExp": 100000000,
+			"Privilege1": [
+				6000000,
+				850
+			],
+			"Privilege2": [
+				0,
+				0
+			],
+			"Privilege3": [
+				4,
+				4
+			],
+			"Privilege4": 100,
+			"Privilege6": 20,
+			"Privilege8": 1,
+			"Param": [
+				1,
+				1,
+				1
+			],
+			"RewardOutlineID": [
+				0
+			],
+			"ParamName": [
+				"获得专属头像框",
+				"获得专属炮台",
+				"更多VIP功能正待开发"
+			]
+		},
+		{}
+	]
+}
\ No newline at end of file
diff --git a/srvdata/db_pigbank_diamond.go b/srvdata/db_pigbank_diamond.go
new file mode 100644
index 0000000..8e667c4
--- /dev/null
+++ b/srvdata/db_pigbank_diamond.go
@@ -0,0 +1,69 @@
+
+// Code generated by xlsx2proto.
+// DO NOT EDIT!
+
+package srvdata
+
+import (
+	"google.golang.org/protobuf/proto"
+
+    "mongo.games.com/game/protocol/server"
+)
+
+var PBDB_PigBank_DiamondMgr = &DB_PigBank_DiamondMgr{pool: make(map[int32]*server.DB_PigBank_Diamond), Datas: &server.DB_PigBank_DiamondArray{}}
+
+type DB_PigBank_DiamondMgr struct {
+	Datas *server.DB_PigBank_DiamondArray
+	pool  map[int32]*server.DB_PigBank_Diamond
+}
+
+func (this *DB_PigBank_DiamondMgr) unmarshal(data []byte) error {
+	err := proto.Unmarshal(data, this.Datas)
+	if err == nil {
+		this.arrangeData()
+	}
+	return err
+}
+
+func (this *DB_PigBank_DiamondMgr) reunmarshal(data []byte) error {
+	newDatas := &server.DB_PigBank_DiamondArray{}
+	err := proto.Unmarshal(data, newDatas)
+	if err == nil {
+		for _, item := range newDatas.Arr {
+			existItem := this.GetData(item.GetId())
+			if existItem == nil {
+				this.pool[item.GetId()] = item
+				this.Datas.Arr = append(this.Datas.Arr, item)
+			} else {
+				*existItem = *item
+			}
+		}
+	}
+	return err
+}
+
+func (this *DB_PigBank_DiamondMgr) arrangeData() {
+	if this.Datas == nil {
+		return
+	}
+
+	dataArr := this.Datas.GetArr()
+	if dataArr == nil {
+		return
+	}
+
+	for _, data := range dataArr {
+		this.pool[data.GetId()] = data
+	}
+}
+
+func (this *DB_PigBank_DiamondMgr) GetData(id int32) *server.DB_PigBank_Diamond {
+	if data, ok := this.pool[id]; ok {
+		return data
+	}
+	return nil
+}
+
+func init() {
+	DataMgr.RegisteLoader("DB_PigBank_Diamond.dat", &ProtobufDataLoader{dh: PBDB_PigBank_DiamondMgr})
+}
diff --git a/srvdata/db_pigbank_prop.go b/srvdata/db_pigbank_prop.go
new file mode 100644
index 0000000..ad66c85
--- /dev/null
+++ b/srvdata/db_pigbank_prop.go
@@ -0,0 +1,69 @@
+
+// Code generated by xlsx2proto.
+// DO NOT EDIT!
+
+package srvdata
+
+import (
+	"google.golang.org/protobuf/proto"
+
+    "mongo.games.com/game/protocol/server"
+)
+
+var PBDB_Pigbank_PropMgr = &DB_Pigbank_PropMgr{pool: make(map[int32]*server.DB_Pigbank_Prop), Datas: &server.DB_Pigbank_PropArray{}}
+
+type DB_Pigbank_PropMgr struct {
+	Datas *server.DB_Pigbank_PropArray
+	pool  map[int32]*server.DB_Pigbank_Prop
+}
+
+func (this *DB_Pigbank_PropMgr) unmarshal(data []byte) error {
+	err := proto.Unmarshal(data, this.Datas)
+	if err == nil {
+		this.arrangeData()
+	}
+	return err
+}
+
+func (this *DB_Pigbank_PropMgr) reunmarshal(data []byte) error {
+	newDatas := &server.DB_Pigbank_PropArray{}
+	err := proto.Unmarshal(data, newDatas)
+	if err == nil {
+		for _, item := range newDatas.Arr {
+			existItem := this.GetData(item.GetId())
+			if existItem == nil {
+				this.pool[item.GetId()] = item
+				this.Datas.Arr = append(this.Datas.Arr, item)
+			} else {
+				*existItem = *item
+			}
+		}
+	}
+	return err
+}
+
+func (this *DB_Pigbank_PropMgr) arrangeData() {
+	if this.Datas == nil {
+		return
+	}
+
+	dataArr := this.Datas.GetArr()
+	if dataArr == nil {
+		return
+	}
+
+	for _, data := range dataArr {
+		this.pool[data.GetId()] = data
+	}
+}
+
+func (this *DB_Pigbank_PropMgr) GetData(id int32) *server.DB_Pigbank_Prop {
+	if data, ok := this.pool[id]; ok {
+		return data
+	}
+	return nil
+}
+
+func init() {
+	DataMgr.RegisteLoader("DB_Pigbank_Prop.dat", &ProtobufDataLoader{dh: PBDB_Pigbank_PropMgr})
+}
diff --git a/xlsx/DB_PigBank_Diamond.xlsx b/xlsx/DB_PigBank_Diamond.xlsx
new file mode 100644
index 0000000..0e04095
Binary files /dev/null and b/xlsx/DB_PigBank_Diamond.xlsx differ
diff --git a/xlsx/DB_Pigbank_Prop.xlsx b/xlsx/DB_Pigbank_Prop.xlsx
new file mode 100644
index 0000000..65f038c
Binary files /dev/null and b/xlsx/DB_Pigbank_Prop.xlsx differ
