Sujet: Script Correcteur d'orthographe XP pour Vx svp Lun 14 Juin 2010 - 20:25
Bonjour à tous,
je fais appel à vous car malgré de multiples recherche je n'est pas réussi à trouver mon bonheur .
Un scripteur serait-il en mesure de me faire le script Correcteur orthographique Xp pour Vx svp ?!
se petit script sert à extraire les textes du jeux sur un fichier .TXT ce qui est très utile pour corriger en masse ^^
voici le script en question :
Spoiler:
#================================= # Correcteur d'orthographe # script créé par Zeus81 #================================= # # # Comment ça marche ? # # Tout d'abord il faut le lancer en écrivant dans un script $scene = Scene_Scan2.new # Ensuite vous faites Analyser les messages. # Le script va générer un fichier texte dans lequel seront listés tous les messages utilisés dans le jeu. # Ensuite il y deux façons de corriger les fautes d'orthographes dans votre jeu. # # 1ère méthode (manuelle) : # Vous détectez les fautes avec un logiciel (Word par exemple). # Puis vous lisez le code du début de la ligne pour savoir d'où vient le message et vous allez le corriger directement dans le jeu. # Exemple d'une ligne : # 0/012/037/003/072/0 : J'est mal aux doigt. # Le code se lit de la manière suivante : # - Le premier chiffre indique le type d'évènement : # 0 -> Evènement d'une map # 1 -> Evènement commun # 2 -> Evènement de combat # - Le trois chiffres suivants indiquent l'id de la map (entre 001 et 999). # Si c'est un évènement commun ou de combat il y a 000. # - Le trois chiffres suivants indiquent l'id de l'évènement. # - Le trois chiffres suivants indiquent la page de l'évènement (moins un). # - Le chiffres suivants indiquent la ligne dans les commandes de l'évènement (moins un). # - Le dernier chiffre indique le type du message : # 0 -> Affichage d'un message # 1 -> Premier choix dans une proposition de choix # 2 -> Deuxième choix dans une proposition de choix # 3 -> Troisième choix dans une proposition de choix # 4 -> Quatrième choix dans une proposition de choix # Dans cet exemple on a donc : # type d'évènement : 0 -> Evènement d'une map # id de la map : 012 -> Map n°12 # id de l'évènement : 037 -> Evènement n°37 # page : 003 -> Page n°4 # ligne : 072 -> Ligne n°73 # type du message : 0 -> Affichage d'un message # # 2ème méthode (automatique) : # Vous corrigez les fautes dans le fichier avec votre logiciel. # Vous enregistrez le fichier corrigé avec un codage Unicode UTF-8 en le renommant "Messages OK.txt". # Le codage UTF-8 est le codage utilisé par RPG Maker, on est donc obligé de le respecter. # Vous fermez RPG Maker afin qu'il n'interfère pas dans les modifications. # Vous relancez votre jeu à partir du Game.exe # Vous ré-exécutez le script mais cette fois vous faites Corriger les messages. # Le script va remplacer les messages erronés du jeu par les messages corrigés du fichier "Messages OK.txt".
self.contents.font.size = 20 self.contents.font.color = normal_color self.contents.draw_text(0, 64, 300, 24, "Pas à pas", 1) self.contents.draw_text(432-50, 128, 176, 32, "Evènements des maps") self.contents.draw_text(432-50, 160, 176, 32, "Evènements communs") self.contents.draw_text(432-50, 192, 176, 32, "Evènements des combats") self.contents.draw_text(400-50, 256, 208, 32, "Analyser les messages", 1) self.contents.draw_text(400-50, 288, 208, 32, "Corriger les messages", 1)
self.contents.font.size = 18 self.contents.draw_text(0, 88, 300, 24, "- Sélectionner les évènements à analyser") self.contents.draw_text(0, 112, 300, 24, "- Faire analyser les messages") self.contents.draw_text(0, 136, 300, 24, "- Corriger les fautes d'orthographe") self.contents.draw_text(0, 160, 300, 24, " à l'aide d'un logiciel de traitement de texte") self.contents.draw_text(0, 184, 300, 24, "- Enregistrer le fichier corrigé au format unicode") self.contents.draw_text(0, 208, 300, 24, " 'UTF-8' en le renommant 'Messages OK.txt'.") self.contents.draw_text(0, 232, 300, 24, " Pour enregistrer au bon format faire") self.contents.draw_text(0, 256, 300, 24, " 'Enregistrer sous' 'Format *.txt' 'Codage UTF-8'") self.contents.draw_text(0, 280, 300, 24, " (Ca y est même dans le bloc note)") self.contents.draw_text(0, 304, 300, 24, "- Fermer RPG Maker puis lancer le jeu avec le 'Game.exe'") self.contents.draw_text(0, 328, 300, 24, "- Faire corriger les messages") self.contents.draw_text(0, 352, 300, 24, "- Et c'est fini")
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\277Ce fichier a été enregistré avec un codage Unicode UTF-8.\n" @messages[1] = "Si vous voyez des caractères bizarres à la place des accents, c'est que votre logiciel ne lit pas ce codage.\n" @messages[2] = "Pour convertir le fichier en codage standard ouvrez le avec le bloc note et faites "Enregistrer sous" avec un codage ANSI\n" @messages[3] = "Le fichier corrigé final devra être enregistré avec un codage Unicode UTF-8.\n" @messages[4] = "Ce fichier devra impérativement s'appeler "Messages OK.txt".\n" @messages[5] = "Ne modifiez pas le code au début de chaque ligne.\n" @messages[6] = "Ne rajoutez aucune ligne.\n" @messages[7] = "Ne supprimez pas ces lignes.\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(" L'analyse est terminé !\n", " Le résultat se trouve dans le fichier\n", ""Messages.txt" dans le dossier de votre jeu.") 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("Le fichier "Messages OK.txt" est introuvable !\n", "La correction n'a donc pas pu s'effectuer !!!") return end if $DEBUG == true print("Pour corriger votre projet doit être fermé !") return end file = File.open("Messages OK.txt", "r") @messages = file.readlines file.close if @messages[0][0, 3] != "\357\273\277" print("Le fichier "Messages OK.txt" n'a pas été enregistré en codage Unicode "UTF-8".") return end read_data if correction_scan == false print("La correction automatique a été annulé !") return else save_corrected_data print("La correction automatique est terminée !") 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("Le code d'une ligne a été modifié.") 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("Une ligne a été rajouté.") return false end end return true end
end
en espérant avoir étais assez explicite,
merci d'avance et bon courage !
Zangther
Maître des Duels
Age : 32 Inscrit le : 29/07/2009 Messages : 7841
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 15:02
Je te le dis, vaut mieux corriger direct par RPG maker en prenant tes texte, en collant sur Word plutôt que de t'embêter à utiliser un tel script.
Matsuo Kaito
Age : 33 Inscrit le : 27/06/2008 Messages : 10881
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 15:11
Ou, carrément, se forcer à apprendre les règles d'orthographe de base et juste vérifier les mots plus durs avec google. C'est pas bien compliqué, et tu en retireras beaucoup plus de satisfaction que de ton script, d'autant qu'écrire dans un français correct est plus que nécessaire dans la vie réelle.
Atom-x
Poulet carnivore Lv.2
Inscrit le : 14/09/2009 Messages : 19
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 15:34
bonsoir,
Zangther,
pour un jeux classique j'aurais opté pour cet façon de faire, mais mon jeux est un tantinet spécial et dispose d'énormément de texte, environs 4 fois plus qu'un jeu normale au minimum ^^.
_____________________________
Matsuo Kaito,
merci de m'avoir répondu rapidement, ceci étant dis, ta réponse est loin de se que je demandais, plutôt que de critiquer, tu pourrais au moins faire preuve de bon sens en te disant que tout le monde ne maitrise pas le français.
Soit un tant soi peu constructif !!!, si c'est pour répondre se genre de chose rien ne t'oblige à le faire !
oui je fais des fautes et oui je ne maitrise pas le français écris, c'est pas un choix mais un fait !
donc plutôt que de rentrer dans un débats sans fin, je dirais juste cette phrase :
Tout le monde n'a pas la chance de pouvoir écrire parfaitement français ! ( même en l'apprenant ! ) _____________________________
Pour en revenir à mon sujet de base,
Si un scripteur se sent capable de me modifier se script je lui en serais reconnaissant.
Merci d'avance, bonne soirée.
Matsuo Kaito
Age : 33 Inscrit le : 27/06/2008 Messages : 10881
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 15:53
Citation :
Matsuo Kaito,
merci de m'avoir répondu rapidement, ceci étant dis, ta réponse est loin de se que je demandais, plutôt que de critiquer, tu pourrais au moins faire preuve de bon sens en te disant que tout le monde ne maitrise pas le français.
Je ne critique pas, je dis juste qu'il te serait plus intéressant d'essayer de t'améliorer en français, c'est tout.
Citation :
Soit un tant soi peu constructif !!!, si c'est pour répondre se genre de chose rien ne t'oblige à le faire !
J'estime que c'était constructif dans le sens où je n'ai fait que souligner une possibilité qui s'offrait à toi. La possibilité la plus logique. Maintenant, si tu veux du constructif, je peux t'indiquer ce tuto pour t'améliorer.
Citation :
oui je fais des fautes et oui je ne maitrise pas le français écris, c'est pas un choix mais un fait !
Je n'ai jamais dit que c'était un choix, et je ne t'ai pas accusé de quoi que ce soit. Maintenant, si tu veux mon humble avis, plutôt que de se complaire dans son malheur, il faut prendre les choses en mains pour s'améliorer. C'est mon conseil ; tu en fais ce que tu veux, et tu réagis comme tu le sens. Mais le français n'a strictement rien d'insurmontable. Désolé si ça ne répond pas à ta demande initiale. Pleins de "tutos" existent sur le français, ne serait-ce que pour ne pas confondre ai/est/et etc.
Et tu remarqueras quand même que tu ne fais pas tant de fautes que ça, du moins dans ton dernier post. Juste quelques problèmes de pluriels, de ce/se et peut-être de conjugaison. En faisant un peu d'efforts, tu pourrais rapidement régler ça.
Maintenant, je dis ça, je dis rien. Inutile de t'énerver sur moi avec une foultitude de "!!!!", je dis juste ça pour t'aider - si je te saoule, ignore simplement mon post.
Atom-x
Poulet carnivore Lv.2
Inscrit le : 14/09/2009 Messages : 19
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 16:09
Matsuo Kaito,
oui je le comprend, j'ai réagis exéssivement, mais comprend à ton tour qu'a force de se faire remette à se place à chaque fois pour la même chose ça en deviens lassant.
pour être plus précis j'ai un probléme d'incompatibilitée avec le français écris, même aprés avoir fait plusieurs cours et tantative, rien n'y fait.
j'aimerais aussi pouvoir écrire sans fautes et encore plus de ne pas toujours devoir me relire et refaire mes texte à chaque fois, mais c'est indépendant de ma volonté !
je ne fait pas beaucoup de fautes sur le forums car ils on un correcteur qui me sert énormément ^^
Et j'espère qu'un scripteur pourra vraiment me faire se script car il me faudra facilement plus de 6 mois pour tout corriger et encore, si certaines fautes ne passent pas au travers du filet.
merci d'avance à ceux qui pourrons m'aider ^^
Matsuo Kaito
Age : 33 Inscrit le : 27/06/2008 Messages : 10881
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 16:17
Mmm, si ça t'intéresse, je peux y jetter un coup d'oeil. Si tu m'envoies ton jeu en mode décrypté par mp, je veux bien en corriger le maximum de fautes, ça ne me pose pas de problème. Et non, ne t'inquiète pas, je ne risque pas de le voler, je crois qu'on me connait assez sur le forum pour affirmer que je ne suis pas un voleur de projet x)
Même s'il y a beaucoup à faire, ça ne me dérange pas, et puis ça ne te coûte rien, en attendant qu'un scripteur prenne ta demande.
Atom-x
Poulet carnivore Lv.2
Inscrit le : 14/09/2009 Messages : 19
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp Mar 15 Juin 2010 - 16:29
Merci beaucoup,
mais attends toi à un travail de titan.....
pour te montrer à quel point il y a du travail, je vais te passer la demo en mp car elle se trouve sur Megaupload.
Contenu sponsorisé
Sujet: Re: Script Correcteur d'orthographe XP pour Vx svp