Year of the Dragon: Through May 28th, claim free Expansion Pack (excluding Vecna Unleashed) or a Greater Elixir of Discovery! Speak to Xatheral in the Hall of Heroes.
(Please note: Due to bugs with the distribution system, this reward is temporarily unavailable.)edit

Game mechanicsNewbie guideIn developmentDDO StoreSocial Media


ChallengesClassesCollectablesCraftingEnhancementsEpic DestiniesFavorFeats

GlossaryItemsMapsMonstersPlacesQuestsRacesReincarnationSkillsSpells


Please create an account or log in to build a reputation and unlock more editing privileges, and then visit DDO wiki's IRC Chat/Discord if you need any help!

DDO information project/Spot and Search/Summary Table

From DDO wiki
Jump to navigation Jump to search

Editor Note

This table was generated from javascript that scraped all the infos from DDO_information_project/Spot_and_Search. The code is listed here for reference, but please be advised that running this on your computer might be harmful as this page can be freely updated. Run at your own risk.

Scraping Code
        var DCs = {'Spot': {}, 'Search': {}};
	var diff = ['Casual', 'Normal', 'Hard', 'Elite'];

	function genDC_obj(type, level) {
		var DC_obj = DCs[type];

		DC_obj[level] = {};
		var sectionId = document.getElementById(`Level_${i}_quests`);
		var startFindUl = sectionId.parentElement;

		// Find correct UL with DC info
		var ul = startFindUl;
		while((ul = ul.nextElementSibling).tagName !== "UL"){ } // This shouldn't infini-loop ?
		if(type === "Search") {
			while((ul = ul.nextElementSibling).tagName !== "UL"){ } // Do twice, to grab 2nd UL
		}

		// For each LI element: create the DC
		DC_obj[i].Casual = '-';
		Array.from(ul.children).forEach((v, c) => { 
			var result = /[0-9]+/.exec(v.children[0].children[0].innerText);
			if(!result) { // use speculated instead
				result = /[0-9]+/.exec(v.children[0].children[1].innerText);
				resultText = result ? result[0]+"*" : "-";
			}
			else { // Use actual
				resultText = result[0];
			}

			// Set value for level/diff. Not all levels have DCs for casual. 
			DC_obj[i][diff[ul.children.length == 4 ? c : c + 1] || 'err'] = resultText;
		});		
	}

	// Generate object for each level
	for(var i=1; i<=34; i++){
		genDC_obj("Spot", i);
		genDC_obj("Search", i);
	}

	// Create table code for Mediawiki
	var tableStr = "";
	for(var i=1; i<=34; i++){
		tableStr += `\n|-\n|| ${i} || ${DCs.Spot[i].Casual} || ${DCs.Spot[i].Normal} || ${DCs.Spot[i].Hard} || ${DCs.Spot[i].Elite} \n|| ${DCs.Search[i].Casual} || ${DCs.Search[i].Normal} || ${DCs.Search[i].Hard} || ${DCs.Search[i].Elite}`;
	}
	console.log(tableStr);

Table[edit]

Summary of minimum Spot and Search DCs needed to always succeed for all quests of that level.
* is the suspected value, where true value is not known. Likely the actual value is higher than the value listed here.
Quest Level Spot DC by quest difficulty Search DC by quest difficulty
Casual Normal Hard Elite Casual Normal Hard Elite
1 2 2 7 11 2 2 7 11
2 3 3 7 12 3 3 7 12
3 - 5 9 17 - 5 9 17
4 - 6 12 17 - 6 12 17
5 - 14 16 22 - 14 16 22
6 - 16 22 28 - 16 22 28
7 - 11 18 29 - 11 18 29
8 - 13* 24 32 - 13* 24 32
9 - 15 23 30 - 15 23 30
10 - 17* 29 37 - 17* 29 37
11 - 18* 27 35 - 18* 27 35
12 - 20* 33 42 - 20* 33 42
13 - 22* 35 45 - 22* 35 45
14 - 31 42 51 - 31 42 51
15 - 33 44 54 - 33 44 54
16 - 31 42 52 - 31 42 52
17 - 32 51 61 - 32 51 61
18 - 38 50 62 - 38 50 62
19 - 32 45 56 - 32 45 56
20 - 34* 47* 59* - 34* 47* 59*
21 - 35* 53 61* - 35* 53 61*
22 - 37* 51* 64* - 37* 51* 64*
23 - 39* 53* 67* - 39* 53* 67*
24 - 40* 56* 69* - 40* 56* 69*
25 - 50 66* 72* - 54 66* 72*
26 - 48 60* 74* - 48 60* 74*
27 - 45 62* 75* - 45 62* 75*
28 - 49* 68* 73 - 49* 68* 73
29 - 51* 66* 79* - 51* 66* 79*
30 - 59 73* 85* - 59 73* 85*
31 - 60 75* 88* - 60 75* 88*
32 - 62 81 98 - 62 81 98
33 - 58* 78* 95* - 58* 78* 95*
34 - 60* 80* 97* - 60* 80* 97*