Go to file
2025-01-12 16:52:25 +02:00
app Added netbar with language selector 2025-01-01 13:39:02 +02:00
bootstrap Added netbar with language selector 2025-01-01 13:39:02 +02:00
config Added Octane/FrankenPHP support for prod Docker image 2024-12-31 20:37:45 +02:00
database Migrate spam_db to InnoDB and utf8mb4 2025-01-01 19:21:49 +01:00
docker Added Octane/FrankenPHP support for prod Docker image 2024-12-31 20:37:45 +02:00
lang Added netbar with language selector 2025-01-01 13:39:02 +02:00
public Added netbar with language selector 2025-01-01 13:39:02 +02:00
resources Added netbar with language selector 2025-01-01 13:39:02 +02:00
routes Added netbar with language selector 2025-01-01 13:39:02 +02:00
storage Added website Docker image, bumped PHP version, added mall authentication, added experimental patcher support, improved migrations, added teasers 2024-09-22 21:14:31 +03:00
tests Added static content 2023-07-23 01:14:14 +03:00
.dockerignore Added .git directory to dockerignore 2024-09-22 21:41:14 +03:00
.editorconfig Added static content 2023-07-23 01:14:14 +03:00
.env.example Added static content 2023-07-23 01:14:14 +03:00
.gitattributes Added static content 2023-07-23 01:14:14 +03:00
.gitignore Added Octane/FrankenPHP support for prod Docker image 2024-12-31 20:37:45 +02:00
artisan Added static content 2023-07-23 01:14:14 +03:00
composer.json Added Octane/FrankenPHP support for prod Docker image 2024-12-31 20:37:45 +02:00
composer.lock Added Octane/FrankenPHP support for prod Docker image 2024-12-31 20:37:45 +02:00
package-lock.json Added static content 2023-07-23 01:14:14 +03:00
package.json Added static content 2023-07-23 01:14:14 +03:00
phpunit.xml Added static content 2023-07-23 01:14:14 +03:00
README.md Document image building and migration testing 2025-01-12 16:52:17 +02:00
vite.config.js Added static content 2023-07-23 01:14:14 +03:00

The Metin2 Website

This is a replica of the old Metin2 website in the pre-2014 era, made in Laravel. Still very much a work in progress, it aims to be the management centre for the Metin2 stack.

What works

  • Registering a new account
  • Account login

What's unfinished

  • User management
  • Complete multilanguage system & English translations
  • Item-Shop with Stripe integration
  • Populating the database tables with the minimum information to start the server
  • Admin panel (which would allow you to post news, customize the navbar, etc. and also manage ingame actions such as bans)
  • Docker image
  • Ranking (with cache system for fast search)
  • Adding Grotto & DC landing pages
  • Converting Flash-based media players to HTML5.

Development

Image Building

To build the image, checkout the repo and run either of the following build statements

docker build -t metin2/web:test -f docker/image/prod/apache.Dockerfile .
# or
docker build -t metin2/web:test -f docker/image/prod/frankenphp.Dockerfile .

If you want to use this image in your deploy project, ensure to update the WEB_IMAGE variable in your .env to metin2/web:test.

Testing Migrations

To test newly added migrations, use a temporary docker container that attaches to your existing deploy network.

docker run --env-file .env --network deploy_default --rm metin2/web:test "php artisan migrate"

Ensure that the rollback of your migration is also working as expected. Adapt the --step parameter according to the number of migration files you added.

docker run --env-file .env --network deploy_default --rm metin2/web:test "php artisan migrate:rollback --step=1"