Compare commits
38 Commits
Author | SHA1 | Date | |
---|---|---|---|
c2f40e4f8d | |||
99e9d1e8a4 | |||
b1cb21fddf | |||
9e6198b15a | |||
96ac41760e | |||
f6580ba8d4 | |||
3e07916bfc | |||
70f1968305 | |||
6a5f272c25 | |||
6519577fb3 | |||
089d5dc851 | |||
eb5fe67c6e | |||
ca2d734450 | |||
93872cd832 | |||
ddac670da0 | |||
f37d559f91 | |||
595051211e | |||
b21458b192 | |||
acba38b8f9 | |||
ed4a92d374 | |||
d3587c1afc | |||
d5c83e93ae | |||
a3d39d0d4a | |||
57e87e7d8e | |||
5f68506197 | |||
e0883edf0a | |||
0c52bdabef | |||
18003e7813 | |||
101a598f6f | |||
f839fa454e | |||
349a7cff3d | |||
e16988435c | |||
c4daa73481 | |||
|
a3444bf9b4 | ||
d39a71fb8d | |||
cab4e7d8fe | |||
f5f96d86ad | |||
c96061dc4e |
4
.gitignore
vendored
@ -1 +1,5 @@
|
|||||||
/data
|
/data
|
||||||
|
/squaremap/data
|
||||||
|
/squaremap/web
|
||||||
|
/squaremap/locale
|
||||||
|
.DS_Store
|
||||||
|
70
README.md
@ -1,4 +1,72 @@
|
|||||||
# NEW MC Server - Powered by Garde Studios
|
# NEW MC Server - Powered by Garde Studios
|
||||||
|
|
||||||
Testing WebHook
|
## Development
|
||||||
|
|
||||||
|
### (Prerequisite) Install Docker
|
||||||
|
|
||||||
|
Go to the Website [docker.com](https://www.docker.com/) and download the Docker Desktop Version for you're Operating System.
|
||||||
|
|
||||||
|
In case you're using Linux find a guide on the internet. For RHEL/Fedora/CentOS/Rocky Linux the setup process is as follows:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo dnf check-update # Update System
|
||||||
|
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # Add the docker repo to dnf
|
||||||
|
sudo dnf install docker-ce docker-ce-cli containerd.io -y # Install docker engine
|
||||||
|
sudo systemctl start docker # start docker deamon
|
||||||
|
sudo systemctl enable docker # enable docker deamon on startup
|
||||||
|
sudo usermod -aG docker $(whoami) # elevate user to use docker cmd
|
||||||
|
```
|
||||||
|
|
||||||
|
### Starting the Server
|
||||||
|
|
||||||
|
> [!WARNING]
|
||||||
|
> Make sure you first configure the `docker-compose.yml` under the `environment` section to use the appropiate ammount of RAM youre system can provide.
|
||||||
|
> 16GB isn't sensible in most development/testing environments
|
||||||
|
|
||||||
|
Start a Terminal or use Docker Desktop
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> The first Startup creates the whole infrastructure behind the project and can take up some time.
|
||||||
|
> Make sure you grab some 0xCOFFE :)
|
||||||
|
|
||||||
|
#### Using Docker CLI
|
||||||
|
|
||||||
|
cd into the repo.
|
||||||
|
|
||||||
|
Start the Server:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose up
|
||||||
|
```
|
||||||
|
|
||||||
|
To close it just use `ctrl+c`.
|
||||||
|
|
||||||
|
Deamon Mode:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
To hook into the servers logs use:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker logs <container-name>
|
||||||
|
```
|
||||||
|
|
||||||
|
Killing the server is done in two ways.
|
||||||
|
|
||||||
|
Either by killing it directly:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker kill <container-name>
|
||||||
|
```
|
||||||
|
|
||||||
|
Or by hooking against the compose file:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose down
|
||||||
|
```
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
![](assets/Architecture-Overview.png)
|
||||||
|
BIN
assets/Architecture-Overview.png
Normal file
After Width: | Height: | Size: 53 KiB |
162
assets/architecture-overview.drawio
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (X11; Linux x86_64; rv:132.0) Gecko/20100101 Firefox/132.0" version="24.7.12">
|
||||||
|
<diagram name="Page-1" id="ngFJ-PK3nhXtL8uodcvB">
|
||||||
|
<mxGraphModel dx="1394" dy="739" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
|
||||||
|
<root>
|
||||||
|
<mxCell id="0" />
|
||||||
|
<mxCell id="1" parent="0" />
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-43" value="" style="group" parent="1" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="30" y="150" width="660" height="225" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-8" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-43" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="490" y="20" width="60" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-4" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.application_server2" parent="rkxtWGMJMKr7dUVkmx0B-8" vertex="1">
|
||||||
|
<mxGeometry x="8.5" y="30" width="43" height="50" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-7" value="cloud.cyperpunk.de" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-8" vertex="1">
|
||||||
|
<mxGeometry width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-10" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-43" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="230" y="145" width="60" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-6" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.application_server2" parent="rkxtWGMJMKr7dUVkmx0B-10" vertex="1">
|
||||||
|
<mxGeometry x="8.5" y="30" width="43" height="50" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-9" value="garde-studios.de" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-10" vertex="1">
|
||||||
|
<mxGeometry x="-20" width="100" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-13" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;shape=link;" parent="rkxtWGMJMKr7dUVkmx0B-43" source="rkxtWGMJMKr7dUVkmx0B-4" target="rkxtWGMJMKr7dUVkmx0B-2" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-21" value="Main Connection" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="rkxtWGMJMKr7dUVkmx0B-13" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="0.0358" y="1" relative="1" as="geometry">
|
||||||
|
<mxPoint x="-1" y="-30" as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-14" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.57;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-43" source="rkxtWGMJMKr7dUVkmx0B-6" target="rkxtWGMJMKr7dUVkmx0B-2" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-18" value="Authenticates User" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="rkxtWGMJMKr7dUVkmx0B-14" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="-0.155" relative="1" as="geometry">
|
||||||
|
<mxPoint x="17" as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-16" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-43" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="400" y="140" width="60" height="85" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-2" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.gateway" parent="rkxtWGMJMKr7dUVkmx0B-16" vertex="1">
|
||||||
|
<mxGeometry x="5" y="35" width="50" height="50" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-15" value="Proxy" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-16" vertex="1">
|
||||||
|
<mxGeometry width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-22" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-43" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="230" y="20" width="100" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-23" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.application_server2" parent="rkxtWGMJMKr7dUVkmx0B-22" vertex="1">
|
||||||
|
<mxGeometry x="8.5" y="30" width="43" height="50" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-24" value="garde-studios<span style="background-color: initial;">.de</span>" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-22" vertex="1">
|
||||||
|
<mxGeometry x="-20" width="100" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-25" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.57;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;shape=link;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-43" source="rkxtWGMJMKr7dUVkmx0B-23" target="rkxtWGMJMKr7dUVkmx0B-2" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry">
|
||||||
|
<mxPoint x="430" y="120" as="targetPoint" />
|
||||||
|
<Array as="points">
|
||||||
|
<mxPoint x="430" y="75" />
|
||||||
|
</Array>
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-26" value="Fallback to Limbo Server" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="rkxtWGMJMKr7dUVkmx0B-25" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="-0.1838" y="-1" relative="1" as="geometry">
|
||||||
|
<mxPoint x="-22" y="-1" as="offset" />
|
||||||
|
</mxGeometry>
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-41" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-43" vertex="1" connectable="0">
|
||||||
|
<mxGeometry width="180" height="175" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-29" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-41" vertex="1" connectable="0">
|
||||||
|
<mxGeometry width="60" height="64" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-27" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.application" parent="rkxtWGMJMKr7dUVkmx0B-29" vertex="1">
|
||||||
|
<mxGeometry x="5" y="30" width="50" height="34" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-28" value="Grafana" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-29" vertex="1">
|
||||||
|
<mxGeometry width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-33" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-41" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="120" width="60" height="64" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-34" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.application" parent="rkxtWGMJMKr7dUVkmx0B-33" vertex="1">
|
||||||
|
<mxGeometry x="5" y="30" width="50" height="34" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-35" value="Squaremap" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-33" vertex="1">
|
||||||
|
<mxGeometry width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-36" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-41" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="60" y="90" width="60" height="85" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-37" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.gateway" parent="rkxtWGMJMKr7dUVkmx0B-36" vertex="1">
|
||||||
|
<mxGeometry x="5" y="35" width="50" height="50" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-38" value="NGINX" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-36" vertex="1">
|
||||||
|
<mxGeometry width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-39" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-41" source="rkxtWGMJMKr7dUVkmx0B-37" target="rkxtWGMJMKr7dUVkmx0B-34" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-40" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-41" source="rkxtWGMJMKr7dUVkmx0B-37" target="rkxtWGMJMKr7dUVkmx0B-27" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-42" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-43" source="rkxtWGMJMKr7dUVkmx0B-6" target="rkxtWGMJMKr7dUVkmx0B-37" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-59" value="" style="group" parent="1" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="180" y="448" width="220" height="204" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-48" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-59" vertex="1" connectable="0">
|
||||||
|
<mxGeometry y="130" width="60" height="74" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-44" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.direct_access_feature" parent="rkxtWGMJMKr7dUVkmx0B-48" vertex="1">
|
||||||
|
<mxGeometry x="5" width="50" height="44" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-47" value="MC Client" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-48" vertex="1">
|
||||||
|
<mxGeometry y="44" width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-49" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-59" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="80" y="130" width="60" height="74" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-50" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.direct_access_feature" parent="rkxtWGMJMKr7dUVkmx0B-49" vertex="1">
|
||||||
|
<mxGeometry x="5" width="50" height="44" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-51" value="MC Client" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-49" vertex="1">
|
||||||
|
<mxGeometry y="44" width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-52" value="" style="group" parent="rkxtWGMJMKr7dUVkmx0B-59" vertex="1" connectable="0">
|
||||||
|
<mxGeometry x="160" y="130" width="60" height="74" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-53" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.direct_access_feature" parent="rkxtWGMJMKr7dUVkmx0B-52" vertex="1">
|
||||||
|
<mxGeometry x="5" width="50" height="44" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-54" value="MC Client" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="rkxtWGMJMKr7dUVkmx0B-52" vertex="1">
|
||||||
|
<mxGeometry y="44" width="60" height="30" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-55" value="" style="sketch=0;aspect=fixed;pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;fillColor=#00188D;shape=mxgraph.mscae.enterprise.internet" parent="rkxtWGMJMKr7dUVkmx0B-59" vertex="1">
|
||||||
|
<mxGeometry x="52.74000000000001" width="114.52" height="71" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-56" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.61;exitY=0;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-59" source="rkxtWGMJMKr7dUVkmx0B-50" target="rkxtWGMJMKr7dUVkmx0B-55" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-57" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.61;exitY=0;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.14;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-59" source="rkxtWGMJMKr7dUVkmx0B-44" target="rkxtWGMJMKr7dUVkmx0B-55" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-58" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.61;exitY=0;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.87;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;" parent="rkxtWGMJMKr7dUVkmx0B-59" source="rkxtWGMJMKr7dUVkmx0B-53" target="rkxtWGMJMKr7dUVkmx0B-55" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="rkxtWGMJMKr7dUVkmx0B-60" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0.03;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;shape=link;" parent="1" source="rkxtWGMJMKr7dUVkmx0B-55" target="rkxtWGMJMKr7dUVkmx0B-6" edge="1">
|
||||||
|
<mxGeometry relative="1" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</root>
|
||||||
|
</mxGraphModel>
|
||||||
|
</diagram>
|
||||||
|
</mxfile>
|
@ -1,3 +0,0 @@
|
|||||||
server-port: 25585
|
|
||||||
update-interval: 1000
|
|
||||||
use-spark: true
|
|
2
deployment/cloud.cyperpunk.de.compose.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
include:
|
||||||
|
- ../main/compose.yml
|
4
deployment/garde-studios.de.compose.yml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
include:
|
||||||
|
- ../proxy/velocity/compose.yml
|
||||||
|
- ../fallback/compose.yml
|
||||||
|
- ../monitoring/compose.yml
|
1
development/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
/dev-proxy/proxy-data
|
39
development/README.md
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
# Development Build
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> This setup is only for testing purposes.
|
||||||
|
> It is unsafe to use as a production build.
|
||||||
|
|
||||||
|
## Prerequisits
|
||||||
|
|
||||||
|
1. Check if `docker` & `docker compose` are installed correctly
|
||||||
|
2. Open 3 Terminal Windows (Or 2 depends on)
|
||||||
|
3. Change the ip in `velocity.toml` (Line 75 & 76) to your local ip (This gets reworked in the Future)
|
||||||
|
|
||||||
|
## To Do
|
||||||
|
- [ ] Build system for the whole dev stack
|
||||||
|
- [ ] Networking between Containers
|
||||||
|
|
||||||
|
## Handling the stack
|
||||||
|
|
||||||
|
1. Start Dev Proxy
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose -f dev-proxy/proxy-compose.yml up
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Start Dev Fallback
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose -f fallback-compose.yml up
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Start Dev Main
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose -f main-compose.yml up
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Start Minecraft with Version 1.21.1 (Fabric highly preferred)
|
||||||
|
5. Add Server -> Server Address -> `localhost`
|
||||||
|
6. Connect
|
BIN
development/dev-proxy/dev-server.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
16
development/dev-proxy/proxy-compose.yml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
services:
|
||||||
|
proxy:
|
||||||
|
container_name: dev_proxy
|
||||||
|
image: itzg/mc-proxy
|
||||||
|
environment:
|
||||||
|
TYPE: VELOCITY
|
||||||
|
DEBUG: true
|
||||||
|
VELOCITY_VERSION: latest
|
||||||
|
VELOCITY_BUILD_ID: 450
|
||||||
|
volumes:
|
||||||
|
- ./dev-server.png:/server/server-icon.png
|
||||||
|
- ./velocity.toml:/config/velocity.toml
|
||||||
|
- ../../proxy/velocity/forwarding.secret:/config/forwarding.secret:ro
|
||||||
|
- ./proxy-data:/server
|
||||||
|
ports:
|
||||||
|
- 25565:25565
|
159
development/dev-proxy/velocity.toml
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
# Config version. Do not change this
|
||||||
|
config-version = "2.7"
|
||||||
|
|
||||||
|
# What port should the proxy be bound to? By default, we'll bind to all addresses on port 25565.
|
||||||
|
bind = "0.0.0.0:25565"
|
||||||
|
|
||||||
|
# What should be the MOTD? This gets displayed when the player adds your server to
|
||||||
|
# their server list. Only MiniMessage format is accepted.
|
||||||
|
motd = "<dark_purple>Garde Studios</dark_purple> <red>DEVELOPMENT BUILD</red>"
|
||||||
|
|
||||||
|
# What should we display for the maximum number of players? (Velocity does not support a cap
|
||||||
|
# on the number of players online.)
|
||||||
|
show-max-players = 5
|
||||||
|
|
||||||
|
# Should we authenticate players with Mojang? By default, this is on.
|
||||||
|
online-mode = true
|
||||||
|
|
||||||
|
# Should the proxy enforce the new public key security standard? By default, this is on.
|
||||||
|
force-key-authentication = true
|
||||||
|
|
||||||
|
# If client's ISP/AS sent from this proxy is different from the one from Mojang's
|
||||||
|
# authentication server, the player is kicked. This disallows some VPN and proxy
|
||||||
|
# connections but is a weak form of protection.
|
||||||
|
prevent-client-proxy-connections = false
|
||||||
|
|
||||||
|
# Should we forward IP addresses and other data to backend servers?
|
||||||
|
# Available options:
|
||||||
|
# - "none": No forwarding will be done. All players will appear to be connecting
|
||||||
|
# from the proxy and will have offline-mode UUIDs.
|
||||||
|
# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this
|
||||||
|
# if you run servers using Minecraft 1.12 or lower.
|
||||||
|
# - "bungeeguard": Forward player IPs and UUIDs in a format supported by the BungeeGuard
|
||||||
|
# plugin. Use this if you run servers using Minecraft 1.12 or lower, and are
|
||||||
|
# unable to implement network level firewalling (on a shared host).
|
||||||
|
# - "modern": Forward player IPs and UUIDs as part of the login process using
|
||||||
|
# Velocity's native forwarding. Only applicable for Minecraft 1.13 or higher.
|
||||||
|
player-info-forwarding-mode = "modern"
|
||||||
|
|
||||||
|
# If you are using modern or BungeeGuard IP forwarding, configure a file that contains a unique secret here.
|
||||||
|
# The file is expected to be UTF-8 encoded and not empty.
|
||||||
|
forwarding-secret-file = "forwarding.secret"
|
||||||
|
|
||||||
|
# Announce whether or not your server supports Forge. If you run a modded server, we
|
||||||
|
# suggest turning this on.
|
||||||
|
#
|
||||||
|
# If your network runs one modpack consistently, consider using ping-passthrough = "mods"
|
||||||
|
# instead for a nicer display in the server list.
|
||||||
|
announce-forge = false
|
||||||
|
|
||||||
|
# If enabled (default is false) and the proxy is in online mode, Velocity will kick
|
||||||
|
# any existing player who is online if a duplicate connection attempt is made.
|
||||||
|
kick-existing-players = false
|
||||||
|
|
||||||
|
# Should Velocity pass server list ping requests to a backend server?
|
||||||
|
# Available options:
|
||||||
|
# - "disabled": No pass-through will be done. The velocity.toml and server-icon.png
|
||||||
|
# will determine the initial server list ping response.
|
||||||
|
# - "mods": Passes only the mod list from your backend server into the response.
|
||||||
|
# The first server in your try list (or forced host) with a mod list will be
|
||||||
|
# used. If no backend servers can be contacted, Velocity won't display any
|
||||||
|
# mod information.
|
||||||
|
# - "description": Uses the description and mod list from the backend server. The first
|
||||||
|
# server in the try (or forced host) list that responds is used for the
|
||||||
|
# description and mod list.
|
||||||
|
# - "all": Uses the backend server's response as the proxy response. The Velocity
|
||||||
|
# configuration is used if no servers could be contacted.
|
||||||
|
ping-passthrough = "DISABLED"
|
||||||
|
|
||||||
|
# If not enabled (default is true) player IP addresses will be replaced by <ip address withheld> in logs
|
||||||
|
enable-player-address-logging = true
|
||||||
|
|
||||||
|
[servers]
|
||||||
|
# Configure your servers here. Each key represents the server's name, and the value
|
||||||
|
# represents the IP address of the server to connect to.
|
||||||
|
main = "192.168.2.40:30000"
|
||||||
|
fallback = "192.168.2.40:30001"
|
||||||
|
|
||||||
|
|
||||||
|
# In what order we should try servers when a player logs in or is kicked from a server.
|
||||||
|
try = [
|
||||||
|
"main",
|
||||||
|
"fallback"
|
||||||
|
]
|
||||||
|
|
||||||
|
[forced-hosts]
|
||||||
|
# Configure your forced hosts here.
|
||||||
|
"cloud.cyperpunk.de" = [
|
||||||
|
"main"
|
||||||
|
]
|
||||||
|
|
||||||
|
"garde-studios.de" = [
|
||||||
|
"fallback"
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
[advanced]
|
||||||
|
# How large a Minecraft packet has to be before we compress it. Setting this to zero will
|
||||||
|
# compress all packets, and setting it to -1 will disable compression entirely.
|
||||||
|
compression-threshold = 256
|
||||||
|
|
||||||
|
# How much compression should be done (from 0-9). The default is -1, which uses the
|
||||||
|
# default level of 6.
|
||||||
|
compression-level = -1
|
||||||
|
|
||||||
|
# How fast (in milliseconds) are clients allowed to connect after the last connection? By
|
||||||
|
# default, this is three seconds. Disable this by setting this to 0.
|
||||||
|
login-ratelimit = 3000
|
||||||
|
|
||||||
|
# Specify a custom timeout for connection timeouts here. The default is five seconds.
|
||||||
|
connection-timeout = 5000
|
||||||
|
|
||||||
|
# Specify a read timeout for connections here. The default is 30 seconds.
|
||||||
|
read-timeout = 30000
|
||||||
|
|
||||||
|
# Enables compatibility with HAProxy's PROXY protocol. If you don't know what this is for, then
|
||||||
|
# don't enable it.
|
||||||
|
haproxy-protocol = false
|
||||||
|
|
||||||
|
# Enables TCP fast open support on the proxy. Requires the proxy to run on Linux.
|
||||||
|
tcp-fast-open = false
|
||||||
|
|
||||||
|
# Enables BungeeCord plugin messaging channel support on Velocity.
|
||||||
|
bungee-plugin-message-channel = true
|
||||||
|
|
||||||
|
# Shows ping requests to the proxy from clients.
|
||||||
|
show-ping-requests = false
|
||||||
|
|
||||||
|
# By default, Velocity will attempt to gracefully handle situations where the user unexpectedly
|
||||||
|
# loses connection to the server without an explicit disconnect message by attempting to fall the
|
||||||
|
# user back, except in the case of read timeouts. BungeeCord will disconnect the user instead. You
|
||||||
|
# can disable this setting to use the BungeeCord behavior.
|
||||||
|
failover-on-unexpected-server-disconnect = true
|
||||||
|
|
||||||
|
# Declares the proxy commands to 1.13+ clients.
|
||||||
|
announce-proxy-commands = true
|
||||||
|
|
||||||
|
# Enables the logging of commands
|
||||||
|
log-command-executions = true
|
||||||
|
|
||||||
|
# Enables logging of player connections when connecting to the proxy, switching servers
|
||||||
|
# and disconnecting from the proxy.
|
||||||
|
log-player-connections = true
|
||||||
|
|
||||||
|
# Allows players transferred from other hosts via the
|
||||||
|
# Transfer packet (Minecraft 1.20.5) to be received.
|
||||||
|
accepts-transfers = false
|
||||||
|
|
||||||
|
[query]
|
||||||
|
# Whether to enable responding to GameSpy 4 query responses or not.
|
||||||
|
enabled = true
|
||||||
|
|
||||||
|
# If query is enabled, on what port should the query protocol listen on?
|
||||||
|
port = 25565
|
||||||
|
|
||||||
|
# This is the map name that is reported to the query services.
|
||||||
|
map = "Mappie"
|
||||||
|
|
||||||
|
# Whether plugins should be shown in query response by default or not
|
||||||
|
show-plugins = false
|
54
development/fallback-compose.yml
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
services:
|
||||||
|
fallback:
|
||||||
|
image: itzg/minecraft-server
|
||||||
|
container_name: dev_fallback
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
# What Server
|
||||||
|
EULA: "true"
|
||||||
|
TYPE: FABRIC
|
||||||
|
VERSION: 1.21.1
|
||||||
|
SERVER_NAME: uno
|
||||||
|
ONLINE_MODE: false
|
||||||
|
TZ: Europe/Berlin
|
||||||
|
|
||||||
|
# Server Properties
|
||||||
|
OVERRIDE_SERVER_PROPERTIES: true
|
||||||
|
ENABLE_COMMAND_BLOCK: true
|
||||||
|
GAMEMODE: creative
|
||||||
|
FORCE_GAMEMODE: false
|
||||||
|
|
||||||
|
# RCON Setup
|
||||||
|
RCON_PASSWORD: garde-studios
|
||||||
|
BROADCAST_CONSOLE_TO_OPS: true
|
||||||
|
BROADCAST_RCON_TO_OPS: true
|
||||||
|
|
||||||
|
# Setup
|
||||||
|
FORCE_REDOWNLOAD: true
|
||||||
|
#MEMORY: 2G
|
||||||
|
INIT_MEMORY: 500M
|
||||||
|
MAX_MEMORY: 1G
|
||||||
|
USE_AIKAR_FLAGS: true
|
||||||
|
|
||||||
|
# World & Mod Data
|
||||||
|
WORLD: https://file.cyperpunk.de/filebrowser/api/public/dl/4FDwjgd8/lobby.zip
|
||||||
|
#SEED: 795488740
|
||||||
|
MODS_FILE: /extras/mods.txt
|
||||||
|
# Whitelisting Players
|
||||||
|
WHITELIST_FILE: /extras/whitelist.json
|
||||||
|
OVERRIDE_WHITELIST: true
|
||||||
|
ENFORCE_WHITELIST: false
|
||||||
|
|
||||||
|
# Operator Setup
|
||||||
|
OPS_FILE: /extras/ops.json
|
||||||
|
SYNC_SKIP_NEWER_IN_DESTINATION: false
|
||||||
|
ports:
|
||||||
|
- 30001:25565 # Connection Port
|
||||||
|
- 9101:9100 # unified Exporter
|
||||||
|
volumes:
|
||||||
|
- ../fallback/data:/data
|
||||||
|
- ../fallback/mods.txt:/extras/mods.txt:ro
|
||||||
|
- ../fallback/ops.json:/extras/ops.json:ro
|
||||||
|
- ../fallback/whitelist.json:/extras/whitelist.json:ro
|
||||||
|
- ../fallback/config:/config
|
||||||
|
|
54
development/main-compose.yml
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
services:
|
||||||
|
dev_server:
|
||||||
|
image: itzg/minecraft-server
|
||||||
|
container_name: dev_server
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
# What Server
|
||||||
|
EULA: "true"
|
||||||
|
TYPE: FABRIC
|
||||||
|
VERSION: 1.21.1
|
||||||
|
SERVER_NAME: dev
|
||||||
|
ONLINE_MODE: false
|
||||||
|
TZ: Europe/Berlin
|
||||||
|
|
||||||
|
# Server Properties
|
||||||
|
OVERRIDE_SERVER_PROPERTIES: true
|
||||||
|
ENABLE_COMMAND_BLOCK: true
|
||||||
|
GAMEMODE: creative
|
||||||
|
FORCE_GAMEMODE: false
|
||||||
|
LEVEL_TYPE: minecraft:large_biomes
|
||||||
|
|
||||||
|
# RCON Setup
|
||||||
|
RCON_PASSWORD: garde-studios
|
||||||
|
BROADCAST_CONSOLE_TO_OPS: true
|
||||||
|
BROADCAST_RCON_TO_OPS: true
|
||||||
|
|
||||||
|
# Setup
|
||||||
|
FORCE_REDOWNLOAD: true
|
||||||
|
INIT_MEMORY: 500M
|
||||||
|
MAX_MEMORY: 1G
|
||||||
|
USE_AIKAR_FLAGS: true
|
||||||
|
|
||||||
|
# World & Mod Data
|
||||||
|
#WORLD:
|
||||||
|
SEED: -2202949464251781243
|
||||||
|
MODS_FILE: /extras/mods.txt
|
||||||
|
# Whitelisting Players
|
||||||
|
WHITELIST_FILE: https://git.cyperpunk.de/Garde-Studios/Uno-MC/raw/branch/main/whitelist.json
|
||||||
|
OVERRIDE_WHITELIST: true
|
||||||
|
ENFORCE_WHITELIST: false
|
||||||
|
|
||||||
|
# Operator Setup
|
||||||
|
OPS_FILE: https://git.cyperpunk.de/Garde-Studios/Uno-MC/raw/branch/main/ops.json
|
||||||
|
SYNC_SKIP_NEWER_IN_DESTINATION: false
|
||||||
|
ports:
|
||||||
|
- 30000:25565 # Connection Port
|
||||||
|
- 31066:25575 # Rcon
|
||||||
|
- 8090:8080 # Squaremap
|
||||||
|
- 9100:9100 # unified Exporter
|
||||||
|
volumes:
|
||||||
|
- ../main/data:/data
|
||||||
|
- ../main/squaremap:/data/squaremap
|
||||||
|
- ../main/mods.txt:/extras/mods.txt:ro
|
||||||
|
- ../main/config:/config
|
1
fallback/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
/data
|
55
fallback/compose.yml
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
services:
|
||||||
|
server:
|
||||||
|
image: itzg/minecraft-server
|
||||||
|
container_name: fallback
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
# What Server
|
||||||
|
EULA: "true"
|
||||||
|
TYPE: FABRIC
|
||||||
|
VERSION: 1.21.1
|
||||||
|
SERVER_NAME: uno
|
||||||
|
ONLINE_MODE: false
|
||||||
|
TZ: Europe/Berlin
|
||||||
|
|
||||||
|
# Server Properties
|
||||||
|
OVERRIDE_SERVER_PROPERTIES: true
|
||||||
|
ENABLE_COMMAND_BLOCK: true
|
||||||
|
GAMEMODE: adventure
|
||||||
|
FORCE_GAMEMODE: true
|
||||||
|
|
||||||
|
# RCON Setup
|
||||||
|
RCON_PASSWORD: garde-studios
|
||||||
|
BROADCAST_CONSOLE_TO_OPS: false
|
||||||
|
BROADCAST_RCON_TO_OPS: true
|
||||||
|
|
||||||
|
# Setup
|
||||||
|
FORCE_REDOWNLOAD: true
|
||||||
|
#MEMORY: 2G
|
||||||
|
INIT_MEMORY: 2G
|
||||||
|
MAX_MEMORY: 4G
|
||||||
|
USE_AIKAR_FLAGS: true
|
||||||
|
|
||||||
|
# World & Mod Data
|
||||||
|
WORLD: https://file.cyperpunk.de/filebrowser/api/public/dl/4FDwjgd8/lobby.zip
|
||||||
|
#SEED: 795488740
|
||||||
|
MODS_FILE: /extras/mods.txt
|
||||||
|
# Whitelisting Players
|
||||||
|
WHITELIST_FILE: /extras/whitelist.json
|
||||||
|
OVERRIDE_WHITELIST: true
|
||||||
|
ENFORCE_WHITELIST: false
|
||||||
|
|
||||||
|
# Operator Setup
|
||||||
|
OPS_FILE: /extras/ops.json
|
||||||
|
SYNC_SKIP_NEWER_IN_DESTINATION: false
|
||||||
|
ports:
|
||||||
|
- 30000:25565 # Connection Port
|
||||||
|
- 9100:9100 # unified Exporter
|
||||||
|
volumes:
|
||||||
|
- ./data:/data
|
||||||
|
- ./mods.txt:/extras/mods.txt:ro
|
||||||
|
- ./ops.json:/extras/ops.json:ro
|
||||||
|
- ./whitelist.json:/extras/whitelist.json:ro
|
||||||
|
- ./config:/config
|
||||||
|
|
||||||
|
networks: {}
|
@ -1,4 +1,4 @@
|
|||||||
hackOnlineMode = true
|
hackOnlineMode = true
|
||||||
hackEarlySend = false
|
hackEarlySend = false
|
||||||
hackMessageChain = true
|
hackMessageChain = true
|
||||||
secret = "CMhgx3vF17Nu"
|
secret = "bGAJSlLeA4Wf"
|
14
fallback/config/unifiedmetrics/config.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
server:
|
||||||
|
name: "global"
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
driver: "prometheus"
|
||||||
|
collectors:
|
||||||
|
systemGc: true
|
||||||
|
systemMemory: true
|
||||||
|
systemProcess: true
|
||||||
|
systemThread: true
|
||||||
|
server: true
|
||||||
|
world: true
|
||||||
|
tick: true
|
||||||
|
events: true
|
16
fallback/config/unifiedmetrics/driver/prometheus.yml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
mode: "HTTP"
|
||||||
|
http:
|
||||||
|
host: "0.0.0.0"
|
||||||
|
port: 9100
|
||||||
|
authentication:
|
||||||
|
scheme: "NONE"
|
||||||
|
username: "username"
|
||||||
|
password: "password"
|
||||||
|
pushGateway:
|
||||||
|
job: "unifiedmetrics"
|
||||||
|
url: "http://pushgateway:9091"
|
||||||
|
authentication:
|
||||||
|
scheme: "NONE"
|
||||||
|
username: "username"
|
||||||
|
password: "password"
|
||||||
|
interval: 10
|
18
fallback/mods.txt
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# Fabric API
|
||||||
|
https://cdn.modrinth.com/data/P7dR8mSH/versions/thGkUOxt/fabric-api-0.107.0%2B1.21.1.jar
|
||||||
|
|
||||||
|
# Performance
|
||||||
|
https://cdn.modrinth.com/data/gvQqBUqZ/versions/5szYtenV/lithium-fabric-mc1.21.1-0.13.0.jar
|
||||||
|
https://cdn.modrinth.com/data/fALzjamp/versions/dPliWter/Chunky-1.4.16.jar
|
||||||
|
https://cdn.modrinth.com/data/s86X568j/versions/uT1cdd3k/ChunkyBorder-1.2.18.jar
|
||||||
|
https://cdn.modrinth.com/data/LFJf0Klb/versions/7e8Rxgsk/ce-2.1.1.jar
|
||||||
|
|
||||||
|
# Proxy
|
||||||
|
https://cdn.modrinth.com/data/8dI2tmqs/versions/AQhF7kvw/FabricProxy-Lite-2.9.0.jar
|
||||||
|
|
||||||
|
# Monitoring
|
||||||
|
https://cdn.modrinth.com/data/p1ewR5kV/versions/xwRVtqbA/unifiedmetrics-platform-fabric-0.3.8.jar
|
||||||
|
https://cdn.modrinth.com/data/Ha28R6CL/versions/B0fZidZi/fabric-language-kotlin-1.12.3%2Bkotlin.2.0.21.jar
|
||||||
|
|
||||||
|
# World Edit
|
||||||
|
https://cdn.modrinth.com/data/1u6JkXh5/versions/vBzkrSYP/worldedit-mod-7.3.6.jar
|
5
main/.gitignore
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
/data
|
||||||
|
/squaremap/data/
|
||||||
|
/squaremap/locale/
|
||||||
|
/squaremap/web/tiles/
|
||||||
|
/squaremap/web/images/
|
@ -1,14 +1,14 @@
|
|||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: itzg/minecraft-server
|
image: itzg/minecraft-server
|
||||||
container_name: new
|
container_name: mc-server
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
# What Server
|
# What Server
|
||||||
EULA: "true"
|
EULA: "true"
|
||||||
TYPE: FABRIC
|
TYPE: FABRIC
|
||||||
VERSION: 1.21.1
|
VERSION: 1.21.1
|
||||||
SERVER_NAME: uno
|
SERVER_NAME: utopia
|
||||||
ONLINE_MODE: false
|
ONLINE_MODE: false
|
||||||
TZ: Europe/Berlin
|
TZ: Europe/Berlin
|
||||||
|
|
||||||
@ -32,7 +32,8 @@ services:
|
|||||||
USE_AIKAR_FLAGS: true
|
USE_AIKAR_FLAGS: true
|
||||||
|
|
||||||
# World & Mod Data
|
# World & Mod Data
|
||||||
#WORLD: https://file.cyperpunk.de/filebrowser/api/public/dl/4FDwjgd8
|
#WORLD:
|
||||||
|
SEED: -2202949464251781243
|
||||||
MODS_FILE: /extras/mods.txt
|
MODS_FILE: /extras/mods.txt
|
||||||
# Whitelisting Players
|
# Whitelisting Players
|
||||||
WHITELIST_FILE: https://git.cyperpunk.de/Garde-Studios/Uno-MC/raw/branch/main/whitelist.json
|
WHITELIST_FILE: https://git.cyperpunk.de/Garde-Studios/Uno-MC/raw/branch/main/whitelist.json
|
||||||
@ -43,12 +44,13 @@ services:
|
|||||||
OPS_FILE: https://git.cyperpunk.de/Garde-Studios/Uno-MC/raw/branch/main/ops.json
|
OPS_FILE: https://git.cyperpunk.de/Garde-Studios/Uno-MC/raw/branch/main/ops.json
|
||||||
SYNC_SKIP_NEWER_IN_DESTINATION: false
|
SYNC_SKIP_NEWER_IN_DESTINATION: false
|
||||||
ports:
|
ports:
|
||||||
- 30066:25565 # Connection Port
|
- 30000:25565 # Connection Port
|
||||||
- 31066:25575 # Rcon
|
- 31066:25575 # Rcon
|
||||||
- 8080:8080 # Squaremap
|
- 8090:8080 # Squaremap
|
||||||
- 9001:25585 # Fabric Exporter
|
- 9100:9100 # unified Exporter
|
||||||
volumes:
|
volumes:
|
||||||
- ./data:/data
|
- ./data:/data
|
||||||
|
- ./squaremap:/data/squaremap
|
||||||
- ./mods.txt:/extras/mods.txt:ro
|
- ./mods.txt:/extras/mods.txt:ro
|
||||||
- ./config:/config
|
- ./config:/config
|
||||||
|
|
4
main/config/FabricProxy-Lite.toml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
hackOnlineMode = true
|
||||||
|
hackEarlySend = false
|
||||||
|
hackMessageChain = true
|
||||||
|
secret = "bGAJSlLeA4Wf"
|
71
main/config/biomesoplenty/biome_toggles.json
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
{
|
||||||
|
"aspen_glade_enabled": true,
|
||||||
|
"auroral_garden_enabled": true,
|
||||||
|
"bayou_enabled": true,
|
||||||
|
"bog_enabled": true,
|
||||||
|
"cold_desert_enabled": true,
|
||||||
|
"coniferous_forest_enabled": true,
|
||||||
|
"crag_enabled": true,
|
||||||
|
"crystalline_chasm_enabled": true,
|
||||||
|
"dead_forest_enabled": true,
|
||||||
|
"dryland_enabled": true,
|
||||||
|
"dune_beach_enabled": true,
|
||||||
|
"end_corruption_enabled": true,
|
||||||
|
"end_reef_enabled": true,
|
||||||
|
"end_wilds_enabled": true,
|
||||||
|
"erupting_inferno_enabled": true,
|
||||||
|
"field_enabled": true,
|
||||||
|
"fir_clearing_enabled": true,
|
||||||
|
"floodplain_enabled": true,
|
||||||
|
"forested_field_enabled": true,
|
||||||
|
"fungal_jungle_enabled": true,
|
||||||
|
"glowing_grotto_enabled": true,
|
||||||
|
"grassland_enabled": true,
|
||||||
|
"gravel_beach_enabled": true,
|
||||||
|
"highland_enabled": true,
|
||||||
|
"hot_springs_enabled": true,
|
||||||
|
"jacaranda_glade_enabled": true,
|
||||||
|
"jade_cliffs_enabled": true,
|
||||||
|
"lavender_field_enabled": true,
|
||||||
|
"lush_desert_enabled": true,
|
||||||
|
"lush_savanna_enabled": true,
|
||||||
|
"maple_woods_enabled": true,
|
||||||
|
"marsh_enabled": true,
|
||||||
|
"mediterranean_forest_enabled": true,
|
||||||
|
"moor_enabled": true,
|
||||||
|
"muskeg_enabled": true,
|
||||||
|
"mystic_grove_enabled": true,
|
||||||
|
"old_growth_dead_forest_enabled": true,
|
||||||
|
"old_growth_woodland_enabled": true,
|
||||||
|
"ominous_woods_enabled": true,
|
||||||
|
"orchard_enabled": true,
|
||||||
|
"origin_valley_enabled": true,
|
||||||
|
"overgrown_greens_enabled": true,
|
||||||
|
"pasture_enabled": true,
|
||||||
|
"prairie_enabled": true,
|
||||||
|
"pumpkin_patch_enabled": true,
|
||||||
|
"rainforest_enabled": true,
|
||||||
|
"redwood_forest_enabled": true,
|
||||||
|
"rocky_rainforest_enabled": true,
|
||||||
|
"rocky_shrubland_enabled": true,
|
||||||
|
"scrubland_enabled": true,
|
||||||
|
"seasonal_forest_enabled": true,
|
||||||
|
"shrubland_enabled": true,
|
||||||
|
"snowblossom_grove_enabled": true,
|
||||||
|
"snowy_coniferous_forest_enabled": true,
|
||||||
|
"snowy_fir_clearing_enabled": true,
|
||||||
|
"snowy_maple_woods_enabled": true,
|
||||||
|
"spider_nest_enabled": true,
|
||||||
|
"tropics_enabled": true,
|
||||||
|
"tundra_enabled": true,
|
||||||
|
"undergrowth_enabled": true,
|
||||||
|
"visceral_heap_enabled": true,
|
||||||
|
"volcanic_plains_enabled": true,
|
||||||
|
"volcano_enabled": true,
|
||||||
|
"wasteland_enabled": true,
|
||||||
|
"wasteland_steppe_enabled": true,
|
||||||
|
"wetland_enabled": true,
|
||||||
|
"wintry_origin_valley_enabled": true,
|
||||||
|
"withered_abyss_enabled": true,
|
||||||
|
"woodland_enabled": true
|
||||||
|
}
|
3
main/config/biomesoplenty/gameplay.toml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[general]
|
||||||
|
#Add various BOP resources to the Wandering Trader trade pool.
|
||||||
|
wandering_trader_trades = true
|
13
main/config/biomesoplenty/generation.toml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[nether]
|
||||||
|
#The weighting of bop biome regions in the nether.
|
||||||
|
bop_nether_region_weight = 13
|
||||||
|
#The weighting of rare bop biome regions in the nether.
|
||||||
|
bop_nether_rare_region_weight = 2
|
||||||
|
|
||||||
|
[overworld]
|
||||||
|
#The weighting of primary bop biome regions in the overworld.
|
||||||
|
bop_primary_overworld_region_weight = 10
|
||||||
|
#The weighting of rare bop biome regions in the overworld.
|
||||||
|
bop_overworld_rare_region_weight = 2
|
||||||
|
#The weighting of secondary bop biome regions in the overworld.
|
||||||
|
bop_secondary_overworld_region_weight = 8
|
48
main/config/fallingtree.json
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
"trees": {
|
||||||
|
"allowedLogs": [],
|
||||||
|
"deniedLogs": [],
|
||||||
|
"allowedLeaves": [],
|
||||||
|
"allowedNonDecayLeaves": [],
|
||||||
|
"deniedLeaves": [],
|
||||||
|
"breakMode": "FALL_ITEM",
|
||||||
|
"detectionMode": "ABOVE_CUT",
|
||||||
|
"maxScanSize": 300,
|
||||||
|
"maxSize": 100,
|
||||||
|
"maxLeafDistanceFromLog": 12,
|
||||||
|
"maxSizeAction": "ABORT",
|
||||||
|
"breakOrder": "LOWEST_FIRST",
|
||||||
|
"minimumLeavesAroundRequired": 2,
|
||||||
|
"includePersistentLeavesInRequiredCount": false,
|
||||||
|
"treeBreaking": true,
|
||||||
|
"leavesBreaking": true,
|
||||||
|
"leavesBreakingForceRadius": 0,
|
||||||
|
"allowMixedLogs": false,
|
||||||
|
"breakNetherTreeWarts": true,
|
||||||
|
"breakMangroveRoots": false,
|
||||||
|
"searchAreaRadius": -1,
|
||||||
|
"allowedAdjacentBlocks": [],
|
||||||
|
"adjacentStopMode": "STOP_ALL",
|
||||||
|
"spawnItemsAtBreakPoint": true
|
||||||
|
},
|
||||||
|
"tools": {
|
||||||
|
"allowed": [],
|
||||||
|
"denied": [],
|
||||||
|
"durabilityMode": "NORMAL",
|
||||||
|
"ignoreTools": false,
|
||||||
|
"damageMultiplicand": 1.0,
|
||||||
|
"damageRounding": "ROUND_DOWN",
|
||||||
|
"speedMultiplicand": 0.5,
|
||||||
|
"forceToolUsage": false
|
||||||
|
},
|
||||||
|
"player": {
|
||||||
|
"allowedTags": []
|
||||||
|
},
|
||||||
|
"enchantment": {
|
||||||
|
"requireEnchantment": false
|
||||||
|
},
|
||||||
|
"sneakMode": "SNEAK_DISABLE",
|
||||||
|
"breakInCreative": false,
|
||||||
|
"lootInCreative": false,
|
||||||
|
"notificationMode": "ACTION_BAR"
|
||||||
|
}
|
55
main/config/friendsandfoes.json
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"checkForNewUpdates": false,
|
||||||
|
"enableCopperGolem": true,
|
||||||
|
"generateCopperGolemAreaStructure": true,
|
||||||
|
"copperGolemAreaStructureWeight": 1,
|
||||||
|
"generateCopperGolemInAncientCity": true,
|
||||||
|
"copperGolemAncientCityCenterWeight": 10,
|
||||||
|
"enableCrab": true,
|
||||||
|
"enableCrabSpawn": true,
|
||||||
|
"crabSpawnWeight": 14,
|
||||||
|
"crabSpawnMinGroupSize": 2,
|
||||||
|
"crabSpawnMaxGroupSize": 4,
|
||||||
|
"reachingStatusEffectModifier": 1,
|
||||||
|
"enableGlare": true,
|
||||||
|
"enableGlareSpawn": true,
|
||||||
|
"enableGlareGriefing": true,
|
||||||
|
"glareSpawnWeight": 4,
|
||||||
|
"glareSpawnMinGroupSize": 1,
|
||||||
|
"glareSpawnMaxGroupSize": 1,
|
||||||
|
"enableMauler": true,
|
||||||
|
"enableMaulerSpawn": true,
|
||||||
|
"maulerDesertSpawnWeight": 8,
|
||||||
|
"maulerDesertSpawnMinGroupSize": 1,
|
||||||
|
"maulerDesertSpawnMaxGroupSize": 1,
|
||||||
|
"maulerBadlandsSpawnWeight": 16,
|
||||||
|
"maulerBadlandsSpawnMinGroupSize": 1,
|
||||||
|
"maulerBadlandsSpawnMaxGroupSize": 1,
|
||||||
|
"maulerSavannaSpawnWeight": 32,
|
||||||
|
"maulerSavannaSpawnMinGroupSize": 1,
|
||||||
|
"maulerSavannaSpawnMaxGroupSize": 1,
|
||||||
|
"enableMoobloom": true,
|
||||||
|
"enableMoobloomSpawn": true,
|
||||||
|
"moobloomSpawnWeight": 4,
|
||||||
|
"moobloomSpawnMinGroupSize": 2,
|
||||||
|
"moobloomSpawnMaxGroupSize": 4,
|
||||||
|
"enableIceologer": true,
|
||||||
|
"enableIceologerSpawn": true,
|
||||||
|
"enableIceologerInRaids": true,
|
||||||
|
"generateIceologerCabinStructure": true,
|
||||||
|
"enableIllusioner": true,
|
||||||
|
"enableIllusionerSpawn": true,
|
||||||
|
"enableIllusionerInRaids": true,
|
||||||
|
"generateIllusionerShackStructure": true,
|
||||||
|
"generateIllusionerTrainingGroundsStructure": true,
|
||||||
|
"enableZombieHorseTrap": true,
|
||||||
|
"enableRascal": true,
|
||||||
|
"enableRascalSpawn": true,
|
||||||
|
"enableTuffGolem": true,
|
||||||
|
"generateTuffGolemInStronghold": true,
|
||||||
|
"enableWildfire": true,
|
||||||
|
"generateCitadelStructure": true,
|
||||||
|
"enableBeekeeperVillagerProfession": true,
|
||||||
|
"generateBeekeeperAreaStructure": true,
|
||||||
|
"beekeeperAreaStructureWeight": 2
|
||||||
|
}
|
91
main/config/frostiful.json
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
{
|
||||||
|
"clientConfig": {
|
||||||
|
"frostOverlayStart": 0.5,
|
||||||
|
"doColdHeartOverlay": true,
|
||||||
|
"renderDripParticles": true,
|
||||||
|
"disableFrostOverlayWhenWearingFrostologyCloak": true,
|
||||||
|
"shakeHandWhenShivering": true,
|
||||||
|
"handShakeIntensity": 1.0
|
||||||
|
},
|
||||||
|
"updateConfig": {
|
||||||
|
"currentConfigVersion": 2,
|
||||||
|
"enableConfigUpdates": true
|
||||||
|
},
|
||||||
|
"environmentConfig": {
|
||||||
|
"doDryBiomeNightFreezing": true,
|
||||||
|
"nightTemperatureShift": -1,
|
||||||
|
"coldBiomeTemperatureChange": -1,
|
||||||
|
"freezingBiomeTemperatureChange": -3,
|
||||||
|
"rainWetnessIncrease": 1,
|
||||||
|
"touchingWaterWetnessIncrease": 5,
|
||||||
|
"dryRate": 1,
|
||||||
|
"onFireDryDate": 50,
|
||||||
|
"onFireWarmRate": 50,
|
||||||
|
"powderSnowFreezeRate": 30,
|
||||||
|
"warmthPerLightLevel": 2,
|
||||||
|
"minLightForWarmth": 5,
|
||||||
|
"ultrawarmWarmRate": 15,
|
||||||
|
"enableSeasonsIntegration": true
|
||||||
|
},
|
||||||
|
"combatConfig": {
|
||||||
|
"doChillagerPatrols": true,
|
||||||
|
"straysCarryFrostArrows": true,
|
||||||
|
"maxFrostSpellDistance": 25.0,
|
||||||
|
"frostWandCooldown": 120,
|
||||||
|
"frostWandRootTime": 100,
|
||||||
|
"frostologerHeatDrainPerTick": 30,
|
||||||
|
"packedSnowballFreezeAmount": 500,
|
||||||
|
"packedSnowballDamage": 2.0,
|
||||||
|
"packedSnowballVulnerableTypesDamage": 5.0,
|
||||||
|
"frostologerPassiveFreezingPerTick": 2,
|
||||||
|
"frostologerMaxPassiveFreezing": 0.5,
|
||||||
|
"biterFrostBiteMaxAmplifier": 2,
|
||||||
|
"chillagerFireDamageMultiplier": 1.5,
|
||||||
|
"frostologerIntolerableHeat": 9,
|
||||||
|
"furUpgradeTemplateGenerateChance": 0.5,
|
||||||
|
"skateUpgradeTemplateGenerateChance": 0.33,
|
||||||
|
"veryProtectiveFrostResistanceMultiplier": 1.0,
|
||||||
|
"protectiveFrostResistanceMultiplier": 0.5
|
||||||
|
},
|
||||||
|
"freezingConfig": {
|
||||||
|
"doPassiveFreezing": true,
|
||||||
|
"doWindSpawning": true,
|
||||||
|
"windSpawnStrategy": "POINT",
|
||||||
|
"spawnWindInAir": true,
|
||||||
|
"windDestroysTorches": true,
|
||||||
|
"doSnowPacking": true,
|
||||||
|
"passiveFreezingTickInterval": 1,
|
||||||
|
"windSpawnCapPerSecond": 15,
|
||||||
|
"windSpawnRarity": 750,
|
||||||
|
"windSpawnRarityThunder": 500,
|
||||||
|
"maxPassiveFreezingPercent": 1.0,
|
||||||
|
"passiveFreezingWetnessScaleMultiplier": 2.1,
|
||||||
|
"soakPercentFromWaterPotion": 0.5,
|
||||||
|
"sunLichenHeatPerLevel": 500,
|
||||||
|
"sunLichenBurnTime": 60,
|
||||||
|
"campfireWarmthSearchRadius": 10.0,
|
||||||
|
"campfireWarmthTime": 1200,
|
||||||
|
"freezingWindFrost": 160,
|
||||||
|
"conduitPowerWarmthPerTick": 12,
|
||||||
|
"heatFromHotFloor": 12,
|
||||||
|
"shiverBelow": -0.51,
|
||||||
|
"shiverWarmth": 1,
|
||||||
|
"stopShiverWarmingBelowFoodLevel": 10,
|
||||||
|
"warmFoodWarmthTime": 1200
|
||||||
|
},
|
||||||
|
"icicleConfig": {
|
||||||
|
"iciclesFormInWeather": true,
|
||||||
|
"becomeUnstableChance": 0.05,
|
||||||
|
"growChance": 0.02,
|
||||||
|
"growChanceDuringRain": 0.09,
|
||||||
|
"growChanceDuringThunder": 0.15,
|
||||||
|
"frostArrowFreezeAmount": 1000,
|
||||||
|
"thrownIcicleFreezeAmount": 1500,
|
||||||
|
"icicleCollisionFreezeAmount": 3000,
|
||||||
|
"maxLightLevelToForm": 8,
|
||||||
|
"minSkylightLevelToForm": 11,
|
||||||
|
"thrownIcicleDamage": 1.0,
|
||||||
|
"thrownIcicleExtraDamage": 3.0,
|
||||||
|
"thrownIcicleCooldown": 10
|
||||||
|
}
|
||||||
|
}
|
14
main/config/unifiedmetrics/config.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
server:
|
||||||
|
name: "global"
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
driver: "prometheus"
|
||||||
|
collectors:
|
||||||
|
systemGc: true
|
||||||
|
systemMemory: true
|
||||||
|
systemProcess: true
|
||||||
|
systemThread: true
|
||||||
|
server: true
|
||||||
|
world: true
|
||||||
|
tick: true
|
||||||
|
events: true
|
16
main/config/unifiedmetrics/driver/prometheus.yml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
mode: "HTTP"
|
||||||
|
http:
|
||||||
|
host: "0.0.0.0"
|
||||||
|
port: 9100
|
||||||
|
authentication:
|
||||||
|
scheme: "NONE"
|
||||||
|
username: "username"
|
||||||
|
password: "password"
|
||||||
|
pushGateway:
|
||||||
|
job: "unifiedmetrics"
|
||||||
|
url: "http://pushgateway:9091"
|
||||||
|
authentication:
|
||||||
|
scheme: "NONE"
|
||||||
|
username: "username"
|
||||||
|
password: "password"
|
||||||
|
interval: 10
|
20
main/config/villagernames.json5
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
// Use the custom name list, editable in ./mods/villagernames/customnames.txt, seperated by a comma. If custom names are found, the default name list is ignored.
|
||||||
|
"useCustomNames": true,
|
||||||
|
// Use the list of pre-defined female names when naming villagers.
|
||||||
|
"useDefaultFemaleNames": true,
|
||||||
|
// Use the list of pre-defined male names when naming villagers.
|
||||||
|
"useDefaultMaleNames": true,
|
||||||
|
// Disabled by default. Whether both custom and default names should be used to name villagers. Custom names will probably not be chosen often due to the amount of default names.
|
||||||
|
"useBothCustomAndDefaultNames": true,
|
||||||
|
// If enabled, also gives modded villagers a name. If you've found a 'villager'-entity that isn't named let me know by opening an issue so I can add it in.
|
||||||
|
"nameModdedVillagers": true,
|
||||||
|
// Whether the profession should be added to the villager's trade screen next to their name.
|
||||||
|
"showProfessionOnTradeScreen": true,
|
||||||
|
// If enabled, switches the name and profession on the villager trading screen. Result: <profession> - <name>.
|
||||||
|
"switchNameAndProfessionTradeScreen": true,
|
||||||
|
// Whether the merchant level (novice, apprentice etc.) should be hidden on the trade screen.
|
||||||
|
"hideMerchantLevelTradeScreen": false,
|
||||||
|
// If enabled, the mod capitalizes each word in the custom name list.
|
||||||
|
"shouldCapitalizeNames": true
|
||||||
|
}
|
0
main/config/villagernames/customnames.txt
Normal file
@ -1,8 +1,11 @@
|
|||||||
# Fabric API
|
# Fabric API
|
||||||
https://cdn.modrinth.com/data/P7dR8mSH/versions/bK6OgzFj/fabric-api-0.102.1%2B1.21.1.jar
|
https://cdn.modrinth.com/data/P7dR8mSH/versions/thGkUOxt/fabric-api-0.107.0%2B1.21.1.jar
|
||||||
|
|
||||||
# Cloth Config API
|
# Cloth Config API
|
||||||
https://cdn.modrinth.com/data/9s6osm5g/versions/7jtvrmVP/cloth-config-15.0.130-fabric.jar
|
https://cdn.modrinth.com/data/9s6osm5g/versions/HpMb5wGb/cloth-config-15.0.140-fabric.jar
|
||||||
|
|
||||||
|
# Moonlight Lib
|
||||||
|
#https://cdn.modrinth.com/data/twkfQtEc/versions/tP7HsFBI/moonlight-1.21-2.14.12-fabric.jar
|
||||||
|
|
||||||
# Yungs API
|
# Yungs API
|
||||||
https://cdn.modrinth.com/data/Ua7DFN59/versions/DeaIlZ9A/YungsApi-1.21.1-Fabric-5.1.3.jar
|
https://cdn.modrinth.com/data/Ua7DFN59/versions/DeaIlZ9A/YungsApi-1.21.1-Fabric-5.1.3.jar
|
||||||
@ -26,14 +29,15 @@ https://cdn.modrinth.com/data/LFJf0Klb/versions/7e8Rxgsk/ce-2.1.1.jar
|
|||||||
https://cdn.modrinth.com/data/8dI2tmqs/versions/AQhF7kvw/FabricProxy-Lite-2.9.0.jar
|
https://cdn.modrinth.com/data/8dI2tmqs/versions/AQhF7kvw/FabricProxy-Lite-2.9.0.jar
|
||||||
|
|
||||||
# Monitoring
|
# Monitoring
|
||||||
https://cdn.modrinth.com/data/dbVXHSlv/versions/YcE9H1C5/fabricexporter-1.0.11.jar
|
https://cdn.modrinth.com/data/Ha28R6CL/versions/B0fZidZi/fabric-language-kotlin-1.12.3%2Bkotlin.2.0.21.jar
|
||||||
https://cdn.modrinth.com/data/l6YH9Als/versions/qTSaozEL/spark-1.10.97-fabric.jar
|
https://cdn.modrinth.com/data/p1ewR5kV/versions/xwRVtqbA/unifiedmetrics-platform-fabric-0.3.8.jar
|
||||||
|
|
||||||
# World Edit
|
# World Edit
|
||||||
https://cdn.modrinth.com/data/1u6JkXh5/versions/vBzkrSYP/worldedit-mod-7.3.6.jar
|
https://cdn.modrinth.com/data/1u6JkXh5/versions/vBzkrSYP/worldedit-mod-7.3.6.jar
|
||||||
|
|
||||||
# Squaremap
|
# Squaremap
|
||||||
https://cdn.modrinth.com/data/PFb7ZqK6/versions/RerxbGKf/squaremap-fabric-mc1.21.1-1.3.2.jar
|
https://cdn.modrinth.com/data/PFb7ZqK6/versions/RerxbGKf/squaremap-fabric-mc1.21.1-1.3.2.jar
|
||||||
|
https://github.com/SentixDev/squaremarker/releases/download/1.21.1-v1.0.6/squaremarker-fabric-mc1.21.1-1.0.6.jar
|
||||||
|
|
||||||
# World Guard
|
# World Guard
|
||||||
https://cdn.modrinth.com/data/py6EMmAJ/versions/xpvSS4oW/yawp-0.0.2.10-alpha2.jar
|
https://cdn.modrinth.com/data/py6EMmAJ/versions/xpvSS4oW/yawp-0.0.2.10-alpha2.jar
|
||||||
@ -64,9 +68,3 @@ https://cdn.modrinth.com/data/gqRXDo8B/versions/WPsLTKwG/villagernames-1.21.1-8.
|
|||||||
https://cdn.modrinth.com/data/cnIatHrN/versions/BfXSBkjs/universal_shops-1.7.1%2B1.21.jar
|
https://cdn.modrinth.com/data/cnIatHrN/versions/BfXSBkjs/universal_shops-1.7.1%2B1.21.jar
|
||||||
|
|
||||||
https://cdn.modrinth.com/data/8oi3bsk5/versions/81gyNzd0/Terralith_1.21.x_v2.5.6.jar
|
https://cdn.modrinth.com/data/8oi3bsk5/versions/81gyNzd0/Terralith_1.21.x_v2.5.6.jar
|
||||||
|
|
||||||
https://cdn.modrinth.com/data/DjLobEOy/versions/MntMLupc/t_and_t-neoforge-fabric-1.13.2.jar
|
|
||||||
|
|
||||||
https://cdn.modrinth.com/data/II7t6llZ/versions/5nUEDt1Z/wwoo-2.3.4.jar
|
|
||||||
|
|
||||||
https://cdn.modrinth.com/data/O1XGs7ps/versions/F4QwxP0f/expanded_ecosphere-fabric-3.4.1.1.jar
|
|
32
main/ops.json
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"uuid": "61ec0d1b-0dc2-45bd-930e-ab45bcaa4386",
|
||||||
|
"name": "Athro_Hiro",
|
||||||
|
"level": 4,
|
||||||
|
"bypassesPlayerLimit": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"uuid": "d3dd297f-0c08-45a0-8260-f1ac46af490a",
|
||||||
|
"name": "Der_Grumpf",
|
||||||
|
"level": 4,
|
||||||
|
"bypassesPlayerLimit": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"uuid": "2f1de2e1-9fe8-457c-9a99-26c611fc6b64",
|
||||||
|
"name": "mlgChaostom44",
|
||||||
|
"level": 4,
|
||||||
|
"bypassesPlayerLimit": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"uuid": "f42bbaa6-b2e7-4573-8092-13fbddf2544d",
|
||||||
|
"name": "Deltayquaza",
|
||||||
|
"level": 4,
|
||||||
|
"bypassesPlayerLimit": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"uuid": "c76e4802-7f01-47cb-bc1b-16cadd736078",
|
||||||
|
"name": "Weizenkumpel",
|
||||||
|
"level": 4,
|
||||||
|
"bypassesPlayerLimit": false
|
||||||
|
}
|
||||||
|
]
|
59
main/squaremap/advanced.yml
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
config-version: 3
|
||||||
|
world-settings:
|
||||||
|
default:
|
||||||
|
invisible-blocks:
|
||||||
|
- minecraft:tall_grass
|
||||||
|
- minecraft:fern
|
||||||
|
- minecraft:short_grass
|
||||||
|
- minecraft:large_fern
|
||||||
|
iterate-up-base-blocks:
|
||||||
|
- minecraft:netherrack
|
||||||
|
- minecraft:glowstone
|
||||||
|
- minecraft:soul_sand
|
||||||
|
- minecraft:soul_soil
|
||||||
|
- minecraft:gravel
|
||||||
|
- minecraft:warped_nylium
|
||||||
|
- minecraft:crimson_nylium
|
||||||
|
- minecraft:nether_gold_ore
|
||||||
|
- minecraft:ancient_debris
|
||||||
|
- minecraft:nether_quartz_ore
|
||||||
|
- minecraft:magma_block
|
||||||
|
- minecraft:basalt
|
||||||
|
color-overrides:
|
||||||
|
biomes:
|
||||||
|
foliage:
|
||||||
|
minecraft:jungle: '#1f8907'
|
||||||
|
minecraft:mangrove_swamp: '#6f9623'
|
||||||
|
minecraft:sparse_jungle: '#1f8907'
|
||||||
|
minecraft:bamboo_jungle: '#1f8907'
|
||||||
|
minecraft:dark_forest: '#1c7b07'
|
||||||
|
grass: {}
|
||||||
|
water: {}
|
||||||
|
blocks:
|
||||||
|
minecraft:azure_bluet: '#F7F7F7'
|
||||||
|
minecraft:oxeye_daisy: '#D6E8E8'
|
||||||
|
minecraft:glass: '#FFFFFF'
|
||||||
|
minecraft:white_tulip: '#D6E8E8'
|
||||||
|
minecraft:mycelium: '#6F6265'
|
||||||
|
minecraft:spruce_leaves: '#619961'
|
||||||
|
minecraft:pink_tulip: '#EBC5FD'
|
||||||
|
minecraft:rose_bush: '#9B221A'
|
||||||
|
minecraft:blue_orchid: '#2ABFFD'
|
||||||
|
minecraft:orange_tulip: '#BD6A22'
|
||||||
|
minecraft:peony: '#EBC5FD'
|
||||||
|
minecraft:sunflower: '#FFEC4F'
|
||||||
|
minecraft:allium: '#B878ED'
|
||||||
|
minecraft:wither_rose: '#211A16'
|
||||||
|
minecraft:birch_leaves: '#80A755'
|
||||||
|
minecraft:lava: '#EA5C0F'
|
||||||
|
minecraft:lily_of_the_valley: '#FFFFFF'
|
||||||
|
minecraft:poppy: '#ED302C'
|
||||||
|
minecraft:attached_melon_stem: '#E0C71C'
|
||||||
|
minecraft:red_tulip: '#9B221A'
|
||||||
|
minecraft:dandelion: '#FFEC4F'
|
||||||
|
minecraft:pink_petals: '#FFB4DB'
|
||||||
|
minecraft:attached_pumpkin_stem: '#E0C71C'
|
||||||
|
minecraft:lilac: '#B66BB2'
|
||||||
|
minecraft:cornflower: '#466AEB'
|
||||||
|
minecraft:terracotta: '#9E6246'
|
||||||
|
minecraft:lily_pad: '#208030'
|
95
main/squaremap/config.yml
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
config-version: 2
|
||||||
|
settings:
|
||||||
|
commands:
|
||||||
|
main-command-label: squaremap
|
||||||
|
main-command-aliases:
|
||||||
|
- map
|
||||||
|
render-progress-logging:
|
||||||
|
enabled: true
|
||||||
|
interval-seconds: 1
|
||||||
|
language-file: lang-en.yml
|
||||||
|
debug-mode: false
|
||||||
|
update-checker: false
|
||||||
|
web-address: http://localhost:8080
|
||||||
|
web-directory:
|
||||||
|
path: web
|
||||||
|
auto-update: false
|
||||||
|
image-quality:
|
||||||
|
compress-images:
|
||||||
|
enabled: true
|
||||||
|
value: 0.5
|
||||||
|
internal-webserver:
|
||||||
|
enabled: true
|
||||||
|
bind: 0.0.0.0
|
||||||
|
port: 8080
|
||||||
|
flush-json-immediately: false
|
||||||
|
ui:
|
||||||
|
coordinates:
|
||||||
|
enabled: true
|
||||||
|
link:
|
||||||
|
enabled: true
|
||||||
|
sidebar:
|
||||||
|
pinned: pinned
|
||||||
|
world-settings:
|
||||||
|
default:
|
||||||
|
map:
|
||||||
|
enabled: true
|
||||||
|
display-name: '{world} @ Garde Studios'
|
||||||
|
order: 0
|
||||||
|
icon: ''
|
||||||
|
max-render-threads: -1
|
||||||
|
iterate-up: false
|
||||||
|
max-height: -1
|
||||||
|
biomes:
|
||||||
|
enabled: true
|
||||||
|
blend-biomes: 3
|
||||||
|
glass:
|
||||||
|
clear: true
|
||||||
|
lava:
|
||||||
|
checkerboard: true
|
||||||
|
water:
|
||||||
|
clear-depth: true
|
||||||
|
checkerboard: false
|
||||||
|
zoom:
|
||||||
|
maximum: 3
|
||||||
|
default: 3
|
||||||
|
extra: 2
|
||||||
|
background-render:
|
||||||
|
enabled: true
|
||||||
|
max-chunks-per-interval: 1024
|
||||||
|
interval-seconds: 15
|
||||||
|
max-render-threads: -1
|
||||||
|
markers:
|
||||||
|
update-interval-seconds: 5
|
||||||
|
spawn-icon:
|
||||||
|
enabled: true
|
||||||
|
show-controls: true
|
||||||
|
default-hidden: false
|
||||||
|
layer-priority: 0
|
||||||
|
z-index: 0
|
||||||
|
world-border:
|
||||||
|
enabled: true
|
||||||
|
show-controls: true
|
||||||
|
default-hidden: false
|
||||||
|
layer-priority: 1
|
||||||
|
z-index: 1
|
||||||
|
visibility-limits:
|
||||||
|
- type: world-border
|
||||||
|
enabled: 'false'
|
||||||
|
player-tracker:
|
||||||
|
enabled: true
|
||||||
|
update-interval-seconds: 1
|
||||||
|
show-controls: true
|
||||||
|
default-hidden: false
|
||||||
|
layer-priority: 2
|
||||||
|
z-index: 2
|
||||||
|
nameplate:
|
||||||
|
enabled: true
|
||||||
|
show-head: true
|
||||||
|
heads-url: https://mc-heads.net/avatar/{uuid}/16
|
||||||
|
show-armor: true
|
||||||
|
show-health: true
|
||||||
|
hide:
|
||||||
|
invisible: true
|
||||||
|
spectators: true
|
||||||
|
use-display-names: false
|
BIN
main/squaremap/images/blank.png
Normal file
After Width: | Height: | Size: 167 B |
172
main/squaremap/web/css/styles.css
Normal file
@ -0,0 +1,172 @@
|
|||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
background: #000000;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
ul, li {
|
||||||
|
list-style-type: none;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
#map {
|
||||||
|
width: 100%;
|
||||||
|
height: 100vh;
|
||||||
|
background: black;
|
||||||
|
}
|
||||||
|
img.leaflet-tile {
|
||||||
|
image-rendering: pixelated;
|
||||||
|
image-rendering: -moz-crisp-edges
|
||||||
|
}
|
||||||
|
div.leaflet-nameplate-pane div {
|
||||||
|
background: rgba(0, 0, 0, 0.5);
|
||||||
|
color: #ffffff;
|
||||||
|
font-weight: 700;
|
||||||
|
padding: 2px 5px 1px;
|
||||||
|
margin: 0;
|
||||||
|
border-color: rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
div.leaflet-nameplate-pane div:before {
|
||||||
|
border-color: transparent;
|
||||||
|
}
|
||||||
|
div.leaflet-nameplate-pane div img.head {
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-right: 6px;
|
||||||
|
}
|
||||||
|
div.leaflet-nameplate-pane div img.armor,
|
||||||
|
div.leaflet-nameplate-pane div img.health {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
div.leaflet-nameplate-pane div,
|
||||||
|
div.leaflet-marker-pane img {
|
||||||
|
transition: all 0.25s;
|
||||||
|
}
|
||||||
|
.leaflet-bottom.leaflet-left .link,
|
||||||
|
.leaflet-bottom.leaflet-left .coordinates {
|
||||||
|
display: inline-block;
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
div.leaflet-control-layers.link img {
|
||||||
|
width: 34px;
|
||||||
|
height: 34px;
|
||||||
|
vertical-align: bottom;
|
||||||
|
bottom: 0;
|
||||||
|
background-image: url("../images/link.png");
|
||||||
|
background-size: 20px 20px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: 50% 50%;
|
||||||
|
}
|
||||||
|
div.leaflet-control-layers.coordinates {
|
||||||
|
vertical-align: bottom;
|
||||||
|
padding: 2px 5px;
|
||||||
|
line-height: 14px;
|
||||||
|
height: 30px;
|
||||||
|
}
|
||||||
|
#sidebar {
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
width: 0;
|
||||||
|
height: 100vh;
|
||||||
|
padding-left: 10px;
|
||||||
|
z-index: 10000;
|
||||||
|
font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
|
||||||
|
border-left: 1px solid #000000;
|
||||||
|
background-color: rgba(0, 0, 0, 0.6);
|
||||||
|
color: #ffffff;
|
||||||
|
text-align: right;
|
||||||
|
transition: all 0.25s;
|
||||||
|
}
|
||||||
|
#sidebar.show {
|
||||||
|
width: 200px;
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
#sidebar fieldset {
|
||||||
|
clear: right;
|
||||||
|
margin: 30px 0;
|
||||||
|
border: none;
|
||||||
|
border-top: 1px solid rgba(196, 196, 196, 0.4);
|
||||||
|
text-align: left;
|
||||||
|
transition: all 0.25s;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
#sidebar fieldset#worlds {
|
||||||
|
margin: -15px 0 0;
|
||||||
|
}
|
||||||
|
#sidebar fieldset#players {
|
||||||
|
margin: 10px 0 0;
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
#sidebar fieldset#players::-webkit-scrollbar {
|
||||||
|
width: 6px;
|
||||||
|
}
|
||||||
|
#sidebar fieldset#players::-webkit-scrollbar-track {
|
||||||
|
-webkit-box-shadow: inset 0 0 0;
|
||||||
|
}
|
||||||
|
#sidebar fieldset#players::-webkit-scrollbar-thumb {
|
||||||
|
background-color: rgba(0, 0, 0, 0);
|
||||||
|
border-right: 2px solid rgba(112, 128, 144, 0.75);
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
#sidebar fieldset#players::-webkit-scrollbar-thumb:hover {
|
||||||
|
border-radius: 3px;
|
||||||
|
border: 0;
|
||||||
|
background-color: rgba(112, 128, 144, 0.75);
|
||||||
|
}
|
||||||
|
#sidebar legend {
|
||||||
|
display: block;
|
||||||
|
margin: 10px 5px;
|
||||||
|
}
|
||||||
|
#sidebar fieldset a,
|
||||||
|
#sidebar fieldset a:visited {
|
||||||
|
display: block;
|
||||||
|
color: #ffffff;
|
||||||
|
text-decoration: none;
|
||||||
|
padding: 5px 10px;
|
||||||
|
transition: all 0.25s;
|
||||||
|
}
|
||||||
|
#sidebar fieldset a.following {
|
||||||
|
background-color: rgba(128, 128, 255, 0.25);
|
||||||
|
}
|
||||||
|
#sidebar fieldset a:hover,
|
||||||
|
#sidebar fieldset a.following:hover {
|
||||||
|
background-color: rgba(255, 255, 255, 0.15);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
#sidebar fieldset a .other-world {
|
||||||
|
filter: brightness(50%) !important;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
#sidebar fieldset a img {
|
||||||
|
vertical-align: middle;
|
||||||
|
padding-right: 10px;
|
||||||
|
filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.5));
|
||||||
|
-webkit-filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.5));
|
||||||
|
}
|
||||||
|
#sidebar fieldset#players a {
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
#sidebar #pin {
|
||||||
|
position: relative;
|
||||||
|
right: -160px;
|
||||||
|
width: 23px;
|
||||||
|
height: 23px;
|
||||||
|
margin: 5px 5px 10px;
|
||||||
|
padding: 2px;
|
||||||
|
border: 1px solid rgba(255, 255, 255, 0);
|
||||||
|
filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.5));
|
||||||
|
-webkit-filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.5));
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
#sidebar #pin.pinned:hover {
|
||||||
|
background: rgba(0, 128, 0, 0.5);
|
||||||
|
border: 1px solid rgba(0, 128, 0, 0.75);
|
||||||
|
}
|
||||||
|
#sidebar #pin.unpinned:hover {
|
||||||
|
background: rgba(128, 0, 0, 0.5);
|
||||||
|
border: 1px solid rgba(128, 0, 0, 0.75);
|
||||||
|
}
|
BIN
main/squaremap/web/favicon.ico
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
main/squaremap/web/images/armor/0.png
Normal file
After Width: | Height: | Size: 603 B |
BIN
main/squaremap/web/images/armor/1.png
Normal file
After Width: | Height: | Size: 667 B |
BIN
main/squaremap/web/images/armor/10.png
Normal file
After Width: | Height: | Size: 662 B |
BIN
main/squaremap/web/images/armor/11.png
Normal file
After Width: | Height: | Size: 675 B |
BIN
main/squaremap/web/images/armor/12.png
Normal file
After Width: | Height: | Size: 664 B |
BIN
main/squaremap/web/images/armor/13.png
Normal file
After Width: | Height: | Size: 684 B |
BIN
main/squaremap/web/images/armor/14.png
Normal file
After Width: | Height: | Size: 670 B |
BIN
main/squaremap/web/images/armor/15.png
Normal file
After Width: | Height: | Size: 685 B |
BIN
main/squaremap/web/images/armor/16.png
Normal file
After Width: | Height: | Size: 669 B |
BIN
main/squaremap/web/images/armor/17.png
Normal file
After Width: | Height: | Size: 681 B |
BIN
main/squaremap/web/images/armor/18.png
Normal file
After Width: | Height: | Size: 663 B |
BIN
main/squaremap/web/images/armor/19.png
Normal file
After Width: | Height: | Size: 663 B |
BIN
main/squaremap/web/images/armor/2.png
Normal file
After Width: | Height: | Size: 665 B |
BIN
main/squaremap/web/images/armor/20.png
Normal file
After Width: | Height: | Size: 636 B |
BIN
main/squaremap/web/images/armor/3.png
Normal file
After Width: | Height: | Size: 690 B |
BIN
main/squaremap/web/images/armor/4.png
Normal file
After Width: | Height: | Size: 675 B |
BIN
main/squaremap/web/images/armor/5.png
Normal file
After Width: | Height: | Size: 676 B |
BIN
main/squaremap/web/images/armor/6.png
Normal file
After Width: | Height: | Size: 663 B |
BIN
main/squaremap/web/images/armor/7.png
Normal file
After Width: | Height: | Size: 676 B |
BIN
main/squaremap/web/images/armor/8.png
Normal file
After Width: | Height: | Size: 664 B |
BIN
main/squaremap/web/images/armor/9.png
Normal file
After Width: | Height: | Size: 676 B |
BIN
main/squaremap/web/images/blank.png
Normal file
After Width: | Height: | Size: 167 B |
BIN
main/squaremap/web/images/clear.png
Normal file
After Width: | Height: | Size: 527 B |
BIN
main/squaremap/web/images/end_sky.png
Normal file
After Width: | Height: | Size: 118 KiB |
BIN
main/squaremap/web/images/foliage.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
main/squaremap/web/images/grass.png
Normal file
After Width: | Height: | Size: 7.0 KiB |
BIN
main/squaremap/web/images/health/0.png
Normal file
After Width: | Height: | Size: 617 B |
BIN
main/squaremap/web/images/health/1.png
Normal file
After Width: | Height: | Size: 660 B |
BIN
main/squaremap/web/images/health/10.png
Normal file
After Width: | Height: | Size: 678 B |
BIN
main/squaremap/web/images/health/11.png
Normal file
After Width: | Height: | Size: 684 B |
BIN
main/squaremap/web/images/health/12.png
Normal file
After Width: | Height: | Size: 681 B |
BIN
main/squaremap/web/images/health/13.png
Normal file
After Width: | Height: | Size: 685 B |
BIN
main/squaremap/web/images/health/14.png
Normal file
After Width: | Height: | Size: 683 B |
BIN
main/squaremap/web/images/health/15.png
Normal file
After Width: | Height: | Size: 683 B |
BIN
main/squaremap/web/images/health/16.png
Normal file
After Width: | Height: | Size: 685 B |
BIN
main/squaremap/web/images/health/17.png
Normal file
After Width: | Height: | Size: 686 B |
BIN
main/squaremap/web/images/health/18.png
Normal file
After Width: | Height: | Size: 677 B |
BIN
main/squaremap/web/images/health/19.png
Normal file
After Width: | Height: | Size: 671 B |
BIN
main/squaremap/web/images/health/2.png
Normal file
After Width: | Height: | Size: 670 B |
BIN
main/squaremap/web/images/health/20.png
Normal file
After Width: | Height: | Size: 634 B |
BIN
main/squaremap/web/images/health/3.png
Normal file
After Width: | Height: | Size: 675 B |
BIN
main/squaremap/web/images/health/4.png
Normal file
After Width: | Height: | Size: 677 B |
BIN
main/squaremap/web/images/health/5.png
Normal file
After Width: | Height: | Size: 683 B |
BIN
main/squaremap/web/images/health/6.png
Normal file
After Width: | Height: | Size: 680 B |
BIN
main/squaremap/web/images/health/7.png
Normal file
After Width: | Height: | Size: 684 B |
BIN
main/squaremap/web/images/health/8.png
Normal file
After Width: | Height: | Size: 680 B |
BIN
main/squaremap/web/images/health/9.png
Normal file
After Width: | Height: | Size: 677 B |
BIN
main/squaremap/web/images/icon/blue-cube-smol.png
Normal file
After Width: | Height: | Size: 7.0 KiB |
BIN
main/squaremap/web/images/icon/green-cube-smol.png
Normal file
After Width: | Height: | Size: 6.7 KiB |
BIN
main/squaremap/web/images/icon/player.png
Normal file
After Width: | Height: | Size: 7.3 KiB |
BIN
main/squaremap/web/images/icon/purple-cube-smol.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
main/squaremap/web/images/icon/red-cube-smol.png
Normal file
After Width: | Height: | Size: 6.7 KiB |
After Width: | Height: | Size: 160 B |
BIN
main/squaremap/web/images/icon/spawn.png
Normal file
After Width: | Height: | Size: 5.4 KiB |
BIN
main/squaremap/web/images/link.png
Normal file
After Width: | Height: | Size: 5.8 KiB |
BIN
main/squaremap/web/images/nether_sky.png
Normal file
After Width: | Height: | Size: 87 KiB |
BIN
main/squaremap/web/images/og.png
Normal file
After Width: | Height: | Size: 309 KiB |