php-client
php-client copied to clipboard
ugamela is an open-source clone of the popular browsergame ogame.
What is ugamela?
ugamela is a open-source clone of the popular browsergame ogame, developed by the Gameforge 4D GmbH. It first appeared around the year 2006, when Peberos published the source-code for his version of ugamela. It stayed open-source until the version 0.2-r13, which can still be found for download. After this, Peberos continued to improve ugamela as a closed-source browsergame.
Now, many years later, ugamela is back, redone completely from scratch with the latest web-technologies available. Its goal is to be as close to the original ogame (also known as ogame classic) as possible.
Disclaimer
This open-source project is still in an alpha-state, please do not use this in an production-environment. Currently, not many features are available and this game is not fully playable. Feel free to contribute by making a pull-request.
Project-Structure
┌─── core/ # → contains all necessary classes
│ │── classes/ # → classes for the ORM-Mapping and parent-classes
│ │ │── data # → classes, which map database-values to objects
│ │ └── units # → classes for various ingame-units
│ ├── controllers/ # → all needed controller-classes
│ ├── interfaces/ # → interfaces the classes
│ ├── language/ # → contains all translations in subfolders named after their ISO 639-1 language-code
│ ├── models/ # → all needed model-classes
│ ├── templates/ # → template for each site (HTML)
│ └── views/ # → all needed view-classes
├── css/ # → css for all pages outside of the game
├── images/ # → images for all pages outside of the game
├── install/ # → contains the necessary files for a first-time setup
├── scripts/ # → javascript-files
├── skins/ # → skins, which are useable ingame (all images and css for the game must go here)
├── game.php # → the main php-file, which dynamically loads the needed pages
├── index.php # → redirects to the game.php if logged in, else to the login-page
├── login.php # → login-form for the user
├── logout.php # → user-logout
└── register.php # → registration
Quick Start
- This project uses is being developed with the (currently) latest release of PHP (Version 7.1.9) and mariaDB (Version 10.2). For a easy quick start, use the latest release of XAMPP or use Docker with the necessary containers.
- After setting up your environment, import the sql-file located in the install directory.
- Edit the config.sample.php in the core-folder to match your server-configuration and rename it to config.php and change the classname to Config.
Documentation & Demo
A live-demo can be found here. This demo may not always contain the latest version of this repository.
The credentials for the test-account are:
Username: test
Password: test
The documentation is hosted on the same server as the game.
Roadmap
The current roadmap for the next version is listed below with their respective issues linked.
- [ ] ability to build defense (#10)
- [ ] empire-view (#31)
- [ ] techtree-view (#32)
- [ ] simple statistics (#11)
- [ ] research
- [ ] make technologies usefull (make ships go faster etc.) (#33)
- [ ] fleet
- [X] transportation
- [ ] colonization (#36)
- [ ] settings-view (#14)
- [ ] search-functionality (#37)
- [ ] admin-panel (#39)
- [ ] show currently online users
- [ ] show all users/planets
- [ ] ban/unban users
- [ ] send messages to all players
- [ ] game-installer (#38)
Support / Questions
For any further questions, support or general talk, please visit our Discord by clicking on the image below or follow the link.
https://discord.gg/YDUHM3k