¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Afiliados
Estadísticas
Tenemos 3396 miembros registrados.
El último usuario registrado es Discorded.

Nuestros miembros han publicado un total de 79808 mensajes en 11257 argumentos.
Navega con Google Chrome
[DESCARGA]

Corrector Ortográfico

 :: RPG Maker :: Scripts

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP Corrector Ortográfico

Mensaje por Wecoc el 2011-04-23, 20:14

Este script lo que hace es corregir las faltas de tu juego, cosa que recomiendo a mas de uno ¬¬ (bueno yo también suelto alguna de vez en cuando xD)

Las instrucciones vienen en el script.
Autor: Zeus81

Código:
#=================================
# Corrector de Ortografía
# Script creado por Zeus81
#=================================
#
#
# ¿Cómo funciona?
#
# En primer lugar, se usa con Llamar Script: $scene = Scene_Scan2.new
# A continuación haz Analizar los mensajes.
# El script va a crear un archivo de texto donde estarán todos los mensajes
# utilizados en el juego.
# Hay dos formas de corregir las faltas de ortografía de tu juego.
#
# 1er método (manual):
# Detectar las faltas con un programa informático (Word por ejemplo).
# Luego se lee el resultado para saber el contenido del mensaje para implantarlo
# en el juego.
# Ejemplo de una línea:
# 0/012/037/003/072/0: Hay un error.
# El código se lee de la siguiente manera:
# - La primera cifra indica el tipo de evento:
# 0 -> Evento de un mapa
# 1 -> Evento común
# 2 -> Evento de combate
# - Las tres cifras siguientes indican la ID del mapa (entre 001 y 999).
# Si es un evento común o de combate es 000.
# - Las tres cifras siguientes indican la ID del evento.
# - Las tres cifras siguientes indican la página del evento (menos uno).
# - Las cifras siguientes indican la línea en los comandos de evento (menos uno).
# - La última cifra indica el tipo de mensaje:
# 0 -> Visualización de mensaje
# 1 -> Primera elección (en Mensaje de Elección)
# 2 -> Segunda elección (en Mensaje de Elección)
# 3 -> Tercera elección (en Mensaje de Elección)
# 4 -> Cuarta elección (en Mensaje de Elección)
# Ejemplo:
# Tipo de evento: 0 -> Evento de Mapa
# ID del mapa: 012 -> Mapa n°12
# ID del evento: 037 -> Evento n°37
# Página: 003 -> Página n°4
# Línea: 072 -> Línea n°73
# Tipo de mensaje: 0 -> Visualización de mensaje
#
# 2° método (automático):
# Corrige las faltas en el fichero con un programa informático.
# Guarda el fichero corregido con codificación Unicode UTF-8 y llámalo "Messages OK.txt".
# La codificación UTF-8 es la usada por RPG Maker, y estamos obligados a respetarla.
# Cierra RPG Maker para que no interfiera en las modificaciones.
# Abre de nuevo tu juego desde Game.exe
# Re-ejecuta el script, pero esta vez haces corregir los mensajes.
# El script reemplazará los mensajes erróneos del juego por los mensajes corregidos
# situados en el archivo "Messages OK.txt".


class Window_Scan2 < Window_Selectable


def initialize
super(0, 0, 640, 480)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
@item_max = 5
@index = 0
refresh
end

def refresh
self.contents.clear
self.contents.fill_rect(0, 48, 608, 1, normal_color)
self.contents.fill_rect(0, 400, 608, 1, normal_color)
self.contents.fill_rect(304, 64, 1, 320, normal_color)
self.contents.fill_rect(404-50, 240, 200, 1, normal_color)

self.contents.font.size = 28
self.contents.font.color = knockout_color
self.contents.draw_text(0, 0, 608, 48, "Corrector Ortográfico", 1)

self.contents.font.size = 20
self.contents.font.color = normal_color
self.contents.draw_text(0, 64, 300, 24, "Paso a paso", 1)
self.contents.draw_text(432-50, 128, 176, 32, "Eventos de mapa")
self.contents.draw_text(432-50, 160, 176, 32, "Eventos comunes")
self.contents.draw_text(432-50, 192, 176, 32, "Eventos de combate")
self.contents.draw_text(400-50, 256, 208, 32, "Analizar los mensajes", 1)
self.contents.draw_text(400-50, 288, 208, 32, "Corregir los mensajes", 1)

