Distingue WoW Classic en la etiqueta de expansión

3.4.3 (54261) es WotLK Classic, no el WotLK retail/clásico (3.3.5a=12340). La
etiqueta ahora diferencia: 12340->'WotLK', 3.4.x->'WotLK Classic',
15595->'Cataclysm', 4.4.x->'Cataclysm Classic'. Nova WoW -> 'WotLK Classic'.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-12 20:35:26 +00:00
parent 3be9a30dcc
commit b8cd6bac0c
+13 -7
View File
@@ -5,18 +5,24 @@ from django_ckeditor_5.fields import CKEditor5Field
def expansion_from_gamebuild(gamebuild):
"""Etiqueta de expansión a partir del build del cliente.
Reconoce tanto los clientes retail antiguos (3.3.5a=12340, 4.3.4=15595) como
los de WoW Classic: WotLK Classic 3.4.x (~4483251536) y Cataclysm Classic
4.4.x (~54332+). Nova WoW corre 3.4.3 (WotLK Classic), luego debe dar 'WotLK'.
Distingue el retail antiguo del relanzamiento WoW Classic:
- 12340 -> 'WotLK' (3.3.5a, retail/privado clásico)
- 44832..54261 -> 'WotLK Classic' (3.4.x; 3.4.3 = 54261)
- 15595 -> 'Cataclysm' (4.3.4 retail)
- 54332..60000 -> 'Cataclysm Classic' (4.4.x)
WotLK Classic llega a 3.4.3=54261 y Cataclysm Classic empieza en 4.4.0=54332,
están muy pegados: de ahí el corte en 54261. Nova WoW corre 3.4.3 -> WotLK Classic.
"""
# WotLK Classic llega hasta 3.4.3 (build 54261); Cataclysm Classic empieza
# en 4.4.0 (build 54332) — están muy pegados, de ahí el corte en 54261.
if gamebuild is None:
return 'Unknown'
if gamebuild == 12340 or 44000 <= gamebuild <= 54261:
if gamebuild == 12340:
return 'WotLK'
if gamebuild == 15595 or 54262 <= gamebuild <= 60000:
if 44000 <= gamebuild <= 54261:
return 'WotLK Classic'
if gamebuild == 15595:
return 'Cataclysm'
if 54262 <= gamebuild <= 60000:
return 'Cataclysm Classic'
return 'Unknown'