This commit is contained in:
biglyderv 2025-01-17 02:06:15 -05:00
parent 0327cb715a
commit 02ca4cf85b
7 changed files with 341 additions and 36 deletions

67
discord.svg Normal file
View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="50"
height="50"
viewBox="0 0 50 50"
sodipodi:docname="discord.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="7.9999999"
inkscape:cx="23.5625"
inkscape:cy="30.5625"
inkscape:window-width="1918"
inkscape:window-height="1062"
inkscape:window-x="0"
inkscape:window-y="16"
inkscape:window-maximized="1"
inkscape:current-layer="svg1"
showguides="true"
inkscape:lockguides="true" /><circle
style="fill:#ffffff;stroke:#777777;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers;fill-opacity:1"
id="path1"
cx="25"
cy="25"
r="21.375" /><g
id="g3"
transform="matrix(0.89923846,0,0,0.89802804,3.6336948,-0.40863087)"
style="stroke-width:1.1128"><path
id="rect2"
style="fill:#e5e5e5;stroke:#777777;stroke-width:1.1128;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke fill markers"
d="m 42.591817,21.050533 c -0.262628,13.843314 -21.790131,9.26542 -21.790131,9.26542 L 11.306998,44.32512 16.058522,31.024039 c 0,0 -10.45986,1.286353 -11.118546,-9.598506 -0.344299,-5.689602 6.495154,-9.07 14.812592,-9.152697 7.594773,-0.0755 23.0043,0.07775 22.839249,8.777697 z"
sodipodi:nodetypes="scccsss" /><ellipse
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:1.1128;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="path2"
cx="11.718009"
cy="22.339203"
rx="3.1221175"
ry="3.3271532" /><ellipse
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:1.1128;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="circle2"
cx="23.658089"
cy="22.339203"
rx="3.1221175"
ry="3.3271532" /><ellipse
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:1.1128;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="circle3"
cx="35.598167"
cy="22.339203"
rx="3.1221175"
ry="3.3271532" /></g></svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View file

