TfT_02
ce3463ad6d
Cleanup
2014-09-28 11:34:50 +02:00
TfT_02
5d059d8537
Move SkillXpGain to datatypes/experience
2014-09-28 11:34:49 +02:00
riking
332860b9ce
Use a DelayQueue to manage rolling diminished returns
2014-09-28 11:34:49 +02:00
TfT_02
2a443cd9db
Diminished instead of Deminished
2014-09-28 11:34:49 +02:00
NuclearW
f4d1004d32
Rolling xp diminishing returns
...
This adds on top of the diminishing returns system a mechanic such that gains will expire the configured number of minutes after they occured, rather than all being reset at once.
This prevents someone from not getting diminishing returns on the xp gain they recieved just before the reset would have occured.
Obligatory explanatory graphs: http://i.imgur.com/uSzicIR.png
2014-09-28 11:34:49 +02:00
TfT_02
9d8aec7eca
Add diminished returns when a player has earned too much XP
...
When a player reaches a certain (configurable) threshold value of total
XP earned in a specific skill, his earned XP in this skill will be
decreased.
Depending on how far the player has exceeded the threshold value, his
XP will decrease more. After the (configurable) time interval of 10
minutes, the registered data will be cleared and the player can earn XP
as normal again.
2014-09-28 11:34:49 +02:00
Ivo Julca
958c116fd0
Acrobatics: cap same-location fall counter for XP gain
...
It used to increase boundlessly, thus preventing players from gaining XP for a while even after moving to another place.
2014-09-28 11:19:41 +02:00
Bestle
ec1a125809
These are the wrong way round
...
The UUID's are the keys, not the names
2014-09-28 11:13:23 +02:00
TfT_02
2dd8e719c8
UUID support for parties
2014-09-28 11:13:23 +02:00
TfT_02
3c6dd290f4
Allow AdvancedSalvage unlock level 0
...
Fixes #2265
2014-09-06 20:23:41 +02:00
TfT_02
07e589aae3
Allow equal rank levels for Salvage
...
Fixes #2270
2014-09-06 19:59:26 +02:00
t00thpick1
1119d3c17f
Actually fix flatfile player loading....
...
you lied to me @tft_02
2014-09-03 00:05:48 -04:00
TfT_02
eac5d1ee7a
Improve auto mod config generator
2014-08-31 19:10:49 +02:00
TfT_02
56cb5c092f
Should be this
2014-08-26 21:55:35 +02:00
Shevchik
9d7faf9ed9
Fix database loading data for wrong player
...
Fixes #2223
2014-08-24 15:25:56 -07:00
TfT_02
7da661546f
Fixed bug where processing message would always get displayed
...
and the player could never execute /mctop or /mcrank if chat display
was disabled.
2014-08-24 09:21:40 -07:00
TfT_02
48d3280e5e
Make sure that player has McMMOPlayer object before calling API
2014-08-22 15:50:40 -07:00
TfT_02
b61c65636b
Add new ExperienceAPI method to specify if XP can be shared
2014-08-22 15:50:40 -07:00
TfT_02
087a0b079f
Fixed bug with new Death API
2014-08-22 15:50:40 -07:00
t00thpick1
2147417322
This seems easier.
2014-08-22 15:16:40 -04:00
t00thpick1
4304970059
This was supposed to be a zero.
2014-08-22 00:59:20 -04:00
t00thpick1
fc981fda20
Better connection validation for us.
2014-08-21 19:42:03 -04:00
t00thpick1
be9ff51fd9
Should fix #2223 for realz this time.
2014-08-21 19:42:03 -04:00
TfT_02
5cfd2dc799
Added API to ExperienceAPI to get the amount of XP needed for a level
2014-08-21 16:38:33 -06:00
TfT_02
c878775c72
Close the statement here as well
2014-08-21 14:33:50 -06:00
t00thpick1
574cdd374b
Use a placeholder value. Fixes #2216 #2221
2014-08-20 22:19:36 -04:00
TfT_02
a3943aab24
Add checks for loaded/unloaded profiles in commands
2014-08-19 22:23:19 -06:00
t00thpick1
1503e58d11
More relevant donation information
2014-08-19 23:45:54 -04:00
TfT_02
2650d57d8e
Added options to experience.yml for Dirt and Sand variations
...
Adds #2194
2014-08-19 21:28:53 -06:00
t00thpick1
4d402c7229
Use correct element
2014-08-19 19:11:07 -04:00
t00thpick1
d687543910
Prevent players from having more than one database querying command running at once.
2014-08-19 18:11:56 -04:00
t00thpick1
d8ad519cd0
Seperate pools for essential tasks like profile loading and profile saving.
2014-08-19 17:58:45 -04:00
TfT_02
8a35d69540
Move RefreshChunks setting from hidden.yml to config.yml
...
Adds #2213
2014-08-17 20:21:23 -06:00
t00thpick1
097a5a0894
Change purge a bit. Apparently andrewkm says this works.
2014-08-17 21:23:27 -04:00
t00thpick1
8760c2bbb0
This way is cleaner though.
2014-08-17 20:01:04 -04:00
t00thpick1
dc635fe7d7
SHould fix #2195
2014-08-17 19:57:52 -04:00
TfT_02
f10a1d0ffb
Added McMMOPlayerPreDeathPenaltyEvent and McMMOPlayerStatLossEvent
...
McMMOPlayerPreDeathPenaltyEvent is fired before hardcore calculations
take place, use this if you want to cancel hardcore penalties.
Use McMMOPlayerVampirismEvent and McMMOPlayerStatLossEvent when you
want to know how many levels or experience the player lost or if you
want to modify this.
2014-08-16 21:13:46 -06:00
TfT_02
809779e508
Added McMMOPlayerVampirismEvent
...
Expands API possibilities regarding death penalty features.
2014-08-16 21:13:39 -06:00
TfT_02
80d358d1fd
Fix dealing too much AOE damage
...
Bandaid for #2170
2014-08-13 21:24:32 -06:00
t00thpick1
a1be17c72c
Add a rate limit for mojang api requests. Configurable via hidden.yml
2014-08-12 11:51:34 -04:00
t00thpick1
0a066f51bb
Fix #2197 There is no wait forever option, so we actually need a timeout.
2014-08-12 11:39:43 -04:00
t00thpick1
294141c353
We should be reconnecting automagically.
2014-08-11 12:16:27 -04:00
t00thpick1
5a47f9fa86
Fix #1320
2014-08-08 00:42:33 -04:00
t00thpick1
6ee2d7d823
Do UUID saves in batches.
2014-08-08 00:13:30 -04:00
t00thpick1
f2881f02c8
Fix id retrieval
2014-08-08 00:09:00 -04:00
t00thpick1
9f5445689c
Helpful debug on shutdown
2014-08-08 00:02:07 -04:00
t00thpick1
0ea163e3ee
Lazy fix
2014-08-08 00:01:57 -04:00
t00thpick1
f097aa4a67
Missed loaded profile check, Fix #2189
2014-08-07 23:46:22 -04:00
t00thpick1
1fcb9e649e
A bit more logic simplification in SQLDatabaseManager, also fixes error printing, Fix #2188
2014-08-07 23:45:40 -04:00
t00thpick1
1d0dc02013
Greatly simplify Profile loading in mySQL
2014-08-07 14:16:28 -04:00
t00thpick1
8766d31943
Fix #2182 and Fix #2178
...
NOW() is a numeric representation of the date, not a timestamp.... so thats a nono.
Also, we need to update UUIDs grabbing by name.
2014-08-07 13:54:28 -04:00
t00thpick1
d857bf483e
Fix #2184
2014-08-07 11:23:02 -04:00
t00thpick1
b7774251eb
Remove need for thread locks in profile loading, just reschedule as needed. also stagger based on number of previous attempts.
2014-08-05 23:02:41 -04:00
t00thpick1
da7507fc75
Throw some sanity information into the info log.
2014-08-05 20:20:05 -04:00
t00thpick1
fe4699430d
Fix #2177
2014-08-05 19:15:22 -04:00
t00thpick1
df4fc8149d
Stagger load attempts more.
2014-08-05 19:03:55 -04:00
t00thpick1
c156f0c346
Missed an unlock condition, lets use a finally. Should Fix #2180
2014-08-05 18:57:13 -04:00
t00thpick1
79a17b0c1c
Fix /mcrank when using flatfile. Fixes #2179
2014-08-05 09:20:12 -04:00
t00thpick1
d3051ad127
Use a slight delay to ensure its after the purge.
2014-08-04 11:49:09 -04:00
t00thpick1
f4c53aaf8a
Prevent user purges and UUID updates from conflicting in mass database operations.
2014-08-04 11:42:02 -04:00
t00thpick1
432ff95a98
More constants
2014-08-04 11:40:47 -04:00
t00thpick1
fe29bb4b9f
Accurate purge count
2014-08-03 21:14:24 -04:00
t00thpick1
ae5347bc0f
Purging shouldn't be main thread, also we have no reason to refresh profiles of purged users, as old users aren't online, and powerless users have nothing to wipe.
2014-08-03 21:12:41 -04:00
t00thpick1
966de87ef9
Print reason
2014-08-03 20:57:28 -04:00
t00thpick1
3569f9a182
Woot, rushing things without looking!
2014-08-03 20:40:48 -04:00
t00thpick1
70a23f8a0a
EnumMaps cannot use a null key
2014-08-03 20:39:37 -04:00
t00thpick1
857e12b96e
SQLDatabaseManager optimizations, async profile loading -t00thpick1, zreed
...
This commit changes our shared connection into a connection pool utility to prevent
thread locks from multiple actions attempting to access the database at the same time.
In additon, profile loading has been moved off the main thread at login time, to
allieviate the performance issues caused by it.
Fixes #2138 , Fixes #2119 , Fixes #1982 , Fixes #1953
2014-08-01 20:31:17 +02:00
TfT_02
c10525ada9
Add UUID support! - zreed, slipcor, t00thpick1
...
This commit updates our database managers to use UUIDs instead
of usernames for persistent storage.
Fixes #1979
2014-08-01 20:23:03 +02:00
TfT_02
fb8592495d
Only set detected durability if it's > 0
2014-08-01 01:09:00 +02:00
TfT_02
a48ada306c
Add magical mod importer
...
Usage: Create a folder called 'import' inside /mcMMO/mods/. Place your latest Cauldron 1.7+ startup log in this folder and rename it to 'import.log'.
It is worth noting that it's advisable to create a short log by starting and stopping the server once, or by manually editing the log file to only include material mapping in order to speed up the import process.
When the server is running, use the command /mcimport. You will see the import progress in the console, once it is done the files are created in /mcMMO/mods/output/.
Any item that wasn't recognised gets placed in a .unknown.yml config file. Durability detection only works if the mod is installed when importing (it should be).
2014-08-01 00:22:29 +02:00
TfT_02
70744371a3
Fix bug where Repair_Material_Quantity wasn't read
2014-07-31 00:47:22 +02:00
TfT_02
18c322e8d6
Check if the user wants this item repairable first
...
Stop complaining that the item is not repairable when Repairable is set
to false.
2014-07-31 00:46:41 +02:00
TfT_02
75cbfa1b1c
Ensure player has mcMMOPlayer object in brewing
...
Fixes #2086
2014-07-24 12:29:42 +02:00
zreed
48c7aa3e84
Add an UpgradeManager
2014-07-23 12:37:02 +02:00
TfT_02
8fd94b625c
Fix Blast Mining and change its behavior slightly
...
Fixed bug where Blast Minings ability "Demolition Expert" would not
work with certain CB versions. DanageCause.BLOCK_EXPLOSION was not
passed, ENTITY_EXPLOSION was used instead.
Changed behavior of the Blast Mining ability "Demolition Expert"; now
only decreases damage for the ability user and for Blast Mining
explosions.
2014-07-20 00:43:53 +02:00
TfT_02
ccca3fff26
Don't use hardcoded unlock levels for Blast Mining
2014-07-20 00:43:52 +02:00
TfT_02
f77446919f
Can't use more function modifiers than necessary
...
Fixes #2139
2014-07-18 17:11:26 +02:00
TfT_02
96fdf265d5
Don't run party chat on a separate thread
...
Fixes #2080
2014-07-18 17:06:30 +02:00
TfT_02
b964e3f7c3
Show colors in console for party chat
...
Fixes #2129
2014-07-18 00:51:09 +02:00
TfT_02
d93c83f775
Add a modifier function for each DamageModifier
...
Must have a modifier function for each DamageModifier
Fixes #2139
2014-07-18 00:16:12 +02:00
TfT_02
6b9f6c29ec
Actually fix the isWaterBottle() check
...
Fixes #2134
For some reason Bukkit wanted to use Potion(PotionType type, int level)
when calling .toPotion(), even though .getDataValue() is 0.
2014-07-17 00:14:06 +02:00
TfT_02
09b0bf62e2
Added SkillAPI used to get a list of skill names
...
This prevents having to rely on the SkillType enum
2014-07-16 20:07:23 +02:00
TfT_02
dedbdf890a
Fixed broken isWaterBottle() check
2014-07-15 17:50:39 +02:00
TfT_02
30085e1e34
Add option to control Unarmed item pickup behavior
...
By default when using Unarmed, picking up items is prevented when a
players entire inventory is full, except for his empty hand.
2014-07-15 15:40:49 +02:00
TfT_02
1c30146491
Fixed bug where Berserk deletes items
...
when the players inventory is full.
Fixes #1947
2014-07-15 15:25:02 +02:00
TfT_02
037022b175
Fixed bug where falling blocks were not tracked
...
Fixes #2130
2014-07-15 14:46:20 +02:00
TfT_02
0aa67727f5
Fixed bug with flatfile format updater
2014-07-12 14:02:53 +02:00
TfT_02
8e3e1d5f11
Use deprecated events for damage dealing for now
2014-07-11 21:33:35 +02:00
TfT_02
d2d70089ca
Update for modifierFunctions
2014-07-11 14:02:42 +02:00
zreed
94a566acc9
Remove redundant maxReconnects database connection property
2014-07-09 19:03:15 +02:00
TfT_02
daab095557
I was actually using the wrong Map
...
Fixes #2113
2014-07-03 12:33:03 +02:00
TfT_02
2b9b5df1ee
Alter original event and stop firing FakeDamageEvents
...
Fixes #2105
2014-07-02 11:28:21 +02:00
TfT_02
e7e62b8d40
SecondaryAbilityEvent now implements Cancellable
...
Fire SecondaryAbilityEvent for abilities with static chances
Also cleanup some of the event handling for Armor Impact, Greater
Impact and Fast Food
2014-07-02 11:25:13 +02:00
TfT_02
3d242bbdb6
Always call back events
2014-07-02 11:25:13 +02:00
TfT_02
e796eae3c3
Update for new damage API
2014-07-02 11:25:08 +02:00
TfT_02
a257e83a62
Update for new getOnlinePlayers behavior
2014-06-29 14:04:36 +02:00
TfT_02
4b20f12eff
Fix a NPE with getFlowerAndGrassXp()
...
Fixes #1975
2014-06-23 22:52:34 +02:00
TfT_02
0de1187012
Fixed setting custom names and lore with treasures
2014-06-22 20:42:48 +02:00
TfT_02
8e474170e4
Fix crafting with items received from Salvage
...
Only set metadata on Salvage items when it’s not set to -1
Fixes #2078
And cleanup some javadocs in Salvageable
2014-06-18 11:44:21 +02:00
TfT_02
2eeb9b1f35
Set a pretty repair material name in armor.yml
...
Adds #1863
2014-06-15 17:46:16 +02:00