Commit Graph

195 Commits

Author SHA1 Message Date
Jonathan Williams
c32074e733 Fixed MPS/Event server guis so they open up like old.
Changed sticks to player heads in solo/team selection.
2015-08-03 00:53:06 -05:00
Jonathan Williams
bfaa0e6849 Fixed event/mps hardcode. 2015-08-02 23:51:43 -05:00
Jonathan Williams
d9a641fd92 Updated ServerManager to read server npc stuff from redis.
Updated ServerGroup to have NPC name in it.
2015-08-02 18:59:43 -05:00
Jonathan Williams
f520908f8d Added team and portal location info to server group. 2015-08-02 17:52:51 -05:00
Ty Sayers
612d967aa0 Add ability for auto-joining of gametypes to bypass manual server selection by player. 2015-08-02 13:24:59 -04:00
Conrad
421eb12228 Add jedis pool caching.
This commit seeks to reduce the number of idle connections to redis that
our code uses by making clients share thread-safe connection pools
(which is the point of a connection pool). This only changes utility
methods to generate and access jedis pools, and does not seek to address
any issues relating to the use of the connections that may or may not be
causing problems.

The changes are as follows:
1. Add a static cache of all connection pools - Each connection pool is
distinguished by its ip and port. Two requested connections to the same
ip:port combinations will use the same connection pool.
2. Increase the max size of each pool to 20 - Overall, by having fewer
idle connections, this commit should still end up with fewer connections
going at any given time.
3. Make explicit setting to block while waiting for a connection - This
should already be the default, but it is made explicit just in case.
2015-07-27 08:50:04 -04:00
Jonathan Williams
26ed7ebb94 Fixes to redis
Fixes for stat handler.
2015-07-26 08:49:35 -07:00
Shaun Bennett
5c5e7dd4a9 Merge master into clans 2015-07-13 20:42:10 -05:00
Jonathan Williams
ecd8e3d7b0 Increased wait time for redis. 2015-07-09 11:07:00 -05:00
Jonathan Williams
c6e4c5c5e4 Fixed mineplexer server status link.
Fixed issue with ServerManager and default connection.
2015-06-30 03:49:53 -04:00
Ty Sayers
1992205393 Modify RedisConfiguration deserialization options to allow for more dynamic distribution of redis server types and data handling. Servers are now defined individually with metadata representing server type (master/slave) and custom connection names for data redirection on server start up. 2015-06-29 19:27:05 -04:00
Ty Sayers
2ffe2badf2 Reimplement clan energy-draining over time. Add combat-logging NPC for players that prematurely log off. Fix bug regarding /logout command for safe-logging. Reduce Shop territory side by 1 chunk radius. Add organic farming shop for purchasing/selling farm produce. Add travel hub for transporting between different spawn and shop locations. Add missing BowAttributes implementations for custom bows, and re-add in probability for dropping bows on custom gear drops. Fix bug related to custom-bow items not properly formatting item descriptions and display name. Update Redis default host IP. Fix bug where ranged attacks triggered melee-based custom gear attributes. Add clan management command for managing/deleting clans during testing phase of alpha/beta Clans. 2015-06-22 16:20:20 -04:00
Jonathan Williams
47099a0b20 Changed default redis ip to new us redis.
Changed previous server to gold text when sending to new server.
2015-06-12 15:45:54 -05:00
Ty Sayers
e15a2ad123 Add ClansRegions to handle the initialization of default server-side Clans representing special territories such as Spawn and Fields. Additionally, claim land with appropriate distribution according to the respective Clan. Fix bug with WeightSet generation not properly handling low amounts of uniformly likely elements. Fix bug with ClanInfo not properly handling creation of clans and initializing the date created field. Fix bug with Spawn region not properly protecting from claim and PvP settings. 2015-06-03 20:08:34 -04:00
Ty Sayers
1fa919e954 Finish GoldToken integration for cashing in. Re-implement fixed hidden JSON lore encoding. Fix damage reduction attributes where entity types weren't being properly initialized. Prevent players from breaking blocks in temporary Spawn regions. 2015-06-02 20:01:42 -04:00
Ty Sayers
2e19aabfa1 Convert damage system to custom Mineplex damage events to enable legendary abilities. Fix NPE and hanging issue on ServerData's serialization adapter. Finalize item generation logic for instantiating CustomItem's based on specified random distribution of types, attribute counts, etc. Fix several Legendary bugs discovered during testing. Clean left-over template documentation and further clarify ambiguous methods. Add proper updating logic for custom items to track internal stats in hidden json lore. Add safe-logout system to prevent combat logging and enable players to safely log after a designated amount of time. Tweak WindBlade's flight speed to a more natural value. 2015-06-01 12:25:20 -04:00
Ty Sayers
167549c9e8 Add implementation for variety of attribute and base attribute hierarchies, add in JSON encoding for itemstack-item pairing to hold stats and information about items without unintuitive print & parse methods. Temporarily disable donation related commands in DonationManager for testing, as it was presenting compilation issues. Introduce further implementation of LegendaryItems. Add various utility methods for JSON encoding (utilizes GSON). Fix various bugs seen in internal testing. 2015-05-25 14:22:06 -04:00
Jonathan Williams
f0c7f2fe76 Merge branch 'MSSQL_Conversion'
Conflicts:
	Website/LOCWebsite.suo
