Gerador de nomes in-game
por Sidhenidon
Introdução
O gerador de nomes não é uma ferramenta para iniciantes ou aliterados em scripting. Mas não é nenhum bixo de sete cabeças. O que ele faz é gerar um nome aleatório com N letras especificadas no comando. Você pode usar para nomear o herói ou até mesmo salvar numa variável para ser o nome de um personagem durante o jogo. Tudo isso depende da criatividade.
Atualmente ele gera nomes com traços Celtas e Astecas, mas é facilmente modificável.
Alguns exemplos de nomes gerados:
• Neupusha
• Able
• Ivokam
• Inhavrufe
• Vlus
• Onothi
Changelog:
por Sidhenidon
Introdução
O gerador de nomes não é uma ferramenta para iniciantes ou aliterados em scripting. Mas não é nenhum bixo de sete cabeças. O que ele faz é gerar um nome aleatório com N letras especificadas no comando. Você pode usar para nomear o herói ou até mesmo salvar numa variável para ser o nome de um personagem durante o jogo. Tudo isso depende da criatividade.
Atualmente ele gera nomes com traços Celtas e Astecas, mas é facilmente modificável.
Alguns exemplos de nomes gerados:
• Neupusha
• Able
• Ivokam
• Inhavrufe
• Vlus
• Onothi
Changelog:
[center]03 Nov 2011
• Criação e postagem do script
Características
• Especificável a quantidade média de letras. Não será exata, mas bem aproximada;
• Algoritmo de fácil alteração. Você pode retirar ou adicionar novas combinações de consoantes ou vogais;
Screenshots
Efeito não perceptível por screenshots. Tente em seu projeto, garantia que não dará nenhum tipo de bug.
Como usar
Existem diversas formas de se utilizar o Gerador de Nomes. Todas elas utilizam o comando
- Código:
$game_system.generate_name(n)
caso "n" não seja especificado, gera um nome de 3 a 9 letras.
Você pode utilizar para renomear um personagem desta forma:
- Código:
$game_actors[id].name = $game_system.generate_name(n)
Você também pode guardar em uma variável para chamar em mensagens, usando:
- Código:
$game_variables[id] = $game_system.generate_name(n)
Demo
Não necessária, mas providenciarei se pedirem.
Script
- Código:
#==============================================================================
# Gerador de Nomes
#------------------------------------------------------------------------------
# Criado por Sidhenidon
# 3/11/2011
#==============================================================================
class Game_System
def generate_name(n=nil)
n = rand(10) if n.nil?
n = [n,3].max
name = ''
name += consonant if rand(2) == 0
vc = 1
while name.size < n
if rand(20) == 0
name.insert(rand(name.size),vowel)
else
name += (vc == 1 ? vowel : consonant)
vc *= -1
end
end
#name += vowel if rand(2) == 0
name.gsub!(/\b(ss|dn|)/,'')
name.gsub!(/(w|r|p|qu|dl|bl|cl|ch|dr|dn|dm|gl|hw|jh|qu|kl|mn|nh|sw|tw|sn|sm)\b/,'')
return generate_name(n) if name.scan(/[wxykzh]/).size > 2
return generate_name(n) if name.size < 3
name.capitalize!
return name
end
def vowel
vowels = ['a','e','i','o','u']
return vowels[rand(vowels.size)]
end
def consonant
con = ['b','b','b','b','bl','c','c','c','c','cl','ch','d','d',
'd','d','dl','dr','dn','dm','f','f','f','f','ff','g','g','g','g',
'gl','h','hw','j','jh','k','kl','l','m','m','m','m','n','n','n','n',
'nh','mn','p','p','p','p','ph','qu','r','r','r','r','s','s',
's','s','sh','ss','sw','sm','sn','t','t','t','t','tr','th',
'tw','tl','v','v','v','v','vl','vr','w','wh','wr','x','y','z']
return con[rand(con.size)]
end
end
Perguntas Frequentes
P: Os nomes gerados são feios! Tem como fazer nomes mais comuns?
R: Veja no script a lista de vogais e consoantes usadas, modifique como preferir. É simples de entender, até um iniciante em RGSS consegue facilmente editar.
Créditos e Agradecimentos
•Feito por Sidhenidon