Skip to content

Criando strings

Henrique Santana edited this page Mar 13, 2021 · 1 revision

Primeiramente, devemos deixar claro o que são essas strings. Estamos falando daqueles valores presentes no arquivo strings.conf, encontrado (dentre os arquivos do jogo EDOPro) em config/strings.conf ou expansions/strings.conf. É onde texto do sistema, nomes de marcadores/contadores, nomes de archetypes, etc. são definidos. Bem, além de criar as cartas em si, você provavelmente vai querer definir novos archetypes, e eventualmente marcadores/contadores também. E seria interessante ter uma forma de colocar os nomes deles no jogo sem ter que manualmente criar ou editar esse strings.conf. É exatamente disso que esta página fala.

Quando se usa TOML para definir as cartas, podemos definir não apenas elas, mas também archetypes e marcadores também. Um archetype, no entando, é chamado de set (porque originalmente teria-se que editar a coluna setcode no .cdb, e porque é mais fácil e rápido digitar só set mesmo) e um marcador/contador é chamados de counter. Em ambos os casos, para definí-los você deve criar um novo TOML ou usar um que já tenha suas cartas, e dar a eles um nome (name) e um código (code). Continuando o exemplo da página anterior, vamos definir o set/archetype "Fabrick" e um novo marcador chamado Marcador de Produção, ele poderia ser usado em outras cartas. Isso seria:

[[counter]]
name = "Marcador de Produção"
code = 0x12f

[[set]]
name = "Fabrick"
code = 0xf00

E é isto. Isso é suficiente para produzir as seguintes linhas:

!counter 0x012f Marcador de Produção
!setname 0x0f00 Fabrick

num arquivo strings.conf associado à uma expansion. Ele fica em expansions/<nome-da-expansion>-strings.conf, de forma que quando sincronizar o projeto ao jogo, essas linhas serão mescladas com o expansions/strings.conf na pasta do jogo (ou esse arquivo será criado caso ainda não exista).

Há uma última coisa a dizer, no entando. Assim como os cards podem ser criados com um nome identificador, os set também podem. Mas no caso deles, há uma finalidade para isso. Ao dá-los um nome, assim

[set.fabrick]
name = "Fabrick"
code = 0xf00

você pode usar esse nome para dizer quais cards pertencem a esse set. Assim:

[[card]]
id = 102345679
name = "Fabrick Designer"
set = "fabrick"
type = "monster effect pendulum"
attribute = "dark"
# [...]

E se você estiver familiarizado com a criação de cartas personalizadas, você prvavelmente sabe que para que uma carta pertença a mais de um set, você tem que combinar os setcodes com uma certa manipulação de bits. Com o ygofab make, porém, isso é dispensável. Você pode definir cada set individualmente, dar a eles um id, e depois só escrever os nomes em sequência, assim:

[set.guardiao]
name = Guardião
code = 0x52

[[card]]
id = 10234680
name = "Fabrick Guardião Operário"
set = "fabrick guardiao"
# [...]

Recapitulando: com essa funcionalidade de set, você não tem que combinar os setcodes manualmente, você especifica uma vez só os valores e se quiser mudar, isso é feito num local só, e você não tem q lembrar os valores numéricos, apenas os nomes.

Na próxima página, veremos a última funcionalidade do ygofab make, os macros.