diff --git a/Server/data/configs/drop_tables.json b/Server/data/configs/drop_tables.json index 0a7beddb4..abed621ee 100644 --- a/Server/data/configs/drop_tables.json +++ b/Server/data/configs/drop_tables.json @@ -40726,19 +40726,19 @@ "main": [ { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5100", "maxAmount": "1" }, { "minAmount": "1", - "weight": "50.0", + "weight": "25.0", "id": "5311", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5323", "maxAmount": "1" }, @@ -40750,19 +40750,19 @@ }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5105", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5104", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5281", "maxAmount": "1" }, @@ -40774,25 +40774,25 @@ }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5291", "maxAmount": "1" }, { "minAmount": "1", - "weight": "50.0", + "weight": "25.0", "id": "5292", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5293", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5294", "maxAmount": "1" }, @@ -40804,19 +40804,19 @@ }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "12176", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5296", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5297", "maxAmount": "1" }, @@ -40828,7 +40828,7 @@ }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5299", "maxAmount": "1" }, @@ -40888,49 +40888,49 @@ }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "207", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "209", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "211", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "213", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "215", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "2485", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "217", "maxAmount": "1" }, { "minAmount": "1", - "weight": "50.0", + "weight": "25.0", "id": "4695", "maxAmount": "1" }, @@ -40941,32 +40941,20 @@ "maxAmount": "15" }, { - "minAmount": "1", - "weight": "5.0", - "id": "1452", - "maxAmount": "3" - }, - { - "minAmount": "24", - "weight": "50.0", + "minAmount": "22", + "weight": "100.0", "id": "995", - "maxAmount": "24" - }, - { - "minAmount": "32", - "weight": "50.0", - "id": "995", - "maxAmount": "32" + "maxAmount": "44" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "405", "maxAmount": "1" }, { "minAmount": "50", - "weight": "5.0", + "weight": "50.0", "id": "313", "maxAmount": "50" }, @@ -40977,16 +40965,16 @@ "maxAmount": "1" }, { - "minAmount": "5", + "minAmount": "4", "weight": "25.0", "id": "402", "maxAmount": "5" }, { - "minAmount": "5", + "minAmount": "1", "weight": "25.0", "id": "404", - "maxAmount": "5" + "maxAmount": "1" }, { "minAmount": "1", @@ -41001,23 +40989,17 @@ "maxAmount": "2" }, { - "minAmount": "2", - "weight": "50.0", + "minAmount": "1", + "weight": "8.0", "id": "411", "maxAmount": "2" }, { "minAmount": "2", - "weight": "25.0", + "weight": "50.0", "id": "823", "maxAmount": "2" }, - { - "minAmount": "1", - "weight": "50.0", - "id": "46", - "maxAmount": "1" - }, { "minAmount": "3", "weight": "50.0", @@ -41025,21 +41007,27 @@ "maxAmount": "3" }, { - "minAmount": "14", + "minAmount": "4", "weight": "25.0", "id": "4160", - "maxAmount": "14" + "maxAmount": "5" }, { "minAmount": "1", "weight": "5.0", - "id": "413", + "id": "5733", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "2853", + "weight": "100.0", + "id": "0", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "8.0", + "id": "31", "maxAmount": "1" } ] @@ -41057,186 +41045,24 @@ "ids": "3940", "description": "", "main": [ - { - "minAmount": "1", - "weight": "25.0", - "id": "5301", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5100", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5105", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5104", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5299", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5311", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5294", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5295", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5323", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5300", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5296", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "12176", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5103", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "5304", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "50.0", - "id": "995", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "50.0", - "id": "405", - "maxAmount": "1" - }, - { - "minAmount": "2", - "weight": "50.0", - "id": "363", - "maxAmount": "2" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "377", - "maxAmount": "1" - }, { "minAmount": "4", "weight": "25.0", - "id": "401", - "maxAmount": "4" - }, - { - "minAmount": "5", - "weight": "25.0", - "id": "401", - "maxAmount": "5" - }, - { - "minAmount": "4", - "weight": "25.0", - "id": "4160", - "maxAmount": "4" - }, - { - "minAmount": "5", - "weight": "25.0", - "id": "4160", + "id": "4150", "maxAmount": "5" }, { "minAmount": "2", - "weight": "5.0", + "weight": "50.0", "id": "823", "maxAmount": "2" }, - { - "minAmount": "15", - "weight": "25.0", - "id": "403", - "maxAmount": "15" - }, - { - "minAmount": "50", - "weight": "25.0", - "id": "313", - "maxAmount": "50" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "4695", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "411", - "maxAmount": "1" - }, - { - "minAmount": "2", - "weight": "25.0", - "id": "411", - "maxAmount": "2" - }, { "minAmount": "3", - "weight": "25.0", + "weight": "50.0", "id": "46", "maxAmount": "3" }, - { - "minAmount": "1", - "weight": "25.0", - "id": "571", - "maxAmount": "1" - }, { "minAmount": "15", "weight": "25.0", @@ -41246,392 +41072,164 @@ { "minAmount": "1", "weight": "25.0", - "id": "199", + "id": "4695", + "maxAmount": "1" + }, + { + "minAmount": "2", + "weight": "25.0", + "id": "363", + "maxAmount": "2" + }, + { + "minAmount": "1", + "weight": "25.0", + "id": "377", "maxAmount": "1" }, { "minAmount": "1", "weight": "25.0", - "id": "2747", - "maxAmount": "1" - }, - { - "minAmount": "250", - "weight": "50.0", - "id": "995", - "maxAmount": "250" - }, - { - "minAmount": "3000", - "weight": "50.0", - "id": "995", - "maxAmount": "3000" - }, - { - "minAmount": "1", - "weight": "50.0", - "id": "1623", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "50.0", - "id": "1621", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "50.0", - "id": "1619", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "1617", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "987", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "985", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "5.0", - "id": "1631", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "5.0", - "id": "1615", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "1215", + "id": "403", "maxAmount": "1" }, { "minAmount": "5", - "weight": "5.0", - "id": "830", + "weight": "25.0", + "id": "401", "maxAmount": "5" }, - { - "minAmount": "20", - "weight": "5.0", - "id": "829", - "maxAmount": "20" - }, - { - "minAmount": "1", - "weight": "5.0", - "id": "1319", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "5.0", - "id": "1247", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "5.0", - "id": "1249", - "maxAmount": "1" - }, { "minAmount": "50", - "weight": "5.0", - "id": "1216", + "weight": "50.0", + "id": "313", "maxAmount": "50" }, { "minAmount": "1", - "weight": "5.0", - "id": "1185", + "weight": "25.0", + "id": "571", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "1201", + "weight": "8.0", + "id": "411", + "maxAmount": "2" + }, + { + "minAmount": "1", + "weight": "8.0", + "id": "405", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "2366", + "weight": "8.0", + "id": "5301", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "1149", - "maxAmount": "1" - }, - { - "minAmount": "200", - "weight": "25.0", - "id": "9143", - "maxAmount": "200" - }, - { - "minAmount": "150", - "weight": "5.0", - "id": "9342", - "maxAmount": "150" - }, - { - "minAmount": "150", - "weight": "5.0", - "id": "892", - "maxAmount": "200" - }, - { - "minAmount": "500", - "weight": "5.0", - "id": "892", - "maxAmount": "500" - }, - { - "minAmount": "200", - "weight": "5.0", - "id": "1392", - "maxAmount": "200" - }, - { - "minAmount": "1000", - "weight": "5.0", - "id": "574", - "maxAmount": "1000" - }, - { - "minAmount": "1000", - "weight": "5.0", - "id": "570", - "maxAmount": "1000" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "1444", - "maxAmount": "1" - }, - { - "minAmount": "25", - "weight": "25.0", - "id": "1441", - "maxAmount": "35" - }, - { - "minAmount": "25", - "weight": "25.0", - "id": "1443", - "maxAmount": "35" - }, - { - "minAmount": "1", - "weight": "25.0", - "id": "1452", + "weight": "8.0", + "id": "5100", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", - "id": "1462", + "weight": "8.0", + "id": "5105", "maxAmount": "1" }, - { - "minAmount": "500", - "weight": "25.0", - "id": "7937", - "maxAmount": "15000" - }, - { - "minAmount": "47", - "weight": "5.0", - "id": "561", - "maxAmount": "77" - }, - { - "minAmount": "20", - "weight": "5.0", - "id": "566", - "maxAmount": "20" - }, - { - "minAmount": "45", - "weight": "5.0", - "id": "563", - "maxAmount": "45" - }, - { - "minAmount": "50", - "weight": "5.0", - "id": "560", - "maxAmount": "50" - }, - { - "minAmount": "121", - "weight": "5.0", - "id": "560", - "maxAmount": "121" - }, - { - "minAmount": "50", - "weight": "5.0", - "id": "565", - "maxAmount": "50" - }, - { - "minAmount": "125", - "weight": "25.0", - "id": "372", - "maxAmount": "250" - }, - { - "minAmount": "1000", - "weight": "25.0", - "id": "372", - "maxAmount": "1000" - }, - { - "minAmount": "250", - "weight": "25.0", - "id": "384", - "maxAmount": "500" - }, - { - "minAmount": "150", - "weight": "25.0", - "id": "533", - "maxAmount": "500" - }, - { - "minAmount": "150", - "weight": "25.0", - "id": "454", - "maxAmount": "7500" - }, - { - "minAmount": "150", - "weight": "25.0", - "id": "450", - "maxAmount": "800" - }, - { - "minAmount": "100", - "weight": "5.0", - "id": "443", - "maxAmount": "100" - }, - { - "minAmount": "100", - "weight": "5.0", - "id": "452", - "maxAmount": "100" - }, - { - "minAmount": "1000", - "weight": "5.0", - "id": "2362", - "maxAmount": "7000" - }, { "minAmount": "1", - "weight": "5.0", - "id": "2364", + "weight": "8.0", + "id": "5104", "maxAmount": "1" }, { - "minAmount": "50", - "weight": "5.0", - "id": "2364", - "maxAmount": "50" - }, - { - "minAmount": "33", - "weight": "25.0", - "id": "258", - "maxAmount": "33" - }, - { - "minAmount": "25", - "weight": "25.0", - "id": "2999", - "maxAmount": "250" - }, - { - "minAmount": "30", - "weight": "25.0", - "id": "3001", - "maxAmount": "120" - }, - { - "minAmount": "10", - "weight": "25.0", - "id": "270", - "maxAmount": "100" - }, - { - "minAmount": "250", - "weight": "5.0", - "id": "6686", - "maxAmount": "250" - }, - { - "minAmount": "3", - "weight": "25.0", - "id": "5321", - "maxAmount": "3" + "minAmount": "1", + "weight": "8.0", + "id": "5299", + "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "5315", - "maxAmount": "50" + "weight": "8.0", + "id": "5311", + "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "5316", - "maxAmount": "6" - }, - { - "minAmount": "10", - "weight": "5.0", - "id": "5289", - "maxAmount": "10" + "weight": "8.0", + "id": "5294", + "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", + "id": "5295", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "8.0", + "id": "5323", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "8.0", "id": "5300", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", - "id": "5304", - "maxAmount": "31" + "weight": "8.0", + "id": "5296", + "maxAmount": "1" }, { - "minAmount": "100", - "weight": "5.0", - "id": "1516", - "maxAmount": "20000" + "minAmount": "1", + "weight": "8.0", + "id": "12176", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "8.0", + "id": "5103", + "maxAmount": "1" + }, + { + "minAmount": "21", + "weight": "50.0", + "id": "995", + "maxAmount": "21" + }, + { + "minAmount": "1", + "weight": "4.0", + "id": "5733", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "100.0", + "id": "0", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "4.0", + "id": "31", + "maxAmount": "1" + }, + { + "minAmount": "44", + "weight": "50.0", + "id": "995", + "maxAmount": "44" } ] }, @@ -41656,13 +41254,13 @@ "main": [ { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5321", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5106", "maxAmount": "1" }, @@ -41686,103 +41284,97 @@ }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5294", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5296", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5295", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5297", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5298", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5299", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5300", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5301", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5302", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "5303", "maxAmount": "1" }, { "minAmount": "1", - "weight": "5.0", + "weight": "8.0", "id": "5304", "maxAmount": "1" }, { - "minAmount": "23", - "weight": "25.0", + "minAmount": "22", + "weight": "100.0", "id": "995", - "maxAmount": "23" - }, - { - "minAmount": "32", - "weight": "25.0", - "id": "995", - "maxAmount": "32" + "maxAmount": "44" }, { "minAmount": "1", - "weight": "25.0", - "id": "2809", + "weight": "5.0", + "id": "5733", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "5.0", "id": "10976", "maxAmount": "1" }, { "minAmount": "2", - "weight": "25.0", + "weight": "50.0", "id": "823", "maxAmount": "2" }, { "minAmount": "3", - "weight": "25.0", + "weight": "50.0", "id": "46", "maxAmount": "3" }, @@ -41790,7 +41382,7 @@ "minAmount": "4", "weight": "25.0", "id": "4160", - "maxAmount": "4" + "maxAmount": "5" }, { "minAmount": "1", @@ -41812,7 +41404,7 @@ }, { "minAmount": "50", - "weight": "25.0", + "weight": "50.0", "id": "313", "maxAmount": "50" }, @@ -41824,15 +41416,33 @@ }, { "minAmount": "1", - "weight": "5.0", + "weight": "25.0", "id": "377", "maxAmount": "1" }, { "minAmount": "1", - "weight": "25.0", + "weight": "8.0", "id": "405", "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "8.0", + "id": "31", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "100.0", + "id": "0", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "8.0", + "id": "411", + "maxAmount": "2" } ] }, @@ -49958,182 +49568,140 @@ "main": [ { "minAmount": "1", - "weight": "500.0", - "id": "1333", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "200.0", - "id": "224", - "maxAmount": "36" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "6050", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "100.0", - "id": "6052", - "maxAmount": "16" - }, - { - "minAmount": "1", - "weight": "200.0", - "id": "244", - "maxAmount": "40" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "246", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "3139", - "maxAmount": "40" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "248", - "maxAmount": "32" - }, - { - "minAmount": "1", - "weight": "100.0", - "id": "6694", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "125.0", - "id": "6019", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "50.0", + "weight": "1.45", "id": "11716", "maxAmount": "1" }, { "minAmount": "1", - "weight": "49.0", - "id": "11736", - "maxAmount": "1" - }, - { - "minAmount": "120", - "weight": "500.0", - "id": "560", - "maxAmount": "125" - }, - { - "minAmount": "80", - "weight": "250.0", - "id": "565", - "maxAmount": "90" - }, - { - "minAmount": "1", - "weight": "500.0", - "id": "1123", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "500.0", - "id": "1079", - "maxAmount": "1" - }, - { - "minAmount": "3", - "weight": "500.0", - "id": "145", - "maxAmount": "3" - }, - { - "minAmount": "3", - "weight": "500.0", - "id": "3026", - "maxAmount": "3" - }, - { - "minAmount": "3", - "weight": "500.0", - "id": "157", - "maxAmount": "3" - }, - { - "minAmount": "3", - "weight": "500.0", - "id": "189", - "maxAmount": "3" - }, - { - "minAmount": "19362", - "weight": "500.0", - "id": "995", - "maxAmount": "19362" - }, - { - "minAmount": "3", - "weight": "250.0", - "id": "5302", - "maxAmount": "3" - }, - { - "minAmount": "10", - "weight": "250.0", - "id": "2486", - "maxAmount": "10" - }, - { - "minAmount": "1", - "weight": "9.0", - "id": "11710", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "9.0", - "id": "11712", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "9.0", - "id": "11714", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "13.0", + "weight": "0.85", "id": "11708", "maxAmount": "1" }, { "minAmount": "1", - "weight": "10.0", - "id": "2735", + "weight": "0.7", + "id": "11710", "maxAmount": "1" }, { "minAmount": "1", - "weight": "50.0", + "weight": "0.7", + "id": "11712", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "0.7", + "id": "11714", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "1.45", + "id": "11736", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "3.3", + "id": "5698", + "maxAmount": "1" + }, + { + "minAmount": "295", + "weight": "25.0", + "id": "5626", + "maxAmount": "300" + }, + { + "minAmount": "1", + "weight": "25.0", + "id": "1333", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "25.0", + "id": "1123", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "15.0", + "id": "1079", + "maxAmount": "1" + }, + { + "minAmount": "3", + "weight": "25.0", + "id": "145", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "25.0", + "id": "157", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "25.0", + "id": "3026", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "25.0", + "id": "189", + "maxAmount": "3" + }, + { + "minAmount": "120", + "weight": "25.0", + "id": "560", + "maxAmount": "125" + }, + { + "minAmount": "80", + "weight": "25.0", + "id": "565", + "maxAmount": "90" + }, + { + "minAmount": "10", + "weight": "25.0", + "id": "2486", + "maxAmount": "10" + }, + { + "minAmount": "3", + "weight": "25.0", + "id": "5302", + "maxAmount": "3" + }, + { + "minAmount": "19500", + "weight": "37.0", + "id": "995", + "maxAmount": "20000" + }, + { + "minAmount": "1", + "weight": "55.6", + "id": "0", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "20.0", "id": "31", "maxAmount": "1" }, { "minAmount": "1", - "weight": "100.0", - "id": "0", + "weight": "20.0", + "id": "12070", "maxAmount": "1" } ] @@ -51040,7 +50608,7 @@ { "minAmount": "18000", "weight": "50.0", - "id": "617", + "id": "995", "maxAmount": "20000" }, { @@ -51514,189 +51082,141 @@ "main": [ { "minAmount": "1", - "weight": "50.0", - "id": "11730", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "200.0", - "id": "224", - "maxAmount": "36" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "6050", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "100.0", - "id": "6052", - "maxAmount": "16" - }, - { - "minAmount": "1", - "weight": "200.0", - "id": "244", - "maxAmount": "40" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "246", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "3139", - "maxAmount": "40" - }, - { - "minAmount": "1", - "weight": "150.0", - "id": "248", - "maxAmount": "32" - }, - { - "minAmount": "1", - "weight": "100.0", - "id": "6694", - "maxAmount": "24" - }, - { - "minAmount": "1", - "weight": "125.0", - "id": "6019", - "maxAmount": "24" - }, - { - "minAmount": "36", - "weight": "500.0", - "id": "811", - "maxAmount": "40" - }, - { - "minAmount": "96", - "weight": "500.0", - "id": "563", - "maxAmount": "105" - }, - { - "minAmount": "1", - "weight": "500.0", - "id": "1093", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "250.0", - "id": "1123", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "250.0", - "id": "1201", - "maxAmount": "1" - }, - { - "minAmount": "5", - "weight": "500.0", - "id": "207", - "maxAmount": "5" - }, - { - "minAmount": "2", - "weight": "500.0", - "id": "5295", - "maxAmount": "2" - }, - { - "minAmount": "1", - "weight": "200.0", - "id": "2434", - "maxAmount": "2" - }, - { - "minAmount": "3", - "weight": "250.0", - "id": "6687", - "maxAmount": "3" - }, - { - "minAmount": "3", - "weight": "250.0", - "id": "2442", - "maxAmount": "3" - }, - { - "minAmount": "3", - "weight": "250.0", - "id": "3024", - "maxAmount": "3" - }, - { - "minAmount": "1", - "weight": "50.0", - "id": "5316", - "maxAmount": "1" - }, - { - "minAmount": "361", - "weight": "500.0", - "id": "995", - "maxAmount": "10300" - }, - { - "minAmount": "10301", - "weight": "500.0", - "id": "995", - "maxAmount": "20300" - }, - { - "minAmount": "6", - "weight": "250.0", - "id": "1602", - "maxAmount": "6" - }, - { - "minAmount": "1", - "weight": "9.0", - "id": "11710", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "9.0", - "id": "11712", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "9.0", - "id": "11714", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "10.0", - "id": "2733", - "maxAmount": "1" - }, - { - "minAmount": "1", - "weight": "13.0", + "weight": "0.7", "id": "11706", "maxAmount": "1" }, { "minAmount": "1", - "weight": "50.0", + "weight": "0.55", + "id": "11710", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "0.55", + "id": "11712", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "0.55", + "id": "11714", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "1.21", + "id": "11730", + "maxAmount": "1" + }, + { + "minAmount": "35", + "weight": "20.0", + "id": "811", + "maxAmount": "40" + }, + { + "minAmount": "1", + "weight": "20.0", + "id": "1093", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "20.0", + "id": "1201", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "20.0", + "id": "1123", + "maxAmount": "1" + }, + { + "minAmount": "95", + "weight": "20.0", + "id": "563", + "maxAmount": "100" + }, + { + "minAmount": "3", + "weight": "20.0", + "id": "3026", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "20.0", + "id": "163", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "20.0", + "id": "3042", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "10.0", + "id": "6687", + "maxAmount": "3" + }, + { + "minAmount": "3", + "weight": "10.0", + "id": "3024", + "maxAmount": "3" + }, + { + "minAmount": "5", + "weight": "20.0", + "id": "208", + "maxAmount": "5" + }, + { + "minAmount": "2", + "weight": "20.0", + "id": "5295", + "maxAmount": "2" + }, + { + "minAmount": "1", + "weight": "2.0", + "id": "5316", + "maxAmount": "1" + }, + { + "minAmount": "6", + "weight": "20.0", + "id": "1602", + "maxAmount": "6" + }, + { + "minAmount": "19000", + "weight": "30.0", + "id": "995", + "maxAmount": "20000" + }, + { + "minAmount": "1", + "weight": "20.0", "id": "31", "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "44.0", + "id": "0", + "maxAmount": "1" + }, + { + "minAmount": "1", + "weight": "11.8", + "id": "12070", + "maxAmount": "1" } ] }, diff --git a/Server/data/configs/music_configs.json b/Server/data/configs/music_configs.json index 04ca52e75..91060a7b3 100644 --- a/Server/data/configs/music_configs.json +++ b/Server/data/configs/music_configs.json @@ -2254,5 +2254,17 @@ "name": "Too Many Cooks...", "indexId": "398", "borders": "{2944,9856,3007,9919}" + }, + { + "id": "222", + "name": "Major Miner", + "indexId": "437", + "borders": "{2403,10186,2409,10192}" + }, + { + "id": "223", + "name": "Norse Code", + "indexId": "439", + "borders": "{2404,3797,2421,3820}" } ] diff --git a/Server/data/configs/npc_spawns.json b/Server/data/configs/npc_spawns.json index 71007e5e0..1263d9e6f 100644 --- a/Server/data/configs/npc_spawns.json +++ b/Server/data/configs/npc_spawns.json @@ -10646,6 +10646,21 @@ { "npc_id": "2352", "loc_data": "{2334,3183,0,1,0}" + }, + { + "npc_id": "5497", + "loc_data": "{2376,10198,0,1,0}-{2384,10202,0,1,0}-{2390,10207,0,1,0}-{2385,10193,0,1,0}-{2419,10192,0,1,0}-{2412,10200,0,1,0}" + }, + { + "npc_id": "5474", + "loc_data": "{2390,10216,0,1,0}-{2417,10228,0,1,0}-{2385,10227,0,1,0}" + }, + { + "npc_id": "5475", + "loc_data": "{2396,10232,0,1,0}-{2402,10225,0,1,0}-{2420,10221,0,1,0}" + }, + { + "npc_id": "5473", + "loc_data": "{2377,10212,0,1,0}-{2392,10226,0,1,0}-{2407,10228,0,1,0}-{2406,10214,0,1,0}-{2420,10214,0,1,0}" } -] - +] \ No newline at end of file diff --git a/Server/src/main/java/core/game/content/global/action/SpecialLadders.java b/Server/src/main/java/core/game/content/global/action/SpecialLadders.java index 9f49974ba..9db629ae8 100644 --- a/Server/src/main/java/core/game/content/global/action/SpecialLadders.java +++ b/Server/src/main/java/core/game/content/global/action/SpecialLadders.java @@ -19,6 +19,8 @@ public enum SpecialLadders implements LadderAchievementCheck { FOG_ENTER(Location.create(3240,3575,0),Location.create(1675,5599,0)), FOG_LEAVE(Location.create(1673,5598,0),Location.create(3242, 3574, 0)), INTRO_LEAVE(Location.create(2522, 4999, 0),Location.create(3230, 3240, 0)), + JATIZSO_MINE_UP(Location.create(2406,10188,0),Location.create(2397, 3811, 0)), + JATIZSO_MINE_DOWN(Location.create(2397, 3812, 0), Location.create(2405, 10188, 0)), DRAYNOR_SEWER_SOUTHEAST_DOWN(new Location(3118, 3244, 0), new Location(3118, 9643, 0)), DRAYNOR_SEWER_SOUTHEAST_UP(new Location(3118, 9643, 0), new Location(3118, 3243, 0)), @@ -62,6 +64,10 @@ public enum SpecialLadders implements LadderAchievementCheck { this.destLoc = destLoc; } + public static void add(Location from, Location to){ + destinationMap.put(from,to); + } + public static Location getDestination(Location loc){ return destinationMap.get(loc); } diff --git a/Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java b/Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java index e5241daaa..b66f6326e 100644 --- a/Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java +++ b/Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java @@ -92,7 +92,7 @@ public final class EmoteCluePlugin extends EmoteClueScroll { register(new EmoteCluePlugin("lumb-shack-dance", 2698, ClueLevel.EASY, emote, new int[][] { { 1205 }, { 1153 }, { 1635 } }, "Dance in
the shack in Lumbridge Swamp.
Equip a bronze
dagger, iron full helmet
and a gold ring.", new ZoneBorders(3202, 3167, 3205, 3170))); register(new EmoteCluePlugin("lumb-cave-dance", 2699, ClueLevel.MEDIUM, emote, Emotes.BLOW_KISS, new int[][] { { 1381 }, { 1155 }, { 1731 } }, "Dance in the dark
cave beneath
Lumbridge Swamp.
Blow a kiss before
you talk to me.
Equip an air staff,
bronze full helm and
an amulet of power.", new ZoneBorders(3139, 9534, 3260, 9587))); register(new EmoteCluePlugin("shantay-guild-jig", 2700, ClueLevel.MEDIUM, Emotes.JIG, Emotes.BOW, new int[][] { { 3343 }, { 1381 }, { 1173 } }, "Dance a jig under
Shantay's Awning.
Bow before you talk to
me.
Equip a pointed blue
snail helmet, an air
staff and a bronze
square shield.", new ZoneBorders(3302, 3122, 3305, 3125))); - register(new EmoteCluePlugin("cat-entrance-dance", 2701, ClueLevel.HARD, emote, new int[][] { { 2570 }, { 1704 }, { 1317 } }, "Dance at the
cat doored pyramid in
Sophanem. Beware of double agents!
Equip a ring of life,
an uncharged amulet
of glory and an adamant two handed
sword.", new ZoneBorders(3293, 2781, 3296, 2782))); + register(new EmoteCluePlugin("cat-entrance-dance", 2701, ClueLevel.HARD, emote, new int[][] { { 2570 }, { 1704 }, { 1317 } }, "Dance at the
cat doored pyramid in
Sophanem. Beware of double agents!
Equip a ring of life
an uncharged amulet of glory
and an adamant two handed sword.", new ZoneBorders(3293, 2781, 3296, 2782))); emote = Emotes.HEADBANG; register(new EmoteCluePlugin("al-kharid-headbang", 2702, ClueLevel.EASY, emote, new int[][] { { 1833 }, { 1059 }, { 1061 } }, "Headbang in the mine north of Al
Kharid.
Equip a desert shirt, leather gloves and
leather boots.", new ZoneBorders(3297, 3286, 3301, 3316))); //Removed Vexia code that bricked emotes for certain clues. diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java b/Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java index ed39f3893..0584a6559 100644 --- a/Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java +++ b/Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java @@ -267,10 +267,16 @@ public final class HouseManager { int diffX = player.getLocation().getX() - r.getBaseLocation().getX(); int diffY = player.getLocation().getY() - r.getBaseLocation().getY(); int diffZ = player.getLocation().getZ() - r.getBaseLocation().getZ(); + DynamicRegion dr = region; + DynamicRegion dd = dungeon; + RegionManager.getRegionCache().remove(dr); + RegionManager.getRegionCache().remove(dd); region = null; dungeon = null; enter(player, buildingMode, false); player.getProperties().setTeleportLocation((player.getViewport().getRegion() == dungeon ? dungeon : region).getBaseLocation().transform(diffX, diffY, diffZ)); + dr.flagInactive(); + dd.flagInactive(); } /** diff --git a/Server/src/main/java/core/game/world/map/Region.java b/Server/src/main/java/core/game/world/map/Region.java index 44a244124..12313de4f 100644 --- a/Server/src/main/java/core/game/world/map/Region.java +++ b/Server/src/main/java/core/game/world/map/Region.java @@ -299,22 +299,31 @@ public class Region { } } + /** + * Unloads a region - compatibility method for older uses + */ + private static void unload(Region r){ + unload(r, false); + } + /** * Unloads a region. * @param r The region. */ - private static void unload(Region r) { - if (r.isViewed()) { - SystemLogger.logErr("Players viewing region!"); - r.flagActive(); - return; - } - for (RegionPlane p : r.planes) { - if (!p.getPlayers().isEmpty()) { - SystemLogger.logErr("Players still in region!"); + private static void unload(Region r, boolean force) { + if(!force){ + if (r.isViewed()) { + SystemLogger.logErr("Players viewing region!"); r.flagActive(); return; } + for (RegionPlane p : r.planes) { + if (!p.getPlayers().isEmpty()) { + SystemLogger.logErr("Players still in region!"); + r.flagActive(); + return; + } + } } for (RegionPlane p : r.planes) { p.clear(); diff --git a/Server/src/main/java/core/net/packet/OutgoingPacket.java b/Server/src/main/java/core/net/packet/OutgoingPacket.java index 8fee2ba95..0c33f8cd9 100644 --- a/Server/src/main/java/core/net/packet/OutgoingPacket.java +++ b/Server/src/main/java/core/net/packet/OutgoingPacket.java @@ -5,12 +5,12 @@ package core.net.packet; * @author Emperor * @param The context type. */ -public interface OutgoingPacket { +public interface OutgoingPacket { /** * Sends the packet. * @param context The context. */ - public void send(T context); + public void send(Context context); } \ No newline at end of file diff --git a/Server/src/main/java/core/net/packet/PacketRepository.java b/Server/src/main/java/core/net/packet/PacketRepository.java index d3b3e83c1..8d4433642 100644 --- a/Server/src/main/java/core/net/packet/PacketRepository.java +++ b/Server/src/main/java/core/net/packet/PacketRepository.java @@ -4,6 +4,7 @@ import core.net.packet.in.*; import core.net.packet.out.GrandExchangePacket; import core.net.packet.out.*; import rs09.game.system.SystemLogger; +import rs09.net.packet.PacketWriteQueue; import rs09.net.packet.in.ItemOnGroundItemPacket; import rs09.net.packet.in.QuickChatPacketHandler; @@ -19,7 +20,7 @@ public final class PacketRepository { /** * The outgoing packets mapping. */ - private final static Map, OutgoingPacket> OUTGOING_PACKETS = new HashMap<>(); + public final static Map, OutgoingPacket> OUTGOING_PACKETS = new HashMap<>(); /** * The incoming packets mapping. @@ -189,8 +190,9 @@ public final class PacketRepository { SystemLogger.logErr("Invalid outgoing packet [handler=" + clazz + ", context=" + context + "]."); return; } - if(!context.getPlayer().isArtificial()) - p.send(context); + if(!context.getPlayer().isArtificial()) { + PacketWriteQueue.handle(p, context); + } } /** diff --git a/Server/src/main/kotlin/rs09/game/content/global/action/EquipHandler.kt b/Server/src/main/kotlin/rs09/game/content/global/action/EquipHandler.kt index 30f389b6f..99d125d8a 100644 --- a/Server/src/main/kotlin/rs09/game/content/global/action/EquipHandler.kt +++ b/Server/src/main/kotlin/rs09/game/content/global/action/EquipHandler.kt @@ -25,12 +25,7 @@ class EquipHandler : InteractionListener() { override fun defineListeners() { on(ITEM,"equip","wield","wear"){player,node -> - GameWorld.Pulser.submit(object : Pulse(){ - override fun pulse(): Boolean { - handleEquip(player,node) - return true - } - }) + handleEquip(player,node) return@on true } diff --git a/Server/src/main/kotlin/rs09/game/content/quest/free/dragonslayer/NedDialogue.kt b/Server/src/main/kotlin/rs09/game/content/quest/free/dragonslayer/NedDialogue.kt index 0d621d745..1c4ff72aa 100644 --- a/Server/src/main/kotlin/rs09/game/content/quest/free/dragonslayer/NedDialogue.kt +++ b/Server/src/main/kotlin/rs09/game/content/quest/free/dragonslayer/NedDialogue.kt @@ -222,7 +222,7 @@ class NedDialogue(player: Player? = null) : DialoguePlugin(player) { if (diary == null) { diary = player.achievementDiaryManager.getDiary(DiaryType.LUMBRIDGE) } - if (diary!!.isComplete(level, true) && !diary!!.isLevelRewarded(level)) { + if (diary!!.isComplete(level, false) && !diary!!.isLevelRewarded(level)) { player("I've done all the hard tasks in my Lumbridge", "Achievement Diary.") stage = 950 } diff --git a/Server/src/main/kotlin/rs09/net/packet/PacketWriteQueue.kt b/Server/src/main/kotlin/rs09/net/packet/PacketWriteQueue.kt new file mode 100644 index 000000000..8e295f332 --- /dev/null +++ b/Server/src/main/kotlin/rs09/net/packet/PacketWriteQueue.kt @@ -0,0 +1,46 @@ +package rs09.net.packet + +import core.net.packet.OutgoingPacket +import core.net.packet.out.* +import rs09.game.system.SystemLogger +import java.util.* + +object PacketWriteQueue { + private val PacketsToWrite: Queue> = LinkedList>() + + @JvmStatic + fun handle(packet: OutgoingPacket, context: T){ + when(packet){ + is UpdateSceneGraph, + is BuildDynamicScene, + is InstancedLocationUpdate -> packet.send(context) + else -> queue(packet,context) + } + } + + @JvmStatic + fun queue(packet: OutgoingPacket, context: T){ + PacketsToWrite.add(QueuedPacket(packet,context)) + } + + @JvmStatic + fun flush(){ + while(!PacketsToWrite.isEmpty()){ + val p = PacketsToWrite.poll() + write(p.out,p.context) + } + } + + @Suppress("UNCHECKED_CAST") + fun write(out: OutgoingPacket<*>, context: T){ + val pack = out as? OutgoingPacket + val ctx = context as? T + if(pack == null || ctx == null){ + SystemLogger.logWarn("Failed packet casting") + return + } + pack.send(ctx) + } +} + +class QueuedPacket(val out: OutgoingPacket, val context: T) \ No newline at end of file diff --git a/Server/src/main/kotlin/rs09/worker/MajorUpdateWorker.kt b/Server/src/main/kotlin/rs09/worker/MajorUpdateWorker.kt index 79cf109fb..56a18ee0d 100644 --- a/Server/src/main/kotlin/rs09/worker/MajorUpdateWorker.kt +++ b/Server/src/main/kotlin/rs09/worker/MajorUpdateWorker.kt @@ -13,6 +13,7 @@ import rs09.ServerConstants import rs09.game.world.GameWorld import rs09.game.world.repository.Repository import rs09.game.world.update.UpdateSequence +import rs09.net.packet.PacketWriteQueue import rs09.tools.stringtools.colorize import java.text.SimpleDateFormat import java.util.* @@ -48,6 +49,7 @@ class MajorUpdateWorker { sequence.start() sequence.run() sequence.end() + PacketWriteQueue.flush() //increment global ticks variable GameWorld.pulse() //disconnect all players waiting to be disconnected