Sarjuuk / aowow

logo

Statut de la construction

fuck it ship it

Introduction

AoWoW est un outil de base de données pour World of Warcraft v3.3.5 (build 12340)Il est basé sur l’autre célèbre outil de base de données pour WoW, mettant en vedette la fusée rouge souriante.Alors que les premières versions peuvent être trouvées dès 2008, il est aujourd’hui impossible de dire qui a créé ce projet.Il s’agit d’une réécriture complète du code php côté serveur et d’une mise à jour des javascripts côté client de 2008 à quelque chose de 2013ish.

Je ne prends moi-même aucun crédit pour le scriptage côté client, la conception et la mise en page que ces scripts php répondent à.Aussi, ce projet n’est pas destiné à être utilisé à des fins commerciales de toute nature!

Exigences

  • Serveur Web exécutant PHP ≥ 7.1, y compris les extensions:
    • SimpleXML
    • GD
    • MySQL amélioré
    • Chaîne multioctet
    • File Information
    • GNU Multiple Precision (Lorsque vous utilisez TrinityCore comme source d’authentification)
  • MySQL ≥ 5.5.30
  • TDB 335.21021
  • Les outils nécessitent cmake : Veuillez vous référer aux dépôts individuels pour des informations détaillées
    • MPQExtractor / FFmpeg / (optionnel : BLPConverter)
    • Les utilisateurs de WIN peuvent trouver plus facile d’utiliser ces alternatives
      • MPQEditor / FFmpeg / (optionnel : BLPConverter)

Le traitement audio peut nécessiter lame ou vorbis-tools (qui peut nécessiter libvorbis (qui peut nécessiter libogg))

Hautement recommandé

  • Paramétrer les valeurs de configuration suivantes sur votre serveur TrinityCore augmentera considérablement la précision des points de spawn

    Calculer.Creature.Zone.Area.Data = 1
    Calculer.Gameoject.Zone.Area.Data = 1

Install

1. Acquérir les référentiels requis

git clone [email protected]:Sarjuuk/aowow.git aowow
git clone [email protected]:Sarjuuk/MPQExtractor.git MPQExtractor

2. Préparer la base de données

S’assurer que le compte que vous allez utiliser a un accès complet sur la base de données qu’AoWoW va occuper et idéalement seulement un accès en lecture sur la base de données du monde que vous allez référencer.
Importer setup/db_structure.sql dans la base de données d’AoWoW mysql -p {your-db-here} < setup/db_structure.sql

3. Fichiers créés par le serveur

Voir à ce que le serveur web soit capable d’écrire les répertoires suivants et leurs enfants. S’ils sont manquants, l’installation les créera avec les permissions appropriées

  • cache/
  • config/
  • static/download/
  • static/widgets/
  • static/js/
  • static/uploads/
  • static/images/wow/
  • datasets/

4. Extraire les archives du client (MPQ)

Extraire les répertoires suivants des archives du client dans setup/mpqdata/, tout en maintenant l’ordre des patchs (base mpq -> patch-mpq : 1 -> 9 -> A -> Z). Les chemins nécessaires sont dispersés dans les archives. Ecrasez les anciens fichiers si on vous le demande.
… pour chaque locale que vous allez utiliser:

<localeCode>/DBFilesClient/
<localeCode>/Interface/WorldMap/
<localeCode>/Interface/FrameXML/GlobalStrings.lua

… une fois est suffisant (toujours appliquer le localeCode cependant) :

<localeCode>/Interface/TalentFrame/
<localeCode>/Interface/Glues/Credits/
<localeCode>/Interface/Icons/
<localeCode>/Interface/Spellbook/
<localeCode>/Interface/PaperDoll/
<localeCode>/Interface/GLUES/CHARACTERCREATE/
<localeCode>/Interface/Pictures
<localeCode>/Interface/PvPRankBadges
<localeCode>/Interface/FlavorImages
<localeCode>/Interface/Calendar/Holidays/
<localeCode>/Sound/