2015-05-17 23:11:50 -07:00
Ty Sayers
afb0b1cfdf Add Charset argument for reading File lines in ServerManager, ideally to prevent compilation issues with other java versions. 2015-05-17 14:50:22 -04:00
Ty Sayers
e8d5d50162 Merge branch 'master' of http://184.154.0.242:7990/scm/min/mineplex 2015-05-16 13:13:53 -04:00
Ty Sayers
672fc99a3e Add fail-safe default connection in case of issue in proper redis-config.dat generation. Add documentation to clarify purposes related to redis configuration. 2015-05-16 13:12:20 -04:00
Ty Sayers
a8b0dddf17 Add support for redis configuration file to determine viable redis master and slave connections, that can be set to be region-dependant. Fix leakage issue with command manager with not properly returning broken jedis resources. Funnel all redis connection requests through ServerManager for easier configuration use. 2015-05-16 13:01:21 -04:00
Jonathan Williams
1c6a12528c Added ability for LT to modify Admin ranks.
Added Twithc rank to the updateRank list.

Fixed server sorting issues with UHC Generating servers.
2015-05-13 00:58:45 -07:00
Jonathan Williams
b1a46d0f0d Converted TaskManager 2015-05-11 01:21:27 -07:00
Jonathan Williams
2dade32499 Added support for creating Event servers. 2015-03-15 20:50:54 -07:00
Ty Sayers
8279f0b17a Add missing PlayerStatus object to ServerData for cross-server player tracking. 2015-03-15 13:00:15 -04:00
Ty Sayers
7811279b26 Convert friend system over to redis-based PlayerStatus data tracking from old SQL storage. 2015-03-14 17:41:16 -04:00
Ty Sayers
ffedc82785 Commit leftover package that was not committed from previous re-organization. 2015-03-14 01:52:37 -04:00
Ty Sayers
af898e3306 Convert PlayerStatus trackers, Bungee MOTD, and Bungee Server status' from MySQL storage to redis-based system using DataRepository's.
Re-organize structure of ServerData packaging.
2015-03-14 01:03:22 -04:00
Jonathan Williams
cb93769e03 Converted Bungee to redis.
Increased DBPool maximum connections to 5.
2015-03-13 17:53:36 -07:00
Jonathan Williams
838df3f57a Added UUID lookup for saveRank call. 2015-03-13 17:52:25 -07:00
Jonathan Williams
b1ffe4d07b Re-enabled target server check. 2015-03-12 15:32:22 -07:00
Ty Sayers
468f354422 Add fifth slave instance to port 6382. 2015-03-11 22:08:32 -04:00
Ty Sayers
b7a4dd775c Merge branch 'master' of http://184.154.0.242:7990/scm/min/mineplex 2015-03-11 21:52:57 -04:00
Ty Sayers
9788436700 Convert cross-server commands to utilize master-slave redis instances rather than a stand-alone instance.
Add new slave instance on port 6377.
2015-03-11 21:42:52 -04:00
Jonathan Williams
6614f83579 Merge branch 'master' of ssh://184.154.0.242:7999/min/Mineplex 2015-03-08 20:01:58 -07:00
Ty Sayers
7dbf970df7 Add support for multiple slave connections for load balancing. 2015-03-08 19:17:28 -04:00
Jonathan Williams
fbe6b294cb Removed redis logging. 2015-03-08 13:51:31 -07:00
Jonathan Williams
72ca1005b3 Merge branch 'master' of ssh://184.154.0.242:7999/min/Mineplex 2015-03-08 13:48:52 -07:00
Jonathan Williams
27c17eccfb Disabled redis pub commands.
Added getServerStatusesByPrefix to redis.
Increased timeout for servers.