self.contents.font.size = 18
self.contents.draw_text(0, 88, 300, 24, "- Seleccionar los eventos a analizar")
self.contents.draw_text(0, 112, 300, 24, "- Analizar los mensajes")
self.contents.draw_text(0, 136, 300, 24, "- Corregir las faltas de ortografía")
self.contents.draw_text(0, 160, 300, 24, " con ayuda de un programa de tratamiento de texto")
self.contents.draw_text(0, 184, 300, 24, "- Guardar el archivo corregido en formato Unicode")
self.contents.draw_text(0, 208, 300, 24, " 'UTF-8' y con el nombre 'Messages OK.txt'.")
self.contents.draw_text(0, 232, 300, 24, " Para guardarlo correctamente:")
self.contents.draw_text(0, 256, 300, 24, " 'Guardar como' 'Formato *.txt' 'Codificación UTF-8'")
self.contents.draw_text(0, 280, 300, 24, " (Por ejemplo en el mismo Bloc de Notas)")
self.contents.draw_text(0, 304, 300, 24, "- Cerrar RPG Maker e iniciar el juego desde 'Game.exe'")
self.contents.draw_text(0, 328, 300, 24, "- Hacer corregir los mensajes")
self.contents.draw_text(0, 352, 300, 24, "- Se acabó")

draw_states
end

def draw_states
draw_state(408-50, 128, $scene.map_events_scan)
draw_state(408-50, 160, $scene.common_events_scan)
draw_state(408-50, 192, $scene.battle_events_scan)
end

def draw_state(x, y, state)
if state == true
color = Color.new(255, 0, 0)
else
color = Color.new(128, 128, 128)
end
self.contents.fill_rect(x+3, y+11, 10, 10, Color.new(29, 82, 129))
self.contents.fill_rect(x+4, y+12, 8, 8, Color.new(255, 255, 255))
self.contents.fill_rect(x+5, y+13, 6, 6, color)
end

def update_cursor_rect
y = @index*32 + 128
y += 32 if @index > 2
self.cursor_rect.set(400-50, y, 208, 32)
end

end


class Scene_Scan2


attr_reader :map_events_scan
attr_reader :common_events_scan
attr_reader :battle_events_scan


def initialize
GC.disable
Thread.new do
loop do
Graphics.update
sleep(1)
end
end
$data_system = load_data("Data/System.rxdata")
$game_system = Game_System.new
@map_events_scan = true
@common_events_scan = true
@battle_events_scan = true
end


def main
@scan_window = Window_Scan2.new
Graphics.transition
loop do
update
Graphics.update
Input.update
end
end


def update
@scan_window.update
if Input.trigger?(Input::C)
$game_system.se_play($data_system.decision_se)
case @scan_window.index
when 0
@map_events_scan = !@map_events_scan
when 1
@common_events_scan = !@common_events_scan
when 2
@battle_events_scan = !@battle_events_scan
when 3
start_scan
when 4
start_correction
end
@scan_window.draw_states
end
end


def read_data
@data_common_events = load_data("Data/CommonEvents.rxdata")
@data_troops = load_data("Data/Troops.rxdata")
@data_maps = []
for map_id in 1..999
filename = sprintf("Data/Map%03d.rxdata", map_id)
next if FileTest.exist?(filename) == false
@data_maps[map_id] = load_data(filename)
end
end


def save_corrected_data
for map_id in 1..999
next if @data_maps[map_id] == nil
save_data(@data_maps[map_id], sprintf("Data/Map%03d.rxdata", map_id))
end
save_data(@data_common_events, "Data/CommonEvents.rxdata")
save_data(@data_troops, "Data/Troops.rxdata")
end


def start_scan
read_data
@messages = []
@messages[0] = "\357\273\277Este archivo ha sido guardado con codificación Unicode UTF-8.\n"
@messages[1] = "Si ves caracteres extraños en vez de acentos, tu procesador de textos no lee esta codificación.\n"
@messages[2] = "Para convertir el archivo a código estándar ábrelo con Bloc de Notas y opera: \"Guardar como\" con Codificación ANSI\n"
@messages[3] = "El fichero final corregido deberá estar guardado con codificación Unicode UTF-8.\n"
@messages[4] = "Ese archivo deberá llamarse obligatoriamente \"Messages OK.txt\".\n"
@messages[5] = "No modifiques el código al comienzo de cada línea.\n"
@messages[6] = "No añadas ninguna línea\n"
@messages[7] = "No borres ninguna línea.\n\n"
check_maps if @map_events_scan == true
check_common_events if @common_events_scan == true
check_battle_events if @battle_events_scan == true
file = File.open("Messages.txt", "w")
file.write(@messages.to_s)
file.close
print(" ¡El análisis ha concluido!\n",
" El resultado se encuentra en el archivo\n",
"\"Messages.txt\" en la carpeta de tu juego.")
end