.. optionnellement (non utilisé dans AoWoW):

<localeCode>/Interface/GLUES/LOADINGSCREENS/

5. Réencoder les fichiers audio

Les fichiers WAV doivent être réencodés en ogg/vorbis et certains MP3 peuvent s’identifier en application/octet-stream au lieu de audio/mpeg.

  • exemple pour WIN
  • exemple pour *nix

6. Exécutez la configuration initiale à partir du CLI

php aowow --setup.
Cela devrait vous guider avec un minimum d’entrée requise de votre côté, mais prendra un certain temps cependant, en particulier la compilation des images de zone. Utilisez-le pour vous familiariser avec les autres fonctions de cette configuration. Oui, je suis très sérieux : allez lire le code ! Il vous aidera à comprendre comment configurer AoWoW et le garder en synchronisation avec votre base de données du monde.
Quand vous avez créé votre compte administrateur, vous avez terminé.

Dépannage

Q : La page apparaît blanche, sans aucun style.
A : Le contenu statique n’est pas affiché. Soit vous utilisez SSL et AoWoW est incapable de le détecter, soit STATIC_HOST n’est pas défini poperly. Dans tous les cas, cela peut être corrigé via la config php aowow --siteconfig

Q : Fatal error : Can’t inherit abstract function <functionName> (previously declared abstract in <className>) in <path>
A : Vous utilisez des modules d’optimisation de cache pour php, qui sont en contradiction les uns avec les autres. (Zend OPcache, XCache, …) Désactivez-les tous sauf un.

Q : Certaines images générées apparaissent déformées ou ont des problèmes de canal alpha.
A : La compression des images dépasse ma compréhension, donc je suis incapable de corriger ces problèmes dans le blpReader.MAIS vous pouvez convertir le fichier blp affecté en un fichier png dans le même répertoire, en utilisant le BLPConverter fourni.AoWoW donnera la priorité aux fichiers png sur les fichiers blp.

Q : Comment puis-je faire fonctionner le modelviewer?
A : Vous ne pouvez plus. Wowhead est passé de Flash à WebGL (comme il se doit) et a déplacé ou supprimé les anciens fichiers dans le processus.

Q : Je reçois des erreurs javascript aléatoires!
A : Certaines configurations de serveur ou services externes (comme Cloudflare) viennent avec des modules, qui minifient automatiquement les fichiers js et css. Parfois, ils se cassent dans le processus. Désactivez le module dans ce cas.

Q : Certains résultats de recherche dans le profileur se comportent de manière plutôt étrange. Comment cela fonctionne-t-il ?
A : Chaque fois que vous essayez de visualiser un nouveau caractère, AoWoW doit d’abord le récupérer. Comme les données sont structurées pour les besoins de TrinityCore et non pour une visualisation facile, AoWoW doit les sauvegarder et les restructurer localement. À cette fin, chaque demande de carte est placée dans une file d’attente. Tant que la file d’attente n’est pas vide, une seule instance de prQueue est exécutée en arrière-plan pour ne pas submerger la base de données des personnages avec des demandes. Cela signifie également que certaines requêtes de recherche plus exotiques ne peuvent pas être exécutées sur la base de données des personnages et doivent utiliser les profils incomplets ou périmés en cache d’AoWoW.

Merci

@mix : pour avoir fourni le script php pour analyser les fichiers .blp et .dbc en images et tableaux utilisables
@LordJZ : la classe wrapper pour DBSimple ; l’idée de base pour la classe utilisateur
@kliver : implémentation de base des téléchargements de captures d’écran
@Sarjuuk : mainteneur du projet

Remerciements spéciaux

Said site web avec la fusée rouge souriante, pour avoir fourni ce site web magnifique !S’il vous plaît, ne considérez pas ce projet comme une arnaque flagrante, mais plutôt comme « Nous avons vraiment aimé votre présentation, mais depuis que le temps et le contenu progressent, vous ne fournissez malheureusement plus les données dont nous avons besoin ».

utilisation de badges

.