CINXE.COM
Tress of the Emerald Sea (Literature) - TV Tropes
<!DOCTYPE html> <html> <head lang="en"> <link rel="alternate" type="application/rss+xml" href="https://tvtropes.org/pmwiki/rss-feed.php?filter=newest_pages" /> <link rel="alternate" type="application/rss+xml" href="https://tvtropes.org/pmwiki/rss-feed.php?filter=most_popular" /> <link rel="alternate" type="application/rss+xml" href="https://tvtropes.org/pmwiki/rss-feed.php?filter=updated_content" /> <link rel="preload" href="/images/loading-graphic.png" as="image"> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-XPPLXMRF6Z"></script> <script> var pbjs = pbjs || {}; // Used for Video players on Tropes var tropes_videos_commands = tropes_videos_commands || []; window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-XPPLXMRF6Z'); window.googletag = window.googletag || {cmd: []}; </script> <script> function object(objectId) { if (document.getElementById && document.getElementById(objectId)) { return document.getElementById(objectId); } else if (document.all && document.all(objectId)) { return document.all(objectId); } else if (document.layers && document.layers[objectId]) { return document.layers[objectId]; } else { return false; } } // JAVASCRIPT COOKIES CODE: for getting and setting user viewing preferences var cookies = { create: function (name, value, days2expire, path) { var date = new Date(); date.setTime(date.getTime() + (days2expire * 24 * 60 * 60 * 1000)); var expires = date.toUTCString(); document.cookie = name + '=' + value + ';' + 'expires=' + expires + ';domain=.tvtropes.org;' + 'path=' + path + ';'; }, createWithExpire: function(name, value, expires, path) { document.cookie = name + '=' + value + ';' + 'expires=' + expires + ';domain=.tvtropes.org;' + 'path=' + path + ';'; }, read: function (name) { var cookie_value = "", current_cookie = "", name_expr = name + "=", all_cookies = document.cookie.split(';'), n = all_cookies.length; for (var i = 0; i < n; i++) { current_cookie = all_cookies[i].trim(); if (current_cookie.indexOf(name_expr) === 0) { cookie_value = current_cookie.substring(name_expr.length, current_cookie.length); break; } } return cookie_value; }, update: function (name, val) { this.create(name, val, 300, "/"); }, remove: function (name) { //delete cookie with and without domain setting document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; domain=.tvtropes.org; path=/;"; document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/;"; } }; function updateUserPrefs() { //GENERAL: detect and set browser, if not cookied (will be treated like a user-preference and added to the #user-pref element) if( !cookies.read('user-browser') ){ var broswer = ''; if(navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i) ){ browser = 'iOS'; } else if (/Opera[\/\s](\d+\.\d+)/.test(navigator.userAgent)) { browser = 'opera'; } else if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) { browser = 'MSIE'; } else if (/Navigator[\/\s](\d+\.\d+)/.test(navigator.userAgent)) { browser = 'netscape'; } else if (/Chrome[\/\s](\d+\.\d+)/.test(navigator.userAgent)) { browser = 'chrome'; } else if (/Safari[\/\s](\d+\.\d+)/.test(navigator.userAgent)) { browser = 'safari'; /Version[\/\s](\d+\.\d+)/.test(navigator.userAgent); browserVersion = new Number(RegExp.$1); } else if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)) { browser = 'firefox'; } else { browser = 'internet_explorer'; } cookies.create('user-browser',browser,1,'/'); document.getElementById('user-prefs').classList.add('browser-' + browser); } else { document.getElementById('user-prefs').classList.add('browser-' + cookies.read('user-browser')); } //update user preference settings if (cookies.read('wide-load') !== '') document.getElementById('user-prefs').classList.add('wide-load'); if (cookies.read('mono-font') !== '') document.getElementById('user-prefs').classList.add('mono-font'); if (cookies.read('night-vision') !== '') document.getElementById('user-prefs').classList.add('night-vision'); if (cookies.read('sticky-header') !== '') document.getElementById('user-prefs').classList.add('sticky-header'); if (cookies.read('show-spoilers') !== '') document.getElementById('user-prefs').classList.add('show-spoilers'); if (cookies.read('tvtropes-editor-on') !== '') document.getElementById('user-prefs').classList.add('tvtropes-editor-on'); if (cookies.read('folders-open') !== '') document.getElementById('user-prefs').classList.add('folders-open'); if (cookies.read('lefthand-sidebar') !== '') document.getElementById('user-prefs').classList.add('lefthand-sidebar'); if (cookies.read('highlight-links') !== '') document.getElementById('user-prefs').classList.add('highlight-links'); if (cookies.read('forum-gingerbread') !== '') document.getElementById('user-prefs').classList.add('forum-gingerbread'); //if the user is logged in, update cookies based on their database settings //updates element if(cookies.read('shared-avatars') !== '') document.getElementById('user-prefs').classList.add('shared-avatars'); if(cookies.read('new-search') !== '') document.getElementById('user-prefs').classList.add('new-search'); if(cookies.read('stop-auto-play-video') !== '') document.getElementById('user-prefs').classList.add('stop-auto-play-video'); //desktop view on mobile if (cookies.read('desktop-on-mobile') !== ''){ document.getElementById('user-prefs').classList.add('desktop-on-mobile'); var viewport = document.querySelector("meta[name=viewport]"); viewport.setAttribute('content', 'width=1000'); } } function updateDesktopPrefs() { if (cookies.read('wide-load') !== '') document.getElementById('sidebar-toggle-wideload').classList.add('active'); if (cookies.read('night-vision') !== '') document.getElementById('sidebar-toggle-nightvision').classList.add('active'); if (cookies.read('sticky-header') !== '') document.getElementById('sidebar-toggle-stickyheader').classList.add('active'); if (cookies.read('show-spoilers') !== '') document.getElementById('sidebar-toggle-showspoilers').classList.add('active'); } function updateMobilePrefs() { if (cookies.read('show-spoilers') !== '') document.getElementById('mobile-toggle-showspoilers').classList.add('active'); if (cookies.read('night-vision') !== '') document.getElementById('mobile-toggle-nightvision').classList.add('active'); if (cookies.read('sticky-header') !== '') document.getElementById('mobile-toggle-stickyheader').classList.add('active'); if (cookies.read('highlight-links') !== '') document.getElementById('mobile-toggle-highlightlinks').classList.add('active'); } function is_mobile() { if(document.body.clientWidth && document.body.clientWidth<=768) return true; else return false; } </script> <script type="text/javascript"> var country_code_list = ['AT','BE','BG','CH','CY','CZ','DE','DK','EE','ES','FI','FR','GB','GF','GP','GR','HR','HU','IC','IE','IS','IT','LI','LT','LU','LV','MF','MQ','MT','NL','NO','PL','PT','RE','RO','SE','SI','SK','SX','YT']; var site_htl_settings = { "adx" : "yes", // yes/no if we should include adx on page "groupname" : "Literature", // track groupname in htl/gam "has_folders" : "no", // track folder pages in htl/gam "user_type" : "guest", // track member/guest in htl/gam "is_testing" : "no", // yes/no if in testing mode "split_testing" : "1", // 0/1, 0=control, 1=test, for a/b testing "send_reports" : "1", // true/false if reports should be sent for logging in DataBricks "report_url" : "https://analytics.tvtropes.org/analytics-data/tvtropes/", // Endpoint for logging (data stream) "logging_turned_on": "1", // true/false if console logging should be turned on "site_name" : "tvtropes", // Site name for display in logging "sticky_slot_names": ["tvtropes_dt_sticky", "tvtropes_m_sticky"], // Possible slot names for the sticky slot } </script> <script> // Create the ad project var ads_project = (function(sent_in_settings){ //default settings var setting_defaults = { "adx" : "yes", "groupname" : "", "has_folders" : "unknown", "user_type" : "guest", "is_testing" : "no", "split_testing" : "0", "send_reports" : "0", "logging_turned_on": "false", "site_name" : "site_name", "report_url" : "", "page_template" : "", "sticky_slot_names": [] } // Combine defaults with sent in parameters var project_settings = {...setting_defaults, ...sent_in_settings}; /*************************************** --------------- AD CODE --------------- ***************************************/ window.BCLighthouseTag = window.BCLighthouseTag || {}; window.BCLighthouseTag.cmd = window.BCLighthouseTag.cmd || []; // If user type is a member if(project_settings.user_type == "member"){ // Check for UID2 cookie var uid2_cookie = cookies.read('uid2_identity'); var json_cookie = (uid2_cookie) ? JSON.parse(uid2_cookie) : ""; // If UID2 cookie exists and it's not in the banned country list, set UID2 if(!uid2_cookie || (json_cookie && json_cookie.response)){ var request = new XMLHttpRequest(); request.open("post", "/ajax/uid2_creation.php", 1); request.setRequestHeader("Content-Type", "application/json; charset=UTF-8") request.onload = function(){ if(request.status == 200){ var json = JSON.parse(request.responseText); // Create cookie with response from request cookies.create('uid2_identity', json.response, 7, '/'); output_logging("UID2 cookie created"); // Refresh specific modules pbjs.refreshUserIds({ submoduleNames: ['uid2'] }); } else output_logging("Failed to create UID2 cookie"); } request.send(); } } BCLighthouseTag.cmd.push(function() { // Only set these if given in settings if(project_settings.groupname != "") BCLighthouseTag.setTargeting("groupname", project_settings.groupname); if(project_settings.page_template != "") BCLighthouseTag.setTargeting("page_template", project_settings.page_template); BCLighthouseTag.setTargeting("adx", project_settings.adx); BCLighthouseTag.setTargeting('website', project_settings.site_name); BCLighthouseTag.setTargeting('user_type', project_settings.user_type); BCLighthouseTag.setTargeting('has_folders', project_settings.has_folders); }); // Logging function output_logging(content){ if(project_settings.logging_turned_on){ if(typeof content == "string") console.log(project_settings.site_name + " Ads: " + content); else console.log(content); } } })(site_htl_settings); </script> <script type="text/javascript"> var tvtropes_config = { asteri_stream_enabled : "1", is_logged_in : "", live_server : "1", bigcrunch_live : "1", handle : "", email_popup : "0", troper_email : "", get_asteri_stream : "", revnum : "34f2653e14b8f0604d7c8ab2d8e0002abf7d2ab4", img_domain : "https://static.tvtropes.org", adblock : "1", adblock_url : "propermessage.io", universal_page_type : "Article", pause_editing : "0", pause_editing_msg : "", pause_site_changes : "0", assets_domain : "https://assets.tvtropes.org" }; // This will track the total number of ads inserted over time var globalAdInsertionCount = 0; </script> <script> // Add second script to the head var htl_script = document.createElement('script'); htl_script.async = "async"; // Add the fundingchoices script to the head var script = document.createElement('script'); script.src = "https://fundingchoicesmessages.google.com/i/pub-6608306193529351?ers=1"; script.async = true; script.nonce = "rczD8qB5ececf2fL1Vj9XQ"; // Add second script to the head var script2 = document.createElement('script'); script2.nonce = "rczD8qB5ececf2fL1Vj9XQ"; script2.innerHTML = "(function() {function signalGooglefcPresent() {if (!window.frames['googlefcPresent']) {if (document.body) {const iframe = document.createElement('iframe'); iframe.style = 'width: 0; height: 0; border: none; z-index: -1000; left: -1000px; top: -1000px;'; iframe.style.display = 'none'; iframe.name = 'googlefcPresent'; document.body.appendChild(iframe);} else {setTimeout(signalGooglefcPresent, 0);}}}signalGooglefcPresent();})();"; // Add both scripts to head document.head.appendChild(script); document.head.appendChild(script2); var bigcrunch_url = window.tvtropes_config.bigcrunch_live == 1 ? "https://lh.bigcrunch.com/main.js" : "https://dev-lh.bigcrunch.com/main.js"; htl_script.src = bigcrunch_url; htl_script.id = "bigcrunchtag"; htl_script.setAttribute('data-property-id', '34a5ddec-697b-424e-81d2-e6bb46a1b83e'); // Add both scripts to head document.head.appendChild(htl_script); </script> <script> // Add HTL script to head document.head.appendChild(htl_script); </script> <script>(function(){/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ 'use strict';var aa=function(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}},ba="function"==typeof Object.create?Object.create:function(a){var b=function(){};b.prototype=a;return new b},k;if("function"==typeof Object.setPrototypeOf)k=Object.setPrototypeOf;else{var m;a:{var ca={a:!0},n={};try{n.__proto__=ca;m=n.a;break a}catch(a){}m=!1}k=m?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null} var p=k,q=function(a,b){a.prototype=ba(b.prototype);a.prototype.constructor=a;if(p)p(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.v=b.prototype},r=this||self,da=function(){},t=function(a){return a};var u;var w=function(a,b){this.g=b===v?a:""};w.prototype.toString=function(){return this.g+""};var v={},x=function(a){if(void 0===u){var b=null;var c=r.trustedTypes;if(c&&c.createPolicy){try{b=c.createPolicy("goog#html",{createHTML:t,createScript:t,createScriptURL:t})}catch(d){r.console&&r.console.error(d.message)}u=b}else u=b}a=(b=u)?b.createScriptURL(a):a;return new w(a,v)};var A=function(){return Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)};var B={},C=null;var D="function"===typeof Uint8Array;function E(a,b,c){return"object"===typeof a?D&&!Array.isArray(a)&&a instanceof Uint8Array?c(a):F(a,b,c):b(a)}function F(a,b,c){if(Array.isArray(a)){for(var d=Array(a.length),e=0;e<a.length;e++){var f=a[e];null!=f&&(d[e]=E(f,b,c))}Array.isArray(a)&&a.s&&G(d);return d}d={};for(e in a)Object.prototype.hasOwnProperty.call(a,e)&&(f=a[e],null!=f&&(d[e]=E(f,b,c)));return d} function ea(a){return F(a,function(b){return"number"===typeof b?isFinite(b)?b:String(b):b},function(b){var c;void 0===c&&(c=0);if(!C){C={};for(var d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),e=["+/=","+/","-_=","-_.","-_"],f=0;5>f;f++){var h=d.concat(e[f].split(""));B[f]=h;for(var g=0;g<h.length;g++){var l=h[g];void 0===C[l]&&(C[l]=g)}}}c=B[c];d=Array(Math.floor(b.length/3));e=c[64]||"";for(f=h=0;h<b.length-2;h+=3){var y=b[h],z=b[h+1];l=b[h+2];g=c[y>>2];y=c[(y&3)<< 4|z>>4];z=c[(z&15)<<2|l>>6];l=c[l&63];d[f++]=""+g+y+z+l}g=0;l=e;switch(b.length-h){case 2:g=b[h+1],l=c[(g&15)<<2]||e;case 1:b=b[h],d[f]=""+c[b>>2]+c[(b&3)<<4|g>>4]+l+e}return d.join("")})}var fa={s:{value:!0,configurable:!0}},G=function(a){Array.isArray(a)&&!Object.isFrozen(a)&&Object.defineProperties(a,fa);return a};var H;var J=function(a,b,c){var d=H;H=null;a||(a=d);d=this.constructor.u;a||(a=d?[d]:[]);this.j=d?0:-1;this.h=null;this.g=a;a:{d=this.g.length;a=d-1;if(d&&(d=this.g[a],!(null===d||"object"!=typeof d||Array.isArray(d)||D&&d instanceof Uint8Array))){this.l=a-this.j;this.i=d;break a}void 0!==b&&-1<b?(this.l=Math.max(b,a+1-this.j),this.i=null):this.l=Number.MAX_VALUE}if(c)for(b=0;b<c.length;b++)a=c[b],a<this.l?(a+=this.j,(d=this.g[a])?G(d):this.g[a]=I):(d=this.l+this.j,this.g[d]||(this.i=this.g[d]={}),(d=this.i[a])? G(d):this.i[a]=I)},I=Object.freeze(G([])),K=function(a,b){if(-1===b)return null;if(b<a.l){b+=a.j;var c=a.g[b];return c!==I?c:a.g[b]=G([])}if(a.i)return c=a.i[b],c!==I?c:a.i[b]=G([])},M=function(a,b){var c=L;if(-1===b)return null;a.h||(a.h={});if(!a.h[b]){var d=K(a,b);d&&(a.h[b]=new c(d))}return a.h[b]};J.prototype.toJSON=function(){var a=N(this,!1);return ea(a)}; var N=function(a,b){if(a.h)for(var c in a.h)if(Object.prototype.hasOwnProperty.call(a.h,c)){var d=a.h[c];if(Array.isArray(d))for(var e=0;e<d.length;e++)d[e]&&N(d[e],b);else d&&N(d,b)}return a.g},O=function(a,b){H=b=b?JSON.parse(b):null;a=new a(b);H=null;return a};J.prototype.toString=function(){return N(this,!1).toString()};var P=function(a){J.call(this,a)};q(P,J);function ha(a){var b,c=(a.ownerDocument&&a.ownerDocument.defaultView||window).document,d=null===(b=c.querySelector)||void 0===b?void 0:b.call(c,"script[nonce]");(b=d?d.nonce||d.getAttribute("nonce")||"":"")&&a.setAttribute("nonce",b)};var Q=function(a,b){b=String(b);"application/xhtml+xml"===a.contentType&&(b=b.toLowerCase());return a.createElement(b)},R=function(a){this.g=a||r.document||document};R.prototype.appendChild=function(a,b){a.appendChild(b)};var S=function(a,b,c,d,e,f){try{var h=a.g,g=Q(a.g,"SCRIPT");g.async=!0;g.src=b instanceof w&&b.constructor===w?b.g:"type_error:TrustedResourceUrl";ha(g);h.head.appendChild(g);g.addEventListener("load",function(){e();d&&h.head.removeChild(g)});g.addEventListener("error",function(){0<c?S(a,b,c-1,d,e,f):(d&&h.head.removeChild(g),f())})}catch(l){f()}};var ia=r.atob("aHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2ljb25zL21hdGVyaWFsL3N5c3RlbS8xeC93YXJuaW5nX2FtYmVyXzI0ZHAucG5n"),ja=r.atob("WW91IGFyZSBzZWVpbmcgdGhpcyBtZXNzYWdlIGJlY2F1c2UgYWQgb3Igc2NyaXB0IGJsb2NraW5nIHNvZnR3YXJlIGlzIGludGVyZmVyaW5nIHdpdGggdGhpcyBwYWdlLg=="),ka=r.atob("RGlzYWJsZSBhbnkgYWQgb3Igc2NyaXB0IGJsb2NraW5nIHNvZnR3YXJlLCB0aGVuIHJlbG9hZCB0aGlzIHBhZ2Uu"),la=function(a,b,c){this.h=a;this.j=new R(this.h);this.g=null;this.i=[];this.l=!1;this.o=b;this.m=c},V=function(a){if(a.h.body&&!a.l){var b= function(){T(a);r.setTimeout(function(){return U(a,3)},50)};S(a.j,a.o,2,!0,function(){r[a.m]||b()},b);a.l=!0}},T=function(a){for(var b=W(1,5),c=0;c<b;c++){var d=X(a);a.h.body.appendChild(d);a.i.push(d)}b=X(a);b.style.bottom="0";b.style.left="0";b.style.position="fixed";b.style.width=W(100,110).toString()+"%";b.style.zIndex=W(2147483544,2147483644).toString();b.style["background-color"]=ma(249,259,242,252,219,229);b.style["box-shadow"]="0 0 12px #888";b.style.color=ma(0,10,0,10,0,10);b.style.display= "flex";b.style["justify-content"]="center";b.style["font-family"]="Roboto, Arial";c=X(a);c.style.width=W(80,85).toString()+"%";c.style.maxWidth=W(750,775).toString()+"px";c.style.margin="24px";c.style.display="flex";c.style["align-items"]="flex-start";c.style["justify-content"]="center";d=Q(a.j.g,"IMG");d.className=A();d.src=ia;d.style.height="24px";d.style.width="24px";d.style["padding-right"]="16px";var e=X(a),f=X(a);f.style["font-weight"]="bold";f.textContent=ja;var h=X(a);h.textContent=ka;Y(a, e,f);Y(a,e,h);Y(a,c,d);Y(a,c,e);Y(a,b,c);a.g=b;a.h.body.appendChild(a.g);b=W(1,5);for(c=0;c<b;c++)d=X(a),a.h.body.appendChild(d),a.i.push(d)},Y=function(a,b,c){for(var d=W(1,5),e=0;e<d;e++){var f=X(a);b.appendChild(f)}b.appendChild(c);c=W(1,5);for(d=0;d<c;d++)e=X(a),b.appendChild(e)},W=function(a,b){return Math.floor(a+Math.random()*(b-a))},ma=function(a,b,c,d,e,f){return"rgb("+W(Math.max(a,0),Math.min(b,255)).toString()+","+W(Math.max(c,0),Math.min(d,255)).toString()+","+W(Math.max(e,0),Math.min(f, 255)).toString()+")"},X=function(a){a=Q(a.j.g,"DIV");a.className=A();return a},U=function(a,b){0>=b||null!=a.g&&0!=a.g.offsetHeight&&0!=a.g.offsetWidth||(na(a),T(a),r.setTimeout(function(){return U(a,b-1)},50))},na=function(a){var b=a.i;var c="undefined"!=typeof Symbol&&Symbol.iterator&&b[Symbol.iterator];b=c?c.call(b):{next:aa(b)};for(c=b.next();!c.done;c=b.next())(c=c.value)&&c.parentNode&&c.parentNode.removeChild(c);a.i=[];(b=a.g)&&b.parentNode&&b.parentNode.removeChild(b);a.g=null};var pa=function(a,b,c,d,e){var f=oa(c),h=function(l){l.appendChild(f);r.setTimeout(function(){f?(0!==f.offsetHeight&&0!==f.offsetWidth?b():a(),f.parentNode&&f.parentNode.removeChild(f)):a()},d)},g=function(l){document.body?h(document.body):0<l?r.setTimeout(function(){g(l-1)},e):b()};g(3)},oa=function(a){var b=document.createElement("div");b.className=a;b.style.width="1px";b.style.height="1px";b.style.position="absolute";b.style.left="-10000px";b.style.top="-10000px";b.style.zIndex="-10000";return b};var L=function(a){J.call(this,a)};q(L,J);var qa=function(a){J.call(this,a)};q(qa,J);var ra=function(a,b){this.l=a;this.m=new R(a.document);this.g=b;this.i=K(this.g,1);b=M(this.g,2);this.o=x(K(b,4)||"");this.h=!1;b=M(this.g,13);b=x(K(b,4)||"");this.j=new la(a.document,b,K(this.g,12))};ra.prototype.start=function(){sa(this)}; var sa=function(a){ta(a);S(a.m,a.o,3,!1,function(){a:{var b=a.i;var c=r.btoa(b);if(c=r[c]){try{var d=O(P,r.atob(c))}catch(e){b=!1;break a}b=b===K(d,1)}else b=!1}b?Z(a,K(a.g,14)):(Z(a,K(a.g,8)),V(a.j))},function(){pa(function(){Z(a,K(a.g,7));V(a.j)},function(){return Z(a,K(a.g,6))},K(a.g,9),K(a.g,10),K(a.g,11))})},Z=function(a,b){a.h||(a.h=!0,a=new a.l.XMLHttpRequest,a.open("GET",b,!0),a.send())},ta=function(a){var b=r.btoa(a.i);a.l[b]&&Z(a,K(a.g,5))};(function(a,b){r[a]=function(c){for(var d=[],e=0;e<arguments.length;++e)d[e-0]=arguments[e];r[a]=da;b.apply(null,d)}})("__h82AlnkH6D91__",function(a){"function"===typeof window.atob&&(new ra(window,O(qa,window.atob(a)))).start()});}).call(this); window.__h82AlnkH6D91__("WyJwdWItMjU3NTc4ODY5MDc5ODI4MiIsW251bGwsbnVsbCxudWxsLCJodHRwczovL2Z1bmRpbmdjaG9pY2VzbWVzc2FnZXMuZ29vZ2xlLmNvbS9iL3B1Yi0yNTc1Nzg4NjkwNzk4MjgyIl0sbnVsbCxudWxsLCJodHRwczovL2Z1bmRpbmdjaG9pY2VzbWVzc2FnZXMuZ29vZ2xlLmNvbS9lbC9BR1NLV3hWV0tMOXhFeS1ZVk1sOTdzcC10MW5mbkxvWmZweWVjaGRJdUxJU244LXpjbUwxM1R5Mlhhb2RoQTJFU3VNS3ljQm1kVHgxSUNlMVBrX2hIeUxHa1ZZNHJ3XHUwMDNkXHUwMDNkP3RlXHUwMDNkVE9LRU5fRVhQT1NFRCIsImh0dHBzOi8vZnVuZGluZ2Nob2ljZXNtZXNzYWdlcy5nb29nbGUuY29tL2VsL0FHU0tXeFZCeVhDdDlWajY1eXNrMWFHVW9LUUpLdktrTlh4WVdlRDBhYnhmS3RVUi00eDZfRTNWOXpqSm5vYkFfVzIxeGNDb3F3M1RmN1dYRmxXZFZaazVMMFlQQ2dcdTAwM2RcdTAwM2Q/YWJcdTAwM2QxXHUwMDI2c2JmXHUwMDNkMSIsImh0dHBzOi8vZnVuZGluZ2Nob2ljZXNtZXNzYWdlcy5nb29nbGUuY29tL2VsL0FHU0tXeFV4bEsxQ0dxcEpGY3lvcXZXZ0ZnWWRBRjhMMzBOU0Y1ci1paGZSd1VRNzV4YmF6NGxydWVfRUhoWmU1ai00UUhRYXc4MUVZREFkQ2pBN21Tb1BxUUsxaFFcdTAwM2RcdTAwM2Q/YWJcdTAwM2QyXHUwMDI2c2JmXHUwMDNkMSIsImh0dHBzOi8vZnVuZGluZ2Nob2ljZXNtZXNzYWdlcy5nb29nbGUuY29tL2VsL0FHU0tXeFZJUWxpOV9jN0NuWWlHWkU3S2xIV2JWVi10NlpYQ2hQTnlHVTRobGhmSjdLQnJnNjllSFhHYm9aSXRqRm42MDViNWpuaG5KYkxCcU1ySURyY2lLVEk0VmdcdTAwM2RcdTAwM2Q/c2JmXHUwMDNkMiIsImRpdi1ncHQtYWQiLDIwLDEwMCwiY0hWaUxUSTFOelUzT0RnMk9UQTNPVGd5T0RJXHUwMDNkIixbbnVsbCxudWxsLG51bGwsImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tLzBlbW4vZi9wL3B1Yi0yNTc1Nzg4NjkwNzk4MjgyLmpzP3VzcXBcdTAwM2RDQkEiXSwiaHR0cHM6Ly9mdW5kaW5nY2hvaWNlc21lc3NhZ2VzLmdvb2dsZS5jb20vZWwvQUdTS1d4V1hNUEJXZjVaNURyT1VGdDZwVVR5eGh1YzBFNlVGQnJJZUhuUUNCMVlUOWVtYlJTbGxYQ3F6NDV5ODdqT3RVWC1SX3JkcmdudFdjejdtazA2WkZYWDQyd1x1MDAzZFx1MDAzZCJd"); </script> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Tress of the Emerald Sea (Literature) - TV Tropes</title> <meta name="description" content="A description of tropes appearing in Tress of the Emerald Sea. Tress is a very boring girl on a very boring island. She spends her day collecting cups, which …" /> <link rel="canonical" href="https://tvtropes.org/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea" /> <link rel="shortcut icon" href="https://assets.tvtropes.org/img/icons/favicon.ico" type="image/x-icon" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@tvtropes" /> <meta name="twitter:owner" content="@tvtropes" /> <meta name="twitter:title" content="Tress of the Emerald Sea (Literature) - TV Tropes" /> <meta name="twitter:description" content="A description of tropes appearing in Tress of the Emerald Sea. Tress is a very boring girl on a very boring island. She spends her day collecting cups, which …" /> <meta name="twitter:image:src" content="https://static.tvtropes.org/pmwiki/pub/images/tress_of_the_emerald_sea.jpg" /> <meta property="og:site_name" content="TV Tropes" /> <meta property="og:locale" content="en_US" /> <meta property="article:publisher" content="https://www.facebook.com/tvtropes" /> <meta property="og:title" content="Tress of the Emerald Sea" /> <meta property="og:type" content="book" /> <meta property="og:url" content="https://tvtropes.org/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea" /> <meta property="og:image" content="https://static.tvtropes.org/pmwiki/pub/images/tress_of_the_emerald_sea.jpg" /> <meta property="og:description" content="Tress is a very boring girl on a very boring island. She spends her day collecting cups, which she talks about with her very boring friend Charlie the gardener, who is most certainly not secretly the duke's son. No one else cares for either of …" /> <meta name="robots" content="max-image-preview:large"> <link rel="apple-touch-icon" sizes="57x57" href="https://assets.tvtropes.org/img/icons/apple-icon-57x57.png" type="image/png"> <link rel="apple-touch-icon" sizes="60x60" href="https://assets.tvtropes.org/img/icons/apple-icon-60x60.png" type="image/png"> <link rel="apple-touch-icon" sizes="72x72" href="https://assets.tvtropes.org/img/icons/apple-icon-72x72.png" type="image/png"> <link rel="apple-touch-icon" sizes="76x76" href="https://assets.tvtropes.org/img/icons/apple-icon-76x76.png" type="image/png"> <link rel="apple-touch-icon" sizes="114x114" href="https://assets.tvtropes.org/img/icons/apple-icon-114x114.png" type="image/png"> <link rel="apple-touch-icon" sizes="120x120" href="https://assets.tvtropes.org/img/icons/apple-icon-120x120.png" type="image/png"> <link rel="apple-touch-icon" sizes="144x144" href="https://assets.tvtropes.org/img/icons/apple-icon-144x144.png" type="image/png"> <link rel="apple-touch-icon" sizes="152x152" href="https://assets.tvtropes.org/img/icons/apple-icon-152x152.png" type="image/png"> <link rel="apple-touch-icon" sizes="180x180" href="https://assets.tvtropes.org/img/icons/apple-icon-180x180.png" type="image/png"> <link rel="icon" sizes="16x16" href="https://assets.tvtropes.org/img/icons/favicon-16x16.png" type="image/png"> <link rel="icon" sizes="32x32" href="https://assets.tvtropes.org/img/icons/favicon-32x32.png" type="image/png"> <link rel="icon" sizes="96x96" href="https://assets.tvtropes.org/img/icons/favicon-96x96.png" type="image/png"> <link rel="icon" sizes="192x192" href="https://assets.tvtropes.org/img/icons/favicon-192x192.png" type="image/png"> <meta id="viewport" name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"> <link rel="stylesheet" href="https://assets.tvtropes.org/design/assets/bundle.css?rev=34f2653e14b8f0604d7c8ab2d8e0002abf7d2ab4" /> <script type="text/javascript"> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-3821842-1', 'auto'); ga('send', 'pageview'); </script> <script> !function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '850567933835915'); fbq('track', 'PageView'); </script> <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=850567933835915&ev=PageView&noscript=1" /></noscript> <script> !function(w,d){if(!w.rdt){var p=w.rdt=function(){p.sendEvent?p.sendEvent.apply(p,arguments):p.callQueue.push(arguments)};p.callQueue=[];var t=d.createElement("script");t.src="https://www.redditstatic.com/ads/pixel.js",t.async=!0;var s=d.getElementsByTagName("script")[0];s.parentNode.insertBefore(t,s)}}(window,document); rdt('init','a2_fksv8rryv493'); rdt('track', 'PageVisit'); </script> </head> <body class=""> <i id="user-prefs"></i> <script>updateUserPrefs();</script> <div id="fb-root"></div> <div id="modal-box"> <div class="modal-loading-graphic"></div> </div> <style> @keyframes rotate-forever { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } #modal-box > .modal-loading-graphic { display: none; /* Hidden by default */ background: no-repeat center url('/images/loading-graphic.png'); background-size: 80px 80px; width: 80px; height: 80px; border-radius: 50%; position: absolute; top: calc(30% - 40px); left: calc(50% - 40px); z-index: 2; animation: rotate-forever 0.34s linear infinite; } #modal-box.active > .modal-loading-graphic { display: block; /* Show only when modal is active */ } </style> <header id="main-header-bar" class="headroom-element "> <div id="main-header-bar-inner"> <span id="header-spacer-left" class="header-spacer"></span> <a href="#mobile-menu" id="main-mobile-toggle" class="mobile-menu-toggle-button tablet-on"><span></span><span></span><span></span></a> <a href="/" id="main-header-logoButton" class="no-dev"></a> <span id="header-spacer-right" class="header-spacer"></span> <nav id="main-header-nav" class="tablet-off"> <a href="/pmwiki/pmwiki.php/Main/Tropes">Tropes</a> <a href="/pmwiki/pmwiki.php/Main/Media">Media</a> <a href="/pmwiki/browse.php" class="nav-browse">Browse</a> <a href="/pmwiki/popular-pages.php">Popular</a> <a href="/pmwiki/topics.php">Forums</a> <a href="/pmwiki/recent_videos.php" class="nav-browse">Videos</a> </nav> <div id="main-header-bar-right"> <div id="signup-login-box" class="font-xs mobile-off"> <a href="#" class="hover-underline bold" data-modal-target="signup">Join</a> <a href="#" class="hover-underline bold" data-modal-target="login">Login</a> </div> <div id="signup-login-mobileToggle" class="mobile-on inline"> <a href="#" data-modal-target="login"><i class="fa fa-user"></i></a> </div> <div id="search-box"> <form class="search" action="/pmwiki/search_result.php"> <input type="text" name="q" class="search-box" placeholder="Search" value="" required> <input type="submit" class="submit-button" value="" /> <input type="hidden" name="search_type" value="article"> <input type="hidden" name="page_type" value="all"> <input type="hidden" name="cx" value="partner-pub-6610802604051523:amzitfn8e7v"> <input type="hidden" name="cof" value="FORID:10"> <input type="hidden" name="ie" value="ISO-8859-1"> <input name="siteurl" type="hidden" value=""> <input name="ref" type="hidden" value=""> <input name="ss" type="hidden" value=""> </form> <a href="#close-search" class="mobile-on mobile-search-toggle close-x"><i class="fa fa-close"></i></a> </div> <div id="random-box"> <a href="/pmwiki/pmwiki.php/Main/DetailHoggingCover" class="button-random-trope" rel="nofollow" onclick="gtag('event', 'trope_random_button_click', {'is_user': 0});"></a> <a href="/pmwiki/pmwiki.php/Theatre/TheThousandYearRose" class="button-random-media" rel="nofollow" onclick="gtag('event', 'media_random_button_click', {'is_user': 0});"></a> </div> </div> </div> <div id="mobile-menu" class="tablet-on"><div class="mobile-menu-options"> <div class="nav-wrapper"> <a href="/pmwiki/pmwiki.php/Main/Tropes" class="xl">Tropes</a> <a href="/pmwiki/pmwiki.php/Main/Media" class="xl">Media</a> <a href="/pmwiki/browse.php" class="xl">Browse</a> <a href="/pmwiki/popular-pages.php" class="xl">Popular</a> <a href="/pmwiki/index_report.php" class="xl">Indexes</a> <a href="/pmwiki/topics.php" class="xl">Forums</a> <a href="/pmwiki/recent_videos.php" class="xl">Videos</a> <a href="/pmwiki/query.php?type=att">Ask The Tropers</a> <a href="/pmwiki/query.php?type=tf">Trope Finder</a> <a href="/pmwiki/query.php?type=ykts">Media Finder</a> <a href="/pmwiki/tlp_activity.php">Trope Launch Pad</a> <a href="/pmwiki/query.php?type=wl">Tech Wishlist</a> <a href="/pmwiki/review_activity.php">Reviews</a> <a href="#tools" data-click-toggle="active">Tools <i class="fa fa-chevron-down"></i></a> <div class="tools-dropdown mobile-dropdown-linkList"> <a href="/pmwiki/cutlist.php" data-modal-target="login" rel="nofollow">Cut List</a> <a href="/pmwiki/image-fixer.php" data-modal-target="login" rel="nofollow">Image Fixer</a> <a href="/pmwiki/changes.php">New Edits</a> <a href="/pmwiki/articles_new.php">New Articles</a> <a href="/pmwiki/recent_edit_reasons.php">Edit Reasons</a> <a href="/pmwiki/launches.php" data-modal-target="login" rel="nofollow">Launches</a> <a href="/pmwiki/img_list.php" data-modal-target="login" rel="nofollow">Images List</a> <a href="/pmwiki/crown_activity.php">Crowner Activity</a> <a href="/pmwiki/no_types.php">Un-typed Pages</a> <a href="/pmwiki/page_type_audit.php">Recent Page Type Changes</a> <a href="/pmwiki/changelog.php">Changelog</a> </div> <a href="#tips" data-click-toggle="active">Tips <i class="fa fa-chevron-down"></i></a> <div class="tips-dropdown mobile-dropdown-linkList"> <a href="/pmwiki/pmwiki.php/Administrivia/CreatingNewRedirects">Creating New Redirects</a> <a href="/pmwiki/pmwiki.php/Administrivia/Crosswicking">Cross Wicking</a> <a href="/pmwiki/pmwiki.php/Administrivia/TipsForEditing">Tips for Editing</a> <a href="/pmwiki/pmwiki.php/Administrivia/TextFormattingRules">Text Formatting Rules</a> <a href="/pmwiki/pmwiki.php/Administrivia/TVTropesGlossary?from=Main.TVTropesGlossary">Glossary</a> <a href="/pmwiki/pmwiki.php/Administrivia/EditReasonsAndWhyYouShouldUseThem">Edit Reasons</a> <a href="/pmwiki/pmwiki.php/Administrivia/HandlingSpoilers">Handling Spoilers</a> <a href="/pmwiki/pmwiki.php/Administrivia/WordCruft">Word Cruft</a> <a href="/pmwiki/pmwiki.php/Main/Administrivia">Administrivia</a> <a href="/pmwiki/pmwiki.php/Main/FAQ">FAQ</a> </div> <a href="#hq" data-click-toggle="active">Tropes HQ <i class="fa fa-chevron-down"></i></a> <div class="tools-dropdown mobile-dropdown-linkList"> <a href="/pmwiki/about.php">About Us</a> <a href="/pmwiki/contact.php">Contact Us</a> <a href="/pmwiki/dmca.php">DMCA Notice</a> <a href="/pmwiki/privacypolicy.php">Privacy Policy</a> <a href="/pmwiki/query.php?type=bug">Report Bug</a> </div> <a href="/pmwiki/ad-free-subscribe.php">Go Ad-Free</a> <a href="/pmwiki/changelog.php">Changelog</a></li> <div class="toggle-switches"> <ul class="mobile-menu display-toggles"> <li>Show Spoilers <div id="mobile-toggle-showspoilers" class="display-toggle show-spoilers"></div></li> <li>Night Vision <div id="mobile-toggle-nightvision" class="display-toggle night-vision"></div></li> <li>Sticky Header <div id="mobile-toggle-stickyheader" class="display-toggle sticky-header"></div></li> <li>Highlight Links <div id="mobile-toggle-highlightlinks" class="display-toggle highlight-links"></div></li> </ul> <script>updateMobilePrefs();</script> </div> </div> </div> </div> </header> <div id="homepage-introBox-mobile" class="mobile-on"> <a href="/"><img src="/images/logo-white-big.png" class="logo-small" /></a> <form class="search" action="/pmwiki/search_result.php" style="margin:10px -5px -6px -5px;"> <input type="text" name="q" class="search-box" placeholder="Search" value="" required> <input type="submit" class="submit-button" value="" /> <input type="hidden" name="search_type" value="article"> <input type="hidden" name="page_type" value="all"> <input type="hidden" name="cx" value="partner-pub-6610802604051523:amzitfn8e7v"> <input type="hidden" name="cof" value="FORID:10"> <input type="hidden" name="ie" value="ISO-8859-1"> <input name="siteurl" type="hidden" value=""> <input name="ref" type="hidden" value=""> <input name="ss" type="hidden" value=""> </form> </div> <script> // Get device type function get_device_type(){ var ua = navigator.userAgent.toLowerCase(); var device_type = ""; // This is usually "tablet", but for this case we are going to call it mobile if(/(ipad|tablet|(android(?!.*mobile))|(windows(?!.*phone)(.*touch))|kindle|playbook|silk|(puffin(?!.*(IP|AP|WP))))/.test(ua)) device_type = "mobile"; // This is mobile else if(/(mobi|ipod|phone|blackberry|opera mini|fennec|minimo|symbian|psp|nintendo ds|archos|skyfire|puffin|blazer|bolt|gobrowser|iris|maemo|semc|teashark|uzard)/.test(ua)) device_type = "mobile"; // Otherwise desktop else device_type = "desktop"; return device_type; } var show_modal_loaded = false; //// MOBILE MENU TOGGLE FUNCTIONS //// function show_modal(type, message, confirmation_url, call_back, fb_token, groupname, title, video_id) { console.log("showing modal " + type); const modalBox = document.getElementById('modal-box'); const childDivs = modalBox.querySelectorAll(':scope > div'); // Check if there are more than one child divs in the modal box, indicating a modal is already there if (childDivs.length > 1) { kill_modal(); } // Show the modal and the loading graphic modalBox.classList.add('active'); let alert = ''; if (typeof message === 'object' && message !== null) { Object.keys(message).forEach(function(key) { alert += '&' + key + '=' + encodeURIComponent(message[key]); }); } else { alert = '&message=' + encodeURIComponent(message); } // Construct the URL with parameters const url = '/design/parts/component-modalBox.php?window=' + type + alert + (confirmation_url ? '&curl=' + encodeURIComponent(confirmation_url) : "") + (fb_token ? '&fb_token=' + encodeURIComponent(fb_token) : "") + (groupname ? '&groupname=' + groupname : "") + (video_id ? '&video_id=' + encodeURIComponent(video_id) : ""); fetch(url) .then(response => response.text()) .then(html => { modalBox.innerHTML = html; // Find and execute scripts const scripts = modalBox.querySelectorAll('script'); scripts.forEach(script => { const newScript = document.createElement('script'); newScript.type = 'text/javascript'; if (script.src) { newScript.src = script.src; // Wait for Dropzone.js to load before adding the imguploader.js if(newScript.src.includes('/design/js/dropzone.js')) { newScript.onload = function() { // Now load the imguploader.js script const img_uploader_script = document.createElement('script'); img_uploader_script.type = 'text/javascript'; img_uploader_script.src = "/design/js/imguploader.js"; img_uploader_script.onload = function (){ myAwesomeDropzone = new Dropzone("#myAwesomeDropzone", { url: "/ajax/uploadImg.php" }); } document.body.appendChild(img_uploader_script); } } } else { newScript.textContent = script.textContent; } // Remove the old script and add the new one script.parentNode.removeChild(script); modalBox.appendChild(newScript); }); if(call_back) { call_back(); } }); if(show_modal_loaded == false){ // Kill modal if blackout is clicked modalBox.addEventListener('click', function(e) { if (e.target === e.currentTarget) { kill_modal(); } }); } show_modal_loaded = true; } // Modal kill function function kill_modal() { console.log("killing modal"); const modalBox = document.getElementById('modal-box'); modalBox.classList.remove('active'); // Replace the content directly with the new loading graphic modalBox.innerHTML = '<div class="modal-loading-graphic"></div>'; } // Modal "loading" mode, without killing function pause_modal() { var modal = document.querySelector('#modal-box > div.modal'); if(!modal) modal = document.querySelector('#modal-box'); modal.classList.add('hidden'); const modalBox = document.getElementById('modal-box'); modalBox.classList.add('paused'); const loadingGraphic = document.createElement('div'); loadingGraphic.className = 'modal-loading-graphic'; modalBox.appendChild(loadingGraphic); } function unpause_modal() { const modalBox = document.getElementById('modal-box'); modalBox.classList.remove('paused'); var modal = document.querySelector('#modal-box > div.modal'); if(!modal) modal = document.querySelector('#modal-box'); modal.classList.remove('hidden'); const loadingGraphic = document.querySelector('#modal-box > div.modal-loading-graphic'); if (loadingGraphic) { modalBox.removeChild(loadingGraphic); } } // COMPONENT: LOAD GRAPHIC function show_loader() { console.log("Displaying loading graphic"); kill_modal(); const modalBox = document.getElementById('modal-box'); modalBox.classList.add('active'); const loadingGraphic = document.createElement('div'); loadingGraphic.className = 'modal-loading-graphic'; modalBox.appendChild(loadingGraphic); } // TOGGLE NOTES function togglenote(id){ var ele=object(id); var state = ele.style.display; if(state=='none') ele.style.display='inline'; if(state=='inline')ele.style.display='none'; } // Toggle more menu function toggle_more_menu(position){ var more_menu = document.getElementById(position+"_more_list"); more_menu.classList.toggle("hidden_more_list"); more_menu.classList.toggle("display"); var menu_button = document.getElementById(position+"_more_button"); menu_button.classList.toggle("is-open"); } // scroll to top of page function scroll_to_top(duration) { var start = window.pageYOffset; var start_time = performance.now(); if ('requestAnimationFrame' in window === false) { window.scrollTo(0, 0); return; } function scroll() { var current_time = performance.now(); var elapsed_time = current_time - start_time; var progress = elapsed_time / duration; var ease_in_out_quad = progress < 0.5 ? 2 * progress * progress : -1 + (4 - 2 * progress) * progress; window.scrollTo(0, start * (1 - ease_in_out_quad)); if (elapsed_time < duration) { requestAnimationFrame(scroll); } else { window.scrollTo(0, 0); } } scroll(); } // FOLDER BUTTONS (unused) - declared to prevent console errors. function toggleAllFolders() {} function togglefolder(id) {} var device_type = get_device_type(); const mobile_menu_button = document.querySelector('.mobile-menu-toggle-button'); if (mobile_menu_button) { mobile_menu_button.addEventListener('click', function(e) { e.preventDefault(); const header = document.querySelector('header#main-header-bar'); if (header.classList.contains('mobile-menu-active')) { header.classList.remove('mobile-menu-active'); } else { header.classList.add('mobile-menu-active'); } }); } // tracking height for multiple folders to insert ads var global_pHeight = 0; // MODAL - FOLDER - SPOILER BUTTONS document.body.addEventListener('click', function(e) { // WATCH / FOLLOW BUTTONS const target = e.target.closest('.watch-button'); const loggedInElement = document.getElementById('logged_in'); const loggedIn = loggedInElement ? loggedInElement.value : null; //special code for the desktop-on-mobile-toggle cookie link if (e.target.closest('#desktop-on-mobile-toggle > a')) { e.preventDefault(); var body_class = "desktop-on-mobile"; var userPrefs = document.getElementById('user-prefs'); if (userPrefs.classList.contains(body_class)) { cookies.remove(body_class); } else { cookies.create(body_class, 'true', 300, '/'); } location.reload(); } // Display toggle buttons for user preferences if (e.target.closest('.display-toggles > li')) { var toggle = e.target; if(toggle.tagName.toLowerCase() === 'li') toggle = toggle.children[0]; var body_class = ''; var pref = ''; var val = 0; // SIDEBAR AND MOBILE MENU OPTIONS if (toggle.classList.contains('wide-load')) { body_class = "wide-load"; } else if (toggle.classList.contains('sticky-header')) { body_class = "sticky-header"; } else if (toggle.classList.contains('night-vision')) { body_class = "night-vision"; } else if (toggle.classList.contains('show-spoilers')) { body_class = "show-spoilers"; } else if (toggle.classList.contains('tvtropes-editor-on')) { body_class = "tvtropes-editor-on"; } // PROFILE PAGE OPTIONS else if (toggle.classList.contains('folders-open')) { body_class = "folders-open"; } else if (toggle.classList.contains('wysiwyg-toggle')) { body_class = "wysiwyg-toggle"; } else if (toggle.classList.contains('mono-font')) { body_class = "mono-font"; } else if (toggle.classList.contains('lefthand-sidebar')) { body_class = "lefthand-sidebar"; } else if (toggle.classList.contains('highlight-links')) { body_class = "highlight-links"; } else if (toggle.classList.contains('forum-gingerbread')) { body_class = "forum-gingerbread"; } else if (toggle.classList.contains('shared-avatars')) { body_class = "shared-avatars"; pref = 'accept_share'; val = toggle.classList.contains('active') ? 0 : 1; } else if (toggle.classList.contains('new-search')) { body_class = "new-search"; pref = 'new_search'; val = toggle.classList.contains('active') ? 0 : 1; } else if (toggle.classList.contains('stop-auto-play-video')) { body_class = "stop-auto-play-video"; pref = 'stop_auto_play_video'; val = toggle.classList.contains('active') ? 0 : 1; } else if (toggle.classList.contains('notification-pm')) { body_class = 'notification-pm'; pref = 'toggle_notification_pm'; val = toggle.classList.contains('active') ? 0 : 1; } else if (toggle.classList.contains('notification-video')) { body_class = 'notification-video'; pref = 'toggle_notification_video'; val = toggle.classList.contains('active') ? 0 : 1; } else if (toggle.classList.contains('notification-query')) { body_class = 'notification-query'; pref = 'toggle_notification_query'; val = toggle.classList.contains('active') ? 0 : 1; } if (pref === 'accept_share' || pref === 'new_search' || pref === 'stop_auto_play_video' || pref === 'toggle_notification_query' || pref === 'toggle_notification_pm' || pref === 'toggle_notification_video') { if (pref === 'new_search' && document.querySelector('#new-search-toggle')) show_loader(); fetch('/ajax/toggle_user_prefs.php', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', }, body: 'pref=' + encodeURIComponent(pref) + '&value=' + encodeURIComponent(val) }) .then(response => response.json()) .then(json => { if (pref === 'new_search') { const newSearchToggle = document.querySelector('#new-search-toggle'); const searchInput = document.getElementById('srch-term').value; const pageType = document.getElementsByName('page_type')[0].value; if (newSearchToggle && newSearchToggle.classList.contains('active')) { kill_modal(); window.location.href = '/pmwiki/elastic_search_result.php?new_search=true&q=' + encodeURIComponent(searchInput) + '&page_type=' + encodeURIComponent(pageType); } else if (newSearchToggle) { kill_modal(); window.location.href = '/pmwiki/search_result.php?new_search=false&q=' + encodeURIComponent(searchInput); } } }) .catch(error => { console.error('Error:', error); }); document.querySelector('form.search').addEventListener('submit', function(e) { if (cookies.read('new-search') === 'true') { e.preventDefault(); this.setAttribute('action', "/pmwiki/elastic_search_result.php"); } }); } // Toggle 'active' class based on body_class var displayToggles = document.querySelectorAll('.display-toggle.' + body_class); displayToggles.forEach(item_to_toggle => { item_to_toggle.classList.toggle('active'); }); var userPrefs = document.getElementById('user-prefs'); userPrefs.classList.toggle(body_class); console.log('BODY CLASS:',body_class); if (userPrefs.classList.contains(body_class)) { cookies.create(body_class, 'true', 300, '/'); } else { cookies.remove(body_class); // Specific logic for 'show-spoilers' class if (body_class === "show-spoilers") { document.querySelectorAll('.spoiler').forEach(spoiler => { spoiler.classList.remove('off'); }); } } } if (target && loggedIn !== null) { e.preventDefault(); if (loggedIn === 'true') { target.classList.add('processing'); } // Article if (target.getAttribute('data-watch-info')) { var data = target.dataset.watchInfo.split(','); if (!data.length) return; var addOrDrop = target.classList.contains('watching') || target.parentElement.classList.contains('watching') ? 'drop' : 'add'; handleWatchItem(addOrDrop, data[0], data[1], target); // Discussion page } else if (target.getAttribute('data-watch-discussion-info')) { var data = target.dataset.watchDiscussionInfo.split(','); if (!data.length) return; var addOrDrop = target.classList.contains('watching') || target.parentElement.classList.contains('watching') ? 'drop' : 'add'; var pageType = 'Discussion'; handleWatchItem(addOrDrop, data[0], data[1], target, pageType); // Forum thread } else if (target.getAttribute('data-watch-thread-id')) { var threadId = target.getAttribute('data-watch-thread-id'); var url = target.classList.contains('watching') || target.parentElement.classList.contains('watching') ? '/pmwiki/thread_watch_drop.php?thread=' : '/pmwiki/setthreadwatch.php?d_id='; url += threadId; handleWatchThread(url, target); } } // Check for kill modal button click if (e.target.classList.contains('kill-modal-button')) { e.preventDefault(); kill_modal(); } // Check for data-click-toggle without data-click-toggle-target const targetWithoutToggleTarget = e.target.closest('*[data-click-toggle]:not([data-click-toggle-target])'); if (targetWithoutToggleTarget) { e.preventDefault(); const toggleClass = targetWithoutToggleTarget.getAttribute('data-click-toggle'); targetWithoutToggleTarget.classList.toggle(toggleClass); } // Check for data-click-toggle with data-click-toggle-target const targetWithToggleTarget = e.target.closest('*[data-click-toggle][data-click-toggle-target]'); if (targetWithToggleTarget) { e.preventDefault(); // Check if the target contains fetch_articles in the onclick attribute const hasFetchArticles = targetWithToggleTarget.getAttribute('onclick') && targetWithToggleTarget.getAttribute('onclick').includes('fetch_articles'); // If fetch_articles is not in the onclick attribute, stop propagation if (!hasFetchArticles) { e.stopPropagation(); } const toggleTarget = targetWithToggleTarget.getAttribute('data-click-toggle-target'); const toggleClass = targetWithToggleTarget.getAttribute('data-click-toggle'); if (toggleTarget.indexOf(',') > -1) { const targets = toggleTarget.split(","); targets.forEach(t => { document.querySelectorAll('#' + t).forEach(el => { el.classList.toggle(toggleClass); }); }); } else { document.querySelectorAll('#' + toggleTarget).forEach(el => { el.classList.toggle(toggleClass); }); } } // initiate all modals const modalTarget = e.target.closest('*[data-modal-target]'); if(modalTarget) { if (!modalTarget) { return; // Skip, if no target found with the specified attribute } // Get modal details let modal = modalTarget.getAttribute('data-modal-target'); let msg = modalTarget.getAttribute('data-modal-vars') ? modalTarget.getAttribute('data-modal-vars') : modalTarget.getAttribute('data-modal-confirmation-message'); let url = modalTarget.getAttribute('data-modal-confirmation-url'); // convert to json if possible try { var obj = JSON.parse(msg); if (obj && typeof obj === "object") { msg = obj; } } catch (e) { } // Skip modal and go straight to the link if (modal === "allow") return; // Don't allow link since we are showing a modal instead e.preventDefault(); // Add support for alert tags if (modal.substring(0, 6) === "alert-") { // Message array const msgArr = { "alert-banned": "Your permissions for this area have been suspended. Please visit <a href='/pmwiki/pmwiki.php/Administrivia/WhatToDoIfYouAreSuspended'>this page</a> for more details.", "alert-bounced": "This account has committed severe or repeated violations of our rules and is permanently denied access to many of the account features of the site. If you feel that this may be an error, please <a href=\"/pmwiki/contact.php\">contact the mods</a>.", "alert-denied": "Your account was denied by a moderator. If you believe this was done in error please <a href=\"/pmwiki/contact.php\">contact the mods</a>.", "alert-verify": "You must verify your email address before doing this. Check your email for a link.", "alert-approval": "Your account must be approved by a moderator before you can do this. If you still have this problem in a couple hours try <a href=\"/pmwiki/contact.php\">contacting the mods</a>.", "alert-age": "Your account is not old enough. Give it a little more time.", "alert-mod": "This page is only for moderators. Try something else.", "alert-db": "We are currently updating our database systems to UTF-8MB4. Please try again in 10-12 hours." }; if (modal in msgArr) { msg = msgArr[modal]; } else { msg = "Unknown error. Please <a href=\"/pmwiki/contact.php\">Contact us</a> if the problem persists."; } modal = "alert"; } // Bring up modal now show_modal(modal, msg, url); } // SPOILERS const spoilers = e.target.closest('.spoiler'); if (spoilers) { spoilers.classList.toggle('off'); } // OPEN INDIVIDUAL FOLDERS const folders = e.target.closest('.folderlabel'); if (folders && e.target.getAttribute('onclick') !== "toggleAllFolders();") { e.preventDefault(); folders.classList.toggle('is-open'); let folder = folders.nextElementSibling; if (folders.classList.contains('is-open')) { gtag('event', 'folder_click', {'device_type': device_type}); } if (folder && folders.classList.contains('is-open') && live_ads == 1 && (document.body.clientWidth && document.body.clientWidth<=768) && tvtropes_config.universal_page_type == 'Article') { if (folder.querySelectorAll('.tvtropes-ad-unit').length === 0) { global_pHeight = insert_ads_in_content(folder, globalAdInsertionCount, global_pHeight); } } } // OPEN ALL FOLDERS const allFolders = e.target.closest('div[onclick*="toggleAllFolders()"]'); if (allFolders) { let parentElement = allFolders.parentNode; // If the button is inside an H2, select the parent div of it if (parentElement.tagName === 'H2') parentElement = parentElement.parentNode; let isCurrentlyOpen = e.target.classList.contains('is-open'); // Select only folder labels that are inside the same parent div as the clicked button let foldersAndButtons = parentElement.querySelectorAll('.folderlabel, .toggle-all-folders-button'); foldersAndButtons.forEach(function(element) { if (isCurrentlyOpen) { element.classList.remove('is-open'); } else { element.classList.add('is-open'); } }); if (!isCurrentlyOpen) { gtag('event', 'all_folders_click', {'device_type': device_type}); // Also target only .folder elements within the same parent div parentElement.querySelectorAll('.folder').forEach(function(folder) { if (!folder.querySelector('.tvtropes-ad-unit') && live_ads == 1 && (document.body.clientWidth && document.body.clientWidth<=768) && tvtropes_config.universal_page_type == 'Article') { global_pHeight = insert_ads_in_content(folder, globalAdInsertionCount, global_pHeight); } }); } } }, true); // Add/remove watched article var handleWatchItem = function(addOrDrop, groupname, title, obj, pageType = '') { fetch("/ajax/watchlist.php", { method: "POST", headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' }, body: `groupname=${encodeURIComponent(groupname)}&title=${encodeURIComponent(title)}&type=${encodeURIComponent(addOrDrop)}&json=1&pageType=${encodeURIComponent(pageType)}` }) .then(response => response.json()) .then(data => { obj.classList.remove('processing'); if (obj.classList.contains('tile-watch-button')) { obj.parentNode.classList.toggle('watching'); } else { obj.classList.toggle('watching'); } }) .catch(error => { obj.classList.remove('processing'); show_modal('alert-red', 'Whoops, something went wrong. Please try adding again.'); }); } // add/remove watched forum thread var handleWatchThread = function(url, obj) { fetch(url) .then(response => response.text()) // assuming the server responds with plain text .then(data => { obj.classList.remove('processing'); if (obj.classList.contains('tile-watch-button')) { obj.parentNode.classList.toggle('watching'); } else { obj.classList.toggle('watching'); } }) .catch(error => { obj.classList.remove('processing'); show_modal('alert-red', 'Whoops, something went wrong. Please try adding again.'); }); } </script> <script> if(is_mobile()) { document.write("<div class=\"htlad-tvtropes_m_sticky\"></div>"); } else { document.write("<div class=\"htlad-tvtropes_dt_sticky\"></div>"); } </script> <div id="tvtropes_oop_ad_slot" style="display: none;"></div> <div id="top_container_spacing"></div> <div id="main-container"> <div id="action-bar-top" class="action-bar mobile-off"> <div class="action-bar-right"> <p>Follow TV Tropes</p> <a href="https://www.facebook.com/TVTropes" class="button-fb"> <i class="fa fa-facebook"></i></a> <a href="https://www.twitter.com/TVTropes" class="button-tw"> <i class="fa fa-twitter"></i></a> </div> <nav class="actions-wrapper" itemscope itemtype="http://schema.org/SiteNavigationElement"> <ul id="top_main_list" class="page-actions"> <li class="link-edit"> <a rel = "nofollow" class = "article-edit-button"data-modal-target= "login"href = "/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea?action=edit"> <i class="fa fa-pencil"></i> Edit Page</a></li><li class="link-related"><a href="/pmwiki/relatedsearch.php?term=Literature/TressOfTheEmeraldSea"> <i class="fa fa-share-alt"></i> Related</a></li><li class="link-history"><a href="/pmwiki/article_history.php?article=Literature.TressOfTheEmeraldSea" data-modal-target="login" rel="nofollow"> <i class="fa fa-history"></i> History</a></li><li class="link-reviews"><a href="/pmwiki/review_add.php?tt=TressOfTheEmeraldSea&g=Literature" data-modal-target="login" rel="nofollow"> <i class="fa fa-star-half-o"></i> Add Review</a></li><li class="link-discussion"><a href="/pmwiki/remarks.php?trope=Literature.TressOfTheEmeraldSea" data-modal-target="login" rel="nofollow"> <i class="fa fa-comment"></i> Discussion</a></li> </ul> <button id="top_more_button" onclick="toggle_more_menu('top');" type="button" class="nav__dropdown-toggle">More</button> <ul id="top_more_list" class="more_menu hidden_more_list"> <li class="link-todo tuck-always more_list_item"><a href="#todo" data-modal-target="login" rel="nofollow"><i class="fa fa-check-circle"></i> To Do</a></li><li class="link-pageSource tuck-always more_list_item"><a href="/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea?action=source" target="_blank" rel="nofollow"data-modal-target= "login"><i class="fa fa-code"></i> Page Source</a></li> </ul> </nav> <div class="WikiWordModalStub"></div> <div class="ImgUploadModalStub" data-page-type="Article"></div> <div class="login-alert" style="display: none;"> You need to <a href="/pmwiki/login.php" style="color:#21A0E8">login</a> to do this. <a href="/pmwiki/login.php?tab=register_account" style="color:#21A0E8">Get Known</a> if you don't have an account </div> </div> <div id="main-content" class="page-Article "> <article id="main-entry" class="with-sidebar"> <!-- HIDDEN INPUTS FOR JS --> <input type="hidden" id="groupname-hidden" value="Literature"/> <input type="hidden" id="title-hidden" value="TressOfTheEmeraldSea"/> <input type="hidden" id="article_id" value="938368" /> <input type="hidden" id="logged_in" value="false" /> <p id="current_url" class="hidden">http://tvtropes.org/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea</p> <meta itemprop="datePublished" content=""/> <meta itemprop="articleSection" content="" /> <meta itemprop="image" content=""> <div class="watch_rank_wrap"> <a href="#watch" class="watch-button " data-modal-target="login" >Follow<span>ing</span></a> </div> <div class="span_entry_breadcrumb"> <span class="entry-breadcrumb"><a href="/pmwiki/pmwiki.php/Main/Literature" style="text-decoration:none;">Literature</a> »</span> <h1 itemprop="headline" class="entry-title"> Tress of the Emerald Sea </h1> </div> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "TV Tropes", "item": "https://tvtropes.org/" },{ "@type": "ListItem", "position": 2, "name": "Literature", "item": "https://tvtropes.org/pmwiki/pmwiki.php/Main/Literature" },{ "@type": "ListItem", "position": 3, "name": "Tress of the Emerald Sea", "item": "https://tvtropes.org/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea" }] } </script> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "name": "Tress of the Emerald Sea (Literature)", "headline": "Tress of the Emerald Sea (Literature)", "url": "https://tvtropes.org/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea", "image": "https://static.tvtropes.org/pmwiki/pub/images/tress_of_the_emerald_sea.jpg", "author": { "@type": "Organization", "name": "Contributors to TV Tropes (aka Tropers)" }, "datePublished": "2023-01-01T00:00:00-08:00", "dateModified": "2024-11-07T14:42:15-08:00" } </script> <a href="#mobile-actions-toggle" id="mobile-actionbar-toggle" class="mobile-actionbar-toggle mobile-on" data-click-toggle="active" > <p class="tiny-off">Go To</p><span></span><span></span><span></span><i class="fa fa-pencil"></i></a> <nav id="mobile-actions-bar" class="mobile-actions-wrapper mobile-on"></nav> <script> //duplicate action bar to the mobile-action-bar holder if (document.getElementById("mobile-actions-bar")) { // Clone the main list var top_main_list = document.getElementById('top_main_list'); var top_main_list_cln = top_main_list.cloneNode(true); // Clone the more list var top_more_list = document.getElementById('top_more_list'); var top_more_list_cln = top_more_list.cloneNode(true); top_more_list_cln.querySelectorAll("li").forEach(function(child){ top_main_list_cln.appendChild(child); }); document.getElementById("mobile-actions-bar").appendChild(top_main_list_cln); } </script> <nav class="body-options" itemscope itemtype="http://schema.org/SiteNavigationElement"> <ul class="subpage-links"> <li> <a href="/pmwiki/pmwiki.php/Literature/TressOfTheEmeraldSea" class="subpage-link curr-subpage" title="The Literature page"> <span class="wrapper"><span class="spi literature"></span>Literature</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/Awesome/TressOfTheEmeraldSea" class="subpage-link " title="The Awesome page"> <span class="wrapper"><span class="spi awesome"></span>Awesome</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/Characters/TressOfTheEmeraldSea" class="subpage-link " title="The Characters page"> <span class="wrapper"><span class="spi characters"></span>Characters</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/Fridge/TressOfTheEmeraldSea" class="subpage-link " title="The Fridge page"> <span class="wrapper"><span class="spi fridge"></span>Fridge</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/Funny/TressOfTheEmeraldSea" class="subpage-link " title="The Funny page"> <span class="wrapper"><span class="spi funny"></span>Funny</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/Heartwarming/TressOfTheEmeraldSea" class="subpage-link " title="The Heartwarming page"> <span class="wrapper"><span class="spi heartwarming"></span>Heartwarming</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/NightmareFuel/TressOfTheEmeraldSea" class="subpage-link " title="The NightmareFuel page"> <span class="wrapper"><span class="spi nightmarefuel"></span>NightmareFuel</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/Trivia/TressOfTheEmeraldSea" class="subpage-link " title="The Trivia page"> <span class="wrapper"><span class="spi trivia"></span>Trivia</span></a> </li> <li> <a href="/pmwiki/pmwiki.php/WMG/TressOfTheEmeraldSea" class="subpage-link " title="The WMG page"> <span class="wrapper"><span class="spi wmg"></span>WMG</span></a> </li> <li class="create-subpage dropdown"> <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"> <span class="wrapper">Create Subpage <i class="fa fa-plus-circle"></i></span> </a> <select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);"> <option value="">- Create New -</option> <option value="/pmwiki/pmwiki.php/Analysis/TressOfTheEmeraldSea?action=edit">Analysis</option> <option value="/pmwiki/pmwiki.php/Archive/TressOfTheEmeraldSea?action=edit">Archive</option> <option value="/pmwiki/pmwiki.php/DerivativeWorks/TressOfTheEmeraldSea?action=edit">DerivativeWork…</option> <option value="/pmwiki/pmwiki.php/FanWorks/TressOfTheEmeraldSea?action=edit">FanWorks</option> <option value="/pmwiki/pmwiki.php/FanficRecs/TressOfTheEmeraldSea?action=edit">FanficRecs</option> <option value="/pmwiki/pmwiki.php/Haiku/TressOfTheEmeraldSea?action=edit">Haiku</option> <option value="/pmwiki/pmwiki.php/Headscratchers/TressOfTheEmeraldSea?action=edit">Headscratchers</option> <option value="/pmwiki/pmwiki.php/ImageLinks/TressOfTheEmeraldSea?action=edit">ImageLinks</option> <option value="/pmwiki/pmwiki.php/ImageSource/TressOfTheEmeraldSea?action=edit">ImageSource</option> <option value="/pmwiki/pmwiki.php/Laconic/TressOfTheEmeraldSea?action=edit">Laconic</option> <option value="/pmwiki/pmwiki.php/MediaNotes/TressOfTheEmeraldSea?action=edit">MediaNotes</option> <option value="/pmwiki/pmwiki.php/Newsletter/TressOfTheEmeraldSea?action=edit">Newsletter</option> <option value="/pmwiki/pmwiki.php/PlayingWith/TressOfTheEmeraldSea?action=edit">PlayingWith</option> <option value="/pmwiki/pmwiki.php/QuoteSource/TressOfTheEmeraldSea?action=edit">QuoteSource</option> <option value="/pmwiki/pmwiki.php/Quotes/TressOfTheEmeraldSea?action=edit">Quotes</option> <option value="/pmwiki/pmwiki.php/Recap/TressOfTheEmeraldSea?action=edit">Recap</option> <option value="/pmwiki/pmwiki.php/ReferencedBy/TressOfTheEmeraldSea?action=edit">ReferencedBy</option> <option value="/pmwiki/pmwiki.php/Shocking/TressOfTheEmeraldSea?action=edit">Shocking</option> <option value="/pmwiki/pmwiki.php/TearJerker/TressOfTheEmeraldSea?action=edit">TearJerker</option> <option value="/pmwiki/pmwiki.php/Timeline/TressOfTheEmeraldSea?action=edit">Timeline</option> <option value="/pmwiki/pmwiki.php/YMMV/TressOfTheEmeraldSea?action=edit">YMMV</option> </select> </li> </ul> </nav> <div id="main-article" class="article-content retro-folders"> <p><div class="quoteright" style="width:350px;" ><div class="lazy_load_img_box" style="padding-top:155.14%"><img src='https://static.tvtropes.org/pmwiki/pub/images/tress_of_the_emerald_sea.jpg' class='embeddedimage' border='0' alt='Tress of the Emerald Sea (Literature)' width=350 height=543></div></div></p><p><div class='indent'>In the middle of the ocean, there was a girl who lived upon a rock.<br data-format="\\" />This was not an ocean like the one you have imagined.<br data-format="\\" />Nor was the rock like the one you have imagined.<br data-format="\\" />The girl, however, <em>might</em> be as you imagined—assuming you imagined her as thoughtful, soft-spoken, and overly fond of collecting cups.</div></p><p>Tress is a very boring girl on a very boring island. She spends her day collecting cups, which she talks about with her very boring friend Charlie the gardener, who is most certainly not secretly the duke's son. No one else cares for either of them, but they enjoy their time together.</p><p>One day, the duke declares that his son must travel the kingdom and be married. Charlie (who, lo and behold, turns out to be the duke's son after all) promises Tress that he will do everything in his power to bore every potential suitor to death until his father has no choice but to bring him back to the island to be with Tress. Unfortunately, the duke catches wind of this, and after the first few failures sends Charlie off to sail the Midnight Sea and woo the sorceress. When his ship disappears, he is immediately declared dead, a more suitable heir is named, and everyone is happy.</p><p>Months pass, and Tress realizes that truly, no one cares. No one liked Charlie, who was always boring and never fighting or getting soldiers killed like a real noble should. The new heir is much better at that. It's much easier to just let it be, to let things continue as they always have.</p><p>This, Tress realizes, means that she'll have to rescue Charlie herself. Her first mission is to leave a home she has never wanted to leave—an island that she is forbidden from ever escaping.</p><p><em>Tress of the Emerald Sea</em> is a novel of <em><a class='twikilink' href='/pmwiki/pmwiki.php/Literature/TheCosmere' title='/pmwiki/pmwiki.php/Literature/TheCosmere' data-format='TGl0ZXJhdHVyZS9UaGVDb3NtZXJl'>The Cosmere</a></em> by <a class='twikilink' href='/pmwiki/pmwiki.php/Creator/BrandonSanderson' title='/pmwiki/pmwiki.php/Creator/BrandonSanderson' data-format='Q3JlYXRvci9CcmFuZG9uU2FuZGVyc29u'>Brandon Sanderson</a>, the first of his "secret projects" written during the Covid-19 pandemic.<hr data-format='——' /><h2>This novel provides examples of:</h2></p><p><ul ><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/AbnormalAmmo' title='/pmwiki/pmwiki.php/Main/AbnormalAmmo' data-format='QWJub3JtYWxBbW1v'>Abnormal Ammo</a>: Cannonballs are armed with spores and a charge of water to activate them, causing them to explode in a tangle of vines or some other debilitating substance.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/AlienSea' title='/pmwiki/pmwiki.php/Main/AlienSea' data-format='QWxpZW5TZWE='>Alien Sea</a>: The "seas" are massive reservoirs of colored pollen that rain down from the geostationary moons. Moisture causes the pollen to rapidly and violently grow, with the only thing that holds it back being salt and silver.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/AnimalCompanion' title='/pmwiki/pmwiki.php/Main/AnimalCompanion' data-format='QW5pbWFsQ29tcGFuaW9u'>Animal Companion</a>: Shortly after leaving, Tress meets a talking rat named Huck who teams up with her for the rest of her journey. <span class="spoiler" title="you can set spoilers visible by default on your profile" > He's really <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ItWasWithYouAllAlong' title='/pmwiki/pmwiki.php/Main/ItWasWithYouAllAlong' data-format='W1tJdFdhc1dpdGhZb3VBbGxBbG9uZyBDaGFybGllXV0='>Charlie</a> after being cursed.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/AssholeVictim' title='/pmwiki/pmwiki.php/Main/AssholeVictim' data-format='QXNzaG9sZVZpY3RpbQ=='>Asshole Victim</a>: The crew of <span class="spoiler" title="you can set spoilers visible by default on your profile" > the <em>Oot's Dream</em> are all covertly smugglers, and their captain is a lech. They鈥檙e also willing to enslave Huck because he鈥檚 a talking rat and to drug Tress bccause they believe she actually is a royal inspector. And they all end up dead as part of Crow's covert plan to turn her crew deadrunner. Despite this, the crew of the Crow's Song is troubled by their deaths since, while they didn't wish for their deaths, they recognize they were complicit in them. </span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ATeamFiring' title='/pmwiki/pmwiki.php/Main/ATeamFiring' data-format='QVRlYW1GaXJpbmc='>A-Team Firing</a>: Ann, for all her love of guns and cannons, can't shoot straight to save her life. She's more of a threat to the people <em>behind her</em> than in front. <span class="spoiler" title="you can set spoilers visible by default on your profile" >It's revealed to stem from a mix of undiagnosed micropsia and her own failures weighing on her confidence</span>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/BeneficialDisease' title='/pmwiki/pmwiki.php/Main/BeneficialDisease' data-format='QmVuZWZpY2lhbERpc2Vhc2U='>Beneficial Disease</a>: The aether parasite in Crow's blood is constantly leeching water from her body to send back to the prime aether on the moon, but it also uses its powers to protect her from other threats so that it can keep draining her.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheBigBoard' title='/pmwiki/pmwiki.php/Main/TheBigBoard' data-format='VGhlQmlnQm9hcmQ='>The Big Board</a>: The Sorceress has an incredibly detailed map of the planet on the floor of her tower. <span class="spoiler" title="you can set spoilers visible by default on your profile" > She needs it to adapt Aon Dor to work so far from home.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheBore' title='/pmwiki/pmwiki.php/Main/TheBore' data-format='VGhlQm9yZQ=='>The Bore</a>: Charlie is incredibly, unbelievably boring. His own servants, people explicitly hired to listen to him, usually find excuses to interrupt him so that they don't have to listen to his inane ramblings. Tress, of course, loves his stories, the way he makes up histories for the cups she shows him. When he has to marry a princess, he cranks this up until the knob falls off to make sure that no one will consider marrying him.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheBusCameBack' title='/pmwiki/pmwiki.php/Main/TheBusCameBack' data-format='VGhlQnVzQ2FtZUJhY2s='>The Bus Came Back</a>: <span class="spoiler" title="you can set spoilers visible by default on your profile" >Riina, a minor character from <em><a class='twikilink' href='/pmwiki/pmwiki.php/Literature/MistbornSecretHistory' title='/pmwiki/pmwiki.php/Literature/MistbornSecretHistory' data-format='TGl0ZXJhdHVyZS9NaXN0Ym9yblNlY3JldEhpc3Rvcnk='>Mistborn: Secret History</a></em>, returns after a seven-year real-world absence</span>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/CassandraTruth' title='/pmwiki/pmwiki.php/Main/CassandraTruth' data-format='Q2Fzc2FuZHJhVHJ1dGg='>Cassandra Truth</a>: The officers become slowly convinced that Tress is actually a member of the (debatably real) King's Mask, a cabal of assassins working directly for the king. Since the King's Masks allegedly have to deny they're a member when asked, her attempts to persuade them otherwise only serve to convince them more.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheChainOfHarm' title='/pmwiki/pmwiki.php/Main/TheChainOfHarm' data-format='VGhlQ2hhaW5PZkhhcm0='>The Chain of Harm</a>: Laggart's <a class='twikilink' href='/pmwiki/pmwiki.php/Main/FreudianExcuse' title='/pmwiki/pmwiki.php/Main/FreudianExcuse' data-format='RnJldWRpYW5FeGN1c2U='>Freudian Excuse</a> for his unpleasant behavior is <span class="spoiler" title="you can set spoilers visible by default on your profile" >that it was all he knew growing up. Tress' kindness shocks him into trying to be better</span>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ChekhovsGun' title='/pmwiki/pmwiki.php/Main/ChekhovsGun' data-format='Q2hla2hvdnNHdW4='>Chekhov's Gun</a>:<ul ><li> The heavy pewter tankard that Charlie sends Tress from his journeys and that Tress takes with her when she leaves the Rock turns out to be very useful several times in the story.</li><li> Two midnight spores that Tress accidentally leaves on her work table when she rushes out of her cabin are later used by <span class="spoiler" title="you can set spoilers visible by default on your profile" >Captain Crow to spy on the mutineers.</span></li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ChooseYourOwnReward' title='/pmwiki/pmwiki.php/Main/ChooseYourOwnReward' data-format='Q2hvb3NlWW91ck93blJld2FyZA=='>Choose Your Own Reward</a>: The dragon Xisis offers one major boon for anyone who can bring him a slave who is not afraid of the deadly spores that comprise his lair. When Captain Crow drags Tress to him, Tress convinces Xisis to take Crow instead, and so, she is granted the boon. As the only things that Tress wants are beyond Xisis' power, she asks instead for three small boons for her friends — a translation tablet for Fort, a pair of corrective glasses for Ann, and the location of Salay's long-missing father.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/CondescendingCompassion' title='/pmwiki/pmwiki.php/Main/CondescendingCompassion' data-format='Q29uZGVzY2VuZGluZ0NvbXBhc3Npb24='>Condescending Compassion</a>: The narrator makes a point of how <span class="spoiler" title="you can set spoilers visible by default on your profile" >Huck</span>'s "I didn't tell you to protect you" is basically a double whammy of "<a class='twikilink' href='/pmwiki/pmwiki.php/Main/ILied' title='/pmwiki/pmwiki.php/Main/ILied' data-format='SUxpZWQ='>I Lied</a>" and "you can't be trusted to make your own decisions" all rolled into a single line that's supposed to seem noble.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ContinuityNod' title='/pmwiki/pmwiki.php/Main/ContinuityNod' data-format='Q29udGludWl0eU5vZA=='>Continuity Nod</a>:<ul ><li> Charlie explains to Tress that a cup she got from a sailor was forged for an <a class='twikilink' href='/pmwiki/pmwiki.php/Literature/TheStormlightArchive' title='/pmwiki/pmwiki.php/Literature/TheStormlightArchive' data-format='W1tMaXRlcmF0dXJlL1RoZVN0b3JtbGlnaHRBcmNoaXZlIElyaWFsaV1d'>Iriali</a> nobleman — but then all Iriali suddenly disappeared from their island.</li><li> Tress mentions that Death has <a class='twikilink' href='/pmwiki/pmwiki.php/Literature/WaxAndWayne' title='/pmwiki/pmwiki.php/Literature/WaxAndWayne' data-format='W1tMaXRlcmF0dXJlL1dheEFuZFdheW5lIG5haWxzIGluIGhpcyBleWVzXV0='>nails in his eyes</a>.</li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/CurseEscapeClause' title='/pmwiki/pmwiki.php/Main/CurseEscapeClause' data-format='Q3Vyc2VFc2NhcGVDbGF1c2U='>Curse Escape Clause</a>: Apparently, all the Sorceress's curses include one purely out of sadism. She likes having her victims know that there <em>is</em> a way to break their curse and what it is, but takes care to make it either exceedingly difficult or profoundly horrifying.<ul ><li> Hoid's curse can be broken by returning him to the Sorceress's dwelling.</li><li> <span class="spoiler" title="you can set spoilers visible by default on your profile" >Charlie's curse requires that he bring the woman he loves to the Sorceress's dwelling, there to be cursed. Hoid manages to change it so that he can break the curse by bringing the woman he loves to <em>her</em> home, there to be <em>versed</em>.</span></li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DamselInDistress' title='/pmwiki/pmwiki.php/Main/DamselInDistress' data-format='RGFtc2VsSW5EaXN0cmVzcw=='>Damsel in Distress</a>: Tress notes that it's a pretty common fate for the women of most stories and suspects she's doomed to become one. <span class="spoiler" title="you can set spoilers visible by default on your profile" >She actually does get captured by the Sorceress at the end, but comes to realize that everyone needs help every once in a while, and having earned the love and respect of people who'll risk their life for yours is quite the accomplishment in and of itself. Also, she uses it as an opportunity to distract the Sorceress, giving her crew the opening they need to get Hoid into the tower.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ADayInTheLimelight' title='/pmwiki/pmwiki.php/Main/ADayInTheLimelight' data-format='QURheUluVGhlTGltZWxpZ2h0'>A Day in the Limelight</a>: Zigzagged. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Hoid is part of the narrative to an unusual degree, but has been turned into a <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Cloudcuckoolander' title='/pmwiki/pmwiki.php/Main/Cloudcuckoolander' data-format='e3tDbG91ZGN1Y2tvb2xhbmRlcn19'>Cloudcuckoolander</a> by Riina's curse, which he let happen in order to finally gain the power of <span class='esc-seq' title='non-wikiword'>AonDor</span>, the magic of <em><a class='twikilink' href='/pmwiki/pmwiki.php/Literature/Elantris' title='/pmwiki/pmwiki.php/Literature/Elantris' data-format='e3tMaXRlcmF0dXJlL0VsYW50cmlzfX0='>Elantris</a></em>. He is very much not himself during the events of the story, but back to normal by the time he narrates the tale.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheDeadHaveNames' title='/pmwiki/pmwiki.php/Main/TheDeadHaveNames' data-format='VGhlRGVhZEhhdmVOYW1lcw=='>The Dead Have Names</a>: While all the unimportant sailors are labeled "Dougs" to not clog up the story, <span class="spoiler" title="you can set spoilers visible by default on your profile" >Hoid does give the name and history of a single Doug, Pakson, after he's killed by the Crimson Sea.</span> He also makes the point a few times that, in fact, they all had histories and personalities, with examples, and that he regrets not having the time to detail them all.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DealWithTheDevil' title='/pmwiki/pmwiki.php/Main/DealWithTheDevil' data-format='RGVhbFdpdGhUaGVEZXZpbA=='>Deal with the Devil</a>: <span class="spoiler" title="you can set spoilers visible by default on your profile" >It turns out that Hoid made one with Riina. He let her curse him into a blithering idiot, but if he ever broke the curse he would become an Elantrian.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DisabilityAidLoss' title='/pmwiki/pmwiki.php/Main/DisabilityAidLoss' data-format='RGlzYWJpbGl0eUFpZExvc3M='>Disability Aid Loss</a>: Fort is deaf and uses a Nalthian tablet to communicate - it translates everybody else's text to speech for him, and allows him to type what he'd like to say. Crow destroys it as punishment for plotting a mutiny, leaving him without a way to talk to others.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DramaPreservingHandicap' title='/pmwiki/pmwiki.php/Main/DramaPreservingHandicap' data-format='RHJhbWFQcmVzZXJ2aW5nSGFuZGljYXA='>Drama-Preserving Handicap</a>: Hoid is one of the most powerful and cunning members of the Cosmere <em>and</em> knows where the Sorceress is located. Shame he spends the novel cursed into a blathering idiot instead of helping.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/EstablishingCharacterMoment' title='/pmwiki/pmwiki.php/Main/EstablishingCharacterMoment' data-format='RXN0YWJsaXNoaW5nQ2hhcmFjdGVyTW9tZW50'>Establishing Character Moment</a>: Crow leaves Tress to cling for her life to the side of her ship, only allows the crew to <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HopeSpot' title='/pmwiki/pmwiki.php/Main/HopeSpot' data-format='W1tIb3BlU3BvdCBwdWxsIGhlciB1cF1d'>pull her up</a> after fifteen minutes, and then tries to order her thrown overboard anyway. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Unsurprisingly, she doesn't get better.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/FantasyGunControl' title='/pmwiki/pmwiki.php/Main/FantasyGunControl' data-format='RmFudGFzeUd1bkNvbnRyb2w='>Fantasy Gun Control</a>: <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Averted' title='/pmwiki/pmwiki.php/Main/Averted' data-format='e3tBdmVydGVkfX0='>Averted</a>, guns have been invented on Tress's world and are used repeatedly throughout the story.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/FantasticFirearms' title='/pmwiki/pmwiki.php/Main/FantasticFirearms' data-format='RmFudGFzdGljRmlyZWFybXM='>Fantastic Firearms</a>: In place of black powder, firearms and cannons use zephyr spores, an abundant natural resource that explosively release air when exposed to water.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/FightsLikeANormal' title='/pmwiki/pmwiki.php/Main/FightsLikeANormal' data-format='RmlnaHRzTGlrZUFOb3JtYWw='>Fights Like a Normal</a>: Crow's symbiotic aether can act with incredible speed and power to protect her, but she suppresses it in a fight specifically to <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HopeCrusher' title='/pmwiki/pmwiki.php/Main/HopeCrusher' data-format='W1tIb3BlQ3J1c2hlciBydWIgaGVyIGVuZW1pZXMmIzAzOTsgZmFjZXNdXQ=='>rub her enemies' faces</a> in how dangerous she is without any (overt) supernatural help.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/FreudianExcuseIsNoExcuse' title='/pmwiki/pmwiki.php/Main/FreudianExcuseIsNoExcuse' data-format='RnJldWRpYW5FeGN1c2VJc05vRXhjdXNl'>Freudian Excuse Is No Excuse</a>: After learning that Captain Crow <span class="spoiler" title="you can set spoilers visible by default on your profile" >is dying from a magic parasite and has weeks to live</span>, Tress starts to feel sorry for her. <span class="spoiler" title="you can set spoilers visible by default on your profile" >But Captain Crow really is just a remorseless, bloodthirsty pirate who murders several people and is willing to sell another into slavery just to save her own life. Ultimately, Tress has no choice but to find a way to defeat her.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Geas' title='/pmwiki/pmwiki.php/Main/Geas' data-format='e3tHZWFzfX0='>Geas</a>: Hoid's narration uses this term to describe the Sorceress' enchantments. She gives specific conditions that the subject must meet in order for their curse to be broken, but they're magically prevented from talking about their curses so they can't <em>tell</em> people what needs to be done to free them.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/GodOfTheMoon' title='/pmwiki/pmwiki.php/Main/GodOfTheMoon' data-format='R29kT2ZUaGVNb29u'>God of the Moon</a>: People on Lumar worship the twelve moons as gods, which Hoid notes is understandable when they hover physics-defyingly low in the sky and rain magical spores down on the planet.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HeelRealization' title='/pmwiki/pmwiki.php/Main/HeelRealization' data-format='SGVlbFJlYWxpemF0aW9u'>Heel Realization</a>: <span class="spoiler" title="you can set spoilers visible by default on your profile" >Laggart</span> has one when he comes to realize that Tress' kindness is just that: completely authentic kindness. Having spent his life thinking everyone everyone would get you if you didn't get them first, he's <em>horrified</em> to realize that maybe <em>he's</em> the only cruel one. <span class="spoiler" title="you can set spoilers visible by default on your profile" >While he's still not perfect, the epilogue would confirm that he is improving.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HeroicSacrifice' title='/pmwiki/pmwiki.php/Main/HeroicSacrifice' data-format='SGVyb2ljU2FjcmlmaWNl'>Heroic Sacrifice</a>: Tress is ready for it several times, in order to protect the crew from Captain Crow and the Sorceress. The crew don't want to hear it.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Homage' title='/pmwiki/pmwiki.php/Main/Homage' data-format='e3tIb21hZ2V9fQ=='>Homage</a>: Sanderson stated that the story was directly inspired by <em><a class='twikilink' href='/pmwiki/pmwiki.php/Film/ThePrincessBride' title='/pmwiki/pmwiki.php/Film/ThePrincessBride' data-format='RmlsbS9UaGVQcmluY2Vzc0JyaWRl'>The Princess Bride</a></em>, both in content and in light fairy-tale vibe.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HostileWeather' title='/pmwiki/pmwiki.php/Main/HostileWeather' data-format='SG9zdGlsZVdlYXRoZXI='>Hostile Weather</a>: What makes the Crimson Sea so dangerous is the unpredictable storms that can activate the spores. <span class="spoiler" title="you can set spoilers visible by default on your profile" >One storm nearly hits the ship <em>twice</em> and two more intersect right over the ship, which even Hoid <a class='twikilink' href='/pmwiki/pmwiki.php/Main/LampshadeHanging' title='/pmwiki/pmwiki.php/Main/LampshadeHanging' data-format='e3tsYW1wc2hhZGV8SGFuZ2luZ319cw=='>lampshades</a> as being hard to interpret as anything other than malevolent.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HoistByHerOwnPetard' title='/pmwiki/pmwiki.php/Main/HoistByHerOwnPetard' data-format='SG9pc3RCeUhlck93blBldGFyZA=='>Hoist by Her Own Petard</a>: Captain Crow plots to <span class="spoiler" title="you can set spoilers visible by default on your profile" >sell Tress into slavery to a dragon in exchange for a magical cure for her terminal illness.</span> However, when she <span class="spoiler" title="you can set spoilers visible by default on your profile" >drags Tress to Xisis, Tress tells him that she is the one selling Captain Crow to him as a slave. Crow tries to argue, but the dragon decides Crow would make a more useful servant and accepts Tress's offer.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/IControlMyMinionsThrough' title='/pmwiki/pmwiki.php/Main/IControlMyMinionsThrough' data-format='SUNvbnRyb2xNeU1pbmlvbnNUaHJvdWdo'>I Control My Minions Through...</a>: Crow controls her crew through fear. Not only is she practically unkillable, she's genuinely terrifying even without her powers. She tricks the crew into becoming deadrunners, then frightens them under heel. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Tress instead wins their loyalty much faster and firmer through kindness.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ImprobableAimingSkills' title='/pmwiki/pmwiki.php/Main/ImprobableAimingSkills' data-format='SW1wcm9iYWJsZUFpbWluZ1NraWxscw=='>Improbable Aiming Skills</a>: Not only can Crow pick people off a distant ship in a naval battle, she can do it with an archaic musket that doesn't shoot straight. The <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TimeAbyss' title='/pmwiki/pmwiki.php/Main/TimeAbyss' data-format='VGltZUFieXNz'>Time Abyss</a> Hoid concedes that she's one of the best crack shots he's ever seen.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/IncrediblyLameFun' title='/pmwiki/pmwiki.php/Main/IncrediblyLameFun' data-format='SW5jcmVkaWJseUxhbWVGdW4='>Incredibly Lame Fun</a>: Tress collects cups. She was having enough fun with that, and then Charlie started making up stories about the cups. Everyone else on the island finds both of them insufferably boring.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ItWasWithYouAllAlong' title='/pmwiki/pmwiki.php/Main/ItWasWithYouAllAlong' data-format='SXRXYXNXaXRoWW91QWxsQWxvbmc='>It Was with You All Along</a>: Hoid directly mentions this, noting that a lot of adventures could have been avoided if the heroine just checked to make sure she didn't already have what she was looking for.<ul ><li> Hoid keeps insisting that Tress already has everything she needs to defeat Captain Crow, even as Crow is <span class="spoiler" title="you can set spoilers visible by default on your profile" >taking Tress to Xisis.</span> It turns out that what she needs to defeat Captain Crow is <span class="spoiler" title="you can set spoilers visible by default on your profile" >Captain Crow. When she takes Tress to trade to the Dragon, Tress simply trades <em>her</em> instead.</span></li><li> <span class="spoiler" title="you can set spoilers visible by default on your profile" >Huck the talking rat <em>is</em> Charlie after the Sorceress cursed him. Even if Tress had known this, she still would have had to go on her quest, but things would have been a lot easier if she knew the whole time.</span></li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/KickTheDog' title='/pmwiki/pmwiki.php/Main/KickTheDog' data-format='S2lja1RoZURvZw=='>Kick the Dog</a>: After seeing that she accidentally made Tress happy, Captain Crow kicks her in the stomach to make up for it.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/KingIncognito' title='/pmwiki/pmwiki.php/Main/KingIncognito' data-format='S2luZ0luY29nbml0bw=='>King Incognito</a>: Charlie claims to be a groundskeeper rather than the duke's son to get around his inter-class relationship with Tress. It's...<a class='twikilink' href='/pmwiki/pmwiki.php/Main/ImplausibleDeniability' title='/pmwiki/pmwiki.php/Main/ImplausibleDeniability' data-format='W1tJbXBsYXVzaWJsZURlbmlhYmlsaXR5IG5vdCBhIGdyZWF0IGRpc2d1aXNlXV0='>not a great disguise</a>, to the point that it's a running gag between them.<div class='indent'><strong>Charlie:</strong> Tress, I'm afraid I've lied to you. You see...I'm not the groundskeeper. I'm...um...the duke's son.<br data-format="\\" /><strong>Tress:</strong> Amazing. <a class='twikilink' href='/pmwiki/pmwiki.php/Main/SarcasmMode' title='/pmwiki/pmwiki.php/Main/SarcasmMode' data-format='W1tTYXJjYXNtTW9kZSBXaG8gd291bGQgaGF2ZSB0aG91Z2h0IHRoYXQgQ2hhcmxpZSB0aGUgZ3JvdW5kc2tlZXBlciBhbmQgQ2hhcmxlcyB0aGUgZHVrZSYjMDM5O3MgaGVpciB3b3VsZCBiZSB0aGUgc2FtZSBwZXJzb24sIGNvbnNpZGVyaW5nIHRoZXkmIzAzOTtyZSB0aGUgc2FtZSBhZ2UsIGxvb2sgdGhlIHNhbWUsIGFuZCB3ZWFyIHRoZSBzYW1lIGNsb3RoaW5nP11d'>Who would have thought that Charlie the groundskeeper and Charles the duke's heir would be the same person, considering they're the same age, look the same, and wear the same clothing?</a></div></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/KnowWhenToFoldEm' title='/pmwiki/pmwiki.php/Main/KnowWhenToFoldEm' data-format='S25vd1doZW5Ub0ZvbGRFbQ=='>Know When to Fold 'Em</a>: <span class="spoiler" title="you can set spoilers visible by default on your profile" >Surrounded by guns and a newly-Elantrian Hoid, Riina decides to flee the planet as Tress demanded. Hoid notes that the ancient witch actually may have been able to win that fight, but one doesn't become an <strong>ancient</strong> witch by fighting unnecessary battles.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/LemonyNarrator' title='/pmwiki/pmwiki.php/Main/LemonyNarrator' data-format='TGVtb255TmFycmF0b3I='>Lemony Narrator</a>: <em>Very</em> lemony and sarcastic. Fittingly, it's <span class="spoiler" title="you can set spoilers visible by default on your profile" >Hoid, the Cosmere's resident <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DeadpanSnarker' title='/pmwiki/pmwiki.php/Main/DeadpanSnarker' data-format='RGVhZHBhblNuYXJrZXI='>Deadpan Snarker</a> supreme</span>. From the first five chapters alone:<div class='indent'> <strong><span class="spoiler" title="you can set spoilers visible by default on your profile" > Hoid</span></strong>: They were so good at being unique, they often did it together.</div><div class='indent'> <strong><span class="spoiler" title="you can set spoilers visible by default on your profile" > Hoid</span></strong>: There was a tree once, but it did the sensible thing and died 3 years back.</div><div class='indent'> <strong><span class="spoiler" title="you can set spoilers visible by default on your profile" > Hoid</span></strong>: He was six and a half feet tall and had a jaw so straight, it made other men question if they were</div><div class='indent'> <strong><span class="spoiler" title="you can set spoilers visible by default on your profile" > Hoid</span></strong>: It was delivered by <span class="spoiler" title="you can set spoilers visible by default on your profile" > Hoid the cabin boy.</span> (Yes, that鈥檚 me. What tipped you off? Was it perhaps the name?)</div></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MaybeMagicMaybeMundane' title='/pmwiki/pmwiki.php/Main/MaybeMagicMaybeMundane' data-format='TWF5YmVNYWdpY01heWJlTXVuZGFuZQ=='>Maybe Magic, Maybe Mundane</a>: The weather in the Crimson Sea acts so bizarre that many believe it's controlled by an evil spirit that's intentional screwing with people for fun. Given that this is the <a class='twikilink' href='/pmwiki/pmwiki.php/Main/HighFantasy' title='/pmwiki/pmwiki.php/Main/HighFantasy' data-format='SGlnaEZhbnRhc3k='>High Fantasy</a> Cosmere series, believing in a spirit that controls the weather is <a class='twikilink' href='/pmwiki/pmwiki.php/Literature/TheStormlightArchive' title='/pmwiki/pmwiki.php/Literature/TheStormlightArchive' data-format='W1t7e0xpdGVyYXR1cmUvVGhlU3Rvcm1saWdodEFyY2hpdmV9fSBjb21wbGV0ZWx5IHJhdGlvbmFsXV0='>completely rational</a>, but Hoid has made extensive study of the planet and hasn't found one. He <em>still</em> finds it hard to believe their travails were mere ill luck.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MageTower' title='/pmwiki/pmwiki.php/Main/MageTower' data-format='TWFnZVRvd2Vy'>Mage Tower</a>: The <a class='twikilink' href='/pmwiki/pmwiki.php/Main/EvilSorcerer' title='/pmwiki/pmwiki.php/Main/EvilSorcerer' data-format='W1tFdmlsU29yY2VyZXIgU29yY2VyZXNzXV0='>Sorceress</a>' tower is built on an island in a deadly spore sea, walled with <a class='twikilink' href='/pmwiki/pmwiki.php/Main/AntiMagic' title='/pmwiki/pmwiki.php/Main/AntiMagic' data-format='QW50aU1hZ2lj'>Anti-Magic</a>, and contains incredibly advanced <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Magitek' title='/pmwiki/pmwiki.php/Main/Magitek' data-format='e3tNYWdpdGVrfX0='>Magitek</a> inside. <span class="spoiler" title="you can set spoilers visible by default on your profile" >It's the spaceship she used to travel to the planet, and she <a class='twikilink' href='/pmwiki/pmwiki.php/Main/KnowWhenToFoldEm' title='/pmwiki/pmwiki.php/Main/KnowWhenToFoldEm' data-format='W1tLbm93V2hlblRvRm9sZEVtIGxlYXZlcyBpbiBpdF1d'>leaves in it</a> when defeated.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MinionManipulatedIntoVillainy' title='/pmwiki/pmwiki.php/Main/MinionManipulatedIntoVillainy' data-format='TWluaW9uTWFuaXB1bGF0ZWRJbnRvVmlsbGFpbnk='>Minion Manipulated into Villainy</a>: <span class="spoiler" title="you can set spoilers visible by default on your profile" >Crow's plan is to get her entire crew branded as 'Deadrunners' (pirates who sink ships, particularly hated by the authorities), so they can't abandon her once they discover her plan to sail to the Crimson Sea.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MistakenForBadass' title='/pmwiki/pmwiki.php/Main/MistakenForBadass' data-format='TWlzdGFrZW5Gb3JCYWRhc3M='>Mistaken for Badass</a>: Salay becomes convinced that Tress must be an undercover <a class='twikilink' href='/pmwiki/pmwiki.php/Main/CloakAndDagger' title='/pmwiki/pmwiki.php/Main/CloakAndDagger' data-format='W1tDbG9ha0FuZERhZ2dlciBLaW5nJiMwMzk7cyBNYXNrXV0='>King's Mask</a>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MundaneMadeAwesome' title='/pmwiki/pmwiki.php/Main/MundaneMadeAwesome' data-format='TXVuZGFuZU1hZGVBd2Vzb21l'>Mundane Made Awesome</a>: At one point Tress does something so amazing and majestic that Hoid spends several paragraphs building it up, describing it as more rare than bravery and heroism: <span class="spoiler" title="you can set spoilers visible by default on your profile" >realizing that she doesn't have enough evidence to support her theory and deciding to gather more. As Hoid puts it, hundreds of stories would have ended sooner if the heroes had admitted they might be wrong.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MundaneSolution' title='/pmwiki/pmwiki.php/Main/MundaneSolution' data-format='TXVuZGFuZVNvbHV0aW9u'>Mundane Solution</a>: How does <span class="spoiler" title="you can set spoilers visible by default on your profile" >Xisis</span> cure Ann of her <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ATeamFiring' title='/pmwiki/pmwiki.php/Main/ATeamFiring' data-format='W1tBVGVhbUZpcmluZyBhY2N1cmFjeSBpc3N1ZXNdXQ=='>accuracy issues</a>? Diagnose her with micropsia and give her prescription goggles.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/MythologyGag' title='/pmwiki/pmwiki.php/Main/MythologyGag' data-format='TXl0aG9sb2d5R2Fn'>Mythology Gag</a>:<ul ><li> Charlie manages to get out of a formal rich person party the same way <a class='twikilink' href='/pmwiki/pmwiki.php/Literature/TheBandsOfMourning' title='/pmwiki/pmwiki.php/Literature/TheBandsOfMourning' data-format='W1tMaXRlcmF0dXJlL1RoZUJhbmRzT2ZNb3VybmluZyBTdGVyaXNdXQ=='>Steris</a> did: intentionally vomit on the table.</li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/NakedPeopleAreFunny' title='/pmwiki/pmwiki.php/Main/NakedPeopleAreFunny' data-format='TmFrZWRQZW9wbGVBcmVGdW5ueQ=='>Naked People Are Funny</a>: In the epilogue, <span class="spoiler" title="you can set spoilers visible by default on your profile" >a newly-transformed Charlie walks out on deck dresses only in his pirate hat. After so long in his cursed form, he'd forgotten that clothes were a thing</span>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/NobodyPoops' title='/pmwiki/pmwiki.php/Main/NobodyPoops' data-format='Tm9ib2R5UG9vcHM='>Nobody Poops</a>: Averted. There's a story about a Tosher who has to go through the sewage of everyone in a castle and he even converses with the king while the latter is busy. Tress is mentioned to void her bowels twice as well.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/NoNameGiven' title='/pmwiki/pmwiki.php/Main/NoNameGiven' data-format='Tm9OYW1lR2l2ZW4='>No Name Given</a>: The Duke, the Duchess, the King, and the Princesses are all only ever referred to by their titles. The Sorceress is <span class="spoiler" title="you can set spoilers visible by default on your profile" >mostly this, until Hoid name-drops her in the final chapter</span>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/NondescriptNastyNutritious' title='/pmwiki/pmwiki.php/Main/NondescriptNastyNutritious' data-format='Tm9uZGVzY3JpcHROYXN0eU51dHJpdGlvdXM='>Nondescript, Nasty, Nutritious</a>: Verdant spore vines are edible in a pinch when fully grown — they're not nutritionally complete and are disparaged as "weeds", but they beat starving to death on the ocean.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ThePardon' title='/pmwiki/pmwiki.php/Main/ThePardon' data-format='VGhlUGFyZG9u'>The Pardon</a>: Part of the reason Salay, Ann, and Fort help Tress is because the King's Mask could petition the king for a royal pardon for their piracy. Unfortunately for them, Tress isn't a member of the King's Mask. <span class="spoiler" title="you can set spoilers visible by default on your profile" >The crew does ultimately earn a pardon and more for driving the Sorceress off Lumar.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/PerpetualFrowner' title='/pmwiki/pmwiki.php/Main/PerpetualFrowner' data-format='UGVycGV0dWFsRnJvd25lcg=='>Perpetual Frowner</a>: The duke of the Rock is scowling almost all the time he is on page. Tress notes that she saw him smile only one time: during the punishment of a man who tried to escape the island. And even then, he showed far too many teeth.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/PirateGirl' title='/pmwiki/pmwiki.php/Main/PirateGirl' data-format='UGlyYXRlR2lybA=='>Pirate Girl</a>: Most of the female characters, even Tress eventually, but especially Captain Crow.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/PunchClockVillain' title='/pmwiki/pmwiki.php/Main/PunchClockVillain' data-format='UHVuY2hDbG9ja1ZpbGxhaW4='>Punch-Clock Villain</a>: The crew of the <em>Crow's Song</em> might be pirates, but they're pretty friendly aside from that. All but Crow and Laggart are even against killing and are fine with just taking a ransom fee.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/PragmaticVillainy' title='/pmwiki/pmwiki.php/Main/PragmaticVillainy' data-format='UHJhZ21hdGljVmlsbGFpbnk='>Pragmatic Villainy</a>: Discussed. Most pirates try to avoid killing or sinking ships, because the authorities are comparatively lenient on theft.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ProudHunterRace' title='/pmwiki/pmwiki.php/Main/ProudHunterRace' data-format='UHJvdWRIdW50ZXJSYWNl'>Proud Hunter Race</a>: A deconstructive parody with Fort's people. They once played the trope straight, but as the world grew more complicated, their society had to broaden the definition of "hunt" to include things like baking and wedding planning just to keep things running. Fort's "hunt" is for particularly good deals, and whenever he gets one he writes home so they can hang it on the wall.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/RedShirt' title='/pmwiki/pmwiki.php/Main/RedShirt' data-format='UmVkU2hpcnQ='>Red Shirt</a>: The narration lumps all the unimportant rating crew members together under the term "Doug". <span class="spoiler" title="you can set spoilers visible by default on your profile" > Only one of them ends up dying, and its an event has a modest impact on both the characters and the narration</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/RefugeInAudacity' title='/pmwiki/pmwiki.php/Main/RefugeInAudacity' data-format='UmVmdWdlSW5BdWRhY2l0eQ=='>Refuge in Audacity</a>: Tress is surprisingly adept at this, when push comes to shove.<ul ><li> During her <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DarkestHour' title='/pmwiki/pmwiki.php/Main/DarkestHour' data-format='RGFya2VzdEhvdXI='>Darkest Hour</a> when <span class="spoiler" title="you can set spoilers visible by default on your profile" >Crow was going to sell her into slavery to the dragon Xisis, Tress instead pretends that <em>she</em> actually came to sell <em>Crow</em>.</span> The <span class="spoiler" title="you can set spoilers visible by default on your profile" >dragon</span> is so amused by the obvious bluff that he decides to hear her out.</li><li> After Tress watches <span class="spoiler" title="you can set spoilers visible by default on your profile" >Hoid become an Elantrian, she commands the blatantly powerful demigod to handle the Sorceress for her, on the grounds that he's still her cabin boy</span>.</li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/RewatchBonus' title='/pmwiki/pmwiki.php/Main/RewatchBonus' data-format='UmV3YXRjaEJvbnVz'>Rewatch Bonus</a>: A lot of Huck's stories make more sense when you know <span class="spoiler" title="you can set spoilers visible by default on your profile" >that he's actually Charlie.</span><ul ><li> When Huck first meets Tress, he mentions that his usual strategy is to talk so much that his captors think he's not worth keeping. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Exactly the strategy he used as Charlie.</span></li><li> Huck once knew a girl who was deaf but danced beautifully. <span class="spoiler" title="you can set spoilers visible by default on your profile" >One of the princesses Charlie was supposed to marry was deaf</span>.</li><li> When Tress describes her island, Huck remarks that he came from a similar place. <span class="spoiler" title="you can set spoilers visible by default on your profile" >They're the same island</span>.</li><li> Tress asks Huck if his family could talk like him, and he says yes. <span class="spoiler" title="you can set spoilers visible by default on your profile" >He did not say that they were rats like him.</span> He also mentions that his family drove him out into the world before he was ready, which <span class="spoiler" title="you can set spoilers visible by default on your profile" >is what happened to Charlie</span>.</li></ul></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ShownTheirWork' title='/pmwiki/pmwiki.php/Main/ShownTheirWork' data-format='U2hvd25UaGVpcldvcms='>Shown Their Work</a>: As Hoid notes, the spore seas act like water seas due to the process of <a class='urllink' href='https://en.wikipedia.org/wiki/Fluidization'>fluidization,<img src="https://static.tvtropes.org/pmwiki/pub/external_link.gif" height="12" width="12" style="border:none;" /></a> a completely real phenomenon where air blown through a loose medium (typically sand, but in this case spores) makes it act like water. Massive vents beneath the seas blow out air almost constantly, stirring the spores and giving them water-like tides and currents.<div class='indent'><strong>Hoid:</strong> The science is really quite fascinating.</div></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/SleazyPolitician' title='/pmwiki/pmwiki.php/Main/SleazyPolitician' data-format='U2xlYXp5UG9saXRpY2lhbg=='>Sleazy Politician</a>: The Verdant King was complicit in the Duke's plot to <span class="spoiler" title="you can set spoilers visible by default on your profile" >kill off Charlie by sending him to the Sorceress</span>. By the epilogue, <span class="spoiler" title="you can set spoilers visible by default on your profile" >he's apparently claimed that he had faith in them all along</span>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/SufficientlyAnalyzedMagic' title='/pmwiki/pmwiki.php/Main/SufficientlyAnalyzedMagic' data-format='U3VmZmljaWVudGx5QW5hbHl6ZWRNYWdpYw=='>Sufficiently Analyzed Magic</a>: Fort's "Awakened tablet with Connection circuits" is blatantly some form of magically-created tablet computer, complete with predictive text. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Riina takes this even further, creating full blown Investiture computers, AI, cameras, and even a rocket ship.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/StealthPun' title='/pmwiki/pmwiki.php/Main/StealthPun' data-format='U3RlYWx0aFB1bg=='>Stealth Pun</a>: Tress collects cups, and one of her favorites has a butterfly on it. A <a class='twikilink' href='/pmwiki/pmwiki.php/Literature/ThePrincessBride' title='/pmwiki/pmwiki.php/Literature/ThePrincessBride' data-format='W1tMaXRlcmF0dXJlL1RoZVByaW5jZXNzQnJpZGUgYnV0dGVyZmx5IGN1cF1d'>butterfly cup</a>.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheThreeTrials' title='/pmwiki/pmwiki.php/Main/TheThreeTrials' data-format='VGhlVGhyZWVUcmlhbHM='>The Three Trials</a>: To win Charlie back from the Sorceress, Tress has to cross the deadly Midnight Sea, get past the indestructible <a class='twikilink' href='/pmwiki/pmwiki.php/Main/GateGuardian' title='/pmwiki/pmwiki.php/Main/GateGuardian' data-format='W1tHYXRlR3VhcmRpYW4gZ3VhcmRpYW5zXV0='>guardians</a> of her island, and find a way into her magic-proof sealed tower. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Subverted: the Sorceress is a petty sadist who has no intention of honoring the "victory" of reaching her. Not to mention she has a secret fourth trial in the form of hidden shoals surrounding her island.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ThroughHisStomach' title='/pmwiki/pmwiki.php/Main/ThroughHisStomach' data-format='VGhyb3VnaEhpc1N0b21hY2g='>Through His Stomach</a>: Tress managed to win over the Dougs of the <em>Crow's Song</em> by helping Fort prepare one meal a day, plus dessert.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TongueTied' title='/pmwiki/pmwiki.php/Main/TongueTied' data-format='VG9uZ3VlVGllZA=='>Tongue-Tied</a>: The Sorceress' <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Curse' title='/pmwiki/pmwiki.php/Main/Curse' data-format='e3tDdXJzZX19cw=='>Curses</a> prevent the victims from telling others that they're cursed or what the <a class='twikilink' href='/pmwiki/pmwiki.php/Main/CurseEscapeClause' title='/pmwiki/pmwiki.php/Main/CurseEscapeClause' data-format='Q3Vyc2VFc2NhcGVDbGF1c2U='>Curse Escape Clause</a> is — if they try, they break down stuttering. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Huck's caginess about his background is <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Foreshadowing' title='/pmwiki/pmwiki.php/Main/Foreshadowing' data-format='e3tGb3Jlc2hhZG93aW5nfX0='>Foreshadowing</a>.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ATragedyOfImpulsiveness' title='/pmwiki/pmwiki.php/Main/ATragedyOfImpulsiveness' data-format='QVRyYWdlZHlPZkltcHVsc2l2ZW5lc3M='>A Tragedy of Impulsiveness</a>: Tress actually avoids this at every opportunity, carefully gathering information and planning her actions instead of jumping to conclusions. The narrator considers it one of the rarest traits for a story's hero.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TrappedInVillainy' title='/pmwiki/pmwiki.php/Main/TrappedInVillainy' data-format='VHJhcHBlZEluVmlsbGFpbnk='>Trapped in Villainy</a>: Crow's crew believe that the sinking of <span class="spoiler" title="you can set spoilers visible by default on your profile" ><em>Oot's Dream</em></span> marks them forever as deadrunners, meaning they have to survive through piracy alone and will be killed or executed if they ever falter. <span class="spoiler" title="you can set spoilers visible by default on your profile" >Crow <a class='twikilink' href='/pmwiki/pmwiki.php/Main/Invokedtrope' title='/pmwiki/pmwiki.php/Main/Invokedtrope' data-format='e3tpbnZva2VkfHRyb3BlfX0='>invoked</a> this to force them to obey her, and Tress ultimately <a class='twikilink' href='/pmwiki/pmwiki.php/Main/DefiedTrope' title='/pmwiki/pmwiki.php/Main/DefiedTrope' data-format='e3tkZWZpZXxkVHJvcGV9fXM='>defies</a> it by getting them pardoned.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheUnreveal' title='/pmwiki/pmwiki.php/Main/TheUnreveal' data-format='VGhlVW5yZXZlYWw='>The Unreveal</a>: By the epilogue, <span class="spoiler" title="you can set spoilers visible by default on your profile" >Hoid alters the terms of Charlie's curse so that it breaks when he writes Tress a poem. Hoid refuses to share what the poem was, saying it's only for Tress to know.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/UnreliableNarrator' title='/pmwiki/pmwiki.php/Main/UnreliableNarrator' data-format='VW5yZWxpYWJsZU5hcnJhdG9y'>Unreliable Narrator</a>: Downplayed. While Hoid does relay the events more or less truthfully his sarcasm can slip in, such as the characters ALSO referring to the <a class='twikilink' href='/pmwiki/pmwiki.php/Main/RedShirts' title='/pmwiki/pmwiki.php/Main/RedShirts' data-format='W1tSZWRTaGlydHMgdW5pbXBvcnRhbnQgY3Jld21lbWJlcnNdXQ=='>unimportant crewmembers</a> as Dougs and claiming that everyone was impressed by nobles who got the most people killed.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/UriahGambit' title='/pmwiki/pmwiki.php/Main/UriahGambit' data-format='VXJpYWhHYW1iaXQ='>Uriah Gambit</a>: When Charlie makes too much of a nuisance of himself, he is sent to sail the Midnight Sea and attempt to woo the sorceress who lives there. He is declared dead basically the second his ship is out of sight. It technically works as the Sorceress does capture him, but she decides to hold him for ransom <span class="spoiler" title="you can set spoilers visible by default on your profile" >and turn him into a rat</span> rather than kill him.</li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/WeDoTheImpossible' title='/pmwiki/pmwiki.php/Main/WeDoTheImpossible' data-format='V2VEb1RoZUltcG9zc2libGU='>We Do the Impossible</a>: In the epilogue, <span class="spoiler" title="you can set spoilers visible by default on your profile" >the crew are now the only people who can reliablly sail the Crimson and the Midnight Seas. Access to the Seas beyond has made them very wealthy.</span></li><li> <a class='twikilink' href='/pmwiki/pmwiki.php/Main/TheWorfEffect' title='/pmwiki/pmwiki.php/Main/TheWorfEffect' data-format='VGhlV29yZkVmZmVjdA=='>The Worf Effect</a>:<ul ><li> When Hoid shows up, he's been driven insane. Tress soon learns this is because the Sorceress cursed him. <span class="spoiler" title="you can set spoilers visible by default on your profile" >This gets <a class='twikilink' href='/pmwiki/pmwiki.php/Main/PlayedWith' title='/pmwiki/pmwiki.php/Main/PlayedWith' data-format='UGxheWVkV2l0aA=='>Played With</a> though. It turns out Hoid <em>let</em> the Sorceress curse him as part of a bet. After his sanity is restored, he blocks another curse with his own spell. Having said that though, Hoid himself admits the Sorceress might be able to defeat him in a fair fight, but when Tress gives her the option to leave without a fight, <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ScrewThisImOuttaHere' title='/pmwiki/pmwiki.php/Main/ScrewThisImOuttaHere' data-format='W1tTY3Jld1RoaXNJbU91dHRhSGVyZSBzaGUgbGVhdmVzIHRoZSB3b3JsZCBlbnRpcmVseV1d'>she leaves the world entirely</a>.</span></li><li> Captain Crow is <span class="spoiler" title="you can set spoilers visible by default on your profile" > <a class='twikilink' href='/pmwiki/pmwiki.php/Main/ImmuneToBullets' title='/pmwiki/pmwiki.php/Main/ImmuneToBullets' data-format='SW1tdW5lVG9CdWxsZXRz'>Immune to Bullets</a></span> and an incredibly skilled sharpshooter and fighter. <span class="spoiler" title="you can set spoilers visible by default on your profile" > The dragon defeats her by waving a claw in her direction and <a class='twikilink' href='/pmwiki/pmwiki.php/Literature/Warbreaker' title='/pmwiki/pmwiki.php/Literature/Warbreaker' data-format='W1t7e0xpdGVyYXR1cmUvV2FyYnJlYWtlcn19IHN1bW1vbmluZyBjbG90aCB0byBob2xkIGhlci5dXQ=='>summoning cloth to hold her.</a></span></li></ul></li></ul><hr data-format='——' /></p></div> <div class="section-links" itemscope itemtype="http://schema.org/SiteNavigationElement"> <div class="titles"> <div><h3 class="text-center text-uppercase">Previous</h3></div> <div><h3 class="text-center text-uppercase">Index</h3></div> <div><h3 class="text-center text-uppercase">Next</h3></div> </div> <div class="links"> <ul> <li> <a href="/pmwiki/pmwiki.php/Literature/SixthOfTheDusk">Sixth of the Dusk</a> </li> <li> <a href="/pmwiki/pmwiki.php/Literature/TheCosmere">Literature/The Cosmere</a> </li> <li> <a href="/pmwiki/pmwiki.php/Literature/YumiAndTheNightmarePainter">Yumi and the Nightmare Painter</a> </li> </ul> <ul> <li> <a href="/pmwiki/pmwiki.php/ComicBook/WhiteSand">White Sand</a> </li> <li> <a href="/pmwiki/pmwiki.php/Creator/BrandonSanderson">Creator/Brandon Sanderson</a> </li> <li> <a href="/pmwiki/pmwiki.php/Literature/YumiAndTheNightmarePainter">Yumi and the Nightmare Painter</a> </li> </ul> <ul> <li> <a href="/pmwiki/pmwiki.php/Literature/TrenchMouth">Trench Mouth</a> </li> <li> <a href="/pmwiki/pmwiki.php/Main/LiteratureOfThe2020s">Literature of the 2020s</a> </li> <li> <a href="/pmwiki/pmwiki.php/Literature/TroubledBlood">Troubled Blood</a> </li> </ul> <ul> <li> <a href="/pmwiki/pmwiki.php/Literature/TheTreacheryOfBeautifulThings">The Treachery of Beautiful Things</a> </li> <li> <a href="/pmwiki/pmwiki.php/FantasyLiterature/MToZ">FantasyLiterature/M To Z</a> </li> <li> <a href="/pmwiki/pmwiki.php/Literature/ATrialOfBloodAndSteel">A Trial of Blood and Steel</a> </li> </ul> </div> </div> <div id="proper_player_insert_div" class="outer_ads_by_salon_wrapper"> </div> <script> if( document.getElementById('user-prefs').classList.contains('folders-open') ){ console.log('open all folders'); var elements = document.querySelectorAll('.folderlabel, .toggle-all-folders-button'); elements.forEach((element) => { element.classList.add('is-open'); }); } </script> <script> function insert_ad(adCount, paragraph, adName, folder = 0){ var ad_count = adCount < 10 ? "0"+adCount : adCount; var inside_folder = folder ? "1" : "0"; // Create element for ad unit var adUnit = document.createElement('div'); adUnit.setAttribute("class", `htlad-${adName}`); adUnit.setAttribute("id", `${adName}_${adCount}`); adUnit.setAttribute("data-targeting", `{"slot_number": "${ad_count}", "in_folder": "${inside_folder}"}`); // Add Advertisement label var adLabel = document.createElement("span"); adLabel.innerHTML = "Advertisement:" adLabel.setAttribute("class","ad-caption"); var adWrapper = document.createElement("div"); adWrapper.setAttribute("class","tvtropes-ad-unit mobile-fad square_fad mobile_unit_scroll"); adWrapper.setAttribute("id","mobile_"+adCount); // Merge all pieces adWrapper.appendChild(adLabel); adWrapper.appendChild(adUnit); // Insert into DOM paragraph.parentNode.insertBefore(adWrapper, paragraph.nextSibling); // for getting correct ad count even when ones are deleted globalAdInsertionCount++; } function insert_ads_in_content(folder = 0, totalAdsCount = 0, pHeight = 0) { if(folder) var node = folder.firstElementChild; // Get the first traversable element of the folder else var node = document.getElementById("main-article").firstElementChild; var pCount = 0; var adCount = totalAdsCount + 1; var nodeCount = 0; var nodeLevel = 0; var x = 0; //loop through elements of content while(x<300) { x++; nodeCount++; //traverse to the next element (if exists) if(nodeCount>1) { if(!node.nextElementSibling) { console.log('adparser: no next element'); if(nodeLevel>0) { nodeLevel--; node = node.parentElement; console.log('adparser: we were down a level, go back up ('+nodeLevel+')'); continue; } else { break; } } node = node.nextElementSibling; } //skip inserted ads or empty nodes if(!node || node==="null" || typeof node !== "object") continue; if(!node.offsetHeight || node.offsetHeight==0) continue; if(node.className && node.className.includes('tvtropes-ad-unit')) continue; //skip if image block that has a caption after it (NEW: ALWAYS SKIP THE IMAGE BLOCK) if(node.className && node.className.includes('quoteright')) { // if(node.nextElementSibling && node.nextElementSibling.className && node.nextElementSibling.className.includes('acaptionright')) { pHeight += node.offsetHeight; continue; // } } //if very large element, loop through elements inside if(node.offsetHeight>700 && node.firstElementChild) { nodeLevel++; console.log('adparser: traverse through large element='+node.nodeName+', height='+node.offsetHeight+' level='+nodeLevel); node = node.firstElementChild; nodeCount = 0; continue; } // Skip if after a folder label or if the current node is a folder label itself if ((node.previousElementSibling && node.previousElementSibling.className && node.previousElementSibling.className.includes("folderlabel")) || (node.className && node.className.includes("folderlabel"))) { console.log('adparser: skipping ad insertion related to folder label'); if (!node.className || !node.className.includes("folderlabel")) { // If it's not the folder label itself, skip the insertion continue; } else { pHeight += node.offsetHeight; // If it is the folder label, just add its height to pHeight and continue continue; } } //paragraph counter if(node.nodeName=="P") pCount++; //add height of node to counter pHeight += node.offsetHeight; //add margin of node to counter if available try { var nodeStyle = getComputedStyle(node); if(nodeStyle.marginTop && parseInt(nodeStyle.marginTop)>0) pHeight+=parseInt(nodeStyle.marginTop); if(nodeStyle.marginBottom && parseInt(nodeStyle.marginBottom)>0) pHeight+=parseInt(nodeStyle.marginBottom); //console.log(nodeStyle.marginTop+','+nodeStyle.marginBottom); } catch(e) { } //debug logging console.log('adparser: name='+node.nodeName+', height='+node.offsetHeight+' =>'+pHeight); //console.log(node.className); // check if user is logged in var logged_in = 0; // Calculate the required height based on the user's logged-in status or ad count var requiredHeight = globalAdInsertionCount > 15 ? 1500 : 750; if(logged_in) requiredHeight = 2250; // only inserts an ad if the total height and paragraph count conditions are met if ((adCount === 1 && pCount >= 1 && pHeight >= 400) || pHeight >= requiredHeight) { // Check existing ad positions and compare with the item about to be inserted after var ads = document.querySelectorAll('.tvtropes-ad-unit'); var nodeBottomPosition = node.getBoundingClientRect().bottom + window.scrollY; // Get bottom position of current node var canInsertAd = true; // Flag to track if we can insert an ad ads.forEach(function (ad) { var adTop = ad.getBoundingClientRect().top + window.scrollY; var adBottom = ad.getBoundingClientRect().bottom + window.scrollY; // Ensure the new ad is at least requiredHeight away from any existing ads if (Math.abs(nodeBottomPosition - adTop) < requiredHeight || Math.abs(nodeBottomPosition - adBottom) < requiredHeight) { canInsertAd = false; console.log('adparser: cannot insert ad, not enough space between ads.'); } }); // If we can't insert an ad, skip to the next node if(!canInsertAd) continue; // after 50 ads, stop inserting. Or after 20 ads if the user is logged in if ((adCount > 50 || (adCount > 20 && logged_in))) { break; } console.log('adparser: insert ad '+adCount); insert_ad(adCount, node, "tvtropes_m_incontent_dynamic", folder); adCount++; pHeight = 0; pCount = 0; } } //insert one at end if room var maxpHeight = 500; if(logged_in) maxpHeight=1500; if(pHeight>=maxpHeight && folder==0) { console.log('adparser: insert ad'); insert_ad(adCount, document.getElementById("main-article").lastElementChild, "tvtropes_m_incontent_dynamic"); } // delete ads after the 8th one to reduce load times BCLighthouseTag.cmd.push(function() { googletag.cmd.push(function() { googletag.pubads().addEventListener('slotRequested', function(event) { const slot = event.slot; const slotName = slot.getAdUnitPath().split('/').pop() || slot.getAdUnitPath(); if(slotName === 'tvtropes_m_incontent_dynamic') { const slotNumber = parseInt(slot.getTargeting('slot_number')[0]); console.log(slotName+' = '+slotNumber); // Determine the ad slot that needs to be deleted. const adNumberToDelete = slotNumber - 8; if(adNumberToDelete > 0) { const adToDelete = document.getElementById(`mobile_${adNumberToDelete}`); if(adToDelete) { var adHeight = window.pageYOffset + adToDelete.getBoundingClientRect().top; var windowHeight = window.scrollY; // Check if the ad element exists and is above the current viewport (above the fold). if (adHeight < windowHeight) { console.log('ad delete = '+adNumberToDelete); adToDelete.remove(); } } } } }); }); }); // return pHeight return pHeight; } if(1 && (document.body.clientWidth && document.body.clientWidth<=768) ) { insert_ads_in_content(); } </script> </article> <div id="main-content-sidebar"><div class="sidebar-item display-options"> <ul class="sidebar display-toggles"> <li>Show Spoilers <div id="sidebar-toggle-showspoilers" class="display-toggle show-spoilers"></div></li> <li>Night Vision <div id="sidebar-toggle-nightvision" class="display-toggle night-vision"></div></li> <li>Sticky Header <div id="sidebar-toggle-stickyheader" class="display-toggle sticky-header"></div></li> <li>Wide Load <div id="sidebar-toggle-wideload" class="display-toggle wide-load"></div></li> </ul> <script>updateDesktopPrefs();</script> </div> <div class="sidebar-item quick-links" itemtype="http://schema.org/SiteNavigationElement"> <p class="sidebar-item-title" data-title="Important Links">Important Links</p> <div class="padded"> <a href="/pmwiki/query.php?type=att">Ask The Tropers</a> <a href="/pmwiki/query.php?type=tf">Trope Finder</a> <a href="/pmwiki/query.php?type=ykts">Media Finder</a> <a href="/pmwiki/tlp_activity.php">Trope Launch Pad</a> <a href="/pmwiki/query.php?type=wl">Tech Wishlist</a></li> <a href="/pmwiki/review_activity.php">Reviews</a> <a href="/pmwiki/ad-free-subscribe.php">Go Ad Free!</a> <div class="crucial_browsing_dropdown"> <a href="javascript:void(0);" onclick="double_dropdown(); return false;" id="crucial_browsing_dropdown"><span class="new_blue">Crucial Browsing</span><i class="fa fa-angle-down"></i></a> <ul id="main_dropdown"> <li class="first_dropdown"><a href="/pmwiki/index_report.php">Indexes</a> <li class="first_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Genre</a> <ul> <li><a href='/pmwiki/pmwiki.php/Main/ActionAdventureTropes' title='Main/ActionAdventureTropes'>Action Adventure</a></li> <li><a href='/pmwiki/pmwiki.php/Main/ComedyTropes' title='Main/ComedyTropes'>Comedy</a></li> <li><a href='/pmwiki/pmwiki.php/Main/CommercialsTropes' title='Main/CommercialsTropes'>Commercials</a></li> <li><a href='/pmwiki/pmwiki.php/Main/CrimeAndPunishmentTropes' title='Main/CrimeAndPunishmentTropes'>Crime & Punishment</a></li> <li><a href='/pmwiki/pmwiki.php/Main/DramaTropes' title='Main/DramaTropes'>Drama</a></li> <li><a href='/pmwiki/pmwiki.php/Main/HorrorTropes' title='Main/HorrorTropes'>Horror</a></li> <li><a href='/pmwiki/pmwiki.php/Main/LoveTropes' title='Main/LoveTropes'>Love</a></li> <li><a href='/pmwiki/pmwiki.php/Main/NewsTropes' title='Main/NewsTropes'>News</a></li> <li><a href='/pmwiki/pmwiki.php/Main/ProfessionalWrestling' title='Main/ProfessionalWrestling'>Professional Wrestling</a></li> <li><a href='/pmwiki/pmwiki.php/Main/SpeculativeFictionTropes' title='Main/SpeculativeFictionTropes'>Speculative Fiction</a></li> <li><a href='/pmwiki/pmwiki.php/Main/SportsStoryTropes' title='Main/SportsStoryTropes'>Sports Story</a></li> <li><a href='/pmwiki/pmwiki.php/Main/WarTropes' title='Main/WarTropes'>War</a></li> </ul> </li> <li class="first_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Media</a> <ul> <li><a href="/pmwiki/pmwiki.php/Main/Media" title="Main/Media">All Media</a></li> <li><a href="/pmwiki/pmwiki.php/Main/AnimationTropes" title="Main/AnimationTropes">Animation (Western)</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Anime" title="Main/Anime">Anime</a></li> <li><a href="/pmwiki/pmwiki.php/Main/ComicBookTropes" title="Main/ComicBookTropes">Comic Book</a></li> <li><a href="/pmwiki/pmwiki.php/Main/FanFic" title="FanFic/FanFics">Fan Fics</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Film" title="Main/Film">Film</a></li> <li><a href="/pmwiki/pmwiki.php/Main/GameTropes" title="Main/GameTropes">Game</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Literature" title="Main/Literature">Literature</a></li> <li><a href="/pmwiki/pmwiki.php/Main/MusicAndSoundEffects" title="Main/MusicAndSoundEffects">Music And Sound Effects</a></li> <li><a href="/pmwiki/pmwiki.php/Main/NewMediaTropes" title="Main/NewMediaTropes">New Media</a></li> <li><a href="/pmwiki/pmwiki.php/Main/PrintMediaTropes" title="Main/PrintMediaTropes">Print Media</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Radio" title="Main/Radio">Radio</a></li> <li><a href="/pmwiki/pmwiki.php/Main/SequentialArt" title="Main/SequentialArt">Sequential Art</a></li> <li><a href="/pmwiki/pmwiki.php/Main/TabletopGames" title="Main/TabletopGames">Tabletop Games</a></li> <li><a href="/pmwiki/pmwiki.php/MediaNotes/Television" title="MediaNotes/Television">Television</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Theater" title="Main/Theater">Theater</a></li> <li><a href="/pmwiki/pmwiki.php/Main/VideogameTropes" title="Main/VideogameTropes">Videogame</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Webcomics" title="Main/Webcomics">Webcomics</a></li> </ul> </li> <li class="first_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Narrative</a> <ul> <li><a href="/pmwiki/pmwiki.php/Main/UniversalTropes" title="Main/UniversalTropes">Universal</a></li> <li><a href="/pmwiki/pmwiki.php/Main/AppliedPhlebotinum" title="Main/AppliedPhlebotinum">Applied Phlebotinum</a></li> <li><a href="/pmwiki/pmwiki.php/Main/CharacterizationTropes" title="Main/CharacterizationTropes">Characterization</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Characters" title="Main/Characters">Characters</a></li> <li><a href="/pmwiki/pmwiki.php/Main/CharactersAsDevice" title="Main/CharactersAsDevice">Characters As Device</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Dialogue" title="Main/Dialogue">Dialogue</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Motifs" title="Main/Motifs">Motifs</a></li> <li><a href="/pmwiki/pmwiki.php/Main/NarrativeDevices" title="Main/NarrativeDevices">Narrative Devices</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Paratext" title="Main/Paratext">Paratext</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Plots" title="Main/Plots">Plots</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Settings" title="Main/Settings">Settings</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Spectacle" title="Main/Spectacle">Spectacle</a></li> </ul> </li> <li class="first_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Other Categories</a> <ul> <li><a href="/pmwiki/pmwiki.php/Main/BritishTellyTropes" title="Main/BritishTellyTropes">British Telly</a></li> <li><a href="/pmwiki/pmwiki.php/Main/TheContributors" title="Main/TheContributors">The Contributors</a></li> <li><a href="/pmwiki/pmwiki.php/Main/CreatorSpeak" title="Main/CreatorSpeak">Creator Speak</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Creators" title="Main/Creators">Creators</a></li> <li><a href="/pmwiki/pmwiki.php/Main/DerivativeWorks" title="Main/DerivativeWorks">Derivative Works</a></li> <li><a href="/pmwiki/pmwiki.php/Main/LanguageTropes" title="Main/LanguageTropes">Language</a></li> <li><a href="/pmwiki/pmwiki.php/Main/LawsAndFormulas" title="Main/LawsAndFormulas">Laws And Formulas</a></li> <li><a href="/pmwiki/pmwiki.php/Main/ShowBusiness" title="Main/ShowBusiness">Show Business</a></li> <li><a href="/pmwiki/pmwiki.php/Main/SplitPersonalityTropes" title="Main/SplitPersonalityTropes">Split Personality</a></li> <li><a href="/pmwiki/pmwiki.php/Main/StockRoom" title="Main/StockRoom">Stock Room</a></li> <li><a href="/pmwiki/pmwiki.php/Main/TropeTropes" title="Main/TropeTropes">Trope</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Tropes" title="Main/Tropes">Tropes</a></li> <li><a href="/pmwiki/pmwiki.php/Main/TruthAndLies" title="Main/TruthAndLies">Truth And Lies</a></li> <li><a href="/pmwiki/pmwiki.php/Main/TruthInTelevision" title="Main/TruthInTelevision">Truth In Television</a></li> </ul> </li> <li class="first_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Topical Tropes</a> <ul> <li><a href="/pmwiki/pmwiki.php/Main/BetrayalTropes" title="Main/BetrayalTropes">Betrayal</a></li> <li><a href="/pmwiki/pmwiki.php/Main/CensorshipTropes" title="Main/CensorshipTropes">Censorship</a></li> <li><a href="/pmwiki/pmwiki.php/Main/CombatTropes" title="Main/CombatTropes">Combat</a></li> <li><a href="/pmwiki/pmwiki.php/Main/DeathTropes" title="Main/DeathTropes">Death</a></li> <li><a href="/pmwiki/pmwiki.php/Main/FamilyTropes" title="Main/FamilyTropes">Family</a></li> <li><a href="/pmwiki/pmwiki.php/Main/FateAndProphecyTropes" title="Main/FateAndProphecyTropes">Fate And Prophecy</a></li> <li><a href="/pmwiki/pmwiki.php/Main/FoodTropes" title="Main/FoodTropes">Food</a></li> <li><a href="/pmwiki/pmwiki.php/Main/HolidayTropes" title="Main/HolidayTropes">Holiday</a></li> <li><a href="/pmwiki/pmwiki.php/Main/MemoryTropes" title="Main/MemoryTropes">Memory</a></li> <li><a href="/pmwiki/pmwiki.php/Main/MoneyTropes" title="Main/MoneyTropes">Money</a></li> <li><a href="/pmwiki/pmwiki.php/Main/MoralityTropes" title="Main/MoralityTropes">Morality</a></li> <li><a href="/pmwiki/pmwiki.php/Main/PoliticsTropes" title="Main/PoliticsTropes">Politics</a></li> <li><a href="/pmwiki/pmwiki.php/Main/ReligionTropes" title="Main/ReligionTropes">Religion</a></li> <li><a href="/pmwiki/pmwiki.php/Main/SchoolTropes" title="Main/SchoolTropes">School</a></li> </ul> </li> </ul> </div> <div class="resources_dropdown"> <a href="javascript:void(0);" onclick="second_double_dropdown(); return false;" id="resources_dropdown"><span class="new_blue blue">Resources</span><i class="fa fa-angle-down"></i></a> <ul id="second_main_dropdown" class="padded font-s" itemscope itemtype="http://schema.org/SiteNavigationElement"> <li class="second_dropdown"><a href="#test" data-click-toggle="active">Tools</a> <ul> <li><a href="/pmwiki/pmwiki.php/Administrivia/IttyBittyWikiTools">Wiki Tools</a></li> <li><a href="/pmwiki/cutlist.php" data-modal-target="login" rel="nofollow">Cut List</a></li> <li><a href="/pmwiki/image-fixer.php" data-modal-target="login" rel="nofollow">Image Fixer</a></li> <li><a href="/pmwiki/changes.php">New Edits</a></li> <li><a href="/pmwiki/articles_new.php">New Articles</a></li> <li><a href="/pmwiki/recent_edit_reasons.php">Edit Reasons</a></li> <li><a href="/pmwiki/isolated_pages.php">Isolated Pages</a></li> <li><a href="/pmwiki/launches.php" data-modal-target="login" rel="nofollow">Launches</a></li> <li><a href="/pmwiki/img_list.php" data-modal-target="login" rel="nofollow">Images List</a></li> <li><a href="/pmwiki/recent_videos.php">Recent Videos</a></li> <li><a href="/pmwiki/crown_activity.php">Crowner Activity</a></li> <li><a href="/pmwiki/no_types.php">Un-typed Pages</a></li> <li><a href="/pmwiki/page_type_audit.php">Recent Page Type Changes</a></li> </ul> </li> <li class="second_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Templates</a> <ul> <li><a href="/pmwiki/pmwiki.php/Main/TropeEntryTemplate">Trope Entry</a></li> <li><a href="/pmwiki/pmwiki.php/Main/ProgramEntryTemplate">Works</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/CharacterSheetTemplate">Character Sheet</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/PlayingWithWikiTemplate">Playing With</a></li> <li><a href="/pmwiki/pmwiki.php/FanficRecs/TemplatePageForNewFandomRecommendations">Fandom</a></li> </ul> </li> <li class="second_dropdown"><a href="javascript:void(0);" data-click-toggle="active">Tips</a> <ul> <li><a href="/pmwiki/pmwiki.php/Administrivia/CreatingNewRedirects">Creating New Redirects</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/Crosswicking">Cross Wicking</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/TipsForEditing">Tips for Editing</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/TextFormattingRules">Text Formatting Rules</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/TVTropesGlossary">Glossary</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/EditReasonsAndWhyYouShouldUseThem">Edit Reasons</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/HandlingSpoilers">Handling Spoilers</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/WordCruft">Word Cruft</a></li> <li><a href="/pmwiki/pmwiki.php/Main/Administrivia">Administrivia</a></li> <li><a href="/pmwiki/pmwiki.php/Main/FAQ">FAQ</a></li> </ul> </li> <li class="second_dropdown"><a href="/pmwiki/changelog.php">Changelog</a></li> <li class="second_dropdown"><a href="/pmwiki/query.php?type=bug">Report Bug</a></li> <li class="second_dropdown"><a href="/pmwiki/conversations.php?topic=renames">Trope Repair Shop</a></li> <li class="second_dropdown"><a href="/pmwiki/conversations.php?topic=images">Image Pickin'</a></li> </ul> </div> </div> <div id="asteri-sidebar" style="display:none"> <p style="margin-top: 20px;" class="sidebar-item-title" data-title="Advertisement">Advertisement:</p> <div id="asteri_cont"></div> </div> <script> //asteri enabled if((tvtropes_config.asteri_stream_enabled || tvtropes_config.get_asteri_stream == 'live')) { //aster stream currently live and not a logged-in troper if(!tvtropes_config.is_logged_in && cookies.read('asteri_event_active') != '') { document.getElementById('asteri-sidebar').style.display=""; } } </script> </div> <script> if(!is_mobile()) { //don't insert if content is too small on page var tropes_insert_side_ad=true; if(document.getElementById("main-article") && document.getElementById("main-article").clientHeight) { var sidebar_height=document.getElementById("main-article").clientHeight; if(sidebar_height>0 && sidebar_height<500) { tropes_insert_side_ad=false; console.log('ad parser: content too small for sidebar ad'); } } if(tropes_insert_side_ad) { document.write(` <div id="stick-cont" class="sidebar-item sb-fad-unit"> <p class="sidebar-item-title" data-title="Advertisement">Advertisement:</p> <div id="stick-bar" class="sidebar-section"> <div class="square_fad fad-size-300x600 fad-section text-center"> <div class='tvtropes-ad-unit '> <div id='tvtropes_dt_inview' class='htlad-tvtropes_dt_inview'></div> </div> </div> </div> </div> `); } } </script> </div> </div> <div id="action-bar-bottom" class="action-bar tablet-off"> <a href="#top-of-page" class="scroll-to-top dead-button" onclick="scroll_to_top(500);">Top</a> </div> </div> <footer id="main-footer"> <div id="main-footer-inner"> <div class="footer-left"> <a href="/" class="img-link"><img data-src="/img/tvtropes-footer-logo.png" alt="TV Tropes" class="logo_image lazy-image" title="TV Tropes" /></a> <ul class="social-buttons"> <li><a class="btn fb" target="_blank" onclick="_gaq.push(['_trackEvent', 'btn-social-icon', 'click', 'btn-facebook']);" href="https://www.facebook.com/tvtropes"><i class="fa fa-facebook"></i></a></li> <li><a class="btn tw" target="_blank" onclick="_gaq.push(['_trackEvent', 'btn-social-icon', 'click', 'btn-twitter']);" href="https://www.twitter.com/tvtropes"><i class="fa fa-twitter"></i></a> </li> </ul> </div> <hr/> <ul class="footer-menu" itemscope itemtype="http://schema.org/SiteNavigationElement"> <li><h4 class="footer-menu-header">TVTropes</h4></li> <li><a href="/pmwiki/pmwiki.php/Main/Administrivia">About TVTropes</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/TheGoalsOfTVTropes">TVTropes Goals</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/TheTropingCode">Troping Code</a></li> <li><a href="/pmwiki/pmwiki.php/Administrivia/TVTropesCustoms">TVTropes Customs</a></li> <li><a href="/pmwiki/pmwiki.php/JustForFun/TropesOfLegend">Tropes of Legend</a></li> <li><a href="/pmwiki/ad-free-subscribe.php">Go Ad-Free</a></li> </ul> <hr/> <ul class="footer-menu" itemscope itemtype="http://schema.org/SiteNavigationElement"> <li><h4 class="footer-menu-header">Community</h4></li> <li><a href="/pmwiki/query.php?type=att">Ask The Tropers</a></li> <li><a href="/pmwiki/tlp_activity.php">Trope Launch Pad</a></li> <li><a href="/pmwiki/query.php?type=tf">Trope Finder</a></li> <li><a href="/pmwiki/query.php?type=ykts">Media Finder</a></li> <li><a href="/pmwiki/query.php?type=wl">Tech Wishlist</a></li> <li><a href="/pmwiki/review_activity.php">Reviews</a></li> <li><a href="/pmwiki/topics.php">Forum</a></li> </ul> <hr/> <ul class="footer-menu" itemscope itemtype="http://schema.org/SiteNavigationElement"> <li><h4 class="footer-menu-header">Tropes HQ</h4></li> <li><a href="/pmwiki/about.php">About Us</a></li> <li><a href="/pmwiki/contact.php">Contact Us</a></li> <li><a href="/pmwiki/query.php?type=bug">Report Bug</a></li> <li><a href="/pmwiki/changelog.php">Changelog</a></li> <li><a href="/pmwiki/dmca.php">DMCA Notice</a></li> <li><a href="/pmwiki/privacypolicy.php">Privacy Policy</a></li> </ul> </div> <div id="desktop-on-mobile-toggle" class="text-center gutter-top gutter-bottom tablet-on"> <a href="/pmwiki/switchDeviceCss.php?mobileVersion=1" rel="nofollow">Switch to <span class="txt-desktop">Desktop</span><span class="txt-mobile">Mobile</span> Version</a> </div> <div class="legal"> <p>TVTropes is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. <br>Permissions beyond the scope of this license may be available from <a xmlns:cc="http://creativecommons.org/ns#" href="mailto:thestaff@tvtropes.org" rel="cc:morePermissions"> thestaff@tvtropes.org</a>.</p> <br> <div class="privacy_wrapper"> </div> </div> </footer> <style> div.fc-ccpa-root { position: absolute !important; bottom: 93px !important; margin: auto !important; width: 100% !important; z-index: 9999 !important; overflow: hidden !important; } .fc-ccpa-root .fc-dns-dialog .fc-dns-link p{ outline: none !important; text-decoration: underline !important; font-size: .7em !important; font-family: sans-serif !important; } .fc-ccpa-root .fc-dns-dialog .fc-dns-link .fc-button-background { background: none !important; } </style> <div id="_pm_videoViewer" class="full-screen"> <a href="#close" class="close" id="_pm_videoViewer-close"></a> <div class="_pmvv-body"> <div class="_pmvv-vidbox"> </div> </div> </div> <script type="text/javascript"> var cleanCreativeEnabled = ""; var donation = ""; var live_ads = "1"; var img_domain = "https://static.tvtropes.org"; var snoozed = cookies.read('snoozedabm'); var elem = document.createElement('script'); elem.async = true; // if page type is article or homepage load bundle_nojquery. otherwise load regular bundle.js if(tvtropes_config.universal_page_type == "Article" || tvtropes_config.universal_page_type == "HomePage") { elem.src = 'https://assets.tvtropes.org/design/assets/bundle_nojquery.js?rev=34f2653e14b8f0604d7c8ab2d8e0002abf7d2ab4'; } else { elem.src = 'https://assets.tvtropes.org/design/assets/bundle.js?rev=34f2653e14b8f0604d7c8ab2d8e0002abf7d2ab4'; } elem.onload = function() { } document.getElementsByTagName('head')[0].appendChild(elem); </script> <script type="text/javascript"> function send_analytics_event(user_type, donation){ // if(user_type == 'uncached' || user_type == 'cached'){ // ga('send', 'event', 'caching', 'load', user_type, {'nonInteraction': 1}); // return; // } var event_name = user_type; if(donation == 'true'){ event_name += "_donation" }else if(typeof(valid_user) == 'undefined'){ event_name += "_blocked" }else if(valid_user == true){ event_name += "_unblocked"; }else{ event_name = "_unknown" } ga('send', 'event', 'ads', 'load', event_name, {'nonInteraction': 1}); } send_analytics_event("guest", "false"); </script> <!-- Quantcast Tag --> <script type="text/javascript"> window._qevents = window._qevents || []; (function() { var elem = document.createElement('script'); elem.src = (document.location.protocol == "https:" ? "https://secure" : "http://edge") + ".quantserve.com/quant.js"; elem.async = true; elem.type = "text/javascript"; var scpt = document.getElementsByTagName('script')[0]; scpt.parentNode.insertBefore(elem, scpt); })(); window._qevents.push({ qacct:"p-mEzuYq24VEJ-3" }); </script> <noscript> <div style="display:none;"> <img src="//pixel.quantserve.com/pixel/p-mEzuYq24VEJ-3.gif" border="0" height="1" width="1" alt="Quantcast"/> </div> </noscript> <!-- End Quantcast tag --> <!-- Begin comScore Tag --> <script> var _comscore = _comscore || []; _comscore.push({ c1: "2", c2: "38282685" }); (function() { var s = document.createElement("script"), el = document.getElementsByTagName("script")[0]; s.async = true; s.src = "https://sb.scorecardresearch.com/cs/38282685/beacon.js"; el.parentNode.insertBefore(s, el); })(); </script> <noscript> <img src="https://sb.scorecardresearch.com/p?c1=2&c2=38282685&cv=3.6.0&cj=1"> </noscript> <!-- End comScore Tag --> </body> </html>