| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- """Configuración centralizada para el patcher avanzado"""
- # Configuración del proceso objetivo
- TARGET_PROCESS = {
- 'name': "PEAK.exe"
- }
- # Configuración de búsqueda de memoria
- MEMORY_SEARCH_CONFIG = {
- 'chunk_size': 0x20000, # 128KB chunks
- 'overlap': 256, # Overlap para patrones en bordes
- 'max_address': 0x7FFFFFFFFFFFFFFF # Espacio de direcciones de 64-bit
- }
- # Configuración de volcado hexadecimal
- HEX_DUMP_CONFIG = {
- 'bytes_per_line': 16,
- 'address_width': 8
- }
- # Configuración de backup
- BACKUP_CONFIG = {
- 'enabled': False,
- 'filename_format': "backup_0x{address:X}_{timestamp}.bin"
- }
- # Configuración de parches
- PATCH_CONFIG = {
- 'stamina': {
- 'description': "Parche de stamina infinita - establece el stamina siempre a 100%",
- 'instructions': [
- 0x75, 0x16, # jne (salto original)
- 0xB8, 0x00, 0x00, 0x80, 0x3F, # mov eax, 0x3F800000 (1.0f)
- 0x66, 0x0F, 0x6E, 0xE8, # movd xmm5, eax
- 0x90, 0x90, 0x90, 0x90, 0x90, # nop padding
- 0xF3, 0x0F, 0x11, 0xAE, 0x94, 0x01, 0x00, 0x00 # movss [rsi+18C],xmm5
- ]
- },
- 'speed': {
- 'description': "Parche de velocidad de movimiento - modifica la velocidad del jugador",
- 'original_pattern': [0xE0, 0x67, 0x03, 0x36, 0x7B, 0x02, 0x00, 0x00, 0x00, 0x00, 0xC8, 0x41, 0x00, 0x00, 0x80, 0x3F],
- 'speed_multipliers': {
- '1x': [0xE0, 0x67, 0x03, 0x36, 0x7B, 0x02, 0x00, 0x00, 0x00, 0x00, 0xC8, 0x41, 0x00, 0x00, 0x80, 0x3F], # Velocidad normal
- '2x': [0xE0, 0x67, 0x03, 0x36, 0x7B, 0x02, 0x00, 0x00, 0x00, 0x00, 0x48, 0x42, 0x00, 0x00, 0x80, 0x3F], # Doble velocidad
- '3x': [0xE0, 0x67, 0x03, 0x36, 0x7B, 0x02, 0x00, 0x00, 0x00, 0x00, 0x96, 0x42, 0x00, 0x00, 0x80, 0x3F], # Triple velocidad
- '0.5x': [0xE0, 0x67, 0x03, 0x36, 0x7B, 0x02, 0x00, 0x00, 0x00, 0x00, 0x40, 0x41, 0x00, 0x00, 0x80, 0x3F] # Media velocidad
- }
- }
- }
- # Mensajes de la interfaz de usuario
- UI_MESSAGES = {
- 'banner': {
- 'title': "🎮 === Patcher Avanzado para PEAK.exe ===",
- 'description': "Este programa modifica la memoria para stamina infinita y velocidad de movimiento",
- 'warning': "⚠️ ADVERTENCIA: Usa bajo tu propia responsabilidad",
- 'admin_note': "📝 Asegúrate de ejecutar como administrador"
- },
- 'success': {
- 'process_opened': "✅ Proceso {process_name} abierto exitosamente (PID: {pid})",
- 'patch_applied': "✅ ¡Parche aplicado exitosamente!",
- 'verification_successful': "✅ Verificación exitosa: El parche se aplicó correctamente",
- 'backup_saved': "💾 Copia de seguridad guardada en: {filename}",
- 'patching_completed': "\n🎉 ¡Patcheo completado exitosamente!",
- 'stamina_maintained': "💪 El stamina ahora debería mantenerse al 100%",
- 'speed_modified': "🏃 La velocidad de movimiento ha sido modificada"
- },
- 'error': {
- 'process_not_found': "❌ No se pudo encontrar el proceso {process_name}",
- 'process_not_opened': "❌ No se pudo abrir el proceso {process_name}",
- 'no_patterns_found': "❌ No se encontraron patrones",
- 'memory_read_failed': "❌ No se pudo leer la memoria original",
- 'patch_failed': "❌ Error al aplicar el patch",
- 'verification_failed': "❌ Error en la verificación - El patch no se aplicó correctamente",
- 'operation_cancelled': "❌ Operación cancelada por el usuario",
- 'patching_failed': "\n❌ El patcheo falló",
- 'patching_error': "\n💥 Error durante el patcheo: {error}",
- 'user_interrupted': "\n\n⏹️ Operación interrumpida por el usuario",
- 'unexpected_error': "\n💥 Error inesperado: {error}"
- },
- 'info': {
- 'searching_patterns': "🔍 Buscando patrones en {region_count} regiones de memoria...",
- 'pattern_found': " ✅ {pattern_name} encontrado en: 0x{address:X}",
- 'using_address': "\n🎯 Usando dirección: 0x{address:X}",
- 'searching_stamina': "\n🔍 Buscando patrones de stamina...",
- 'searching_speed': "\n🔍 Buscando patrones de velocidad...",
- 'original_code': "\n📖 Código original:",
- 'patch_to_apply': "\n🔧 Patch a aplicar:",
- 'applying_patch': "\n✍️ Aplicando patch...",
- 'starting_patch_process': "\n🎮 Iniciando proceso de patcheo...",
- 'goodbye': "\n👋 ¡Hasta luego!"
- }
- }
- # Configuración de logging (para futuras mejoras)
- LOGGING_CONFIG = {
- 'enabled': False,
- 'level': 'INFO',
- 'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s',
- 'filename': 'patcher.log'
- }
|