TEG - 戦術と戦略のデジタル実装

Web

概要

TEG(Táctica y Estrategia de la Guerra)をデジタルで再現した学術プロジェクトです。複数プレイヤーが領土を占領し、軍隊を編成して戦闘を行い、個別の秘密目標を達成することで勝利を目指すクラシックなボードゲームを、Webアプリケーションとして実装しています。技術スタックはフロントがAngular、バックエンドがSpring Boot、永続化にMySQLを利用。教育目的のチーム開発で、ゲームロジック、状態管理、UI連携など、実践的なフルスタック開発の学習に適した構成になっています。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 5
  • ファイル数: 3
  • メインの言語: 未指定

主な特徴

  • Angularを用いたフロントエンドでゲーム画面や操作を提供
  • Spring BootによるRESTfulバックエンドでゲーム状態とロジックを管理
  • MySQLでプレイヤー情報や領土・軍隊データを永続化
  • 領土管理、軍隊配置、戦闘判定、秘密目標の達成などのコアゲーム機能を実装

技術的なポイント

本プロジェクトは典型的なフルスタック構成で、フロントエンド(Angular)とバックエンド(Spring Boot)、RDB(MySQL)が明確に分離されています。Angular側はSPAとしてプレイヤー操作やビュー更新を担当し、HTTP経由でバックエンドのAPIを呼び出してゲームの状態遷移(ターン進行、移動、攻撃、目標判定など)を行う設計が想定されます。バックエンドはSpring BootでRESTエンドポイントを用意し、リクエストごとにビジネスロジックを実行してDBに状態を保存する役割を担います。MySQLは領土(territories)、プレイヤー(players)、軍隊(armies)、ゲームセッション(games)といったスキーマでデータ整合性を保つ想定です。学術プロジェクトのため、認証やリアルタイム通信(WebSocket)などの高度な要素はREADMEに明記されていませんが、マルチプレイヤーゲームとしては同期待ちや競合状態の制御、トランザクション管理が重要になります。拡張点としては、リアルタイム性が求められる場合のSocket通信導入、ゲームAIや対戦マッチメイキング、詳細なログとリプレイ機能、CI/CDによるテスト自動化が考えられます。現状の小規模コミット状況からはプロトタイプ段階であり、設計の学習・実験用途に適しています。

プロジェクトの構成

主要なファイルとディレクトリ:

  • BACK: dir
  • FRONT: dir
  • README.md: file

まとめ

学術的なフルスタック演習として有用な、TEGのデジタルプロトタイプです。

リポジトリ情報:

READMEの抜粋:

🎲 TEG - Táctica y Estrategia de la Guerra

Proyecto académico desarrollado en equipo que implementa el clásico juego de mesa TEG en versión digital.
El juego permite conquistar territorios, organizar ejércitos y cumplir objetivos secretos para alcanzar la victoria.


🚀 Tecnologías utilizadas

  • Frontend: Angular
  • Backend: Spring Boot
  • Base de datos: MySQL

🎯 Características principales

  • Gestión de territorios y ejércitos.
  • Sistema de batallas ba…