config.py 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. """Configuración centralizada para el patcher avanzado"""
  2. # Configuración del proceso objetivo
  3. TARGET_PROCESS = {
  4. 'name': "PEAK.exe"
  5. }
  6. # Configuración de búsqueda de memoria
  7. MEMORY_SEARCH_CONFIG = {
  8. 'chunk_size': 0x20000, # 128KB chunks
  9. 'overlap': 256, # Overlap para patrones en bordes
  10. 'max_address': 0x7FFFFFFFFFFFFFFF # Espacio de direcciones de 64-bit
  11. }
  12. # Configuración de volcado hexadecimal
  13. HEX_DUMP_CONFIG = {
  14. 'bytes_per_line': 16,
  15. 'address_width': 8
  16. }
  17. # Configuración de backup
  18. BACKUP_CONFIG = {
  19. 'enabled': False,
  20. 'filename_format': "backup_0x{address:X}_{timestamp}.bin"
  21. }
  22. # Configuración de parches
  23. PATCH_CONFIG = {
  24. 'stamina': {
  25. 'description': "Parche de stamina infinita - establece el stamina siempre a 100%",
  26. 'instructions': [
  27. 0x75, 0x16, # jne (salto original)
  28. 0xB8, 0x00, 0x00, 0x80, 0x3F, # mov eax, 0x3F800000 (1.0f)
  29. 0x66, 0x0F, 0x6E, 0xE8, # movd xmm5, eax
  30. 0x90, 0x90, 0x90, 0x90, 0x90, # nop padding
  31. 0xF3, 0x0F, 0x11, 0xAE, 0x8C, 0x01, 0x00, 0x00 # movss [rsi+18C],xmm5
  32. ]
  33. }
  34. }
  35. # Mensajes de la interfaz de usuario
  36. UI_MESSAGES = {
  37. 'banner': {
  38. 'title': "🎮 === Patcher Avanzado de Stamina para PEAK.exe ===",
  39. 'description': "Este programa modifica la memoria para que el stamina siempre sea 100%",
  40. 'warning': "⚠️ ADVERTENCIA: Usa bajo tu propia responsabilidad",
  41. 'admin_note': "📝 Asegúrate de ejecutar como administrador"
  42. },
  43. 'success': {
  44. 'process_opened': "✅ Proceso {process_name} abierto exitosamente (PID: {pid})",
  45. 'patch_applied': "✅ ¡Parche aplicado exitosamente!",
  46. 'verification_successful': "✅ Verificación exitosa: El parche se aplicó correctamente",
  47. 'backup_saved': "💾 Copia de seguridad guardada en: {filename}",
  48. 'patching_completed': "\n🎉 ¡Patcheo completado exitosamente!",
  49. 'stamina_maintained': "💪 El stamina ahora debería mantenerse al 100%"
  50. },
  51. 'error': {
  52. 'process_not_found': "❌ No se pudo encontrar el proceso {process_name}",
  53. 'process_not_opened': "❌ No se pudo abrir el proceso {process_name}",
  54. 'no_patterns_found': "❌ No se encontraron patrones de stamina",
  55. 'memory_read_failed': "❌ No se pudo leer la memoria original",
  56. 'patch_failed': "❌ Error al aplicar el patch",
  57. 'verification_failed': "❌ Error en la verificación - El patch no se aplicó correctamente",
  58. 'operation_cancelled': "❌ Operación cancelada por el usuario",
  59. 'patching_failed': "\n❌ El patcheo falló",
  60. 'patching_error': "\n💥 Error durante el patcheo: {error}",
  61. 'user_interrupted': "\n\n⏹️ Operación interrumpida por el usuario",
  62. 'unexpected_error': "\n💥 Error inesperado: {error}"
  63. },
  64. 'info': {
  65. 'searching_patterns': "🔍 Buscando patrones en {region_count} regiones de memoria...",
  66. 'pattern_found': " ✅ {pattern_name} encontrado en: 0x{address:X}",
  67. 'using_address': "\n🎯 Usando dirección: 0x{address:X}",
  68. 'searching_stamina': "\n🔍 Buscando patrones de stamina...",
  69. 'original_code': "\n📖 Código original:",
  70. 'patch_to_apply': "\n🔧 Patch a aplicar:",
  71. 'applying_patch': "\n✍️ Aplicando patch...",
  72. 'starting_patch_process': "\n🎮 Iniciando proceso de patcheo...",
  73. 'goodbye': "\n👋 ¡Hasta luego!"
  74. }
  75. }
  76. # Configuración de logging (para futuras mejoras)
  77. LOGGING_CONFIG = {
  78. 'enabled': False,
  79. 'level': 'INFO',
  80. 'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s',
  81. 'filename': 'patcher.log'
  82. }