Turned on DoubleGemWeekend
2015-03-08 13:47:49 -07:00
Ty Sayers
2b74e774f1 Redirect ServerCommand PubSub connections to standalone redis instance to distribute load. 2015-03-08 16:46:35 -04:00
Ty Sayers
4237cd082c Add support for master-slave replication in redis to balance load of read and writes. Redis based repositories now read/write to specified connection pools (master or slave). 2015-03-07 23:19:35 -05:00
Jonathan Williams
c15c6e2dd8 Removed threading for ServerCommandManager
Removed target server check (some commands are broadcasted)

Disabled Message/Party crossserver listeners.
2015-03-06 04:12:11 -08:00
Jonathan Williams
09ecb994f6 Pooled Friend/Ignore/Preferences/Poll/Elo repositories.
Removed ArcadeRepository as its unused.

Removed target server check for RedisCommand because it breaks other commands.
2015-03-06 01:36:25 -08:00
libraryaddict
d6c3b330b5 Fix redis working on the same thread 2015-03-02 03:44:38 +13:00
libraryaddict
0cd0c61200 Add /locate|where|find command to find other players in other servers 2015-02-13 20:57:46 +13:00
libraryaddict
9bdf248643 Add cross-server message and adminmessage commands. Fixed casing on messagecommands package. 2015-02-12 04:08:06 +13:00
Mini-Chiss
26463ba75d Treasure changes :O 2015-02-09 20:24:20 +13:00
Jonathan Williams
908533b232 Added some exception protection in Redis retrieve dedicated servers.
Removed Statifier project.

Improved ServerMonitor:
- Added recording of dedicated server stats
- Added recording of server group stats
- Added recording of bungee stats
- Added recording of network stats
2015-01-29 07:05:50 -08:00
Jonathan Williams
58a8a32e93 Added cross-server Announcements and Global messages. 2015-01-24 01:44:22 -08:00
Jonathan Williams
39d1a48bc1 Added cross-server instant punishments.
[Punish] Banning doesn't kick.
2015-01-23 23:33:24 -08:00
Jonathan Williams
73866669b8 Added RestartCommand and SuicideCommand
ServerMonitor will now cleanup bloated Lobbies starting from the highest number lobby.

