diff --git a/creator/index.php b/creator/index.php
index bc1e821b..e2991917 100644
--- a/creator/index.php
+++ b/creator/index.php
@@ -589,6 +589,7 @@ include('../globalHTML/header-1.php');
diff --git a/img/frames/custom/classicshifted/dual.svg b/img/frames/custom/classicshifted/dual.svg
new file mode 100644
index 00000000..edbce015
--- /dev/null
+++ b/img/frames/custom/classicshifted/dual.svg
@@ -0,0 +1,5 @@
+
+
+
diff --git a/img/frames/custom/classicshifted/dualThumb.png b/img/frames/custom/classicshifted/dualThumb.png
new file mode 100644
index 00000000..f0bf383e
Binary files /dev/null and b/img/frames/custom/classicshifted/dualThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/a.png b/img/frames/custom/classicshifted/planeswalker/a.png
new file mode 100644
index 00000000..ab683dae
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/a.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/aThumb.png b/img/frames/custom/classicshifted/planeswalker/aThumb.png
new file mode 100644
index 00000000..18038731
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/aThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/b.png b/img/frames/custom/classicshifted/planeswalker/b.png
new file mode 100644
index 00000000..77a825ae
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/b.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/bThumb.png b/img/frames/custom/classicshifted/planeswalker/bThumb.png
new file mode 100644
index 00000000..638d2e7a
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/bThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/c.png b/img/frames/custom/classicshifted/planeswalker/c.png
new file mode 100644
index 00000000..c6181f92
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/c.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/cThumb.png b/img/frames/custom/classicshifted/planeswalker/cThumb.png
new file mode 100644
index 00000000..4e450098
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/cThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/g.png b/img/frames/custom/classicshifted/planeswalker/g.png
new file mode 100644
index 00000000..b770cee0
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/g.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/gThumb.png b/img/frames/custom/classicshifted/planeswalker/gThumb.png
new file mode 100644
index 00000000..4b8624f4
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/gThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/l.png b/img/frames/custom/classicshifted/planeswalker/l.png
new file mode 100644
index 00000000..a499d776
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/l.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/lThumb.png b/img/frames/custom/classicshifted/planeswalker/lThumb.png
new file mode 100644
index 00000000..e1a11023
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/lThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/m.png b/img/frames/custom/classicshifted/planeswalker/m.png
new file mode 100644
index 00000000..059bf8d3
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/m.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/mThumb.png b/img/frames/custom/classicshifted/planeswalker/mThumb.png
new file mode 100644
index 00000000..e035a31c
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/mThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/r.png b/img/frames/custom/classicshifted/planeswalker/r.png
new file mode 100644
index 00000000..ca86711a
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/r.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/rThumb.png b/img/frames/custom/classicshifted/planeswalker/rThumb.png
new file mode 100644
index 00000000..a0bb889f
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/rThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/u.png b/img/frames/custom/classicshifted/planeswalker/u.png
new file mode 100644
index 00000000..21c46e70
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/u.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/uThumb.png b/img/frames/custom/classicshifted/planeswalker/uThumb.png
new file mode 100644
index 00000000..761dbdfa
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/uThumb.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/w.png b/img/frames/custom/classicshifted/planeswalker/w.png
new file mode 100644
index 00000000..e7fd33da
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/w.png differ
diff --git a/img/frames/custom/classicshifted/planeswalker/wThumb.png b/img/frames/custom/classicshifted/planeswalker/wThumb.png
new file mode 100644
index 00000000..2da46f60
Binary files /dev/null and b/img/frames/custom/classicshifted/planeswalker/wThumb.png differ
diff --git a/img/frames/custom/classicshifted/snow.png b/img/frames/custom/classicshifted/snow.png
new file mode 100644
index 00000000..0879d07f
Binary files /dev/null and b/img/frames/custom/classicshifted/snow.png differ
diff --git a/img/frames/custom/classicshifted/snowThumb.png b/img/frames/custom/classicshifted/snowThumb.png
new file mode 100644
index 00000000..f4e77ea8
Binary files /dev/null and b/img/frames/custom/classicshifted/snowThumb.png differ
diff --git a/img/frames/m15/mid/b.png b/img/frames/m15/mid/b.png
new file mode 100644
index 00000000..041f0274
Binary files /dev/null and b/img/frames/m15/mid/b.png differ
diff --git a/img/frames/m15/praetors/frame.svg b/img/frames/m15/praetors/frame.svg
new file mode 100644
index 00000000..b0ec3d76
--- /dev/null
+++ b/img/frames/m15/praetors/frame.svg
@@ -0,0 +1,5 @@
+
+
+
diff --git a/img/frames/m15/praetors/frameThumb.png b/img/frames/m15/praetors/frameThumb.png
new file mode 100644
index 00000000..a211eb65
Binary files /dev/null and b/img/frames/m15/praetors/frameThumb.png differ
diff --git a/js/frames/packClassicshiftedPlaneswalker.js b/js/frames/packClassicshiftedPlaneswalker.js
new file mode 100644
index 00000000..23574277
--- /dev/null
+++ b/js/frames/packClassicshiftedPlaneswalker.js
@@ -0,0 +1,47 @@
+//Create objects for common properties across available frames
+// var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskFrame.png', name:'Frame'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}, {src:'/img/frames/planeswalker/maskLoyalty.png', name:'Loyalty'}];
+//defines available frames
+availableFrames = [
+ {name:'White Frame', src:'/img/frames/custom/classicshifted/planeswalker/w.png'},
+ {name:'Blue Frame', src:'/img/frames/custom/classicshifted/planeswalker/u.png'},
+ {name:'Black Frame', src:'/img/frames/custom/classicshifted/planeswalker/b.png'},
+ {name:'Red Frame', src:'/img/frames/custom/classicshifted/planeswalker/r.png'},
+ {name:'Green Frame', src:'/img/frames/custom/classicshifted/planeswalker/g.png'},
+ {name:'Multicolored Frame', src:'/img/frames/custom/classicshifted/planeswalker/m.png'},
+ {name:'Artifact Frame', src:'/img/frames/custom/classicshifted/planeswalker/a.png'},
+ {name:'Land Frame', src:'/img/frames/custom/classicshifted/planeswalker/l.png'},
+ {name:'Colorless Frame', src:'/img/frames/custom/classicshifted/planeswalker/c.png'}
+];
+//disables/enables the "Load Frame Version" button
+document.querySelector('#loadFrameVersion').disabled = false;
+//defines process for loading this version, if applicable
+document.querySelector('#loadFrameVersion').onclick = async function() {
+ //resets things so that every frame doesn't have to
+ await resetCardIrregularities();
+ //sets card version
+ card.version = 'planeswalkerClassicshifted';
+ card.onload = '/js/frames/versionPlaneswalker.js';
+ loadScript('/js/frames/versionPlaneswalker.js');
+ //art bounds
+ card.artBounds = {x:0.068, y:0.101, width:0.864, height:0.8143};
+ autoFitArt();
+ //set symbol bounds
+ card.setSymbolBounds = {x:0.9227, y:0.5891, width:0.12, height:0.0381, vertical:'center', horizontal: 'right'};
+ resetSetSymbol();
+ //watermark bounds
+ card.watermarkBounds = {x:0.5, y:0.7762, width:0.75, height:0.2305};
+ resetWatermark();
+ //text
+ loadTextOptions({
+ mana: {name:'Mana Cost', text:'', y:0.0481, width:0.9292, height:71/2100, oneLine:true, size:71/1638, align:'right', shadowX:-0.001, shadowY:0.0029, manaCost:true, manaSpacing:0},
+ title: {name:'Title', text:'', x:0.0867, y:0.0372, width:0.8267, height:0.0548, oneLine:true, font:'belerenb', size:0.0381, color:'white', shadowX:0.002, shadowY:0.0015},
+ type: {name:'Type', text:'', x:0.0867, y:0.5625, width:0.8267, height:0.0548, oneLine:true, font:'belerenb', size:0.0324, color:'white', shadowX:0.002, shadowY:0.0015},
+ ability0: {name:'Ability 1', text:'', x:0.18, y:0.6239, width:0.7467, height:0.0972, size:0.0353},
+ ability1: {name:'Ability 2', text:'', x:0.18, y:0, width:0.7467, height:0.0972, size:0.0353},
+ ability2: {name:'Ability 3', text:'', x:0.18, y:0, width:0.7467, height:0.0972, size:0.0353},
+ ability3: {name:'Ability 4', text:'', x:0.18, y:0, width:0.7467, height:0, size:0.0353},
+ loyalty: {name:'Loyalty', text:'', x:0.806, y:0.902, width:0.14, height:0.0372, size:0.0372, font:'belerenbsc', oneLine:true, align:'center', color:'white'}
+ });
+}
+//loads available frames
+loadFramePack();
\ No newline at end of file
diff --git a/js/frames/packPraetors.js b/js/frames/packPraetors.js
index b0acd2b0..fdb2cee7 100644
--- a/js/frames/packPraetors.js
+++ b/js/frames/packPraetors.js
@@ -1,5 +1,5 @@
//Create objects for common properties across available frames
-var masks = [{src:'/img/frames/m15/regular/m15MaskTitle.png', name:'Title'}, {src:'/img/frames/m15/regular/m15MaskType.png', name:'Type'}];
+var masks = [{src:'/img/frames/m15/regular/m15MaskTitle.png', name:'Title'}, {src:'/img/frames/m15/regular/m15MaskType.png', name:'Type'}, {src:'/img/frames/m15/praetors/frame.svg', name:'Frame'}];
var bounds = {x:0.746, y:0.8858, width:0.212, height:0.0772};
//defines available frames
availableFrames = [