{"id":19134435,"url":"https://github.com/azerothcore/mod-zone-difficulty","last_synced_at":"2025-07-31T22:09:06.167Z","repository":{"id":134465399,"uuid":"561077744","full_name":"azerothcore/mod-zone-difficulty","owner":"azerothcore","description":"Support module for mod-progression-system, handles nerfs and debuffs per zone.","archived":false,"fork":false,"pushed_at":"2024-10-24T16:18:23.000Z","size":420,"stargazers_count":21,"open_issues_count":3,"forks_count":25,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-29T15:26:11.326Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/azerothcore.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-02T22:33:25.000Z","updated_at":"2024-10-24T16:18:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"d056e249-91ed-4ac9-beee-6114167474e2","html_url":"https://github.com/azerothcore/mod-zone-difficulty","commit_stats":{"total_commits":302,"total_committers":9,"mean_commits":33.55555555555556,"dds":"0.29470198675496684","last_synced_commit":"4bab4ab5e13aeea7b13d463c06a04f4c67661830"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azerothcore%2Fmod-zone-difficulty","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azerothcore%2Fmod-zone-difficulty/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azerothcore%2Fmod-zone-difficulty/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azerothcore%2Fmod-zone-difficulty/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/azerothcore","download_url":"https://codeload.github.com/azerothcore/mod-zone-difficulty/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230438185,"owners_count":18225870,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T06:26:35.736Z","updated_at":"2024-12-19T13:07:52.556Z","avatar_url":"https://github.com/azerothcore.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Zone Difficulty Module\n\n## What is the purpose of this module?\nThis module provides a way to nerf or debuff players in order to increase the difficulty of certain dungeons or balance battlegrounds/duels.\n\n## How to use this module?\nThis module reads data from the `zone_difficulty_info` and `zone_difficulty_spelloverrides` table.\n`_info` serves to apply nerfs/debuffs per map and per phase. For example, you can nerf healing\nby 90% and absorb-effects by 80% while increasing the melee damage players suffer by 50% and reducing the\nspell damage players suffer by 30%. That is only inside the Temple of Ahn'Qiraj dungeon (MapId 531)\nfor all phases (0 = Skip PhaseMask check, 6 = phases 2 and 4) with the following query:\n\n```sql\nINSERT INTO `zone_difficulty_info` (`MapId`, `PhaseMask`, `HealingNerfValue`, `AbsorbNerfValue`, `MeleeDmgBuffValue`, `SpellDmgBuffValue`, `Enabled`, `Comment`) VALUES\n(531, 0, '0.10', '0.20', '1.50', '0.70', 1, 'AQ40 Healing 50% / Absorb 50% Nerf / 50% physical \u0026 30% spell damage buff');\n```\n\nThe heal-output will be multiplied by the value you input in `HealingNerfValue` as it follows:\n\n```cpp\noutput = output * HealingNerfValue\n```\n\nUsing `MapId` 2147483647 will be used for all targets in duels while they're in the zone hardcoded as `DUEL_AREA` (default 2402: Forbidding Sea, Wetlands).\nPhaseMask must be 0 for Duels.\n\nYou can also prevent certain spells from being affected at all. See `zone_difficulty_spelloverrides.sql` for examples.\n\n## Changing values\n\nYou can edit the `zone_difficulty_info_content.sql` file to apply changes. They will be applied by the autoupdater the next time you restart your server.\nAlternatively, you may edit the `zone_difficulty_info` table in your `world` database and use the `reload config` command to reload the values.\n\n# Mythicmode\n\n## How does it work?\n\nFor the Mythicmode, there is an NPC (id 1128001) spawned at the beginning of raids and the daily heroic dungeon,\ndetermined by the quest given from Wind Trader Zhareem in Shattrath. (Addition of WotlK heroics outstanding).\nThe leader of the party can chose to activate the Mythicmode by talking to the NPC inside the heroic\ndungeon / raid. Single players can not use the Mythicmode. In Heroic dungeons, the NPC will despawn\nafter 60 seconds. The party needs to decide, if they want to play the Mythicmode before this happens.\nThe last boss of the heroic dungeon will award one score to every player in the heroic dungeon.\n\nIn Raids, the NPC will stay indefinitely. As soon as one raidboss is defeated, the leader can still turn the\nMythicmode off, but no longer on once it is deactivated. Every defeated raidboss grants one score in the\nrespective category.\n\n## Config\n\n`ModZoneDifficulty.Hardmode.HpModifier = 2.0` determines the default creature hp modifier for Mythicmode.\n\n## Tables\n`zone_difficulty_instance_saves` creates the tables to store the Mythicmode status and the scores.\nNo action required.\n\n`zone_difficulty_creatureoverrides` contains overrides for creature hp values. This is used to vary\ncertain creatures health from the default value in the conf file.\n\n`zone_difficulty_mythicmode_creatures` contains gossips and creature positions for the NPCs inside dungeons.\nRequires spawning additional NPCs, if more heroic dungeons / raids should be added.\n\nIn heroic dungeons, the default spawn mask should be 1024. The script will change the NPCs phasemask to\n1, if the heroic dungeon is the current daily. In raids, the default spawn mask should be 1.\n\n`zone_difficulty_instance_data` contains the encounter IDs which should give scores\nfor the Mythicmode. The encounter IDs are taken from the `creature_template` table.\n`OverrideGO` is reserved for future use. `InstanceType` refers to the content level, see the top\nof the file for a list.\n\n`zone_difficulty_mythicmode_rewards` holds the items which can be chosen as a reward for the Mythicmode.\nTho gossips for the reward npc (id 1128002) will automatically expand, depending on the kind and\namount of rows in the table. `ContentType` refers to the content level, `ItemType` refers to the item\ncategory. See the top of the file for a list for both. By adding an enchant id and a slot to the item,\na custom enchant can be applied.\n\n## Authors\n\n- [Nyeriah](https://github.com/Nyeriah)\n- [Honey](https://github.com/55Honey)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazerothcore%2Fmod-zone-difficulty","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fazerothcore%2Fmod-zone-difficulty","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazerothcore%2Fmod-zone-difficulty/lists"}