Fixed issue with new servers getting cleaned up as excess as soon as they started.
2015-01-22 23:19:40 -08:00
Jonathan Williams
c83643564b Fixed scoreboards reading from file.
Fixed scoreboard server name length
Changed how we pull server group on startup.
2015-01-13 12:22:47 -08:00
Jonathan Williams
cd5574ab43 Changed ServerConfiguration to only pull its groupName specifically.
Changed StatsManager to only run once every second and to upload all stats.
2015-01-12 12:19:13 -08:00
Jonathan Williams
fc45b80e2b Added rank pulling on bungee login and the ability to put a cap on network player count.
Removed log message for converted server group.
2015-01-03 23:37:04 -06:00
Jonathan Williams
86993ddd55 Fixes again for number player names. 2015-01-03 04:27:28 -06:00
Jonathan Williams
cc06b0ad33 Refactored statmanager to only upload stats on disconnect and only one player per tick.
Fixed derp json crap with redis treating a name with only numbers as a number and adding .0 on it.
2015-01-03 01:58:04 -06:00
Jonathan Williams
81e423fa4f Fixed Server transfer stuff. Portal send works! 2014-12-24 14:35:34 -05:00
Jonathan Williams
f00854ee4c Removed bad code thats bad from the bad birdy.
Hooked in PersonalServer item click and command.
Re-enabled redis transport commands.
Added transfer command sending on personal server start.

Updated Enjin to handle more versatile inventory purchases.
2014-12-23 03:43:56 -05:00
Jonathan Williams
0e85b7e6cc Added HostName to server groups.
Added handling of private server groups in server monitor.
Optimized server group/server status load.
Added ability to add/remove server group.
2014-12-23 00:49:52 -05:00
Chiss
d1be64d7e7 Merge branch 'master' of ssh://184.154.0.242:7999/min/mineplex
Conflicts:
	Plugins/Mineplex.Core/src/mineplex/core/account/CoreClientManager.java
2014-12-15 14:56:09 +11:00
Chiss
95081a8ab7 Gems cannot be given multiple times for certain things (prevents bugs giving mass gems) 2014-12-15 14:33:38 +11:00
Jonathan Williams
0111db5610 Added safe check for server monitor so it doesn't go off the rails during a network reboot. 2014-12-14 05:54:49 -05:00
Jonathan Williams
3b54789767 Optimized logins dealing with mysql with multiqueries.
Added lazy loading of Pool data and Loaded check before performing anything.

Refactored MiniClientPlugin and created MiniDbClientPlugin

Renamed RankBenefitManager9000 to BenefitManager

Removed /send ability for now.
2014-11-25 13:25:13 -08:00
Chiss
6c6c51e950 fixed compilation problems 2014-11-11 14:28:35 +11:00
MrTwiggy
e3c50bfb39 Merge branch 'master' of ssh://184.154.0.242:7999/min/Mineplex
Conflicts:
	Plugins/Mineplex.Core/src/mineplex/core/portal/Portal.java
	Plugins/Mineplex.Hub/src/mineplex/hub/Hub.java
	Plugins/Mineplex.ServerData/src/mineplex/serverdata/ServerCommandManager.java