def check_maps
for map_id in 1..999
next if @data_maps[map_id] == nil
for event_id in @data_maps[map_id].events.keys.sort
for page_id in 0...@data_maps[map_id].events[event_id].pages.size
for list_id in 0...@data_maps[map_id].events[event_id].pages[page_id].list.size
name = sprintf("%01d/%03d/%03d/%03d/%03d/", 0, map_id, event_id, page_id, list_id)
check_event_command(@data_maps[map_id].events[event_id].pages[page_id].list[list_id], name)
end
end
end
end
end

def check_common_events
for event_id in 1...@data_common_events.size
for list_id in 0...@data_common_events[event_id].list.size
name = sprintf("%01d/%03d/%03d/%03d/%03d/", 1, 0, event_id, 0, list_id)
check_event_command(@data_common_events[event_id].list[list_id], name)
end
end
end

def check_battle_events
for event_id in 1...@data_troops.size
for page_id in 0...@data_troops[event_id].pages.size
for list_id in 0...@data_troops[event_id].pages[page_id].list.size
name = sprintf("%01d/%03d/%03d/%03d/%03d/", 2, 0, event_id, page_id, list_id)
check_event_command(@data_troops[event_id].pages[page_id].list[list_id], name)
end
end
end
end

def check_event_command(event, name)
if event.code == 101 or event.code == 401
@messages.push(name+"0 : "+event.parameters[0]+"\n")
elsif event.code == 102
for i in 0...event.parameters[0].size
@messages.push(name+(i+1).to_s+" : "+event.parameters[0][i]+"\n")
end
end
end


def start_correction
if FileTest.exist?("Messages OK.txt") == false
print("No se encuentra el archivo \"Messages OK.txt\"\n",
"La correccion no se pudo efectuar.")
return
end
if $DEBUG == true
print("Para corregir tu proyecto debes cerrarlo")
return
end
file = File.open("Messages OK.txt", "r")
@messages = file.readlines
file.close
if @messages[0][0, 3] != "\357\273\277"
print("El archivo \"Messages OK.txt\" no está guardado en codificación Unicode \"UTF-8\".")
return
end
read_data
if correction_scan == false
print("La corrección automática se ha anulado.")
return
else
save_corrected_data
print("La corrección automática ha terminado.")
end
end

def correction_scan
for i in 8...@messages.size
next if @messages[i][0, 1] == "\n"
type = @messages[i][0, 1].to_i
map_id = @messages[i][2, 3].to_i
event_id = @messages[i][6, 3].to_i
page_id = @messages[i][10, 3].to_i
j = 3
6.times do
break if @messages[i][14+j, 1] == " "
j += 1
end
list_id = @messages[i][14, j].to_i
message_type = @messages[i][13+j, 1].to_i
erreur = false
erreur |= (type > 2)
erreur |= (@messages[i][1, 1] != "/")
erreur |= (@messages[i][5, 1] != "/")
erreur |= (@messages[i][9, 1] != "/")
erreur |= (@messages[i][13, 1] != "/")
erreur |= (@messages[i][12+j, 1] != "/")
erreur |= (@messages[i][14+j, 3] != " : ")
if erreur == true
print("El código de una línea ha sido modificado.")
return false
end
@messages[i][0, 17+j] = ""
@messages[i][-1, 1] = ""
case type
when 0
event = @data_maps[map_id].events[event_id].pages[page_id].list[list_id]
when 1
event = @data_common_events[event_id].list[list_id]
when 2
event = @data_troops[event_id].pages[page_id].list[list_id]
end
if message_type == 0 and (event.code == 101 or event.code == 401)
event.parameters[0] = @messages[i]
elsif message_type > 0 and message_type < 5 and event.code == 102
event.parameters[0][message_type-1] = @messages[i]
else
print("Se ha añadido una línea.")
return false
end
end
return true
end

end

Funciona exportándolo todo a un .txt
Es bastante sencillo de utilizar Warrior

Wecoc
Administrador
Administrador



Créditos 8272

Gracias : 372

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por orochii el 2011-04-23, 21:37

Increíble. Reemplaza también los mensajes. Las funciones son completamente útiles. Quiero probarlo =DDD.

Es una muy buena utilidad, excelentísimo aporte, y muchas congratulaciones a Zeus81 =D,
Orochii Zouveleki

orochii
Caballero Shiro
Caballero Shiro

0/3

Créditos 6045

Gracias : 266

http://drekirokr.weebly.com/

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por ljury el 2011-04-23, 21:40