@ -1,24 +1,31 @@
:root { :root {
--black-2: rgb(54, 23, 23); --black-3: rgb(177, 177, 177);
--black: rgb(105, 41, 41); --black-2: rgb(71, 69, 65);
--gray: rgb(161, 72, 72); --black: rgb(39, 38, 37);
--white: rgb(255, 246, 223); --gray: rgb(31, 30, 28);
--white: rgb(255, 251, 241);
--elem-width: min(800px,90vw); --elem-width: min(1200px, 90vw);
--elem-height: min(800px,90vh); --elem-height: min(800px, 90vh);
--border-radius: 15px; --border-radius: 5px;
color: var(--white); color: var(--white);
font-family: system-ui, sans-serif; font-family: system-ui, sans-serif;
}
.important {
font-size: 1.5rem;
} }
body { body {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
background: var(--black-2); background: var(--black);
margin-top: 0; margin-top: 0;
} }
@ -35,7 +42,8 @@ body {
object-fit: cover; object-fit: cover;
} }
.banner-background, .banner-content { .banner-background,
.banner-content {
height: var(--elem-height); height: var(--elem-height);
overflow-y: auto; overflow-y: auto;
} }
@ -85,12 +93,21 @@ body {
.content, .content,
.form, .form,
.banner, .banner,
.banner-background { .banner-background,
.path {
border: solid var(--gray) 3px; border: solid var(--gray) 3px;
padding: 25px;
margin: 25px;
border-radius: var(--border-radius); border-radius: var(--border-radius);
width: var(--elem-width); width: var(--elem-width);
background: var(--black-2);
}
.content,
.form,
.banner,
.banner-background {
padding: 25px;
margin: 25px;
} }
.form { .form {
@ -119,15 +136,27 @@ body {
} }
.map { .map {
width: var(--elem-height); width: var(--elem-width);
height: var(--elem-height); background: var(--gray);
background: var(--gray); image-rendering: pixelated;
image-rendering: pixelated; image-rendering: crisp-edges;
image-rendering: crisp-edges; }
.coords {
position: relative;
top: calc(var(--elem-width) / -3);
left: calc(var(--elem-width) / 2);
font-size: 16px;
background: rgba(0,0,0,0.5);
padding: 10px;
width: 250px;
margin: 0;
} }
a { a {
color: var(--white); color: inherit;
font-weight: bold;
text-decoration-thickness: 3px;
} }
h1 { h1 {
@ -135,7 +164,24 @@ h1 {
align-items: center; align-items: center;
} }
h1 .form-input{ h1 .form-input {
margin-bottom: 0; margin-bottom: 0;
margin-left: 10px; margin-left: 10px;
} }
.path {
min-height: 200px;
display: inline-flex;
width: calc(var(--elem-width) / 4.7);
min-width: 200px;
margin: 10px;
background: var(--black-3);
color: var(--black-2);
padding: 5px;
flex-direction: column;
align-items: center;
}
.path img {
height: 200px;
}

View file

@ -8,18 +8,29 @@
<body> <body>
<div class='content'> <div class='content'>
<h1> <p><b class='important'>Astrophis</b> is a civilization roleplay. Lead your nation's destiny throughout the
<span>Nations of Minzeo on Minecraft</span> Minecraft world.</p>
<button class='form-input'><a href='#about'>About</a></button> <div class='path'>
</h1> <div><b class='important'>War</b></div>
<canvas class='map' width='1000' height='1000'></canvas> <img src='war.svg'>
<h2>Position</h2> </div>
<pre class='coords'></pre> <div class='path'>
<h2>Controls</h2> <div><b class='important'><a href='https://discord.gg/yeyJfgAYGp'>Discord</a></b></div>
<img src='discord.svg'>
</div>
<div class='path'>
<div><b class='important' onclick='copy()'><a href='#'>Server</a></b></div>
<img src='server.svg'>
</div>
<div class='path'>
<div><b class='important' onclick='copy()'><a href='https://wiki.dervland.net/wiki/Astrophis'>Wiki</a></b></div>
<img src='wiki.svg'>
</div>
<h1>Nations</h1>
<p><b>Pan camera:</b> [WASD/Mouse], <b>Fast motion:</b> [Q], <b>Zoom:</b> [Mouse wheel]</p> <p><b>Pan camera:</b> [WASD/Mouse], <b>Fast motion:</b> [Q], <b>Zoom:</b> [Mouse wheel]</p>
<canvas class='map' width='1200' height='800'></canvas>
<pre class='coords'></pre>
<h1 id='about'>About</h1> <h1 id='about'>About</h1>
<p>Minzeo is a Minecraft civilization roleplay. Unlike similar servers, it isn't a short-term challenge, and has
no claim plugins. </p>
<p>The server's geopolitics is defined by the players and the gameplay rules.</p> <p>The server's geopolitics is defined by the players and the gameplay rules.</p>
<h2>Rules</h2> <h2>Rules</h2>
<ol> <ol>
@ -31,14 +42,10 @@
<li>Claims of excessive size will not be mapped.</li> <li>Claims of excessive size will not be mapped.</li>
<li>The first nation to claim a land in Discord, and anyone squatting there, owns it.</li> <li>The first nation to claim a land in Discord, and anyone squatting there, owns it.</li>
<li>Wars must be declared in Discord to be valid.</li> <li>Wars must be declared in Discord to be valid.</li>
<li>In a war, each nation starts with 3 points per citizen, 3 points per settlement.</li> <li>In a war, each nation starts with 3 points per citizen, 3 points per settlement. These are deducted by player death.</li>
<li>To end a war, a nation must have 0 points, have surrendered, or have withdrawn.</li> <li>To end a war, a nation must have 0 points, have surrendered, or have withdrawn.</li>
<li>Not all points need to be taken to partially annex a nation.</li> <li>Not all points need to be taken to partially annex a nation.</li>
</ol> </ol>
<h2>Joining</h2>
<button class='form-input'><a href='https://discord.gg/yeyJfgAYGp'>Discord</a></button>
<button class='form-input' onclick='copy()'><a href='#'>Minecraft</a></button>
<button class='form-input'><a href='https://wiki.dervland.net/wiki/Minezo'>Wiki</a></button>
</div> </div>
<script src="/map.js"></script> <script src="/map.js"></script>
</body> </body>

4
map.js
View file

@ -122,7 +122,9 @@ for (let asset of assets) {
} }
let off = [-(imgA[0].width * zoom - map.width) / 2, -(imgA[0].height * zoom - map.height) / 2]; let off = [-(imgA[0].width * zoom - map.width) / 2, -(imgA[0].height * zoom - map.height) / 2];
mpos = [off[0], off[1]]; setTimeout(function() {
mpos = [off[0], off[1]];
},300)
setInterval(move, 10); setInterval(move, 10);

82
server.svg Normal file
View file

@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="50"
height="50"
viewBox="0 0 50 50"
sodipodi:docname="server.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="16"
inkscape:cx="24.53125"
inkscape:cy="23.34375"
inkscape:window-width="1918"
inkscape:window-height="1062"
inkscape:window-x="0"
inkscape:window-y="16"
inkscape:window-maximized="1"
inkscape:current-layer="svg1"
showguides="true"
inkscape:lockguides="true" /><circle
style="fill:#ffffff;stroke:#777777;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers;fill-opacity:1"
id="path1"
cx="25"
cy="25"
r="21.375" /><circle
style="fill:#e5e5e5;fill-opacity:1;stroke:#777777;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="path3"
cx="23.875"
cy="24.25"
r="12.8125" /><rect
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect6"
width="6.0625"
height="6.0625"
x="13.5625"
y="20.6875"
ry="1.125" /><rect
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:0.999999;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect7"
width="10.6875"
height="10.6875"
x="21.8125"
y="15.1875"
ry="1.9832474" /><rect
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:0.999999;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect8"
width="2.1874998"
height="2.1874998"
x="17.75"
y="29.25"
ry="0.40592781" /><rect
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:0.999999;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect9"
width="2.1874998"
height="2.1874998"
x="20.3125"
y="33"
ry="0.40592781" /><rect
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:0.999999;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect10"
width="4.3125"
height="4.3125"
x="24.4375"
y="28.25"
ry="0.80025774" /></svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

50
war.svg Normal file
View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="50"
height="50"
viewBox="0 0 50 50"
sodipodi:docname="war.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="11.313708"
inkscape:cx="25.500039"
inkscape:cy="21.787728"
inkscape:window-width="1918"
inkscape:window-height="1062"
inkscape:window-x="0"
inkscape:window-y="16"
inkscape:window-maximized="1"
inkscape:current-layer="svg1"
showguides="false"
inkscape:lockguides="true" /><circle
style="fill:#ffffff;stroke:#777777;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers;fill-opacity:1"
id="path1"
cx="25"
cy="25"
r="21.375" /><path
id="rect1"
style="fill:#e5e5e5;fill-opacity:1;stroke:#777777;stroke-width:0.999997;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
d="M 20.847225,29.319475 35.808082,11.51741 21.967035,30.205623 c 0,0 1.800695,2.785381 2.398997,3.573538 l -3.489884,-3.056154 -0.498203,1.634706 -4.223693,4.868757 0.150488,1.255019 -2.111986,-1.696218 1.272284,-0.157255 3.57525,-5.38242 1.545157,-1.046152 -4.496732,-1.891457 c 1.074354,0.398583 4.758519,1.011487 4.758519,1.011487 z"
sodipodi:nodetypes="ccccccccccccccc" /><path
id="path2"
style="fill:#e5e5e5;fill-opacity:1;stroke:#777777;stroke-width:0.999997;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
d="M 29.152775,29.319475 14.191918,11.51741 28.032965,30.205623 c 0,0 -1.800695,2.785381 -2.398997,3.573538 l 3.489884,-3.056154 0.498203,1.634706 4.223693,4.868757 -0.150488,1.255019 2.111986,-1.696218 -1.272284,-0.157255 -3.57525,-5.38242 -1.545157,-1.046152 4.496732,-1.891457 c -1.074354,0.398583 -4.758519,1.011487 -4.758519,1.011487 z"
sodipodi:nodetypes="ccccccccccccccc" /></svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

51
wiki.svg Normal file
View file

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="50"
height="50"
viewBox="0 0 50 50"
sodipodi:docname="wiki.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="16"
inkscape:cx="24.53125"
inkscape:cy="23.34375"
inkscape:window-width="1918"
inkscape:window-height="1062"
inkscape:window-x="0"
inkscape:window-y="16"
inkscape:window-maximized="1"
inkscape:current-layer="svg1"
showguides="true"
inkscape:lockguides="true" /><circle
style="fill:#ffffff;stroke:#777777;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers;fill-opacity:1"
id="path1"
cx="25"
cy="25"
r="21.375" /><path
id="rect10"
style="fill:#777777;stroke:#777777;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke fill markers"
d="m 22.3125,15 h 4 v 25.5 l 1,2.375 -6.875,-0.125 1.875,-2.4375 v -21.875 l -6.75,4.4375 z"
sodipodi:nodetypes="ccccccccc" /><circle
style="fill:#777777;fill-opacity:1;stroke:#777777;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="path10"
cx="24"
cy="9.125"
r="4" /></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB