Sarjuuk / aowow

logo

Byggstatus

fuck it ship it

Introduktion

AoWoW är ett databasverktyg för World of Warcraft v3.3.5 (build 12340)Det är baserat på det andra kända databasverktyget för WoW, med den röda leende raketen.Medan de första utgåvorna kan hittas så tidigt som 2008, är det idag omöjligt att säga vem som skapade detta projekt.Detta är en komplett omskrivning av den serverbaserade php-koden och en uppdatering av de klientbaserade javaskripten från 2008 till något i stil med 2013.

Jag själv tar inte åt mig äran för klientsidans skript, design och layout som dessa php-skripter tillgodoser.Detta projekt är inte heller tänkt att användas för kommersiella puposer av något slag!

Krav

  • Webserver som kör PHP ≥ 7.1 inklusive tillägg:
    • SimpleXML
    • GD
    • MySQL Improved
    • Multibyte String
    • File Information
    • GNU Multiple Precision (När du använder TrinityCore som auth-källa)
  • MySQL ≥ 5.5.30
  • TDB 335.21021
  • Verktyg kräver cmake: Se de enskilda förråden för detaljerad information
    • MPQExtractor / FFmpeg / (valfritt: BLPConverter)
    • WIN-användare kan tycka att det är lättare att använda dessa alternativ
      • MPQEditor / FFmpeg / (valfritt: BLPConverter): BLPConverter)

ljudbehandling kan kräva lame eller vorbis-tools (som kan kräva libvorbis (som kan kräva libogg))

Kraftigt rekommenderat

  • inställning av följande konfigurationsvärden på din TrinityCore-server kommer att öka noggrannheten av spawn-punkter

    Beräkna.Creature.Zone.Area.Data = 1
    Calculate.Gameoject.Zone.Area.Data = 1

Installera

1. Skaffa de nödvändiga förråden

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

2. Förbered databasen

Säkerställ att kontot du ska använda har full åtkomst till den databas som AoWoW ska använda och helst bara läsbehörighet till den världsdatabas som du ska referera till.
Importera setup/db_structure.sql till AoWoW-databasen mysql -p {your-db-here} < setup/db_structure.sql

3. Serverskapade filer

Säkerställ att webbservern har möjlighet att skriva följande kataloger och deras barn. Om de saknas kommer installationen att skapa dem med lämpliga behörigheter

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

4. Extrahera klientarkiven (MPQ:

Extrahera följande kataloger från klientarkiven till setup/mpqdata/, med bibehållen patchordning (base mpq -> patch-mpq: 1 -> 9 -> A -> Z). De nödvändiga sökvägarna är utspridda i arkiven. Skriv över äldre filer om du blir ombedd att göra det.
… för varje lokal som du ska använda:

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

… en gång räcker (men du tillämpar fortfarande 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/

.. valfritt (används inte i AoWoW):

<localeCode>/Interface/GLUES/LOADINGSCREENS/

5. Omkodning av ljudfiler

WAV-filer måste omkodas som ogg/vorbis och vissa MP3-filer kan identifiera sig som application/octet-stream i stället för audio/mpeg.

  • exempel för WIN
  • exempel för *nix

6. Kör den första installationen från CLI

php aowow --setup.
Detta bör vägleda dig med minimal input från din sida, men det kommer att ta lite tid, särskilt när det gäller kompileringen av zonbilderna. Använd den för att bekanta dig med de andra funktionerna som den här inställningen har. Ja, jag menar allvar: Gå och läs koden! Den hjälper dig att förstå hur du konfigurerar AoWoW och håller den synkroniserad med din världsdatabas.
När du har skapat ditt administratörskonto är du klar.

Felsökning

Q: Sidan visas vit, utan några stilar.
A: Det statiska innehållet visas inte. Antingen använder du SSL och AoWoW kan inte upptäcka det eller så är STATIC_HOST inte definierat poperligt. I vilket fall som helst kan detta åtgärdas via config php aowow --siteconfig

Q: Fatal error: Kan inte ärva abstrakt funktion <functionName> (tidigare deklarerad abstrakt i <className>) i <path>
A: Du använder cacheoptimeringsmoduler för php som står i konflikt med varandra. (Zend OPcache, XCache, …) Inaktivera alla utom en.

Q: Vissa genererade bilder ser förvrängda ut eller har problem med alfakanaler.
A: Bildkomprimering är bortom min förståelse, så jag kan inte åtgärda dessa problem i blpReader.MEN du kan konvertera den berörda blp-filen till en png-fil i samma katalog med hjälp av den medföljande BLPConvertern.AoWoW kommer att prioritera png-filer framför blp-filer.

Q: Hur kan jag få modellvisaren att fungera?
A: Det kan du inte längre. Wowhead bytte från Flash till WebGL (som de borde) och flyttade eller raderade de gamla filerna i processen.

Q: Jag får slumpmässiga javascriptfel!
A: Vissa serverkonfigurationer eller externa tjänster (som Cloudflare) kommer med moduler som automatiskt minimerar js och css-filer. Ibland går de sönder i processen. Inaktivera modulen i det här fallet.

Q: Vissa sökresultat i profileraren fungerar ganska konstigt. Hur fungerar det?
A: När du försöker visa ett nytt tecken måste AoWoW hämta det först. Eftersom datan är strukturerad för TrinityCores behov och inte för enkel visning måste AoWoW spara och omstrukturera den lokalt. För detta ändamål placeras varje char-förfrågan i en kö. Medan kön inte är tom körs en enda instans av prQueue i bakgrunden för att inte överväldiga teckendatabasen med förfrågningar. Detta innebär också att vissa mer exotiska sökfrågor inte kan köras i karaktärsdatabasen utan måste använda de ofullständiga/föråldrade cachade profilerna i AoWoW.

Tack

@mix: för att ha tillhandahållit php-scriptet för att analysera .blp och .dbc till användbara bilder och tabeller
@LordJZ: wrapper-klassen för DBSimple; grundidén för användarklassen
@kliver: grundläggande implementering av uppladdning av skärmdumpar
@Sarjuuk: projektets underhållare

Särskilt tack

Den nämnda webbplatsen med den röda, leende raketen, för att ha tillhandahållit denna vackra webbplats!Betrakta inte detta projekt som ett uppenbart bedrägeri, utan snarare som ”Vi gillade verkligen er presentation, men eftersom tiden och innehållet går framåt, tillhandahåller ni tyvärr inte längre de uppgifter vi behöver”.

använder märken