All analysis is based on the following high-level assumptions:
Core loop = quest -> explore -> combat -> improve (stats)
Short-term engagement = consistent, measurable power rewards
Mid-term engagement = difficulty modes that push the player back into the short-term cycle
Long-term engagement = create multiple characters
Primary player behavior motivator: Achievement through power
Pro’s
What makes Diablo's loot and progression successful is variety and build customization in combination with the frequent pacing of rewards, which are best achieved through the following systems.
Procedural item generation: By bucketing stats (of the bear, hawk, lion, etc.) and then randomizing additional attribute additions they create thousands of items that (mostly) provide meaningful choice for the player. In addition, level scaling and rarity creates even more variety, by extending the stat and attribute budget of each item. Without this method of itemization, reward frequency would end up being reduced significantly due to lack of meaningful items.
Class ability runes: Abilities and passives are standard in RPGs, but Diablo 3's ability runes extend the system by allowing the player to specialize even deeper into a role and playstyle and change up the pacing of combat without having to relearn an entirely new ability. Because of this, unlocking a rune on level up is nearly as rewarding as unlocking a new ability, but without the overhead for both the player and developer.
Paragon levels: Diablo's relatively long player retention is based on reengaging the player into the power acquisition loop by making new characters. The Paragon system incentivizes this by granting Paragon points across all characters, giving players credit for the time they've already invested and a nice leg up in power.
Kanai's cube: Item attachment is Diablo's enemy, if the player becomes too attached to a specific item they are disincentived from participating in the itemization loop and are likely to feel that power is being taken away. The addition of Kanai's cube, which allows a player to equip the defining ability of a legendary item directly on their character, turns that around by making all legendary items always usable and even more desirable to collect.
All the variety would be meaningless without appropriate challenges to test and feel it. The following systems provide that challenge:
Difficulty modes & Enemy scaling: In addition to scaling enemy health, damage, and resists by level and difficulty mode, beefier elite versions of enemies with new or more elite modifiers are added based on the selected difficulty mode. This addition not only provides more chances to feel their power but requires the player to analyze their build and alter their playstyle providing new opportunities for the player feel smart all over again from mode to mode.
Greater Rifts: Advancing difficulty and rewards based on a player's speed through content is the ultimate test of the player's power and build. By tying access to legendary gems to this content the player is highly incentivized to return to the power loop to achieve ultimate success. By requiring greater rift keys, the player sees this content as a reward of its own.
Cons
Crafting: While I understand why salvaging and crafting are in the game (so all items always have a purpose, promote downtime, give agency in a random system) I think the implementation of weapon and armor crafting didn't contribute as much as it could have. With so many and so frequent drops, armor and weapon crafting feels mostly irrelevant.
Improvements
Paragon System & Difficulty Modes: With the current implementation, the developers must keep adding new difficulty ranks (up to Torment XIII now!) because there is no mechanism to reset a player's power progression. They have attempted to address this with Seasons, which drives re-engagement with the game, but the axiom of 'feed the beast' will always apply in this paradigm, as they must add increasingly powerful gear and enemies to keep the game loop going. I'd try redesigning the Paragon system to function more like a Prestige system in Call of Duty, where at max level the player can opt-in to reset their progression to level 1. Upon reset, they would receive a Paragon point and something cosmetic. The bonuses from the Paragon points would become larger to offset the time investment. Ideally, this would level scale currently equipped gear, so the player doesn't feel like too much has been taken away and that would be a fun benefit if you have really cool gear equipped. The reset would prevent the need to scale into crazy high numbers (like 2108607% Health) through the lifetime of the game and push the challenge in difficulty modes away from just stat modifiers and bonuses and into adding more interesting mechanics or new enemies that challenge the player in different ways.
Resists & Elite Modifiers: While there is some amount counter itemization required to take on specific enemies at harder difficulties, it's a minimal requirement. Getting the player to reconfigure their gear to counter specific challenges more explicitly could driver deeper engagement into their itemization loop. I'd experiment with making more specific damage type resists a part of the elite modifiers and boss fights. Then maybe compliment that with a new type of gems that apply damage types to weapons.
Crafting: To give crafting a clearer role, I'd try out bucketing all gem items into solely being acquired from crafting and remove crafting of non-set weapons and armor. So, enemies would not drop gems instead components salvaged from items would be used to craft and upgrade gems. This would clean up the recipe lists and make the role of crafting more important.