The Wiki for Tale 6 is in read-only mode and is available for archival and reference purposes only. Please visit the current Tale 11 Wiki in the meantime.
If you have any issues with this Wiki, please post in #wiki-editing on Discord or contact Brad in-game.
Difference between revisions of "Rogarian/GoogleMapsPageRewrite"
(10 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
− | == Google Maps == | + | == Google Maps is no more! (A brief history) == |
− | + | After Google deprecated version 2 of the Google Maps API all of the maps on the wiki broke. After along and drawn out process of trying to convert everything to version 3 of the Google Maps API the thought occurred to me that Google would deprecate v3 of the mapping API in the next 3-6 years and the cycle would repeat! So rather than trusting Google again (fool me once) I decided to look for a stand alone mapping API that wouldn't be dependent on any external services. | |
+ | |||
+ | |||
+ | After looking at various APIs I settled on the [http://leafletjs.com/ Leaflet] API. It's small, fast and most importantly: completely self contained. After learning the new API and using [http://rogarian.atitd.org/shroomdar2/ Shroomdar 2] as my test bed I was able to get every working. After that I started looking for a [http://www.mediawiki.org/wiki/MediaWiki MediaWiki] mapping extension that used Leaflet and discovered [https://www.mediawiki.org/wiki/Extension:MultiMaps MultiMaps]. By running a local MediaWiki wiki I was able to modify the extension to use the ATITD tile set and coordinate system. | ||
+ | |||
+ | |||
+ | The next step was to install it on the ATITD.org server. That failed. The MultiMaps extension used conventions that required a newer version of PHP than the ATITD.org server was running. So rather than using third-party PHP packages for CentOS (which would mean having to manually apply security patches and updates) or doing a complete OS upgrade/new install I decided to write a brand spanking new MediaWiki extension from scratch using the new API that would work with the current PHP version on the server. I've tried to make it MOSTLY compatible with the prior Google Map extension. But there are differences. Hopefully these bugs will be slowly ironed and and we'll gain additional functionality. This page is an attempt to document the new extension. | ||
+ | |||
+ | |||
+ | == Known Issues == | ||
+ | |||
+ | Currently these problems still exist: | ||
+ | |||
+ | * <strike>Zoomed and cropped maps do not center properly</strike> | ||
+ | * Some markers are stretched and may be off center | ||
+ | * Only Egyptian tile sets are usable (Can't use Openmap or Google Maps tilesets) | ||
+ | * <strike>Only the T6 map is currently available</strike> All maps EXCEPT Tale 4A are available. | ||
+ | * Markers require all information on 1 line vs split on various line (dealing with the popup window when clicked) | ||
+ | * Marker tooltips are not functional | ||
+ | |||
+ | |||
+ | == Egypt Maps 1.0 Introduction == | ||
+ | |||
+ | This wiki now runs a newly written mapping extension by me for [http://www.mediawiki.org/wiki/MediaWiki MediaWiki]. The <nowiki><egypt></nowiki> tag allows wiki users to create zoom-able, pan-able maps of Egypt with customized markers. | ||
Simply add the following on a wiki page to create a default map: | Simply add the following on a wiki page to create a default map: | ||
− | + | <pre> | |
− | </ | + | <egypt> |
+ | </egypt> | ||
+ | </pre> | ||
+ | |||
+ | Or for backwards compatibility: | ||
+ | <pre> | ||
+ | <googlemap> | ||
+ | </goolemap> | ||
+ | </pre> | ||
This will generate a map like: | This will generate a map like: | ||
− | < | + | <egypt> |
− | </ | + | </egypt> |
== Markers == | == Markers == | ||
− | In the content of the tag, you can define one marker per line. Each line may or may not start with an icon name in parentheses. The line should then have the latitude (x), then a comma, optionally a space, then the longitude (y), then a comma, then | + | In the content of the tag, you can define one marker per line. Each line may or may not start with an icon name in parentheses. The line should then have the latitude (x), then a comma, optionally a space, then the longitude (y), then a comma, then text for the popup window. The popup text can include wiki mark-up (and commas) (not functional at the moment). |
Line 28: | Line 59: | ||
'''Marker Usage Example:''' | '''Marker Usage Example:''' | ||
− | + | <pre><egypt zoom="2" height="512" lon="0" showposition="yes"> | |
(GH) 700,600,here goes the title | (GH) 700,600,here goes the title | ||
400, 400, here goes the title, it can contain commas but not wiki markup | 400, 400, here goes the title, it can contain commas but not wiki markup | ||
− | (S) 100, 100, here | + | (S) 100, 100, Popup Text Goes here |
− | |||
− | |||
<br><br> | <br><br> | ||
− | </ | + | </egypt> |
+ | </pre> | ||
− | < | + | <egypt zoom="2" height="512" lon="0" showposition="yes"> |
(GH) 700,600,here goes the title | (GH) 700,600,here goes the title | ||
400, 400, here goes the title, it can contain commas but not wiki markup | 400, 400, here goes the title, it can contain commas but not wiki markup | ||
− | (S) 100, 100, here | + | (S) 100, 100, Popup Text Goes here |
− | |||
− | |||
<br><br> | <br><br> | ||
− | </ | + | </egypt> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Line 90: | Line 88: | ||
|tale | |tale | ||
|Which Tale to display? | |Which Tale to display? | ||
− | |Legal values: ''1'', ''2'', ''3'', ''4'' | + | |Legal values: ''1'', ''2'', ''3'', ''4'', ''4b'', ''5'' and '''6'''. NOTE: Tale 4 does not work. |
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|width | |width | ||
Line 116: | Line 110: | ||
|Game Map Legal values: 1 to 8 ('''2''' is default, only the T5 map contains data on levels 7 and 8). | |Game Map Legal values: 1 to 8 ('''2''' is default, only the T5 map contains data on levels 7 and 8). | ||
|- | |- | ||
− | | | + | |showposition or showregion |
− | + | |Show x,y coords under the mouse and region name. Currently only Tale 6 maps are supported. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |Show x,y coords under the mouse | ||
|Legal values: ''yes'' and '''no'''. | |Legal values: ''yes'' and '''no'''. | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|icons | |icons | ||
Line 144: | Line 125: | ||
|Height and width of the icons | |Height and width of the icons | ||
|Defaults to: '''32x32''' | |Defaults to: '''32x32''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|} | |} | ||
− | + | == Commands no longer supported == | |
{| border="1" cellpadding="3" | {| border="1" cellpadding="3" | ||
Line 166: | Line 135: | ||
! style="background:#FFEB8F;" | Desc | ! style="background:#FFEB8F;" | Desc | ||
! style="background:#FFEB8F;" | Options | ! style="background:#FFEB8F;" | Options | ||
+ | |- | ||
+ | |cursor | ||
+ | |Which mouse cursor to use on the map? | ||
+ | |Legal values: '''pointer''' (hand), ''default'' (standard mouse cursor) and ''crosshair''. | ||
|- | |- | ||
|stroke | |stroke | ||
Line 182: | Line 155: | ||
|Show the map/hybrid/satellite selector | |Show the map/hybrid/satellite selector | ||
|Legal values are ''yes'' and '''no'''. | |Legal values are ''yes'' and '''no'''. | ||
+ | |- | ||
+ | |type | ||
+ | |The type of map to display. | ||
+ | |Game Maps: '''game''' - Shard A, ''gameb'' - Shard B, Normal Google Maps: ''normal'' (or, equivalently, ''map'') - Normal Google Map, ''terrain'', ''hybrid'', and ''satellite''. | ||
+ | |- | ||
+ | |controls | ||
+ | |Zoom and navigation controls. | ||
+ | |Legal values: ''small'' creates +/- zoom buttons, '''medium''' has zoom buttons and pan buttons, ''large'' has pan buttons with a sliding scale for zoom, and ''none'' has no buttons. | ||
+ | |- | ||
+ | |doubleclick | ||
+ | |What to do when the user double-clicks? | ||
+ | |Legal values: '''recenter''' or ''zoom''. | ||
+ | |- | ||
+ | |scrollwheel | ||
+ | |Define how the scroll wheel behaves. | ||
+ | |Legal values: ''nothing'' or '''zoom'''. | ||
+ | |- | ||
+ | |zoomstyle | ||
+ | |How does the map zoom? | ||
+ | |Legal values: ''fast'' and '''smooth''', also known as continuous zooming (only works in some browsers). | ||
|- | |- | ||
|} | |} | ||
Line 193: | Line 186: | ||
You can host your own collection of icons on your server, but note that they'll have the same anchor points as ATITD.org's default icon (32x32). Check out [http://mapki.com/wiki/Icon_Image_Sets Mapki's collection of icon images] for a bunch of icons you can use. To use your icons, add an icon attribute to your googlemap-tags like this | You can host your own collection of icons on your server, but note that they'll have the same anchor points as ATITD.org's default icon (32x32). Check out [http://mapki.com/wiki/Icon_Image_Sets Mapki's collection of icon images] for a bunch of icons you can use. To use your icons, add an icon attribute to your googlemap-tags like this | ||
− | <nowiki>< | + | <nowiki><egypt lat="42.711618" lon="-73.205112" zoom="2" controls="small" |
icon="http://myserver.com/standardmarker.png" | icon="http://myserver.com/standardmarker.png" | ||
icons="http://myserver.com/markers/marker{label}.png"></nowiki> | icons="http://myserver.com/markers/marker{label}.png"></nowiki> | ||
Line 204: | Line 197: | ||
===Good Default Settings=== | ===Good Default Settings=== | ||
<pre> | <pre> | ||
− | < | + | <egypt zoom=1 width=256 height=512> |
− | </ | + | </egypt> |
</pre> | </pre> | ||
− | < | + | <egypt zoom=1 width=256 height=512> |
− | </ | + | </egypt> |
---- | ---- | ||
+ | ===Map Drawing Examples=== | ||
+ | |||
+ | <pre> | ||
+ | <egypt mouseoverpopup=yes> | ||
+ | line -1000,4790:-1000,8190:0,8190:0,4790:-1000,4790 color:'#ff0000', clickable:false | ||
+ | rect 2500,6800:4800,4600 color:'#00ff00', clickable:false, weight:1 | ||
+ | poly 2300,-5500:3200,-3400:4500,-6400 color:'#ff00ff', clickable:false | ||
+ | circ 0,0 450 color:'#000000', clickable:false | ||
+ | </egypt> | ||
+ | </pre> | ||
+ | <egypt mouseoverpopup=yes> | ||
+ | line -1000,4790:-1000,8190:0,8190:0,4790:-1000,4790 color:'#ff0000', clickable:false | ||
+ | rect 2500,6800:4800,4600 color:'#00ff00', clickable:false, weight:1 | ||
+ | poly 2300,-5500:3200,-3400:4500,-6400 color:'#ff00ff', clickable:false | ||
+ | circ 0,0 450 color:'#000000', clickable:false | ||
+ | </egypt> | ||
+ | |||
+ | --- | ||
+ | |||
+ | ===Map Boundries Examples=== | ||
− | |||
<pre> | <pre> | ||
− | |||
− | |||
</pre> | </pre> | ||
− | < | + | <egypt showposition=yes> |
− | + | line -1000,4790:-1000,8190:0,8190:0,4790:-1000,4790 color:'#ff0000' | |
+ | |||
+ | line 2700,-1400:2700,740:4900,740:4900,-1400:2700,-1400 color:'#ff0000' | ||
+ | |||
+ | line 800,4600:800,5500:1750,5500:1750,4600:800,4600 color:'#ff0000' | ||
+ | |||
+ | line -400,-4100:-400,-100:2700,-100:2700,-4100:-400,-4100 color:'#ff0000' | ||
+ | |||
+ | line 3505,-8100:3505,-4100:4900,-4100:4900,-8100:3505,-8100 color:'#ff0000' | ||
+ | |||
+ | line -1000,4025:-1000,4790:200,4790:200,4025:-1000,4025 color:'#ff0000' | ||
+ | |||
+ | line 3450,6000:3450,8190:4990,8190:4990,6000:3450,6000 color:'#ff0000' | ||
+ | |||
+ | line 200,1440:200,4600:1800,4600:1800,1440:200,1440 color:'#ff0000' | ||
+ | |||
+ | line 2170,3700:2170,6000:4200,6000:4200,3700:2170,3700 color:'#ff0000' | ||
+ | |||
+ | line -910,-8190:-910,-4100:3505,-4100:3505,-8190:-910,-8190 color:'#ff0000' | ||
+ | |||
+ | line -3070,4190:-3070,8190:-1000,8190:-1000,4190:-3070,4190 color:'#ff0000' | ||
+ | |||
+ | line -3070,-600:-3070,4025:200,4025:200,-100:-400,-100:-400,-600:-3070,-600 color:'#ff0000' | ||
+ | |||
+ | line 200,5200:200,7900:1505,7900:1505,5500:800,5500:800,5200:200,5200 color:'#ff0000' | ||
− | + | line 1505,5500:1505,7600:2170,7600:2170,5200:1750,5200:1750,5500:1505,5500 color:'#ff0000' | |
+ | </egypt> | ||
+ | --- | ||
− | === | + | ===All of Egypt, Square=== |
<pre> | <pre> | ||
− | < | + | <egypt zoom=1 width=512 height=512> |
− | + | </egypt> | |
− | </ | ||
</pre> | </pre> | ||
− | < | + | <egypt zoom=1 width=512 height=512> |
− | + | </egypt> | |
− | </ | ||
---- | ---- | ||
− | + | === All Tales in Table Design === | |
− | === All Tales in | ||
{| border="1" style="background:#CFC38E;" | {| border="1" style="background:#CFC38E;" | ||
!Tale 5 Shard A | !Tale 5 Shard A | ||
Line 244: | Line 277: | ||
|- | |- | ||
| | | | ||
− | < | + | <egypt |
tale=5 | tale=5 | ||
− | |||
zoom=1 | zoom=1 | ||
width=256 | width=256 | ||
height=512 | height=512 | ||
− | |||
− | |||
showposition=yes | showposition=yes | ||
− | |||
icons="/wiki/tale5/images/markers/marker{label}.png" | icons="/wiki/tale5/images/markers/marker{label}.png" | ||
iconsize="32x32" | iconsize="32x32" | ||
− | iconanchor=" | + | iconanchor="10x32" |
> | > | ||
(GH) 770, 5752, GuildHall @ 764, 5742 | (GH) 770, 5752, GuildHall @ 764, 5742 | ||
− | </ | + | </egypt> |
| | | | ||
− | < | + | <egypt |
− | tale= | + | tale=4b |
− | |||
zoom=1 | zoom=1 | ||
width=256 | width=256 | ||
height=512 | height=512 | ||
− | |||
− | |||
− | |||
showregion=yes | showregion=yes | ||
icons="/wiki/tale5/images/markers/marker{label}.png" | icons="/wiki/tale5/images/markers/marker{label}.png" | ||
iconsize="32x32" | iconsize="32x32" | ||
− | iconanchor=" | + | iconanchor="10x32" |
> | > | ||
− | </ | + | </egypt> |
| | | | ||
− | < | + | <egypt |
tale=4 | tale=4 | ||
− | |||
zoom=1 | zoom=1 | ||
width=256 | width=256 | ||
height=512 | height=512 | ||
− | |||
− | |||
− | |||
showregion=yes | showregion=yes | ||
icons="/wiki/tale5/images/markers/{label}.png" | icons="/wiki/tale5/images/markers/{label}.png" | ||
iconsize="20x34" | iconsize="20x34" | ||
− | iconanchor=" | + | iconanchor="10x32" |
> | > | ||
(red_MarkerC) 863, -5339, T4A Compound @ 863, -5339 | (red_MarkerC) 863, -5339, T4A Compound @ 863, -5339 | ||
− | </ | + | </egypt> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|} | |} | ||
Line 323: | Line 325: | ||
|- | |- | ||
| | | | ||
− | < | + | <egypt |
tale=3 | tale=3 | ||
− | |||
zoom=1 | zoom=1 | ||
width=256 | width=256 | ||
height=512 | height=512 | ||
− | |||
showposition=yes | showposition=yes | ||
− | |||
− | |||
− | |||
> | > | ||
− | </ | + | </egypt> |
| | | | ||
− | < | + | <egypt |
tale=2 | tale=2 | ||
− | |||
zoom=1 | zoom=1 | ||
width=256 | width=256 | ||
height=512 | height=512 | ||
− | |||
showposition=yes | showposition=yes | ||
icons="/wiki/tale5/images/markers/{label}.png" | icons="/wiki/tale5/images/markers/{label}.png" | ||
iconsize="20x34" | iconsize="20x34" | ||
− | iconanchor=" | + | iconanchor="10x32" |
> | > | ||
(red_MarkerC) 2372, 5136, Old T2 Compound @ 2372, 5136 | (red_MarkerC) 2372, 5136, Old T2 Compound @ 2372, 5136 | ||
− | </ | + | </egypt> |
| | | | ||
− | < | + | <egypt |
tale=1 | tale=1 | ||
− | |||
zoom=1 | zoom=1 | ||
width=256 | width=256 | ||
height=512 | height=512 | ||
− | |||
showposition=yes | showposition=yes | ||
− | |||
− | |||
− | |||
> | > | ||
− | </ | + | </egypt> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|} | |} |
Latest revision as of 18:41, 15 February 2014
Google Maps is no more! (A brief history)
After Google deprecated version 2 of the Google Maps API all of the maps on the wiki broke. After along and drawn out process of trying to convert everything to version 3 of the Google Maps API the thought occurred to me that Google would deprecate v3 of the mapping API in the next 3-6 years and the cycle would repeat! So rather than trusting Google again (fool me once) I decided to look for a stand alone mapping API that wouldn't be dependent on any external services.
After looking at various APIs I settled on the Leaflet API. It's small, fast and most importantly: completely self contained. After learning the new API and using Shroomdar 2 as my test bed I was able to get every working. After that I started looking for a MediaWiki mapping extension that used Leaflet and discovered MultiMaps. By running a local MediaWiki wiki I was able to modify the extension to use the ATITD tile set and coordinate system.
The next step was to install it on the ATITD.org server. That failed. The MultiMaps extension used conventions that required a newer version of PHP than the ATITD.org server was running. So rather than using third-party PHP packages for CentOS (which would mean having to manually apply security patches and updates) or doing a complete OS upgrade/new install I decided to write a brand spanking new MediaWiki extension from scratch using the new API that would work with the current PHP version on the server. I've tried to make it MOSTLY compatible with the prior Google Map extension. But there are differences. Hopefully these bugs will be slowly ironed and and we'll gain additional functionality. This page is an attempt to document the new extension.
Known Issues
Currently these problems still exist:
Zoomed and cropped maps do not center properly- Some markers are stretched and may be off center
- Only Egyptian tile sets are usable (Can't use Openmap or Google Maps tilesets)
Only the T6 map is currently availableAll maps EXCEPT Tale 4A are available.- Markers require all information on 1 line vs split on various line (dealing with the popup window when clicked)
- Marker tooltips are not functional
Egypt Maps 1.0 Introduction
This wiki now runs a newly written mapping extension by me for MediaWiki. The <egypt> tag allows wiki users to create zoom-able, pan-able maps of Egypt with customized markers.
Simply add the following on a wiki page to create a default map:
<egypt> </egypt>
Or for backwards compatibility:
<googlemap> </goolemap>
This will generate a map like:
Markers
In the content of the tag, you can define one marker per line. Each line may or may not start with an icon name in parentheses. The line should then have the latitude (x), then a comma, optionally a space, then the longitude (y), then a comma, then text for the popup window. The popup text can include wiki mark-up (and commas) (not functional at the moment).
A list of markers is available on Mayanahs map page.
ATITD.org now hosts local copies of most of the icons Mayanah graciously provided. These are used by default if the icons tag is not provided; the icons follow the same naming convention on Mayanahs page. Click here to show all locally hosted markers: http://www.atitd.org/wiki/tale5/images/markers or visit Rogarian/GoogleMapMarkerTest which shows all 1461 locally stored pins (Warning: will be VERY slow!).
Marker Usage Example:
<egypt zoom="2" height="512" lon="0" showposition="yes"> (GH) 700,600,here goes the title 400, 400, here goes the title, it can contain commas but not wiki markup (S) 100, 100, Popup Text Goes here <br><br> </egypt>
Map Customization / Tag Attributes
To customize the map you can set various tags (attributes). Legal attributes are (boldface items are defaults):
Command | Desc | Options |
---|---|---|
tale | Which Tale to display? | Legal values: 1, 2, 3, 4, 4b, 5 and 6. NOTE: Tale 4 does not work. |
width | Width of the map in pixels. | Defaults to 512 pixels. |
height | Height of the map in pixels. | Defaults to 1024 pixels. |
lat | The center latitude (x) on the map. | Defaults to 1024. |
lon | The center longitude (y) on the map. | Defaults to 0. |
zoom | Default zoom level. | Game Map Legal values: 1 to 8 (2 is default, only the T5 map contains data on levels 7 and 8). |
showposition or showregion | Show x,y coords under the mouse and region name. Currently only Tale 6 maps are supported. | Legal values: yes and no. |
icons | URL template for custom markers. | Use "{label}" where the name of the icon will be inserted; defaults to "/wiki/tale5/images/markers/marker{label}.png". |
icon | URL for markers without an icon specified. | Defaults to "/wiki/tale5/images/markers/marker.png" |
iconsize | Height and width of the icons | Defaults to: 32x32 |
Commands no longer supported
Command | Desc | Options |
---|---|---|
cursor | Which mouse cursor to use on the map? | Legal values: pointer (hand), default (standard mouse cursor) and crosshair. |
stroke | Width of paths, in pixels. | Does not work in game maps. |
scale | Show the scale? | Legal values are yes and no. |
overview | Show the inset navigation map? | Legal values are yes and no. |
selector | Show the map/hybrid/satellite selector | Legal values are yes and no. |
type | The type of map to display. | Game Maps: game - Shard A, gameb - Shard B, Normal Google Maps: normal (or, equivalently, map) - Normal Google Map, terrain, hybrid, and satellite. |
controls | Zoom and navigation controls. | Legal values: small creates +/- zoom buttons, medium has zoom buttons and pan buttons, large has pan buttons with a sliding scale for zoom, and none has no buttons. |
doubleclick | What to do when the user double-clicks? | Legal values: recenter or zoom. |
scrollwheel | Define how the scroll wheel behaves. | Legal values: nothing or zoom. |
zoomstyle | How does the map zoom? | Legal values: fast and smooth, also known as continuous zooming (only works in some browsers). |
All attributes are optional.
Customized Icons
You can host your own collection of icons on your server, but note that they'll have the same anchor points as ATITD.org's default icon (32x32). Check out Mapki's collection of icon images for a bunch of icons you can use. To use your icons, add an icon attribute to your googlemap-tags like this
<egypt lat="42.711618" lon="-73.205112" zoom="2" controls="small" icon="http://myserver.com/standardmarker.png" icons="http://myserver.com/markers/marker{label}.png">
Mayanah has some instructions for using an alternate set of icons map here and a set of Mine Specific icons and Quarry Specificon the same page.
Example Maps
Good Default Settings
<egypt zoom=1 width=256 height=512> </egypt>
Map Drawing Examples
<egypt mouseoverpopup=yes> line -1000,4790:-1000,8190:0,8190:0,4790:-1000,4790 color:'#ff0000', clickable:false rect 2500,6800:4800,4600 color:'#00ff00', clickable:false, weight:1 poly 2300,-5500:3200,-3400:4500,-6400 color:'#ff00ff', clickable:false circ 0,0 450 color:'#000000', clickable:false </egypt>
---
Map Boundries Examples
---
All of Egypt, Square
<egypt zoom=1 width=512 height=512> </egypt>
All Tales in Table Design
Tale 5 Shard A | Tale 4 Shard B | Tale 4 Shard A |
---|---|---|
|
|
|
Tale 3 | Tale 2 | Tale 1 |
---|---|---|
|
|
|