Sarjuuk / aowow

logo

Stato della build

fuck it ship it

Introduzione

AoWoW è uno strumento di database per World of Warcraft v3.3.5 (build 12340)E’ basato sull’altro famoso strumento di database per WoW, con il razzo rosso sorridente.Mentre le prime versioni possono essere trovate già nel 2008, oggi è impossibile dire chi ha creato questo progetto.Questo è una riscrittura completa del codice php lato server e un aggiornamento del javascript lato client dal 2008 a qualcosa del 2013.

Io stesso non mi prendo alcun merito per lo scripting lato client, il design e il layout che questi php-scripts soddisfano.Inoltre, questo progetto non è destinato ad essere usato per scopi commerciali di qualsiasi tipo!

Requisiti

  • Webserver con PHP ≥ 7.1 incluse le estensioni:
    • SimpleXML
    • GD
    • MySQL Improved
    • Multibyte String
    • File Information
    • GNU Multiple Precision (When using TrinityCore as auth source)
  • MySQL ≥ 5.5.30
  • TDB 335.21021
  • Gli strumenti richiedono cmake: Si prega di fare riferimento ai singoli repository per informazioni dettagliate
    • MPQExtractor / FFmpeg / (opzionale: BLPConverter)
    • Gli utenti Win possono trovare più facile usare queste alternative
      • MPQEditor / FFmpeg / (opzionale: BLPConverter)

l’elaborazione audio può richiedere lame o vorbis-tools (che può richiedere libvorbis (che può richiedere libogg))

Altamente raccomandato

  • Impostare i seguenti valori di configurazione sul tuo server TrinityCore aumenterà notevolmente la precisione dei punti di spawn

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

Install

1. Acquisire i repository richiesti

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

2. Preparare il database

Assicurati che l’account che userai abbia accesso completo al database che AoWoW occuperà e idealmente solo accesso in lettura al database del mondo a cui farai riferimento.
Importa setup/db_structure.sql nel database di AoWoW mysql -p {your-db-here} < setup/db_structure.sql

3. File creati dal server

Vedi che il server web sia in grado di scrivere le seguenti directory e i loro figli. Se mancano, il setup le creerà con i permessi appropriati

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

4. Estrarre gli archivi client (MPQ)

Estrarre le seguenti directory dagli archivi client in setup/mpqdata/, mantenendo l’ordine delle patch (base mpq -> patch-mpq: 1 -> 9 -> A -> Z). I percorsi richiesti sono sparsi negli archivi. Sovrascrivere i file più vecchi se richiesto.
. per ogni locale che userai:

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

. una volta è sufficiente (applicare comunque il localeCode):

<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/

.. opzionalmente (non usato in AoWoW):

<localeCode>/Interface/GLUES/LOADINGSCREENS/

5. Ricodificare i file audio

I file WAV devono essere ricodificati come ogg/vorbis e alcuni MP3 possono identificarsi come application/octet-stream invece di audio/mpeg.

  • esempio per WIN
  • esempio per *nix

6. Esegui la configurazione iniziale dalla CLI

php aowow --setup.
Questo dovrebbe guidarti con un input minimo richiesto dalla tua parte, ma richiederà un po’ di tempo, specialmente per compilare le immagini di zona. Usatelo per familiarizzare con le altre funzioni di questa configurazione. Sì, sono assolutamente serio: andate a leggere il codice! Ti aiuterà a capire come configurare AoWoW e tenerlo sincronizzato con il tuo database mondiale.
Quando hai creato il tuo account di amministratore hai finito.

Risoluzione dei problemi

Q: La pagina appare bianca, senza alcuno stile.
A: Il contenuto statico non viene visualizzato. O stai usando SSL e AoWoW non è in grado di rilevarlo o STATIC_HOST non è definito in modo poperfetto. In entrambi i casi questo può essere risolto tramite la configurazione php aowow --siteconfig

Q: Errore fatale: Can’t inherit abstract function <functionName> (previously declared abstract in <className>) in <path>
A: Stai usando moduli di ottimizzazione della cache per php, che sono in conflitto tra loro. (Zend OPcache, XCache, ..) Disabilita tutti tranne uno.

Q: Alcune immagini generate appaiono distorte o hanno problemi con i canali alfa.
A: La compressione delle immagini va oltre la mia comprensione, quindi non sono in grado di risolvere questi problemi nel blpReader.MA puoi convertire il file blp interessato in un file png nella stessa directory, usando il BLPConverter fornito.AoWoW darà priorità ai file png rispetto ai file blp.

Q: Come posso far funzionare il modelviewer?
A: Non puoi più. Wowhead è passato da Flash a WebGL (come dovrebbero) e ha spostato o cancellato i vecchi file nel processo.

Q: Sto ricevendo errori javascript casuali!
A: Alcune configurazioni di server o servizi esterni (come Cloudflare) sono dotati di moduli che minificano automaticamente i file js e css. A volte si rompono nel processo. Disabilita il modulo in questo caso.

Q: Alcuni risultati di ricerca nel profiler si comportano in modo strano. Come funziona?
A: Ogni volta che cerchi di visualizzare un nuovo carattere, AoWoW deve prima recuperarlo. Poiché i dati sono strutturati per le esigenze di TrinityCore e non per una facile visualizzazione, AoWoW deve salvarli e ristrutturarli localmente. A questo scopo, ogni richiesta di char viene messa in una coda. Mentre la coda non è vuota, una singola istanza di prQueue viene eseguita in background per non sommergere il database dei personaggi con richieste. Questo significa anche che alcune query di ricerca più esotiche non possono essere eseguite di nuovo sul database dei personaggi e devono usare i profili incompleti/ non aggiornati della cache di AoWoW.

Grazie

@mix: per aver fornito lo script php per analizzare .blp e .dbc in immagini e tabelle utilizzabili
@LordJZ: la classe wrapper per DBSimple; l’idea di base per la classe utente
@kliver: implementazione di base del caricamento degli screenshot
@Sarjuuk: maintainer del progetto

Ringraziamenti speciali

Said website con il razzo rosso sorridente, per aver fornito questo bellissimo sito!Per favore non considerate questo progetto come una palese fregatura, piuttosto come “Ci è piaciuta molto la vostra presentazione, ma dal momento che il tempo e i contenuti progrediscono, purtroppo non state più fornendo i dati di cui abbiamo bisogno”.

utilizza i badge