Compare commits
24 Commits
c41b1f9daa
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
470d715a7a
|
|||
|
3948009c35
|
|||
|
a410830a93
|
|||
|
f1d7b60fae
|
|||
|
01077da029
|
|||
|
a195b074a7
|
|||
|
a8817115a3
|
|||
|
5639655f99
|
|||
|
ba4aa67ff1
|
|||
| 6fde748088 | |||
| 01da718802 | |||
|
23566e72d3
|
|||
|
9d06dc7d0b
|
|||
| 6daee3a58b | |||
| 4d361415ed | |||
| 78259e7263 | |||
| 76d9ee9810 | |||
| 3b1a491bc2 | |||
| b357c89dac | |||
| f8399e4f31 | |||
| dea500e70d | |||
|
0f20cc0485
|
|||
|
e44a3f81e4
|
|||
|
|
931d59565d |
@@ -19,11 +19,11 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import "../styles/button.css";
|
import "../styles/button.css";
|
||||||
import { CaretDownOutline, SearchOutline } from "flowbite-svelte-icons";
|
import { CaretDownOutline, GlobeOutline } from "flowbite-svelte-icons";
|
||||||
import { t } from "astro-i18n";
|
import { t, l } from "astro-i18n";
|
||||||
import { l } from "../util/util";
|
|
||||||
import { onMount } from "svelte";
|
import { onMount } from "svelte";
|
||||||
import { loggedIn } from "@repo/authv2.ts";
|
import { loggedIn } from "@repo/authv2.ts";
|
||||||
|
import { astroI18n } from "astro-i18n";
|
||||||
interface Props {
|
interface Props {
|
||||||
logo?: import("svelte").Snippet;
|
logo?: import("svelte").Snippet;
|
||||||
}
|
}
|
||||||
@@ -35,6 +35,8 @@
|
|||||||
|
|
||||||
let accountBtn = $state<HTMLAnchorElement>();
|
let accountBtn = $state<HTMLAnchorElement>();
|
||||||
|
|
||||||
|
let currentPage = $state(astroI18n.route);
|
||||||
|
|
||||||
$effect(() => {
|
$effect(() => {
|
||||||
if ($loggedIn) {
|
if ($loggedIn) {
|
||||||
accountBtn!.href = l("/dashboard");
|
accountBtn!.href = l("/dashboard");
|
||||||
@@ -45,6 +47,11 @@
|
|||||||
|
|
||||||
onMount(() => {
|
onMount(() => {
|
||||||
handleScroll();
|
handleScroll();
|
||||||
|
|
||||||
|
document.addEventListener("astro:page-load", () => {
|
||||||
|
astroI18n.route = location.pathname;
|
||||||
|
currentPage = astroI18n.route;
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
function handleScroll() {
|
function handleScroll() {
|
||||||
@@ -119,11 +126,21 @@
|
|||||||
<a class="btn" href={l("/login")} bind:this={accountBtn}>
|
<a class="btn" href={l("/login")} bind:this={accountBtn}>
|
||||||
<span class="btn__text">{t("navbar.links.account")}</span>
|
<span class="btn__text">{t("navbar.links.account")}</span>
|
||||||
</a>
|
</a>
|
||||||
<!--
|
<div class="btn-dropdown">
|
||||||
<button class="btn my-1" onclick={() => searchOpen = true}>
|
<button class="btn btn-gray">
|
||||||
<SearchOutline ariaLabel="Site Search" class="inline-block h-6"/>
|
<GlobeOutline />
|
||||||
</button>
|
</button>
|
||||||
-->
|
<div>
|
||||||
|
<a
|
||||||
|
data-astro-reload
|
||||||
|
href={l(currentPage, {}, { targetLocale: typeof navigator !== "undefined" ? navigator.language.split("-")[0] : "de" })}
|
||||||
|
onclick={() => cookieStore.delete("MANUAL_LANGUAGE")}
|
||||||
|
class="btn btn-gray">Auto</a
|
||||||
|
>
|
||||||
|
<a data-astro-reload href={l(currentPage, {}, { targetLocale: "de" })} onclick={() => cookieStore.set("MANUAL_LANGUAGE", "TRUE")} class="btn btn-gray">Deutsch</a>
|
||||||
|
<a data-astro-reload href={l(currentPage, {}, { targetLocale: "en" })} onclick={() => cookieStore.set("MANUAL_LANGUAGE", "TRUE")} class="btn btn-gray">English</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ tags:
|
|||||||
|
|
||||||
## Diese Version ist nicht die Aktuelle!
|
## Diese Version ist nicht die Aktuelle!
|
||||||
|
|
||||||
Bite schaue [hier](/events/2026-OsterEvent)!
|
Bite schaue [hier](/events/2026-osterevent)!
|
||||||
|
|
||||||
Ahoi Matrosen,
|
Ahoi Matrosen,
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "SteamWarTeamserver",
|
|
||||||
"description": "Dieses Plugin ermöglicht die einfache Einbindung deines Servers in SteamWar. Wie du deinen (Team-)Server über SteamWar erreichbar machen kannst findest du hier.",
|
|
||||||
"url": {
|
|
||||||
"Info": "/teamserverintegration",
|
|
||||||
"Download": "https://git.steamwar.de/SteamWar/SteamWarTeamserverIntegration/releases/download/latest/SteamWarTeamserverIntegration.jar"
|
|
||||||
},
|
|
||||||
"sourceUrl": "https://git.steamwar.de/SteamWar/SteamWarTeamserverIntegration"
|
|
||||||
}
|
|
||||||
@@ -1,7 +1,18 @@
|
|||||||
---
|
---
|
||||||
eventId: 78
|
eventId: 78
|
||||||
mode: "warship"
|
mode: "warship"
|
||||||
verwantwortlicher: "JajaKings"
|
verwantwortlicher: "ItonaCA"
|
||||||
|
viewConfig:
|
||||||
|
groups:
|
||||||
|
name: Gruppenphase
|
||||||
|
view:
|
||||||
|
type: "GROUP"
|
||||||
|
groups: [14]
|
||||||
|
elim:
|
||||||
|
name: Finale
|
||||||
|
view:
|
||||||
|
type: "ELEMINATION"
|
||||||
|
finalFight: 1661
|
||||||
---
|
---
|
||||||
|
|
||||||
Ahoi Matrosen,
|
Ahoi Matrosen,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
eventId: 77
|
eventId: 77
|
||||||
mode: "wargear"
|
mode: "wargear"
|
||||||
verwantwortlicher: "JajaKings"
|
verwantwortlicher: "JajaKings & YoyoNow"
|
||||||
---
|
---
|
||||||
|
|
||||||
# WarGear Season 2026
|
# WarGear Season 2026
|
||||||
@@ -12,7 +12,7 @@ Bereitet eure Teams vor und stellt euch einer kompetitiven Season mit klaren Reg
|
|||||||
## Allgemeine Infos
|
## Allgemeine Infos
|
||||||
|
|
||||||
Version: 1.21.6
|
Version: 1.21.6
|
||||||
WarGear Schem Type: ???
|
WarGear Schem Type: WarGearSeason26 oder WGS26
|
||||||
Anzahl Teams: ∞
|
Anzahl Teams: ∞
|
||||||
Anmeldeschluss: 30.04.2026 (Anzahl Teams wird am 25.04.2026 entschieden)
|
Anmeldeschluss: 30.04.2026 (Anzahl Teams wird am 25.04.2026 entschieden)
|
||||||
Einsendeschluss: 07.05.2026 (Ab dann nur noch Public Schematic wählbar)
|
Einsendeschluss: 07.05.2026 (Ab dann nur noch Public Schematic wählbar)
|
||||||
|
|||||||
130
src/content/pages/de/timeline.md
Normal file
130
src/content/pages/de/timeline.md
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
---
|
||||||
|
title: Timeline
|
||||||
|
description: Timeline
|
||||||
|
slug: timeline
|
||||||
|
slugs:
|
||||||
|
en: timeline
|
||||||
|
|
||||||
|
# First Trail
|
||||||
|
# HullHider
|
||||||
|
# Lobby:
|
||||||
|
# - Flugschiff
|
||||||
|
# - Vulkan
|
||||||
|
# - Jetzige Lobby
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Dynamic Bau
|
||||||
|
|
||||||
|
Aktuell im Bau befindet sich der Dynamic Bau, womit der BauServer selbst gestaltet werden kann.
|
||||||
|
|
||||||
|
### WarGear AI
|
||||||
|
|
||||||
|
Aktuell im Bau befindet sich eine WarGear KI, gegen die man anstelle von Spielern Kämpfen kann.
|
||||||
|
|
||||||
|
## 500.000 Spielstunden
|
||||||
|
|
||||||
|
Die ersten 500.000 Spielstunden wurden am 12.05.2025 geknackt.
|
||||||
|
|
||||||
|
## 100.000 Replays
|
||||||
|
|
||||||
|
Am 23.02.2025 wurde das 100.000 replay gespeichert.
|
||||||
|
|
||||||
|
## Server Umzug
|
||||||
|
|
||||||
|
Als das Development am 12.01.2025 aufsteht wurde festgestellt, dass man nicht mehr auf SteamWar spielen kann.
|
||||||
|
Der Velocity (Proxy Server) ist in der Nacht auf den 12.01.2025 ausgefallen.
|
||||||
|
Dieser wurde kurzerhand versucht neuzustarten um festzustellen, dass aufgrund einer fehlerhaften Festplatte dieser nicht mehr startet.
|
||||||
|
Kurzerhand wurde ein letztes Backup von der Datenbank und dem Server gemacht, sodass alle Daten weiter bestehen bleiben.
|
||||||
|
Nach kurzen internen Überlegungen wurde ein neuer Server gemietet und SteamWar neu aufgesetzt.
|
||||||
|
Am 14.01.2025 um 20:43 war SteamWar unter der Domain `dampfkrieg.de` wieder erreichbar.
|
||||||
|
Einige Funktionen blieben bis zum 20.01.2025 deaktiviert.
|
||||||
|
An diesem Tag wurde die postalisch umgezogene Domain `steamwar.de` wieder aktiviert und eine neue Webseite released.
|
||||||
|
|
||||||
|
## Geburtstag von SteamWar
|
||||||
|
|
||||||
|
Am 18.04.2024 wurde SteamWar 5 Jahre alt.
|
||||||
|
|
||||||
|
## 10.000 players
|
||||||
|
|
||||||
|
Am 25.01.2024 ist der 10.000 Spieler das erste mal auf SteamWar gejoint.
|
||||||
|
|
||||||
|
## 100.000 Fights
|
||||||
|
|
||||||
|
Am 10.04.2023 wurde der 100.000 Fight ausgetragen.
|
||||||
|
Es wurden 44585 MiniWarGear Fights, 36001 WarGear Fights und 7622 WarShip Fights ausgetragen.
|
||||||
|
Hinzukommen noch 6647 AirShip Fights und 3223 MicroWarGear Fights.
|
||||||
|
Die restlichen Kämpfe teilen sich auf 35er WarGear, MegaWarGear, MPP WarGear und Sea-Giants WarShip auf.
|
||||||
|
|
||||||
|
## 10.000 replays
|
||||||
|
|
||||||
|
Am 16.03.2022 wurde das 10.000 replay in der Datenbank gespeichert.
|
||||||
|
Die Replay Tabelle war schon seit einiger Zeit die größte Tabelle der Datenbank.
|
||||||
|
|
||||||
|
## Datenverlust
|
||||||
|
|
||||||
|
Einige Bauweltmember, ignorierte Spieler, Kits und Bau-GUI Einstellungen wurden am 31.12.2021 wegen des Laden eines Backups gelöscht.
|
||||||
|
Insgesamt waren die Daten eines Zeitraumes von ca 3,5 Monaten betroffen, welche teilweise verloren gingen.
|
||||||
|
|
||||||
|
## 10.000 Schematics
|
||||||
|
|
||||||
|
Am 20.11.2022 wurde die 10.000 Schematic erstellt.
|
||||||
|
|
||||||
|
## Replay System
|
||||||
|
|
||||||
|
Am 22.08.2021 wurde das erste Replay gespeichert.
|
||||||
|
Das Replay System nimmt ab dann jeden Fight auf, welche bis heute noch abgespielt werden können.
|
||||||
|
|
||||||
|
## TheJoCraft Videos
|
||||||
|
|
||||||
|
TheJoCraft hat zwischen dem 18.06.2021 und dem 22.06.2021 4 Videos über WarGears auf YouTube hochgeladen.
|
||||||
|
Innerhalb dieser 4 Tage spielten 1090 Spieler auf SteamWar.
|
||||||
|
Davon waren 706 neue Spieler, die das erste mal gejoint sind.
|
||||||
|
Knapp unter 3390 Stunden wurden auf StemWar während diesen Tagen gespielt.
|
||||||
|
Am 21.06.2021 sind mit 217 Spielern die meisten neuen Spieler das erste mal SteamWar gejoint.
|
||||||
|
|
||||||
|
## Erster Simulator
|
||||||
|
|
||||||
|
Am 07.03.2021 wurde der erste öffentliche Simulator auf SteamWar released.
|
||||||
|
|
||||||
|
## WarGear Season
|
||||||
|
|
||||||
|
Zwischen dem 05.03.2021 und dem 10.07.2021 fand das erste Langzeit Event, die WarGearSeason, statt.
|
||||||
|
In 77 Fights haben sich 15 Teams duelliert um zu entscheiden, wer die bessere Technik und Taktik hat.
|
||||||
|
Insgesamt haben 43 Spieler an der ersten WGS teilgenommen.
|
||||||
|
|
||||||
|
## Bau Design
|
||||||
|
|
||||||
|
Am 19.01.2021 wurde die neue Bauwelt released.
|
||||||
|
Diese wurde in den Wochen davor von Miny___ und der Hilfe von YoyoNow gebaut und eingerichtet.
|
||||||
|
|
||||||
|
## 100.000 Spielstunden
|
||||||
|
|
||||||
|
Die ersten 100.000 Spielstunden wurden am 14.01.2021 geknackt.
|
||||||
|
|
||||||
|
## WarGear Liga
|
||||||
|
|
||||||
|
Die erste und einzige WarGear Liga wurde zwischen dem 09.11.2022 und 15.11.2020 ausgetragen.
|
||||||
|
Es fanden 29 Kämpfe zwischen 12 Teams statt.
|
||||||
|
29 Kämpfer haben sich in den Fights duelliert.
|
||||||
|
|
||||||
|
## 10.000 Fights
|
||||||
|
|
||||||
|
Am 11.06.2020 wurde der 10.000 Fight ausgetragen.
|
||||||
|
Dabei wurden 6186 MiniWarGear fights, 1583 WarGear fights und 671 35er WarGear fights ausgetragen.
|
||||||
|
Die restlichen Fights wurden in WarShip, AirShip, MPP WarGear und SeaGiants WarShip gespielt.
|
||||||
|
|
||||||
|
## 10.000 Spielstunden
|
||||||
|
|
||||||
|
Die ersten 10.000 Spielstunden wurden am 22.02.2020 geknackt.
|
||||||
|
|
||||||
|
## Erstes Event
|
||||||
|
|
||||||
|
Das erste Event, namens PublicClash2019, wurde am 14.09.2019 veranstaltet.
|
||||||
|
Mit 4 angemeldeten Teams wurde über 15 Kämpfen entschieden wer der Sieger ist.
|
||||||
|
Das Event wurde in MiniWarGear, WarGear, WarShip und AirShip ausgetragen.
|
||||||
|
Insgesamt haben 14 Spieler in den Kämpfen teilgenommen.
|
||||||
|
|
||||||
|
## Gründung
|
||||||
|
|
||||||
|
SteamWar wird am 18.05.2019 von AdmiralSeekrank gegründet.
|
||||||
@@ -56,7 +56,7 @@ After the 6th shot the amount of projectiles may decrease, and must not increase
|
|||||||
Between individual shots of an automatic cannon must be at least 4 seconds of delay (40 redstone ticks, 80 game ticks).
|
Between individual shots of an automatic cannon must be at least 4 seconds of delay (40 redstone ticks, 80 game ticks).
|
||||||
A MiniWarGear may be equipped with up to two automatic cannons.
|
A MiniWarGear may be equipped with up to two automatic cannons.
|
||||||
|
|
||||||
## Brücke
|
## Bridge
|
||||||
|
|
||||||
A MiniWarGear must feature a command bridge in the form of a clearly distinguishable room.
|
A MiniWarGear must feature a command bridge in the form of a clearly distinguishable room.
|
||||||
The command bridge must be separated from the rest of the MiniWarGear by doors, fence gates, trapdoors or pistons.
|
The command bridge must be separated from the rest of the MiniWarGear by doors, fence gates, trapdoors or pistons.
|
||||||
@@ -69,7 +69,7 @@ A command bridge must adhere to the following conditions:
|
|||||||
- Controls for at least 4 headlights that are visible from the opposing position
|
- Controls for at least 4 headlights that are visible from the opposing position
|
||||||
- Controls for automatic cannons (if any are installed)
|
- Controls for automatic cannons (if any are installed)
|
||||||
- Controls for shield technology (if there is any)
|
- Controls for shield technology (if there is any)
|
||||||
- The command bridge is the only place where dispensers which aim at the opponent may be controlled
|
- The command bridge is the only place where dispensers which shoot fireballs or arrows at the opponent may be controlled
|
||||||
|
|
||||||
## Design
|
## Design
|
||||||
|
|
||||||
@@ -155,4 +155,4 @@ The propellant of any one cannon must only affect projectiles of that same canno
|
|||||||
- DROPPER
|
- DROPPER
|
||||||
- SHULKER_BOX
|
- SHULKER_BOX
|
||||||
- JUKEBOX
|
- JUKEBOX
|
||||||
- COMPARATOR
|
- COMPARATOR
|
||||||
@@ -49,10 +49,10 @@ const featP = "text-neutral-400/85 text-[0.85rem] leading-[1.65] mt-1";
|
|||||||
<div class="absolute inset-0 h-[calc(100vh+1rem)]">
|
<div class="absolute inset-0 h-[calc(100vh+1rem)]">
|
||||||
<BackgroundImage />
|
<BackgroundImage />
|
||||||
</div>
|
</div>
|
||||||
<div class="absolute inset-0 z-[2] [background:linear-gradient(to_bottom,rgba(0,0,0,0.6)_0%,rgba(0,0,0,0.2)_35%,rgba(0,0,0,0.45)_65%,#080808_100%)]"></div>
|
<div class="absolute inset-0 [background:linear-gradient(to_bottom,rgba(0,0,0,0.6)_0%,rgba(0,0,0,0.2)_35%,rgba(0,0,0,0.45)_65%,#080808_100%)]"></div>
|
||||||
<div class="absolute inset-0 z-[3] pointer-events-none [background:repeating-linear-gradient(0deg,transparent_0px,transparent_3px,rgba(0,0,0,0.06)_3px,rgba(0,0,0,0.06)_4px)]"></div>
|
<div class="absolute inset-0 pointer-events-none [background:repeating-linear-gradient(0deg,transparent_0px,transparent_3px,rgba(0,0,0,0.06)_3px,rgba(0,0,0,0.06)_4px)]"></div>
|
||||||
|
|
||||||
<div class="relative z-10 h-full flex flex-col items-center justify-center px-4">
|
<div class="relative h-full flex flex-col items-center justify-center px-4">
|
||||||
<h1 class="font-display text-[clamp(4.5rem,14vw,14rem)] font-black leading-[0.85] tracking-[-0.03em] select-none animate-[scaleIn_0.9s_0.25s_ease-out_both]">
|
<h1 class="font-display text-[clamp(4.5rem,14vw,14rem)] font-black leading-[0.85] tracking-[-0.03em] select-none animate-[scaleIn_0.9s_0.25s_ease-out_both]">
|
||||||
<span class="hero-text text-transparent">{t("home.title.first")}</span><span class="text-white [text-shadow:0_0_80px_rgba(255,255,255,0.06)]">{t("home.title.second")}</span>
|
<span class="hero-text text-transparent">{t("home.title.first")}</span><span class="text-white [text-shadow:0_0_80px_rgba(255,255,255,0.06)]">{t("home.title.second")}</span>
|
||||||
</h1>
|
</h1>
|
||||||
@@ -77,7 +77,7 @@ const featP = "text-neutral-400/85 text-[0.85rem] leading-[1.65] mt-1";
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="absolute bottom-6 left-1/2 -translate-x-1/2 z-20 w-full max-w-[40rem] px-4">
|
<div class="absolute bottom-6 left-1/2 -translate-x-1/2 w-full max-w-[40rem] px-4">
|
||||||
<PostComponent post={latestPost} slim={true} />
|
<PostComponent post={latestPost} slim={true} />
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
@@ -75,7 +75,7 @@
|
|||||||
padding: 0.5rem 0;
|
padding: 0.5rem 0;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
z-index: 20;
|
z-index: 200;
|
||||||
min-width: 10rem;
|
min-width: 10rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user