![]() |
|
Base de Datos WE6FE Database Editor - Versión para impresión +- Foro PES Retro (https://foro.pesretro.net) +-- Foro: Pro Evolution Soccer - Edición General (https://foro.pesretro.net/forum-4.html) +--- Foro: PES para Play Station (https://foro.pesretro.net/forum-51.html) +--- Tema: Base de Datos WE6FE Database Editor (/thread-14141.html) |
WE6FE Database Editor - we11world - 10-25-2026 WE6FE Database Editor Inicio esta Documentacion de Offsets Database para el Juego Winning Eleven 6 Final Evolution (WE6FE). La idea con este proyecto es ir desglosando la Database del juego, aprender un poco mas de el, y crear un Database Editor en Python! Asi, podre avanzar en los otros juegos a los cuales deseo crear editores modernos como: - PES 4 - WE8 - PES 3 - WE7 ... y todos esos juegos Retro antes de PES 6 que estan Olvidados. ![]() Vamos a ver en que termina esta aventura.... [Documentación Técnica] Mapeo de Atributos de Jugadores en WE6FE (PS2) Juego: Winning Eleven 6 Final Evolution (PS2) Archivo Objetivo: SLPM_622.68 Herramientas Utilitarias: - Hex Workshop v4.23 (32-bit), - Python 3.x 1. Mapeo del Offset y Tamaño de Estructura Offset Base: 0x1F24B0 Tamaño por Jugador: 44 bytes (0x2C bytes) Byte Order: Little Endian (Intel) -------------------------------- Estructura Interna del Bloque (44 bytes): Bytes 00 - 01: ID Desconocido / Control interno Byte 02: Ataque (Attack) Byte 03: Defensa (Defence) Byte 04: Balance (Body Balance) Byte 05: Resistencia (Stamina) Byte 06: Velocidad Máxima (Top Speed) Byte 07: Aceleración (Acceleration) Byte 08: Respuesta (Response) Byte 09: Agilidad (Agility) Byte 10: Precisión de Drible (Dribble Accuracy) Byte 11: Velocidad de Drible (Dribble Speed) Byte 12: Precisión Pase Corto (Short Pass Accuracy) Byte 13: Velocidad Pase Corto (Short Pass Speed) Byte 14: Precisión Pase Largo (Long Pass Accuracy) Byte 15: Velocidad Pase Largo (Long Pass Speed) Byte 16: Precisión de Tiro (Shot Accuracy) Byte 17: Potencia de Tiro (Shot Power) Byte 18: Técnica de Tiro (Shot Technique) Byte 19: Saque de Falta / Tiro Libre (Free Kick Accuracy) Byte 20: Efecto / Curva (Curving) Byte 21: Cabezazo (Heading) Byte 22: Salto (Jump) Byte 23: Técnica (Technique) Byte 24: Agresividad (Aggression) Byte 25: Mentalidad (Mentality) Byte 26: Habilidad de Arquero (GK Skills) Byte 27: Trabajo en Equipo (Teamwork) Byte 28: Condición / Regularidad (Condition / Stability) Byte 29: Frecuencia Pie Malo (Weak Foot Frequency) Byte 30: Precisión Pie Malo (Weak Foot Accuracy) Bytes 30 - 43: Espacio reservado / Atributos especiales (14 bytes) 2. Script Lector en Python (we6fe_reader.py) Script funcional en Python para lectura binaria automática directamente desde el ejecutable SLPM_622.68. Codigo: Código: import struct
FILE_PATH = "SLPM_622.68"
BASE_OFFSET = 0x1F24B0
PLAYER_SIZE = 44
NUM_PLAYERS = 10
def leer_base_datos_jugadores():
print(f"Leyendo base de datos de Winning Eleven 6 FE...")
print(f"Archivo: {FILE_PATH} | Offset Base: {hex(BASE_OFFSET)}\n")
try:
with open(FILE_PATH, "rb") as f:
f.seek(BASE_OFFSET)
for i in range(NUM_PLAYERS):
player_bytes = f.read(PLAYER_SIZE)
if len(player_bytes) < PLAYER_SIZE:
break
unpacked = struct.unpack("<30B 14s", player_bytes)
jugador = {
"ataque": unpacked[2],
"defensa": unpacked[3],
"balance": unpacked[4],
"stamina": unpacked[5],
"top_speed": unpacked[6],
"aceleracion": unpacked[7]
}
current_offset = BASE_OFFSET + (i * PLAYER_SIZE)
print(f"--- Jugador #{i} [Offset: {hex(current_offset)}] ---")
print(f" Ataque: {jugador['ataque']} | Defensa: {jugador['defensa']} | Balance: {jugador['balance']}")
print(f" Stamina: {jugador['stamina']} | Velocidad: {jugador['top_speed']} | Aceleración: {jugador['aceleracion']}")
print("-" * 55)
except FileNotFoundError:
print(f"Error: No se encontró el archivo '{FILE_PATH}'.")
if __name__ == "__main__":
leer_base_datos_jugadores()Resumen de estudio de la Database WE6FE: Atributo de Jugadores: ![]() Database Completa: ![]() Atributo de Jugadores: ![]() Programa: Lector de Python ![]() Espero continuar con este desarrollo... Enjoy! |