diff --git a/.gitignore b/.gitignore
index abc802d..ec99688 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,4 @@
vendor
darkone/
*.cbz
+/mythwalker/*.html
diff --git a/covers/mythwalker-blank.jpg b/covers/mythwalker-blank.jpg
new file mode 100644
index 0000000..eede9fd
Binary files /dev/null and b/covers/mythwalker-blank.jpg differ
diff --git a/covers/mythwalker.jpg b/covers/mythwalker.jpg
new file mode 100644
index 0000000..a49a6a6
Binary files /dev/null and b/covers/mythwalker.jpg differ
diff --git a/covers/mythwalker.pdf b/covers/mythwalker.pdf
new file mode 100644
index 0000000..c0686e4
Binary files /dev/null and b/covers/mythwalker.pdf differ
diff --git a/metadata/mythwalker.xml b/metadata/mythwalker.xml
new file mode 100644
index 0000000..021de20
--- /dev/null
+++ b/metadata/mythwalker.xml
@@ -0,0 +1,4 @@
+Warbreaker Prime: Mythwalker
+2019-11-22
+en-US
+Brandon Sanderson
diff --git a/mythwalker.rb b/mythwalker.rb
new file mode 100644
index 0000000..0d25b09
--- /dev/null
+++ b/mythwalker.rb
@@ -0,0 +1,64 @@
+# frozen_string_literal: true
+
+require 'date'
+require 'fileutils'
+require 'nokogiri'
+require_relative './methods'
+
+FileUtils.mkdir_p('mythwalker')
+
+BASE = 'https://brandonsanderson.com'
+
+links = [
+ "/warbreaker-prime-mythwalker-prologue/",
+ "/warbreaker-prime-mythwalker-chapter-one/",
+ "/warbreaker-prime-mythwalker-chapter-two/",
+ "/warbreaker-prime-mythwalker-chapter-three/",
+ "/warbreaker-prime-mythwalker-chapter-four/",
+ "/warbreaker-prime-mythwalker-chapter-five/",
+ "/warbreaker-prime-mythwalker-chapter-six/",
+ "/warbreaker-prime-mythwalker-chapter-seven/",
+ "/warbreaker-prime-mythwalker-chapter-eight/",
+ "/warbreaker-prime-mythwalker-chapter-nine/",
+ "/warbreaker-prime-mythwalker-chapter-ten/",
+ "/warbreaker-prime-mythwalker-chapter-eleven/",
+ "/warbreaker-prime-mythwalker-chapter-twelve/",
+ "/warbreaker-prime-mythwalker-chapter-thirteen/",
+ "/warbreaker-prime-mythwalker-chapter-fourteen/",
+ "/warbreaker-prime-mythwalker-chapter-fifteen/",
+ "/warbreaker-prime-mythwalker-chapter-sixteen/",
+ "/warbreaker-prime-mythwalker-chapter-seventeen/",
+ "/warbreaker-prime-mythwalker-chapter-eighteen/",
+ "/warbreaker-prime-mythwalker-chapter-nineteen/",
+ "/warbreaker-prime-mythwalker-chapter-twenty/",
+ "/warbreaker-prime-mythwalker-chapter-twenty-one/",
+ "/warbreaker-prime-mythwalker-chapter-twenty-two/",
+ "/warbreaker-deleted-scenes-mab-the-cook/",
+]
+
+titles = ["Prologue"] + (1..22).map{|x| "Chapter #{x}"} + ["Deleted Scenes: Mab the Cook"]
+
+episode=1
+links.each do |link|
+ url = BASE + link
+ puts "Download #{url}"
+ unless File.exist? "mythwalker/#{episode}.html"
+ `wget --no-clobber "#{url}" --output-document "mythwalker/#{episode}.html" -o /dev/null`
+ end
+ episode+=1
+end
+
+html = '
Warbreaker Prime: Mythwalker'
+
+(1..(links.length)).each do |i|
+ complete_html = Nokogiri::HTML(open("mythwalker/#{i}.html"))
+ page = complete_html.css('.vc_col-sm-7 .wpb_wrapper')[0]
+ html += "#{titles[i - 1]}
" + page.inner_html
+end
+
+html += ''
+
+File.open('books/mythwalker.html', 'w') { |file| file.write(html) }
+puts '[html] Generated HTML file'
+
+generate('mythwalker', :all)