Wecoc, te falto mencionar que este script, lo que hace es tomar los mensajes, exportarlos a un .txt y luego darle al usuario la posibilidad de revisar las faltas de ortografias con programas como word de office, open office, libre office, o cualquier otro programa con corrector ortografico, o incluso permitir una lectura mas facil para que el mismo usuario busque faltas ortograficas.

notese, que seguir las faltas que el word u otros programas dicen no siempre es positivo, hay palabras que se pueden escribir de diferentes formas como "papa y papá", ambas están bien escritas, pero según el contexto estará bien o mal escrito (y obviamente los programas con correctores ortográficos no notan esto (que yo sepa) )

por lo mismo, siempre el mejor método para evitar las faltas ortográficas es aprender a escribir bien ( seria genial si un makero hiciera un texto que nos enseñe a escribir bien a los que tenemos una ortografía como las bolainas )

también, había un programa que trabajaba de forma independiente al maker y realizaba algo parecido. me comentaron una ves que trabajaba mal, esperemos que este script no cometa fallas, ya que a muchos nos sera de utilidad.

recuerde que deben editar el mismo .txt que les deja el mensaje y no cambiar la extensión (si usan word, guardarlo como.txt y no con otro formato... )

ljury
Soñador
Soñador

0/3

Créditos 226

Gracias : 6

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por Wecoc el 2011-04-23, 22:37

La explicación de lo que has dicho (lo del funcionamiento) está en el mismo script, pero sí, hace eso.

Evidentemente hay faltas como Ola/Hola, Ahí/Hay, A ver/Haber que aunque pongas corrector poco te solucionará, pero al menos sirve para todas las demás.
gcool

Wecoc
Administrador
Administrador



Créditos 8272

Gracias : 372

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por orochii el 2011-04-23, 22:46

La diferencia es que la estructura de los datos del RPG Maker es un poco más accesible. Se está usando el scripting que es quien se encarga de sacar el texto de cualquier modo en los mensajes, por lo que al menos a mi parecer es un poco más fiable que tener que lidiar con un lua encriptado (no sé si te refieres al Dreamaker, creo era así como se llamaba).
En tal caso, CREO que si podría funcionar bien. Igual, supongo tendrá un funcionamiento parecido al del extractor de textos del Pokemon Essentials, del cual creo no han habido quejas, al menos a lo que me he enterado claro está.

En eso es en donde le veo un buen futuro a éste sistema, tienes razón en la confiabilidad del Word, pero al menos en ésta manera será más sencillo que los usuarios evalúen el texto, si tener que pasarlo manualmente. Es un acercamiento por lo menos a una solución más ideal.

Eso es lo que creo, salut,
Orochii Zouveleki

orochii
Caballero Shiro
Caballero Shiro

0/3

Créditos 6045

Gracias : 266

http://drekirokr.weebly.com/

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por Invark el 2011-04-23, 23:18

Pensé que era todo automático ): XD
Justo ahora estoy batallando con la escritura, hace un año mi ortografía era horrible, y ahora que leo lo que tenía, dan ganas de morir x.x

Invark
Soñador
Soñador

0/3

Créditos 137

Gracias : 2

http://balicattown.es.tl/

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por Zando el 2011-04-24, 00:19

ljury escribió:

notese, que seguir las faltas que el word u otros programas dicen no siempre es positivo, hay palabras que se pueden escribir de diferentes formas como "papa y papá", ambas están bien escritas, pero según el contexto estará bien o mal escrito (y obviamente los programas con correctores ortográficos no notan esto (que yo sepa) )
comentaron una ves que trabajaba mal, esperemos que este script no cometa fallas, ya que a muchos nos sera de utilidad.


Tienes toda la razón, eso es muy común con los correctores ortograficos de los programas de edición de texto.

Afortunadamente Zokark me mostró un corrector ortografico bastante bueno http://stilus.daedalus.es/stilus-es.php creo que le será util a más de un makero, a mi me ha sido bastante, debido a que te menciona donde están los errores y de qué índole son, y pillando aquellos errores contextuales como "papá" y "papa", "tubo" y "tuvo", etc...

Es una exelente página y a proposito del topic creo viene de perillas para complementar este script publicado por wecoc.

Saludos

Zando
Veterano
Veterano

0/3

Créditos 2957

Gracias : 9

http://historiasdeunaedo.blogspot.com

Volver arriba Ir abajo

RPG Maker XP Re: Corrector Ortográfico

Mensaje por Contenido patrocinado Hoy a las 06:57


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 :: RPG Maker :: Scripts

Permisos de este foro:
No puedes responder a temas en este foro.