Tab-Revolution, Vereinsumfeld-Visualisierung & monatliches Season Ranking
Der größte UI-Sprung seit langem: Lange Scroll-Wüsten werden auf nahezu allen Spielseiten in aufgeräumte Tab-Ansichten umgebaut, die Franchise-Seite bekommt eine eigene Top-down-Vereinsumfeld-Visualisierung samt 8-köpfigem Personal-Konferenztisch, Sponsoren/TV/Ausrüster/Versicherer wandern in eine Hero-Box mit benutzerdefinierten SVG-Logos, und neu eingeführt wird ein monatliches Season Ranking als kompetitive Bestenliste pro Schwierigkeitsgrad.
🏟️ Vereinsumfeld & Personal als Stadium-View
- Neue Top-down-Yard-Ansicht auf
franchise.phpmit 12×8-Grid: Stadion, Trainingsanlagen, Gym, Sportakademie, Medical/Therapy Center, Merch-Store, Bürogebäude und Datacenter — jedes Gebäude als generative SVG mit Per-Level-Features (z.B. Tribünen, Flutlicht, Eckfahnen am Spielfeld), Level-Badge oben rechts, Kosten-Overlay beim Klick - Per-Klick öffnet das einheitliche Upgrade-Overlay mit aktuellem vs. nächstem Benefit, Kosten und Kontostand-Vorschau — funktioniert für alle 9 Gebäudetypen über eine geteilte Modal-Logik
- Darüber das neue Personal-Konferenzraum-Layout: 8 Mitarbeiter (HC/OC/DC/SC, Scout, Marketing, Physio, Doctor) als Portraits um einen Konferenztisch — generative SVG-Köpfe mit Haaren, Sakko in Teamfarbe und VAKANT-Marker bei Level 0
- CPU-Teams sehen den gleichen Yard + Konferenzraum read-only (keine Upgrade-Overlays)
- Neue Sprachschlüssel und Benefit-Texte für L6-L10 (DE/EN), DB-Spalten-Fallback wenn ein Lang-Key fehlt
🤝 Partner & Verträge: Hero-Box statt 4 DataTables
- Neue
fpc-hero-Box ersetzt die alten 4 Sponsoren/TV/Ausrüster/Versicherungs-Tabellen: Sponsoren in voller Breite (Zeile 1) mit allen 7 Boni direkt sichtbar (pro Spiel · pro Saison · 8 Siege · Playoffs · Conference Final · SB · SB Sieg) plus Maximalsumme und Ambitions-Badge (Contending/Retooling/Rebuilding) - TV-Partner / Ausrüster / Versicherungen in Zeile 2 als 3-spaltige Panels — kompakte Karten mit Hover-Tooltip, klickbar zur Unterzeichnung
- Neue generative SVG-Logos pro Marke (ChipsFresh als Chips-Tüte, JellyFish als Qualle, MyTube als roter Play-Button, Lovely Cat als Katzenkopf, …) — kein PNG-Brei mehr
- Bestätigungs-Overlay zeigt Kontostand jetzt → −Kosten → Kontostand danach mit grünem/rotem Akzent. Enter-Taste = Unterzeichnen, ESC oder × oben rechts = Abbrechen
- Sponsor-Klassifizierung nach Varianz (`summax/summin`) ergibt automatisch das richtige Ambitionsniveau, mit manuellen Overrides für JellyFish und Shirts4Friends
🎟️ Tickets-Slider + Fanbase im Hero
- Ticketpreis wird statt 6 separater +/−-Anker jetzt über einen Slider mit Number-Input auf den Euro genau eingestellt (50–500€); ein gelbes Toleranzband visualisiert die Empfehlung des Marketing-Managers (Range schrumpft mit steigendem Marketing-Lvl)
- Standalone-Fanbase-Block raus — die Fanbase-Zahl + ℹ️-Verlauf-Modal sitzt jetzt direkt im Hero-Stat-Tile
📑 Tab-Ansichten überall im gleichen Stil
- Einheitliches Tab-System (
color2als Bar-Hintergrund,color1als aktiver Tab, kontrast-sicherer Text) auf 11 Seiten ausgerollt:team.php(5 Tabs),franchise.php(5),trade.php(4 mit Team-Logos),schedule.php(6 für Preseason → Super Bowl),players_watchlist.php(3),achievements.php(11),halloffame.php(3),draft.php(3 inkl. Post-Draft-Summary),player_stats_leaders.php(4),conference.php/division.php/table.php(2 für AFC/NFC),seasonranking.php(4) - Aktiver Tab wird je Seite in
localStoragepersistiert; Hash-basierte Aktivierung greift weiterhin (z.B. „Vertrag verlängern"-Redirect mit#playerNöffnet automatisch den Offense-Tab und scrollt zur Zeile) - DataTables-Spaltenbreiten werden beim Tab-Wechsel via
columns.adjust()neu berechnet — keine 0-px-Spalten mehr nach dem Switch - Mobil bricht die Tab-Bar in 2 Zeilen um statt horizontal zu scrollen
🏟️ Conference + Division als Hero-Karten-Grid
- Auf
conference.php+division.phpwird die alte 1-Zeilen-Liste durch ein 4-Karten-Grid pro Division ersetzt — jede Karte im selben „th-card"-Look wie die Team-Hero-Card aufteam.php(Diagonal-Gradient color1 → dunkel → color2, animiertes Sheen-Streifen, halb-transparentes Team-Logo im Hintergrund) - Pro Karte: Logo, Name, Color-Swatches, Strategy-Badge (Contending/Retooling/Rebuilding), Saison-Record, OVR/OFF/DEF/SPE-Rating-Kreise und Durchschnittsalter (Team + 3 Positionsgruppen)
- User-Team bekommt einen weißen Outline-Ring, damit es im Grid sofort ins Auge fällt
- Sortierung: nach Saison-Bilanz (Wins desc, Losses asc), sonst alphabetisch
🎨 Icons + Title-Case-Sweep über die ganze App
- Passende Emoji-Icons vor jeder
<h1>und Section-<h2>: 💰 Finanzen · 🎟️ Tickets & Merch · 🤝 Partner · 👔 Personal · 🏟️ Vereinsumfeld · 🟢 Offense · 🔴 Defense · 🟡 Special Teams · 🩹 Practice Squad · 📊 Stats · 🏆 Top League Players · 📈 Power Ranking · 🏛️ Hall of Fame · 🔍 Spielersuche · 🆓 Free Agents · 🎯 Draft · 📋 Vertragsübersicht · 🪙 Coins · 📰 News · 📖 Glossar — die Liste ist lang - Sämtliche Block-Caps-Lang-Strings (DE + EN) auf normale Schreibweise normalisiert: „BEOBACHTUNGSLISTE" → „Beobachtungsliste", „SPIELER SUCHEN" → „Spieler suchen", „TOP-LIGASPIELER" → „Top-Ligaspieler", „SCHEDULE" → „Schedule" usw. — kein Geschrei mehr in den Headern
- Schließen-X (
×) konsistent oben rechts in allen Bestätigungs-Overlays (Yard, Personal, Partner)
🏆 Neues monatliches Season Ranking
- Neue Seite
seasonranking.phpmit 4 Tabs: Easy / Medium / Hard jeweils gefiltert auf Spielstände, die im aktuellen Kalendermonat gestartet wurden — am 1. um 0:00h startet automatisch eine neue Season; plus All-Time für die ewige Bestenliste über alle Schwierigkeiten - Volle DataTable mit Pagination, Suche, sortierbaren Spalten — gleiche Score-Formel und Spalten wie die index.php-Top-10-Box (SB · CF · Playoffs · Achievements · Peak-OVR · Saisons · W-L-D · Trades · Drafted · Kontostand)
- Easy/Medium/Hard kommen mit „Daten: Fiktiv" als Voreinstellung; All-Time hat beide Filter (Schwierigkeit + Daten) wie auf der Startseite
- Erreichbar per goldenem Button unter „🏆 Top 10 Spielstände (All-Time)" auf der index.php oder via Sidebar im Spiel
- Funktioniert mit und ohne aktive Spiel-ID — Public-Header außerhalb, Ingame-Header sobald ein Spiel läuft
📝 Entwickler-Blog auf der Startseite
- Neuer 📝-Button neben dem Discord-Banner (gleiche Höhe) führt zum Entwickler-Blog
- Direkt darunter ein Auto-aktualisierender Teaser-Block der letzten 3 Artikel: Tag, Datum, Titel, 50-Wort-Excerpt + „Weiterlesen »"-Link mit Anker zum jeweiligen Artikel
- Single Source of Truth:
_blog_posts.phpdefiniert die Reihenfolge — neue Artikel oben einfügen, Teaser +blog.phpaktualisieren sich automatisch
Tag 1 fühlt sich an wie ein neuer Anstrich für jede Seite, die regelmäßig im Blickfeld ist. Tab-Bars sparen Scrollen, Hero-Karten machen aus reinen Tabellen visuelle Geschichten, und das neue monatliche Season Ranking bringt einen frischen Wettbewerbs-Hook für alle, die gerne ihren Score gegen die Community messen.