mirror of
https://github.com/setube/ogame-vue-ts.git
synced 2026-05-12 07:55:11 +08:00
- 在 README 中添加 Go 语言版本徽章 - 更新依赖环境列表,新增 Go 1.21+ 的安装要求 - 补充多平台二进制可执行文件下载链接 - 说明使用 Golang 构建跨平台兼容程序的功能 - 添加 Windows、Linux 和 MacOS 平台的最新构建版本下载地址 - 修改构建工具描述,加入对 Golang 支持的说明 - 调整文档结构以便更好地展示项目技术栈和快速启动指南
241 lines
9.2 KiB
Markdown
241 lines
9.2 KiB
Markdown
<div align="center">
|
|
<img src="public/logo.svg" alt="OGame Vue TS Logo" width="128" height="128">
|
|
|
|
# OGame Vue TS
|
|
|
|
A modern of the classic OGame space strategy game, built with Vue 3 and TypeScript.
|
|
|
|
[](https://creativecommons.org/licenses/by-nc/4.0/)
|
|
[](https://vuejs.org/)
|
|
[](https://www.typescriptlang.org/)
|
|
[](https://vitejs.dev/)
|
|
[](https://golang.org/)
|
|
|
|
[简体中文](README.md) | English
|
|
|
|
</div>
|
|
|
|
## About
|
|
|
|
OGame Vue TS is a single-player, browser-based space strategy game inspired by the classic OGame. Build your empire across the galaxy, research technologies, construct ships, and engage in epic space battles. This project is built with modern web technologies, offering a smooth and responsive gaming experience entirely in your browser with local data persistence.
|
|
|
|
## Features
|
|
|
|
- **Multi-language Support** - Available in 6 languages: English, Chinese (Simplified & Traditional), German, Russian, and Korean
|
|
- **Building Management** - Construct and upgrade various buildings on planets and moons
|
|
- **Research Technologies** - Unlock advanced technologies to enhance your empire
|
|
- **Fleet Management** - Build ships, send missions, and engage in tactical space battles
|
|
- **Defense Systems** - Deploy defensive structures to protect your colonies
|
|
- **Officers System** - Recruit officers to gain strategic advantages
|
|
- **Battle Simulator** - Test combat scenarios before committing resources
|
|
- **Galaxy View** - Explore the universe and interact with other planets
|
|
- **Local Data Persistence** - All game data is encrypted and stored locally in your browser
|
|
- **Dark/Light Mode** - Choose your preferred visual theme
|
|
- **Queue Management** - Manage multiple build and research queues
|
|
- **Moon Generation** - Chance-based moon creation from debris fields
|
|
|
|
## Tech Stack
|
|
|
|
- **Frontend Framework:** [Vue 3](https://vuejs.org/) with Composition API (`<script setup>`)
|
|
- **Language:** [TypeScript](https://www.typescriptlang.org/) with strict type checking
|
|
- **Build Tool:** [Vite](https://vitejs.dev/) (Custom Rolldown-Vite 7.2.5)、[Golang](https://golang.org/)(Building multi-platform compatible binary executables)
|
|
- **State Management:** [Pinia](https://pinia.vuejs.org/) with persisted state plugin
|
|
- **Routing:** [Vue Router 4](https://router.vuejs.org/)
|
|
- **UI Components:** [shadcn-vue](https://www.shadcn-vue.com/) (New York style)
|
|
- **Styling:** [Tailwind CSS v4](https://tailwindcss.com/) with CSS variables
|
|
- **Icons:** [Lucide Vue Next](https://lucide.dev/)
|
|
- **Animations:** [tw-animate-css](https://www.npmjs.com/package/tw-animate-css)
|
|
- **Internationalization:** Custom i18n implementation
|
|
|
|
## Quick Start
|
|
|
|
### Download Build Version
|
|
[Windows](https://github.com/coolxitech/ogame-vue-ts/releases/latest/download/ogame-windows-amd64.exe)
|
|
|
|
[Linux amd64](https://github.com/coolxitech/ogame-vue-ts/releases/latest/download/ogame-linux-amd64)
|
|
|
|
[Linux arm64](https://github.com/coolxitech/ogame-vue-ts/releases/latest/download/ogame-linux-arm64)
|
|
|
|
[MacOS Intel](https://github.com/coolxitech/ogame-vue-ts/releases/latest/download/ogame-macos-amd64)
|
|
|
|
[MacOS](https://github.com/coolxitech/ogame-vue-ts/releases/latest/download/ogame-macos-arm64)
|
|
|
|
### Prerequisites
|
|
|
|
- [Node.js](https://nodejs.org/) (version 18 or higher recommended)
|
|
- [pnpm](https://pnpm.io/) (version 10.13.1 or higher)
|
|
- [Go](https://golang.org/) (version 1.21 or higher recommended) (optional for binary builds)
|
|
|
|
### Installation
|
|
|
|
```bash
|
|
# Clone the repository
|
|
git clone https://github.com/setube/ogame-vue-ts.git
|
|
|
|
# Navigate to project directory
|
|
cd ogame-vue-ts
|
|
|
|
# Install dependencies
|
|
pnpm install
|
|
```
|
|
|
|
### Development
|
|
|
|
```bash
|
|
# Start development server (runs on port 25121)
|
|
pnpm dev
|
|
```
|
|
|
|
Open your browser and visit `http://localhost:25121`
|
|
|
|
### Build for Production
|
|
|
|
```bash
|
|
# Build the application
|
|
pnpm build
|
|
|
|
# Preview production build
|
|
pnpm preview
|
|
```
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
ogame-vue-ts/
|
|
├── public/ # Static assets
|
|
│ └── logo.svg # Application logo
|
|
├── src/
|
|
│ ├── assets/ # Dynamic assets
|
|
│ ├── components/ # Vue components
|
|
│ │ └── ui/ # shadcn-vue UI components
|
|
│ ├── composables/ # Vue composables
|
|
│ ├── config/ # Game configuration
|
|
│ ├── lib/ # Utility libraries
|
|
│ ├── locales/ # i18n translation files
|
|
│ ├── logic/ # Game logic modules
|
|
│ │ ├── buildingLogic.ts
|
|
│ │ ├── buildingValidation.ts
|
|
│ │ ├── fleetLogic.ts
|
|
│ │ ├── moonLogic.ts
|
|
│ │ ├── moonValidation.ts
|
|
│ │ ├── researchLogic.ts
|
|
│ │ ├── researchValidation.ts
|
|
│ │ ├── shipLogic.ts
|
|
│ │ └── shipValidation.ts
|
|
│ ├── router/ # Vue Router configuration
|
|
│ ├── stores/ # Pinia state stores
|
|
│ ├── types/ # TypeScript type definitions
|
|
│ ├── utils/ # Utility functions
|
|
│ ├── views/ # Page components
|
|
│ │ ├── OverviewView.vue
|
|
│ │ ├── BuildingsView.vue
|
|
│ │ ├── ResearchView.vue
|
|
│ │ ├── ShipyardView.vue
|
|
│ │ ├── DefenseView.vue
|
|
│ │ ├── FleetView.vue
|
|
│ │ ├── GalaxyView.vue
|
|
│ │ ├── OfficersView.vue
|
|
│ │ ├── BattleSimulatorView.vue
|
|
│ │ ├── MessagesView.vue
|
|
│ │ └── SettingsView.vue
|
|
│ ├── App.vue # Root component
|
|
│ ├── main.ts # Application entry point
|
|
│ └── style.css # Global styles
|
|
├── .github/
|
|
│ └── ISSUE_TEMPLATE/ # GitHub issue templates
|
|
├── LICENSE # CC BY-NC 4.0 License
|
|
├── package.json # Project dependencies
|
|
├── tsconfig.json # TypeScript configuration
|
|
└── vite.config.ts # Vite configuration
|
|
```
|
|
|
|
## Available Languages
|
|
|
|
- 🇺🇸 English
|
|
- 🇨🇳 简体中文 (Simplified Chinese)
|
|
- 🇹🇼 繁體中文 (Traditional Chinese)
|
|
- 🇩🇪 Deutsch (German)
|
|
- 🇷🇺 Русский (Russian)
|
|
- 🇰🇷 한국어 (Korean)
|
|
|
|
## Game Features
|
|
|
|
### Resource Management
|
|
- **Metal** - Primary construction material
|
|
- **Crystal** - Advanced technology component
|
|
- **Deuterium** - Fuel and research resource
|
|
- **Dark Matter** - Premium resource
|
|
- **Energy** - Powers your facilities
|
|
|
|
### Building Types
|
|
- **Resource Buildings** - Metal Mine, Crystal Mine, Deuterium Synthesizer, Solar Plant
|
|
- **Facilities** - Robotics Factory, Shipyard, Research Lab, Storage facilities
|
|
- **Special Buildings** - Nanite Factory, Terraformer, and more
|
|
|
|
### Technologies
|
|
- **Energy Technology** - Improves energy efficiency
|
|
- **Laser Technology** - Enhances weapon systems
|
|
- **Ion Technology** - Advanced propulsion and weapons
|
|
- **Hyperspace Technology** - Enables faster travel
|
|
- **Plasma Technology** - Ultimate weapon systems
|
|
- And many more...
|
|
|
|
### Ship Classes
|
|
- **Civil Ships** - Small/Large Cargo, Colony Ship, Recycler
|
|
- **Combat Ships** - Light/Heavy Fighter, Cruiser, Battleship, Bomber
|
|
- **Special Ships** - Deathstar, Battlecruiser, Destroyer
|
|
|
|
### Defense Systems
|
|
- Rocket Launcher, Light/Heavy Laser, Gauss Cannon
|
|
- Ion Cannon, Plasma Turret
|
|
- Small/Large Shield Dome
|
|
|
|
## Data Security
|
|
|
|
All game data is automatically encrypted using AES encryption before being stored in your browser's local storage. Your game progress is secure and private.
|
|
|
|
## Customization
|
|
|
|
The application supports full theme customization through Tailwind CSS variables defined in `src/style.css`. You can easily switch between light and dark modes.
|
|
|
|
## Contributing
|
|
|
|
Contributions are welcome! Please feel free to submit issues or pull requests.
|
|
|
|
### Issue Templates
|
|
We provide the following issue templates in both Chinese and English:
|
|
- Bug Report
|
|
- Feature Request
|
|
- Documentation Improvement
|
|
- eedback & Suggestion
|
|
|
|
## License
|
|
|
|
This work is licensed under the [Creative Commons Attribution-NonCommercial 4.0 International License](https://creativecommons.org/licenses/by-nc/4.0/).
|
|
|
|
### You are free to:
|
|
- **Share** — copy and redistribute the material in any medium or format
|
|
- **Adapt** — remix, transform, and build upon the material
|
|
|
|
### Under the following terms:
|
|
- **Attribution** — You must give appropriate credit, provide a link to the license, and indicate if changes were made
|
|
- **NonCommercial** — You may not use the material for commercial purposes
|
|
|
|
**Original Author:** Jun Qian (谦君)
|
|
|
|
## Acknowledgments
|
|
|
|
This project is inspired by the original [OGame](https://ogame.org/) browser game. All game mechanics and design elements are reimplemented for educational and entertainment purposes.
|
|
|
|
## Disclaimer
|
|
|
|
This project is not affiliated with, endorsed by, or connected to Gameforge AG or the official OGame game. It is an independent fan project created for educational purposes and personal enjoyment.
|
|
|
|
---
|
|
|
|
<div align="center">
|
|
Made with ❤️ by Jun Qian
|
|
<br>
|
|
© 2025 - All rights reserved (except those granted by CC BY-NC 4.0 License)
|
|
</div>
|