Quiz Lab
Quiz Lab
Geography
City
Type answers that appear on an image
Type answers that appear on an image
Map
Can you identify one of the most populated US cities by naming any top 100 largest US cities which will reveal a portion the hidden city's photo?
By garolo
6m
100 Questions
75 Plays75 Plays
75 Plays
Comments
Give Quiz Kudos
Give Quiz Kudos
-
")$objective.click(() => {window.onClickObjective(reckoningQuestObjective.quest_number, reckoningQuestObjective.objective_number, reckoningQuestObjective.quest_id, reckoningQuestObjective.objective_id, $objective);});if (!window.mweb) {$j('#snark').hide();$objective.insertAfter($j('#gameOverMsg'));} else if (is_flagship_app_view) {$j('#snark').html();$objective.appendTo($j('#snark'));} else {$objective.appendTo($j('#reckoning .stats-wrapper'));}} else if (showSnark) {var snark = getSnark(userPct);var attachSnarkModalListener = false;if (snark !== '') {snark = ""+snark+"";if (!window.mweb) {if (false) {attachSnarkModalListener = true;snark += "";} else {snark += "";}}} else {$j('#snark').hide();}$j('#snark').html(snark);if(attachSnarkModalListener){ $j('#hide-snark-open-confirmation-modal').on('click', function () { var modalArgs = {title: 'Hide These Messages?',message: 'Are you sure you want to hide post-quiz messages?', onYes: function(remodal){ $j.ajax({ type: "GET", url: "/ajax/user_settings.php", data: {s: 0}, success: function(response) { if (response.success) { $j('#snark').hide(); remodal.close(); } else { if (response.responseJSON.message) { remodal.$modal.find('#confirmation-error').html(response.responseJSON.message); remodal.$modal.find('#confirmation-error').show(); } else { remodal.$modal.find('#confirmation-error').html('There was an error saving your preferences. Please contact feedback if you continue to see this issue.'); remodal.$modal.find('#confirmation-error').show(); } } }, error: function(response) { if (response.responseJSON.message) { remodal.$modal.find('#confirmation-error').html(response.responseJSON.message); remodal.$modal.find('#confirmation-error').show(); } else { remodal.$modal.find('#confirmation-error').html('There was an error saving your preferences. Please contact feedback if you continue to see this issue.'); remodal.$modal.find('#confirmation-error').show(); } } }); } }; SporcleLib.Modal._openConfirmationModal(modalArgs); }); }} else {$j('#snark').hide();}// Update get reckoning with playlist infovar playlistData;if (mweb) {playlistData = typeof window.playlist === 'object' && window.playlist.hasOwnProperty('games') ? window.playlist : null;} else {playlistData = window.Sporcle.gameData.playlist ? window.Sporcle.gameData.playlist.vm.data : null;}if (playlistData) {playlistReckoning(playlistData, userPct, false && !stopwatch);}$j('#playGameBar').addClass('reckoning');$j('#reckonBox').show();if (mweb) {/* mobile games only */$j('#reckoning-numright').html(numRight);$j('#reckoning-time').html(displayTime(timerSecs));if (stopwatch) {$j('#reckoning-time-title').text("Stopwatch");$j('#reckoning-time, #reckoning-score').addClass('timePast');}var checkToOpenFlorinPlayGoalModal = () => {if (userPct == 0) {return;}if (!florinsPlayGoalData) {return;}var openModal = false;if (florinsPlayGoalData.reward_claimable) {openModal = true;} else if (florinsPlayGoalData.curr_streak + 1 == florinsPlayGoalData.goal_days && florinsPlayGoalData.plays_today == 0) {// First play of the day, this should complete their play goalopenModal = true;}if (openModal) { window.SporcleLib.Modal.openFlorinPlayGoalModal({ // Fudge these values to be at the goal, since we haven't necessarily logged this play yet and it might be the 7th curr_streak : florinsPlayGoalData.goal_days, reward_claimable : true, plays_today : florinsPlayGoalData.plays_today + 1, goal_days : florinsPlayGoalData.goal_days, reward_amount : florinsPlayGoalData.reward_amount, })}}if (is_flagship_app_view) {let animations = window.animations;let hapticType = 'success';let completeMsg;let animConfig = {animationData : animations.checkmark,loop : true,playSegments : [[0, 30], [31, 75]]};if (userPct == 1) {animConfig.animationData = animations.perfectScore;animConfig.playSegments = [[0, 14], [15, 75]];completeMsg = "Perfect Score!";} else if (timerSecs == 0) {hapticType = 'error';animConfig.animationData = animations.outOfTime;animConfig.playSegments = [[0, 14], [15, 75]];completeMsg = "Out of Time!";} else if (_spks && !didGiveUp) {hapticType = 'error';animConfig.animationData = animations.bomb;animConfig.playSegments = [[0, 14], [15, 75]];completeMsg = "You Hit a Mine!";}window.SporcleLib.Modal.openModalFromTpl($j('#post-game-modal-tpl').html(), {show_loading : false,onInit : (modal) => {let $modal = modal.$modal; $modal.attr('id', 'postGameModal'); postGameAnim = lottie.loadAnimation({container : $modal.find('#postGameIcon')[0],animationData : animConfig.animationData,loop : animConfig.loop,autoplay : false});$modal.find('.modal-close').on('click', () => {window.continuePostQuiz();}); $modal.find('#completeMsg').html(completeMsg); $modal.find('#postPct').html(roundPercentScore(userPct));$modal.find('#postCorrect').html($j('#reckoning-score').text());if (snark) {$modal.find('#snark').html(snark);} else {$modal.find('#snark').hide();}setTimeout(() => {postGameAnim.playSegments(animConfig.playSegments, true);// if (hapticType) {// setTimeout(() => {// window.SporcleApp.api.playHaptic(hapticType);// }, 150);// }}, 150);},onClose : () => {checkToOpenFlorinPlayGoalModal();}});} else {checkToOpenFlorinPlayGoalModal();}}$j('#playGameBox').empty().hide();$j('#postGameBox').show();}function toggleshow() {showans = !showans;}function roundPercentScore(pctScore) {return _.round(100 * pctScore);}function updateBadge(userPct) {var earned = false;if (quizBadge && userPct > 0) { if (quizBadge.criteria && quizBadge.criteria.length) { var requiredCount = quizBadge.criteria.length; var earnedCount = 0; //Loop through possible badge criteria to see if we earned them quizBadge.criteria.forEach(function (criterion) { var comparison = parseInt(criterion.compare); if(criterion.name === 'percent'){ if ((comparison === 0 && userPct === parseFloat(criterion.value)) || //'0' means percent needs to equal (comparison === 1 && userPct > parseFloat(criterion.value)) || //'1' means percent needs to be greater than (comparison === -1 && userPct < parseFloat(criterion.value)) //'-1' means percent needs to be less than (at the time of writing, no badge exists like this) ) { earnedCount++; } } else if (criterion.name === 'month'){ var d = new Date(); //getMonth() starts at 0 if((d.getMonth() + 1 == criterion.value && comparison === 0) || (d.getMonth() + 1 > criterion.value && comparison === 1) || (d.getMonth() + 1 < criterion.value && comparison === -1) ){ earnedCount++; } } else if (criterion.name === 'day'){ var d = new Date(); if((d.getDate() == criterion.value && comparison === 0) || (d.getDate() > criterion.value && comparison === 1) || (d.getDate() < criterion.value && comparison === -1) ){ earnedCount++; } } else if (criterion.name === 'day_of_the_week'){ var d = new Date(); if((d.getDay() == criterion.value && comparison === 0) || (d.getDay() > criterion.value && comparison === 1) || (d.getDay() < criterion.value && comparison === -1) ){ earnedCount++; } } else if (criterion.name === 'avg_percent' && typeof averageScore !== 'undefined') {var roundedUserPct = _.round(userPct, 2); //matches backend precision in badge trackervar roundedAvgPct = _.round(averageScore, 2);if((roundedUserPct == roundedAvgPct && comparison === 0) || (roundedUserPct > roundedAvgPct && comparison === 1) || (roundedUserPct < roundedAvgPct && comparison === -1) ){ earnedCount++; } }}); earned = earnedCount == requiredCount;} else {earned = true;}} if (earned) {quizBadge.condition_earned = true;quizBadge.achieved_count++; var spliceIndex = null;_(quizBadge.remaining_conditions).each(function(condition, index) {if (quizBadge.condition_id == condition.condition_id) {spliceIndex = index;}});_(quizBadge.conditions).each(function(condition, index) {if (quizBadge.condition_id == condition.condition_id) {condition.earned = true;}});if (spliceIndex !== null) {quizBadge.remaining_conditions.splice(spliceIndex, 1); quizBadge.condition_earned_date = (new Date()).toLocaleDateString(undefined, { year: 'numeric', month: 'long', day: 'numeric' });; }if (quizBadge.remaining_conditions.length === 0 ) {if (quizBadge.badge_earned && quizBadge.levelable) {quizBadge.achieved_count = 0;quizBadge.level++;var currDate = new Date();quizBadge.last_level_date = window.SporcleLib.getMonthString(currDate.getMonth()) + ' ' + currDate.getDate() + ', ' + currDate.getFullYear();} else {quizBadge.badge_earned = true;var currDate = new Date();quizBadge.earned_date = window.SporcleLib.getMonthString(currDate.getMonth()) + ' ' + currDate.getDate() + ', ' + currDate.getFullYear();if (quizBadge.levelable) {quizBadge.level = 1;quizBadge.last_level_date = window.SporcleLib.getMonthString(currDate.getMonth()) + ' ' + currDate.getDate() + ', ' + currDate.getFullYear();quizBadge.achieved_count = 0;}}}if (badgeTooltip) {badgeTooltip.deactivate();}if (badgeTooltipRightRail) {badgeTooltipRightRail.deactivate();}var template = _.template($j('#quiz-badge-template').html());if (window.mweb) {$j('#main-wrapper .quiz-badge').replaceWith($j(template(quizBadge)));} else {quizBadge.tooltip_trigger_id = 'quiz-badge-art';$j('#main-quiz-content .quiz-badge').replaceWith($j(template(quizBadge)));quizBadge.tooltip_trigger_id = 'quiz-badge-art-right-rail';$j('#right-rail .quiz-badge').replaceWith($j(template(quizBadge)));if (!quizBadge.badge_earned) {if (window.setupUnearnedBadgeTooltip) {window.setupUnearnedBadgeTooltip($j('#quiz-badge-art'), quizBadge);window.setupUnearnedBadgeTooltip($j('#quiz-badge-art-right-rail'), quizBadge);} else {var conditionsTemp = _.template($j('#badge-conditions-template').html());var tooltipHtml = $j(conditionsTemp(quizBadge));const badgeTooltipOptions = { //this should match /sporcle-ui/tooltips/functionalTooltipstarget : true,tipJoint : 'bottom middle',showOn : 'mouseover',hideTriggers : ['target','tip'],stemLength : 8,stemBase : 12,hideOn : 'mouseout',removeElementsOnHide : true,background : 'white',borderColor : '#d8d8d8',borderWidth : 1,shadowOffset : [3,3],shadowBlur : 10,showEffect : 'slide',showEffectDuration : 0.1,hideEffectDuration : 0.3,className : 'badge-tooltip',shadowColor : 'rgba(0,0,0,0.25)'};badgeTooltip = new Opentip('#quiz-badge-art', tooltipHtml.html(), badgeTooltipOptions);badgeTooltipRightRail = new Opentip('#quiz-badge-art-right-rail', tooltipHtml.html(), badgeTooltipOptions);}} else {if (window.setupEarnedBadgeTooltip) {window.setupEarnedBadgeTooltip($j('#quiz-badge-art'), quizBadge);window.setupEarnedBadgeTooltip($j('#quiz-badge-art-right-rail'), quizBadge);}}}}}function showHintTooltip(x, y, hint) {$hint = $j('#hintTooltip');if ($hint.length == 0) {$hint = $j('
' +'
' +'
' +'
' +'
' +'
').appendTo($j('body'));}if (hint) {var $afterContainer = $hint.find('.afterContainer');var $after = $hint.find('.after');// Set to max width before resize$afterContainer.css({width: '120px'});$hint.show();// Set tooltip text to hint$after.html(hint);// Get width of tooltip with textvar width = Math.ceil($after[0].offsetWidth) + 1;var leftShift = 0;if (mweb) {// Make sure the tooltip doesn't go off either side of the screenvar leftBound = 51;var rightBound = $j('body').width() - 71;var buf = 11;// Shift based on width of textvar shiftLimit = Math.max(width/2 - 20, 0);if (x < leftBound) {// Too close to left edge of screenleftShift = -shiftLimit;x = Math.max(x, buf);} else if (x > rightBound) {// Too close to right edge of screenleftShift = shiftLimit;x = Math.min(x, $j('body').width() - buf);}}// Set the position of the hint$hint.css({left: x + 'px',top: y + 'px',});// Set outer container size and position$afterContainer.css({width: width + 'px',left: '-' + ((width / 2) + leftShift) + 'px'});} else {$hint.hide();}}function getRandomColor() {var r = Math.round(Math.random() * 255);var g = Math.round(Math.random() * 255);var b = Math.round(Math.random() * 255);return 'rgb(' + r + ',' + g + ',' + b + ')';}function hintTooltipIsDisplayed() {return $j('#hintTooltip').is(':visible');}function getCurrentHintText() {return $j('#hintTooltip .afterContainer .after').text();}async function runStartCode(stopwatch) {if (typeof gamePageIsLoaded != "undefined" && gamePageIsLoaded) {if (window.startTriggered) {return;} else {window.startTriggered = true;}if (typeof stopwatch !== 'undefined') {if (stopwatch) {window.selectTimerSetting('stopwatch');} else {window.selectTimerSetting('timer');}}startGame(360);callSPHooks('postStart');}}function callSPHooks(name) {if (typeof _spHooks != 'undefined') {var hlen = _spHooks[name].length;for (var i = 0; i < hlen; i++) {_spHooks[name][i]();}}}
0/100
Quiz is untimed. Quiz plays in practice mode will not be counted towards challenge completion or badge progress.
06:00