2014-11-10 18:55:57 -05:00
MrTwiggy
920bdad64c Player report system commit, including functionality for long-form MySQL storage of report logs as well as real-time redis based report sessions. 2014-11-10 18:44:46 -05:00
Jonathan Williams
33696d1e28 Fixed null resourcePack problem. 2014-11-07 02:35:38 -08:00
Jonathan Williams
264df5af79 Fixed load time issue with ServerConfiguration. 2014-11-07 01:27:07 -08:00
Jonathan Williams
f931bd26e6 Updated ServerConfiguration to support resourcepack and Arcade settings. 2014-11-06 00:25:49 -08:00
Jonathan Williams
44ccd452a3 Added ServerConfiguration.
Added support to enable whitelist, alter max players and pvp value.
2014-11-05 14:44:56 -08:00
Jonathan Williams
e926fc1f10 Fixed TransferCommand 2014-10-27 04:34:35 -07:00
Jonathan Williams
d3788e8ddc Fixed redis server time functions.
Added kill option for servers with motd Finished in servermonitor
2014-10-11 04:40:53 -07:00
Chiss
316ce38056 Changed Utility time to ms 2014-10-11 20:53:39 +11:00
Jonathan Williams
8bca23f0ba Fixed bug with custom tag fix :P
Fixed bug with server group up time check in servermonitor.
2014-09-25 23:27:08 -07:00
MrTwiggy
fc98cf4f6c Add callback feature set for cross-server command system to reduce dependencies, clean up old constant references and add in ability to initialize server name on ServerData. Clean up old 'this' references to '_' prefixed variables and standardize field naming. 2014-09-25 17:17:38 -04:00
Jonathan Williams
e29dd4ff71 Fixes for ServerMonitor. 2014-09-25 05:37:10 -07:00
Jonathan Williams
d32085f05b Removed tab list stuff for friends.
Implemented rudimentary friends chat list.
removed unused code in server stuff.
Added null check for retrieving server statuses.
2014-09-24 01:31:56 -07:00
MrTwiggy
5c9ee3e79e Add ServerCommand system for live cross-server commands,. Update Queuer to support Redis based database and functionality. Fix ServerStatus start up dates to synchronize properly with central Redis time. Add new DataRepository's for easier dynamic object storage in redis. Update Portal server-transfers to support new cross-server command system rather than database stored server transfers. 2014-09-21 20:42:47 -04:00
Jonathan Williams
c8e755fe5f Reverted and merged twigs status update. (Needs fix on startDate.) 2014-09-18 22:22:01 -10:00
MrTwiggy
abea4223ab Recommit up-time checking to prevent brand new empty servers from being prematurely killed by ServerMonitor. 2014-09-15 13:22:11 -04:00
Jonathan Williams
14c4152248 Fixed CustomTagFix.
Updated ServerData ServerGroup and SErverMonitor for new flags in Arcade.
2014-09-12 10:03:33 -10:00
Jonathan Williams
409e2c6141 Tweaked menus for quick game, Cosmetic menu.
Removed debug for Hub
Output a little debug info in LobbyBalancer
Added duplicate check to ServerMonitor
updated Customer SUpport server to have changeable password, added logging of command executors, added lifetime perks for hero/ultra
2014-08-28 14:01:37 -07:00
Shaun Bennett
e1a57a673e Update getOnlinePlayers() to recent bukkit changes, fixes IntelliJ errors 2014-08-19 16:58:55 -05:00
CoderTim
ae6cb4aa22 Merge branch 'master' of ssh://184.154.0.242:7999/min/Mineplex 2014-08-15 15:56:44 -04:00
CoderTim
19222c6815 Updated IntelliJ environment to be compatible with latest changes 2014-08-15 15:51:29 -04:00
Ty
5c0e1ad484 Fix issue where null MinecraftServer entries were being returned in getServerStatuses() method in RedisServerRepository. 2014-08-15 15:32:01 -04:00
Ty
0d38ac4e96 Merge branch 'master' of ssh://184.154.0.242:7999/min/Mineplex
Conflicts:
	Plugins/Mineplex.ServerData/src/mineplex/serverdata/RedisServerRepository.java
2014-08-15 11:40:15 -04:00
Ty
da8aa3f1e3 Fix issue where broken Jedis resources were not being properly handled. 2014-08-15 11:33:34 -04:00
Jonathan Williams
846c75453c Revamping Redis Server status so it uses a consistent time value from redis database. 2014-08-14 07:41:04 -05:00
Jonathan Williams
682735e994 Added build fixes for ServerMonitor.java
Added redis fixes for ServerMonitor
Added ServerStatusManager fixes.
2014-08-14 04:10:11 -05:00
Ty
4b4f43ac16 Convert PortalRepository's redis host fetch to ServerManager constant, and remove debug code section. 2014-08-13 16:37:05 -04:00
Ty
5b059e96ca Commit missing PortalRepository.java file and finish clean() method. 2014-08-12 11:14:31 -04:00
Ty
2e43d565bd Resolve merge conflicts. 2014-08-04 19:14:04 -04:00
Ty
6a9255e97b Add new Mineplex.ServerData library for interfacing with the ServerRepository, and modify Mineplex.ServerMonitor, Mineplex.Bungee.Mineplexer and Mineplex.Core to integrate changes. 2014-08-01 17:56:29 -04:00