定制 andreasindal/rpgfaker 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

andreasindal/rpgfaker

最新稳定版本:v1.1.0

Composer 安装命令:

composer require andreasindal/rpgfaker

包简介

RPGFaker is a library to generate names for your fantasy games.

README 文档

README

RPGFaker is a library that can generate names for you to use in your fantasy games/fiction/whatever. To add RPGFaker to your project, simply run:

composer require andreasindal/rpgfaker

Usage

<?php

use RPGFaker\RPGFaker;

$faker = new RPGFaker();
echo $faker->name;
echo $faker->town;

// Rildess Fazhria
// Northfall

Names

RPGFaker can generate character names for you. Listed below are options that can be passed to RPGFaker that let's you customize how your names are generated.

Options

When instantating the RPGFaker object, you can supply an array of options. The defaults are:

$faker = new RPGFaker([
    'race'          => null,
    'length'        => 2,
    'count'         => 2,
    'special'       => 'random',
    'duplicates'    => [true, 5],
]);

Race (string)

The race option gives you the ability to supply the name of a fantasy race, and the name generated will fit nicely to that race. Examples on names tied to a race:

Elf:        Dessiell Rianahr
Human:      Cynwin Whiteley
Orc/Troll:  Voshyzh Roshzak

The currently accepted races are elf, human, orc and troll (orc and troll share the same settings). If null or any other race is supplied, a mix of all race’s settings will be used.

Length (integer|array)

The length option defines how many syllables* the names generated will have. For example, a length of 2 may generate a name such as "Cynwin", while a length of 3 may generate the name "Fazhtargmoh". The length option can also be an array of integers, and if it is, it must contain the same amount of elements as the number of the "count" option (see below). If the length supplied is an array, then each element specifies the number of syllables for each name. However, the length parameter is not taken into account when a special last name is generated.

Example:

<?php

use RPGFaker\RPGFaker;

$faker = new RPGFaker([
    'length' => [1, 2, 3],
    'count'  => 3
]);
echo $faker->name;

// example output: Varr Iennahr Cynsadorf

* In some cases, what is considered as one syllable by RPGFaker may in fact be two syllables, e.g. "fara".

Count (integer)

count simply defines the amount of names that should be generated. Default is 2.

Example:

<?php

use RPGFaker\RPGFaker;

$faker = new RPGFaker([
    'count'  => 1
]);
echo $faker->name;

// example output: Wogien

$faker->setOptions([
    'count'  => 3
]);
echo $faker->name;

// example output: Steinril Annton Saeith

Special (bool|string)

special can be set to either the string 'random', true or false. Special defines wether or not a special last name will be used.

Example:

<?php

use RPGFaker\RPGFaker;

$faker = new RPGFaker([
    'special' => true
]);
echo $faker->name;

// example output: Dirwog Greenhorn

$faker->setOptions([
    'special' => false
]);
echo $faker->name;

// example output: Annlor Makceh

Duplicates (array)

The first element in the duplicates option specifies whether or not duplicates should be allowed, and the second element specifies the number of retries that should be attempted if a duplicate occurs. The duplicate flags controls all parts of a name, that is, generating Rileith Doreith after Rileith Starcleaver will attempt a retry.

This setting can be particularly useful when generating large sets of names.

Towns

RPGFaker can also generate town names for you. The only option for the town name generator is the duplicates option which is described here.

License

MIT.

统计信息

  • 总下载量: 6.59k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-12-28