recursal/Fanatic-Fandom huggingface dataset:
Hobgoblin

***Back***

Hobgoblins are the product of orcs and elves they are seen as less favorable than a bugbear or goblin is seen by their orcish parentage for the fact that they are of elvish blood making them less hardy than the rest but the best with magics it is rare to see a hobgoblin as a figurehead in a tribe unlike goblins or bugbears which is fairly commonplace though they can be seen as advisors to shamans and other leaders in an orcish community. If left with their elvish parent they will more than likely become a servant of their families house seen as nothing more than a slave to do whatever chores deemed too terrible for a pure blooded or even a half-elven child.

* They gain +2 Intelligence, and +2 Wisdom, and -2 Constitution.
* Type: Hobgoblins are humanoids with the goblinoid subtype.
* Size: Hobgoblins are Medium creatures and thus have no bonuses or penalties due to their size.
* Base Speed: Hobgoblins have a base speed of 30 feet.
* Languages: Hobgoblins begin play speaking Common and Orc or Elven (Choose one). Hobgoblins with high Intelligence scores can choose from the following: Draconic, Dwarven, Infernal, Giant, Orc, and Elven. See the Linguistics skill page for more information about these languages.

Feat and Skill Racial Traits

* Sneaky: Hobgoblins receive a +2 racial bonus on Stealth checks.

Senses Racial Traits

* Darkvision: Hobgoblins can see perfectly in the dark up to 60 feet.
Leafwhisper

## Appearance

**Simplified**: An average-sized, short-furred, ginger-and-gray tortoiseshell tom with a white paws and chest, and amber eyes.

## History

Leafwhisper was a only kit growing up in a warm, supportive environment, and he always felt loved and comfortable.

When he became an apprentice, he fell in love with Fernpaw, a sweet young she-cat with a strong heart. She was his dear friend through their apprenticeship, always by his side.

She eventually became his mate. They were so excited and proud when they realized they were going to have kits, but shortly after Fernleaf gave birth to three beautiful kits, Foxpaw, Hazelpaw, and Birchpaw, she came down with greencough and died.

Leafwhisper was devastated, and for a short time barely remembered that his kits were still alive. He grieved for moons, but eventually decided he could not continue grieving, and he had to move on with his life. He has fallen in love with Cloudfeather but refuses to let himself speak to her because he's afraid, and doesn't think he's ready to love someone else. Also he feels as though he's betraying Fernleaf.

## Kin

* Foxpaw - Son
* Birchpaw - Son
* Hazelpaw - Daughter
A Sky Without Stars

## Welcome to the Wiki

A basic guide of everything on the "A Sky Without Stars" roleplay.

## What is ASWS?

A Sky Without Stars, or ASWS, is a Fanfiction forum that is made for fans of the "Warriors" series by Erin Hunter to roleplay with their own characters in a unique plot adjustment.

## Plot

"In this universe, the warrior cats never could find the lake. Feeling lost without their warrior ancestors, they strive to find their touch in StarClan once again. The four Clans have found a new territory, a mountain peek far from the canon lake. Will you join and help the Clan's find their touch with StarClan once more?"

## Clans

ThunderClan

ShadowClan

RiverClan

WindClan

## Members of the Forum

**Admin:**

MetaWolf 03 (Meta)

**Mods:**

Dawnstorm of RainClan (Dawn)

Da'SaVage-Tiger (Tiger)

**Members**:

Stormclaw of ThunderClan (Storm)

duskeh the bunneh (Dusk)

Foreststar of WindClan (Forest)

Cascade of Raining Ice (Rainstorm)

A Whispering Shadow (Whisper)

Stargone (Star)

Jaydomination (Jay)

Frostfeather22 (Frost)

Muffiny The Muffin Goddess (Muffin)

## Latest activity

Photos and videos are a great way to add visuals to your wiki. Find videos about your topic by exploring Fandom's Video Library.

File:Placeholder
Minetest.delete particlespawner

## Синтаксис

```
unknown = minetest.delete_particlespawner(number id[, string player_name])

```

## Описание

Удаляет генератор частиц с идентификатором `id`, возвращаемым функцией add\_particlespawner().

Если имя игрока `player_name` определено, объект удаляется только для этого игрока, в противном случае - для всех.

## Примечания

1. ↑ TODO: необходимо уточнить возврат функции.
2. ↑ TODO необходимо проверить, возможно на самом деле нужен Player.
Stormclaw

## Appearance

**Simplified**: A broad shouldered, bluish-grey tom with dark tabby stripes, a white underbelly and muzzle. He also has grey blue eyes and a scar across his nose bridge.

## History

Stormclaw grew up being tormented by Whitescar and Ashbreeze, cats he grew up along side, Stormclaw felt like an outcast.

His brother, Beetleheart helped him through this tough time, and eventually Ashbreeze became close to Stormclaw and he cherished her company.

Stormclaw was never close to his father, but loves his mother dearly.

Ignorant to threats, Stormclaw is quick to anger and often throws himself into bad situations and hold grudges, causing him to create more enemies than friends.

## Kin

* Beetleheart - Brother
* Ashbreeze - Mate
* Flaketail - Father
* Rowanheart - Mother
Minetest.clear craft

## Синтаксис

```
boolean = **minetest.clear\_craft**(table recipe)

```

## Описание

Удаляет существующее рецепты либо либо по результату, либо по ингредиентам.

Если указать и результат, и ингредиенты, то последние будут проигнорированы. При указании ингредиентов таблица `recipe` использует тот же синтаксис, что и для register\_craft(). Для удаления по результату указывается только имя предмета, без количества.

Возвращает `true`, если удаление успешно, и `false` - если рецепт для удаления не найден.

**Предупреждение:** Поле типа ("shaped", "cooking" или любое другое) будет игнорироваться, если рецепт содержит выходные данные. Удаление выполняется независимо от типа рецепта.

## Примечания

1. ↑ TODO: если `recipe` действительно может быть строкой, то это должно быть добавлено в раздел **Cинтаксис**.
Honeypetal

## Appearance

**Simplified**: A golden she-cat with short soft fur. She has small dainty paws, long
legs and a feather-like tail. Her eyes area soft orange and she has
white chest fur.

## History

Born to two loving parents, Sparkclaw and Creamfur, Honeypetal was sheltered most her young life due to her littlermates, Petalkit and Tinykit, succumbing to complications after birth.

Through the early moons of her life, Honeypetal watched the Clan from afar and always saw the beauty and upside to everything. Eventually, she noticed a younger tom named Oakpaw.

When becoming an apprentice to Redfeather, Honeypaw was always too shy to approach Oakpaw. A nervousness that she has yet to out grow.

She is very close to her parents and loves lilies and has no idea that Blazewing and Sparrowfern are her half-siblings.

## Kin

* Sparkclaw - Father
* Creamfur - Mother
* Blazewind - Step-brother
* Sparrowfern - Step-sister
* Deerkit - Step-sister
* Tinykit - Brother
* Petalkit - Sister
Foxpaw

## Appearance

Foxpaw is pretty small for his age. Not too small, but just small enough so that you can notice it- about the size of a 5-moon kit. He is also lithe, seeming more like a WindClan cat than one of ThunderClan.

His eyes are bright green, and are rather sharp- he often uses them in place of his sense of smell. His ears are almost always at least a little perked.

Foxpaw has an unkempt tuxedo coat of fur. He has a band of white coming up from his right shoulder and going across behind his left shoulder, rejoining with his belly. All four of his paws are white, although the front right one has white a bit further up than the rest, and a big, furry tail, with a snow white tip.

**Simplified:** A small, ragged-furred, black tuxedo tom with white paws, a big fluffy tail and bright green eyes. He also has a band of white starting on his right shoulder and ending behind his left.

## History

Foxpaw was born to Leafwhisper and Fernleaf alongside his littermates, Hazelpaw and Birchpaw. Their mother, Fernleaf, died of greencough just a few days after they were born, and with no other nursing ThunderClan queens, they had to begin eating fresh-kill before what was healthy. Because of this, the three's growth slowed, but Hazelpaw had it worst, becoming very sickly.

By the age of five moons, Foxkit had realized that he wouldn't find much fulfillment in being a warrior. He saw so many things he could learn and do as a medicine cat that warriors didn't seem to be able to do. He also didn't have much interest in having kits. So, he requested that the leader make him the medicine cat apprentice, and his wish was granted. Foxpaw has been learning the herbs and duties very quickly, but is scared of the responsibilities he'll hold as a full-fledged medicine cat.

Foxpaw still worries about Hazelpaw's weakness.

## Kin

Leafwhisker - Father

Fernleaf - Mother

Hazelpaw - Sister

Birchpaw - Brother
Falconshade

## Appearance

**Simplified**: A well-built shot-furred brown tom with a white patch on his chest, and tail tip. He also has wide paws and pale green eyes.

## History

Falconshade was born in a litter of three alongside Skyblaze and a stillborn brother. He snuck out of camp many times, under Skyblaze's lead, often getting in trouble when his sister pushed the blame on him. This delayed his apprenticeship a half-moon, and he grew bored, so he kept sneaking out of camp while Skyblaze was made an apprentice before him.

Falconshade finally was apprenticed to Leafwhisper and he was made a warrior six moons later, receiving the name of Falconshade.

He hopes to become the best, maybe even leader one day, though Skyblaze is also set on becoming leader, too.
Ashbreeze

## Appearance

**Simplified**: An average-sized, long-furred dark gray she-cat with wide paws, a short white muzzle, and curious orange eyes

## History

Ashkit also teased Stormkit, along with her older brother, Whitekit, but as she grew older, she soon realized she liked him, and so started feeling uncomfortable with her brother's bullying.

She began to side with Stormpaw, starting to hate her brother's meanness. So when he scratched her accidentally in battle training, Stormpaw found her in the apprentices den brooding.

As warriors, Ashbreeze moved her nest next to Stormclaw's, but is not sure if he feels the same way towards her as more than a friend.

Recently, the two have come forward with their feelings and they fell eagerly in love.

## Kin

* Whitescar - Brother
* Icetooth - Brother
Saint Louis-class

Lead ship Saint Louis in 1940

## Anti-Aircraft

(2x3) 152 mm/55 Mle 1936

(6x2) 100 mm/45 Modèle 1933

(6x1) 640 mm/56 Bofors Mk3

(4x2) 37 mm/70 ACAD Mle 1936

## Sensors

PCA n° 10 Mle 1

2x- 46ft (14m) triple stereoscopic OPL

2x- 9.8ft (3m) OPL rangefinder

20ft (6.1m) double stereoscopic OPL

26ft (8m) double stereoscopic OPL

28ft (8.5m) DSR

20ft (6.1m) DSR

The final class of Heavy Cruisers commissioned by the French Navy, the Saint Louis-class were decent fire support heavy cruisers. Mounting the largest artillery to a heavy cruiser, at 240mm (9.4in) until the commissioning of the 10in armed Rykov in 1944.

While smaller then the preceding Lille-class, by over 4000 tonnes, this was the result of extensive welding, opposed to the Lille's rivets.

While initially designed to become the backbone workhorse of the French Navy, and to replace the ageing Duguay-Trouin class of heavy cruisers. As such, 8 ships of the Heavy Cruiser were originally envisioned as a response to the German Hipper-class.

Fitted with an Atlantic bow, these ships were intended as long range independent warships, as opposed to escorts for capital ships. However, throughout their service life, they would rarely be used as independent warships.

While 8 were ordered, only 5 were laid down before the final 6 were cancelled. With war on the horizon, production shifted to support the construction of Capital Ships.

Only two ships of the class were completed, and yet their were minor but prominent features that differed one another.

The only real change was the inclusion of 152mm secondaries on the Charles Martel, which overlooked the forward guns, and the rearward gun. To fit these, one of the catapults was removed.The superstructure shifted aft so the forward gun could be fired. While adding 500 tonnes to the displacement, otherwise everything was identical.

## Ships In Class

Saint Louis

Charles Martel
Stonescar

## Appearance

**Simplified**: A well-built, short-furred black tom with emotionless blue eyes and a jagged, silvery scar across his left cheek.

## History

Born with his sister Daisyblaze, Stonescar had a very uneventful kithood, but when a kit was born a few moons later, a she-kit named Aspenkit- the last four moons of kithood were filled with adventure.

When Stonescar was made an apprentice, Stonepaw, he was apprenticed to the current deputy, who is now Sandstar. Young Stonepaw trained- and when Aspenpaw was made an apprentice also he relished his apprenticeship even more.

Finally the time came to be a warrior and he did become one- Stonefire. But a few moons later there was a battle- and that was where he earned his scar, given to him by the RiverClan warrior Silverbird.

In the battle, Aspentooth was accidentally killed by a RiverClan warrior, and in the haze of battle and through his anger, Stonefire killed Silverbird- and the battle ended, the leader decided to rename him Stonescar. Though it's a reminder of him killing Silverbird, he's proud of his scar.
Lycanthrope

***Back***

Lycanthropes are universally feared and hated they are few and far between with werewolves being the most abundant. The lycanthrope can live a relatively simple and normal life, though they must hunt every month as the beast or they must fight for control. The beast and the man are two separate entities that can freely communicate within the mind as if having a conversation. In times of great stress, the beast may fight for control of the man and go into a feral state of kill or be killed where he cannot be calmed until his blood-lust is sated or until he is subdued

Contact Gm before making were-creautres
Sparrowfern

## Appearance

**Simplified**: A small, sleek gray tabby she-cat with a small tail and hazel eyes

## History

Sparrowfern was always quiet and stoic- she still is- but this is mostly because of an accident that lead to her sister, Deerkit's death.

It wad an ordinary day- Sparrowkit had just dared Deerkit to eat a herb from the medicine den. She had already chosen one for herself, small, black seeds. Her sister leaned forward and chose a delicious looking berry. They both ate their herbs, and Deerkit began convulsing violently. Sparrowkit shouted for help, but it was too late, and Deerkit was dead. Sparrowkit went through a deep depression, and has since recovered, but still has flashbacks and moments of grief- in which she will freeze up and not do anything.

She was never close to her brother, Blazewind, and they both grieved greatly over their mother's death.

## Kin

* Sparkclaw - Father
* Acornstrike - Mother
* Deerkit - Sister
* Blazewind - Brother
* Honeypetal - Step-Sister
* Tinykit - Step-Brother
* Petalkit - Step-Sister
Oakleaf

## Appearance

**Simplified:** A strongly-built, white tortoiseshell tom with patches of gold and ginger on his back. He has a handsome face, beautiful green eyes and long ears.

## History

Oakleaf's kithood was a happy one, he was surrounded by loving Clanmates and parents, and barely noticed a young Redfeather (Redpaw at this time) arguing with his father, Russetsky daily.

However, as Oakkit grew older, Redpaw was impossible to ignore as he went out of his way to torment Oakkit and Snowkit out of anger towards their father. Oakkit never retaliated unless Snowkit was being insulted, this led Redpaw to torment Snowkit even more.

Through their apprenticeship, Redpaw's torment only got worse, but through this, Oakpaw grew very close to his sister, Snowpaw. Eventually the rebellion hit ThunderClan, and Oakpaw chose the path of the rebellion, mostly due to Russetsky's choice to do the same. Oakpaw also grew very close to Snowheart, his mentor, during this time for he would often share advice on Redpaw.

Until one day, soon after earning his warrior name, Russetsky lost his life. This hurt Oakleaf greatly, and when mourning over his father, he saw a disheveled Redfeather doing the same. Redfeather has both lost his mother and father in a small time frame. In this broken state, Redfeather apologized to Oakleaf for the moons of bullying. Oakleaf sympathized and he found it within himself to forgive his half-brother.

A grieving Snowfoot found this unforgivable and even started to blame Oakleaf for the torment as well. She disowned him soon after. Now, Oakleaf lives for honor and loyalty and hopes to win the praise of her sister back once more.

## Kin

* Russetsky - Father
* Mapleleaf - Mother
* Snowfoot - Sister
* Redfeather - Half-brother
* Tigerleaf - Aunt
* Snowheart - Uncle
* Snakestar - Uncle
* Stonejaw - Uncle
* Tinyheart - Aunt
Icetooth

## Appearance

**Simplified**: A mottled grey tom with white paws and a grayish white underbelly. He has a torn ear and has bright yellow eyes.

## History

Icetooth grew up alongside his littermate, Whitescar. Often Icetooth would witness Whitescar challenge cats trying to get his father's attention. Sadly this fell mostly upon an easily-angered Stormclaw who would constantly fight with Whitescar.

Icetooth would eventually step in when Whitescar would go to far. He felt a bit of sympathy for the bluish grey apprentice mainly for the fact that their little sister, Ashpaw, would join Whitepaw in bulling Stormpaw, but Icetooth stayed loyal to his brother.

His growing friendship with Stormclaw upsets Whitescar, who recently disowned him for being controlling.

## Kin

* Whitescar - Brother
* Ashbreeze - Sister
Whitescar

## Appearance

**Simplified**: A massive white tom with brown patches and large paws. He has three large deep scars on his nose that obstructs his ability to smell and has harsh yellow eyes.

## History

Whitescar grew up with a loving mother but a distant father. Wanting attention from his father, a young Whitepaw would often pick fights with cats. Most often, the younger apprentice, Stormpaw.

He never got along well with his brother, Icetooth, but once his little sister Ashbreeze was born, he quickly influenced her to make fun of Stormpaw as well, but she eventually stopped.

Near the end of his apprenticeship, Whitepaw was larger than most of the warriors in ThunderClan, but his ego and pride grew beyond that. He felt as if he could beat anyone in ThunderClan, he even tried to challenge Snakestar, but was beaten down by him, but was made a warrior for his "courage".

Despite his loss, he was overjoyed when Snakestar picked him to join the battle against ShadowClan in the Marshlands. He fought well, making many ShadowClan cats turn tail until he came upon a cat larger than himself, Waspclaw. The fight ended with Waspclaw victorious and Whitefang running back to ThunderClan with a severely injured nose.

The three scars over his nose is what gave him his new warrior name, but it also hindered his scenting abilities and causing him to breathe out of his mouth.

## Kin

* Icetooth - Brother
* Ashbreeze - Sister
Fabbro

***Back***

Fabbro is the Patron deity of Craftsmen, Blacksmiths, and Giants. Fabbro created the giants by laying with a human woman and the offspring were stronger and bigger than the average man. Fabbro tries to stay out of conflicts between other gods. He has made the most powerful weapons in the world. It is said that a weapon or armor piece crafted by the god is inhabited by a faithful follower who has sacrificed his soul to continue to serve him after death.
Skyblaze

## Appearance

**Simplified:** A slender, short-furred, light brown tabby she-cat with three white paws, a long tail, short ears and wide blue eyes.

## History

Skyblaze was born in a litter of three alongside Falconshade and a stillborn brother. She snuck out of camp many times, followed by Falconshade, often setting blame on Falconshade. This delayed his apprenticeship a half-moon while she went on to become an apprentice.

Her brother finally was apprenticed and they were both made warriors six moons later, with her receiving the name of Skyblaze hopes to become the best, maybe even leader one day.
Cloudfeather

## Appearance

**Simplified**: A slightly small, gray and white patched she-cat with green eyes

## History

Cloudfeather grew up with her brother, Hawkclaw, to loving parents, Speckleshade and Snowheart. They were raised well, but once she hit apprenticeship, her life began to change dramatically.

Snowheart disappeared after a battle and his body was not among the fallen. Shortly after, Speckleshade took a new mate, who cared none for Cloudfeather or her brother.

A few moons later, Hawkclaw died of greencough, which hardened Cloudfeather's heart from sorrow.

Speckleshade's new mate died in a battle with RiverClan, but Speckleshade died after delivering her kits near the ShadowClan border.

The kits were not found and are rumored to be either killed by a predator, or taken and living among ShadowClan.

Those kits were Brindlepaw and Redpaw, though Redpaw and their ShadowClan father died.

## Kin

* Snowheart - Father
* Speckleshade - Mother
* Hawkclaw - Brother
* Brindlepaw - Half-sister
* Redpaw - Half - brother
Pineclaw

## Appearance

**Simplified**: An averaged sized, well-built, sleek-furred dark brown tabby tom with piercing green eyes.

## History

Pineclaw had a terrible kithood, when he was a kit he believed in StarClan, as he was an apprentice he could never understand how to fight properly and beat himself up over it. He was eventually trained in secret by the warrior recently named Beetleheart, because of this Pineclaw grew a strong friendship with him.

Unfortunately, while he was out practicing a fox had caught his littermates on a patrol and managed to kill them. After their deaths Pineclaw lost faith in StarClan for he thought they could of prevented their deaths if they were real.

Now he hates the mention of StarClan, he is fair though about cat's opinion he just wouldn't like to talk about it. Now he is *very* protective of his mate and unborn kits.
Robinmist

## Appearance

Robinmist is not built for action. He has short legs and tail, with a large wide built body. He's low to the ground and walks like a badger. He's coat is a bright ginger, but it dull and unkept. His eyes are a cold gray, also rather dull. Dispite his not so attractive qualities, if he cleans himself up Robinmist is actually rather handsome.

**Simplified:** An average sized, short-legged, pale ginger tom with cold gray eyes and has a handsome face

## History

Growing up with the haunting rumors of being part ShadowClan, Robinmist was very shy and tentative of his slightly suspicious clan mates. He walked a fine line, but grew to be a very loyal and trustworthy cat, unlike his sister.

Growing up without parents and nursed by a queen, Firesong, who died after they became apprentices, Robinmist always found the path of a warrior undesirable and sought to become a medicine cat. His regret in that decision was growing farther away from his littermate, Violetpaw.

As he became a well learned and trusted medicine cat under his mentor, Tigerleaf's, teachings, Violetpaw began to act out, for many reasons. Robinmist would often cover up for Violetpaw, stand up for her, and then lecture her on how to get in less fights. Violetpaw ignored him and grew to love the heat of battle. When Violetpaw drew away more and started hanging out with Whitescar, around the time Robinmist's mentor passed away from old age, Robinmist pulled away from many more cats and grew very lonely.

He continued to quietly carry out his duties for his clan, deeply upset when Violetpaw attacked the innocent Honeypetal and had her ceremony delayed. Robinmist decided his dear clan seemed to be getting more vicious and torn right before his eyes. He selected his apprentice, Foxpaw, and is very confident in him. He trains Foxpaw now to the best of his ability, subtly trying to heal emotionally as well as physical wounds in ThunderClan.

## Kin

Although Redfeather and Silverfang are his parents, Robinwing is unaware of this.

* Redfeather - Father
* Silverfang - Mother
* Firesong - Adopted Mother
* Violetpaw - Sister
* Russetsky - Grand-father
* Darkdapple - Grand-mother
* Shrewfang - Grand-mother
* Darkclaw - Uncle
* Hawkeye - Uncle
Episode title

**Episode title** is the Nth episode in the series.

## Plot synopsis

*Here's where you put the description of the plot. Doesn't have to be very detailed. A couple sentences will be enough for starters. You can expand it later.*

## Appearances

*This section allows you to link to character pages. Oh, and remember to remove this text. ;)*

* Character 1
* Character 2

## Notes & trivia

* *This is where you can put notes and trivia, anything that is interesting or strange can be included here*
Beetleheart

## Appearance

**Simplified:** A very dark gray tabby tom with large and curious eyes, a bright friendly orange. His build is wide and strong, though his legs and tail on the stockier side.

## History

Beetleheart always thought the slightly older aprentice, Whitepaw(scar) was so cool. When Whitescar started bullying his brother, Stormclaw, that changed.

Beetleheart loves his big bro, he always stuck by his side throughout his life. While Stormclaw was struggling with the bully, Ashbreeze and Beetleheart were always there for him. Though Beetleheart was going through a more internal struggle.

He always wanted to be the knight for a lovely maiden, but around the night of his warrior ceremony he started realizing his feelings for a particular tom. He struggled with these feelings for a while, at the same time he started to mature and realize important loyalties in clan life as an adult. He's come to accept himself but fears being open about it as if it would make him seem less tough.

## Kin

* Flaketail - Father
* Rowanheart - Mother
* Stormclaw - Brother
Snowfoot

## Appearance

**Simplified:** A small white she-cat with black paws and ear tips. She has crystal blue eyes.

## History

Snowfoot grew up being bullied by her half-brother Redfeather because he was envious that their father, Russetsky, had started a new family while his mother died.

Snowfoot grew up hating Redfeather and was astonished that her brother, Oakleaf, forgave and even befriended Redfeather after Russetsky's death. She couldn't believe him, and partially hates Oakleaf to this day.

Her apprenticeship was filled with much mischief, she would be pulling off pranks, sneaking out of camp with whoever was her crush at the time, but she has since matured.

## Kin

* Russetsky - Father
* Mapleleaf - Mother
* Oakleaf- Brother
* Redfeather - Half-brother
* Tigerleaf - Aunt
* Snowheart - Uncle
* Snakestar - Uncle
* Stonejaw - Uncle
* Tinyheart - Aunt
Aeramen

***Back***

Aeramen is the direct counter part of Pestilence. He is the Angel of Healing. He was brought into existence because the four horsemen were running rampant across the land. He preaches to heal all those in need, That every man deserves to be given the chance of redemption. His followers consist of Clerics and Doctors.
Sparkclaw

### Kits:

Honeypetal, Blazewind, Sparrowfern, Deerkit (deceased), Petalkit (deceased), Tinykit (deceased)

### Mates:

Creamfur (current), Acornstrike (divorced)

## Appearance

Sparkclaw is a well built, average sized tom with a dark gray short pelt with patches of gold and ginger tabby markings covering most of his back and legs. His head is entirely gray and has a scar starting on his right cheek and going half way down the right side of his neck.

**Simplified**: A short-furred dark gray tom with patches of golden and ginger tabby patches over his back and legs. He has an entirely gray head and a scar that starts on his right cheek and slashes down the right side of his neck. He also has soft orange eyes.

## History

Growing up along his adoptive littermate, Sandstar, Sparkclaw had a very loving kithood and a pretty average upbringing and life until he met Acornstrike.

Sparkclaw has a beautiful and loving mate named Creamfur and together they had a litter of kits but sadly two of the three kits died and they did all they could to protect and shield their last remaining daughter, Honeykit.

They sheltered Honeykit from everything including the violent fights that they had between themselves. Most of the fights were fueled by grief for their lost kits, but some were because Sparkclaw felt that Creamfur was losing interest in him. She always seemed distant from him and it was as if Honeykit was the only thing holding their relationship together.

This saddened Sparkclaw greatly but he never allowed his daughter to know that. He proudly watched Honeykit become apprenticed to the Clan's deputy, Redfeather, but when she was out of the nursery Creamfur seemed to want nothing from him anymore.

This is when Sparkclaw became friends with Acornstrike. She was kind to him but was strong and independent. He fell in love with her briefly and spent much time with her in secret from Creamfur. Unknown to Sparkclaw, he got Acornstrike pregnant, but with great sorrow, Creamfur apologized for being distant and wanted to patch things up.

Remembering where his heart truly belonged, Sparkclaw returned lovingly to Creamfur. After their fling, Acornstrike grew very bitter and never told Blazekit & Sparrowkit who their father was. Sparkclaw watched from a distance with sorrow as he was not able to comfort his kits for his mother's death or tell him how proud he was of them. Out of respect for Acornstrike and fear to hurt his relationship with Creamfur, Sparkclaw kept the fact Blazewind & Sparrowfern are his kits a secret, though he yearns to be close with them.

He even mentored his son, Blazewind.

## Kin

* Creamfur - Mate
* Honeypetal - Daughter
* Blazewind - Son
* Sparrowfern - Daughter
* Deerkit - Daughter
* Petalkit - Daughter
* Tinykit - Son
Minetest.get ban description

## Синтаксис

```
string = minetest.get_ban_description(string player_name)

```

## Описание

Возвращает все строки бан-листа, содержащие `player_name`, в виде строки `IP1|Name, IP2|Name, ...`, либо пустую строку, если соответствий не найдено.

## Примечания

1. ↑ TODO: возможно, заменить шаблоном "основная статья".
2. ↑ TODO: уточнить вид строки.
SoundSpec

## Назначение

Объединённый формат, позволяющий обращаться к звуковым файлам посредством текстовой строки или таблицы.

## Формат

Строковое представление содержит имя звукового файла без расширения. Кроме того, одна строка может ссылаться на несколько файлов, если их имена имеют формат `sound.n.ogg`, где `n` — цифра от 0 до 9. То есть, при проигрывании звука, заданного строкой `"foomod_foosound"`, будет случайным образом выбираться один из следующих файлов:

* `foomod_foosound.ogg`
* `foomod_foosound.0.ogg`
* `foomod_foosound.1.ogg`
* (...)
* `foomod_foosound.9.ogg`

Табличное представление может содержать следующие поля:

* `string name` -- аналогично строковому представлению;
* `number gain = 1.0` -- коэффициент громкости звука;
* `number pitch = 1.0`.

## Примечания

1. ↑ Minetest поддерживает только файлы Ogg Vorbis; для позиционного воспроизведения звуков необходимо использовать только одноканальные (моно) файлы (в противном случае система OpenAL будет воспроизводить их без позиционирования).
2. ↑ Как правило, имя звукового файла имеет префикс, содержащий имя мода.
3. ↑ TODO: назначение этого поля пока непонятно, требуется уточнить.
Minetest.register on dignode

## Синтаксис

```
nil = minetest.register_on_dignode(function func)

```

## Описание

Регистрирует функцию `func`, добавляя её в глобальную таблицу minetest.registered\_on\_dignodes.

Функции из этой таблицы будут вызываться в момент выкапывания ноды.

**ВАЖНО**: функции регистрации работают только во время инициализации; вызов во время игровой сессии порождает ошибку и падение сервера.

Регистрируемая функция использует следующие аргументы:

* `Position pos` - координаты ноды;
* `NodeTable old_node` - параметры ноды;
* `Player digger` - игрок, выкопавший ноду.

## Примечания

1. ↑ TODO: согласно документации, использовать эти функции не рекомендуется, предпочтительнее использовать `on_destruct` и `after_dig_node` при регистрации ноды; нужно уточнить, как эти два варианта взаимодействуют между собой.
2. ↑ В том числе обрабатываются события, вызванные с помощью node\_dig() или dig\_node().
3. ↑ TODO: уточнить ситуацию, когда нода выкопана не игроком.
ModChannel

## Описание

Интерфейс для использования каналов мод на клиенте и сервере.

## Методы

```
unknown = modchan:leave()

```

Покинуть канал мода (сервер оставляет канал `channel_name`).

На этот канал больше не могут быть отправлены входящие или исходящие сообщения от серверных модов.

Это аннулирует всё использование объекта в будущем. Убедитесь, что после этого вы установили `modchan` в `nil`, чтобы освободить ресурсы Lua.

```
boolean = modchan:is_writeable()

```

Возвращает `true`, если канал открыт для записи и мод может отправить сообщения.

```
unknown = modchan:send_all(string message)

```

Отправить сообщение `message` через канал мода.

Если канал мод не является записываемым или недопустимым, сообщение будет удалено.

Размер сообщения ограничен 65535 символами по протоколу.
Minetest.get modpath

## Синтаксис

```
string | nil = minetest.get_modpath(string modname)

```

## Описание

Возвращает строку, содержащую полный путь к моду с именем `modname` (по каталог, содержащий файл init.lua, включительно). Если мод с таким именем не запущен, вернёт `nil`.

Полезно для загрузки дополнительных модулей \*.lua или статических данных для мода.
Minetest.register on punchplayer

## Синтаксис

```
nil = minetest.register_on_punchplayer(function func)

```

## Описание

Регистрирует функцию `func`, добавляя её в глобальную таблицу minetest.registered\_on\_punchplayers.

Функции из этой таблицы будут вызываться при ударе по игроку.

**ВАЖНО**: функции регистрации работают только во время инициализации; вызов во время игровой сессии порождает ошибку и падение сервера.

Регистрируемая функция использует следующие аргументы:

* `Player player` - игрок, по которому нанесли удар;
* `ObjectRef hitter` - объект, который нанёс удар;
* `number | nil time_from_last_punch` - время от предыдущего удара (в секундах);
* `table tool_capabilities` - описание инструмента, которым был нанесён удар;
* `Position dir` - вектор, задающий направление удара;
* `number damage` - предполагаемый урон, рассчитанный движком по стандартному алгоритму.

Если `func` возвращает `false` или `nil`, игроку наносится урон `damage`, в противном случае урона нанесено не будет (однако альтернативный урон можно прописать в самой функции).

## Примечания

1. ↑ В том числе обрабатывается удар, вызванный с помощью `player:punch()`.
Minetest.register entity

## Синтаксис

```
nil = minetest.register_entity(string name, table entity_definition)

```

## Описание

Регистрирует новый тип сущности под именем `name`, добавляя его описание в глобальную таблицу minetest.registered\_entities.

**ВАЖНО**: функции регистрации работают только во время инициализации; вызов во время игровой сессии порождает ошибку и падение сервера.

Таблица `entity_definition` может содержать следующие поля:

* `initial_properties = table` Начальные свойства объекта.
* `on_activate = function(self, staticdata, dtime_s)`
* `on_step = function(self, dtime)`
* `on_punch = function(self, puncher, time_from_last_punch, tool_capabilities, dir)`
* `on_rightclick = function(self, clicker)`
* `get_staticdata = function(self)`

## Примеры

```
local boat = {
	physical = true,
	collisionbox = {-0.5, -0.35, -0.5, 0.5, 0.3, 0.5},
	visual = "mesh",
	mesh = "boats\_boat.obj",
	textures = {"default\_wood.png"},
	driver = nil,
	v = 0,
	last\_v = 0,
	removed = false,
}

minetest.register\_entity("boats:boat", boat)

```

## Примечания

1. ↑ TODO: здесь нужна ссылка на основную статью
2. ↑ TODO: здесь неполный список, к тому же без описания и указания типов, нужно уточнять.
3. ↑ ObjectRef:get\_properties? кроме того, эти же свойства могут быть включены непосредственно в `entity_definition`
Minetest.get player information

## Синтаксис

```
table | nil = minetest.get_player_information(string player_name)

```

## Описание

Возвращает таблицу, содержащую информацию о подключении игрока с именем `player_name`.
Если игрока с таким именем в текущий момент нет на сервере, вернёт `nil`.

Таблица содержит следующие поля:

* `string address`;
* `number ip_version`;
* `number min_rtt`;
* `number max_rtt`;
* `number avg_rtt`;
* `number min_jitter`;
* `number max_jitter`;
* `number avg_jitter`;
* `number connection_uptime`.

Таблица будет содержать следующие поля, только если сервер собран с флагом `-DCMAKE_BUILD_TYPE=Debug`:

* `number ser_vers`;
* `number prot_vers`;
* `number major`;
* `number minor`;
* `number patch`;
* `string vers_string`;
* `string state`.

## Примечания

1. ↑ TODO: здесь только список, необходимо добавить описания.
Minetest.write json

## Синтаксис

```
string | nil = **minetest.write\_json**(table data, *boolean styled = false*)

```

## Описание

Преобразует таблицу Lua в строку JSON.

Возвращает строку или `nil` и сообщение об ошибке.

Если `styled == true`, выводится в удобочитаемом формате.

Несериализуемое содержимое, такое как функции и пользовательские данные, вызовет ошибку.

**Предупреждение**: JSON более строг, чем формат таблицы Lua:

* вы можете использовать только строки и положительные целые числа, по крайней мере, одного, в качестве ключей;
* нельзя смешивать строковые и целочисленные ключи (это связано с тем, что JSON имеет два разных значения массива и объекта).
Minetest.create schematic

## Синтаксис

```
unknown = **minetest.create\_schematic**(
    Position p1, Position p2,
    table probability_list,
    string filename,
    table slice_prob_list
)

```

## Описание

Создаёт схему из части карты между точками `p1` и `p2`.

Вероятности и (место силы) для каждого узла можно задать в таблице `probability_list`, которая представляет собой список таблиц со следующими полями:

* `Position pos` -- координаты модифицируемого узла;
* `number prob` -- целочисленное значение от 0 до 255, которое кодирует вероятность и (место силы); вероятность имеет уровни от 0 до 127, затем можно добавить 128 для кодирования (места силы) на узел; для вероятности, обозначенной как 0-255, разделите на 2 и округлите вниз, чтобы получить значения 0-127, затем добавьте 128, чтобы применить силу-место на узел.

Если в `probability_list` есть несколько записей на одну и ту же координату, то используется последняя.

Если в `pos` не находится внутри `p1` и `p2`, то оно игнорируется.

Если `probability_list == nil`, вероятности к узлам не применяются.

Так же можно применить указанную вероятность к горизонтальным слоям. Таблица `slice_prob_list` аналогична `probability_list` и содержит таблицы, состоящие из двух полей:

* `number ypos` -- высота среза, для которого применяется вероятность (самый нижний слой в схеме соответствует `ypos == 0`);
* `number prob`.

Если `slice_prob_list == nil`, вероятности к срезам не применяются.

Схема (может быть) сохранена в формате Minetest Schematic в файл с именем `filename`.
Minetest.register alias force

## Синтаксис

```
nil = minetest.register_alias_force(string name, string conver_to)

```

## Описание

То же, что и register\_alias(). Отличие только в том, что заменяются в том числе и зарегистрированные имена.

**ВАЖНО**: функции регистрации работают только во время инициализации; вызов во время игровой сессии порождает ошибку и падение сервера.

## Примечания

1. ↑ TODO: проверить, в какую глобальную таблицу заносится описание.
Minetest.after

## Синтаксис

```
nil = minetest.after(number time, function func[, arg_1, arg_2, ...])

```

## Описание

Вызывает функцию `func` через `time` секунд после использования. Дополнительные аргументы, если они есть, передаются функции `func`.

## Примечания

1. ↑ TODO: проверить, сохраняется ли таймер при перезагрузке сервера.
2. ↑ TODO: проверить, в какой момент рассчитываются аргументы, если они вычисляемые.
Minetest.sound play

## Синтаксис

```
number = minetest.sound_play(SoundSpec sound_spec, table sound_parameters)

```

## Описание

Запускает воспроизведение звука. Возвращает целое число, являющееся, судя по всему, глобальным (в пределах сессии) номером звукового потока, который используется для остановки звука с помощью sound\_stop().

Таблица `sound_parameters` описывает дополнительные параметры воспроизведения. Движком обрабатываются следующие поля:

* `number gain = 1.0` -- усиление звука;
* `boolean loop = false` -- зацикленный звук;
* `string to_player` -- звук слышен только игроку с этим именем;
* `Position pos` -- источник звука привязан к этим координатам;
* `ObjectRef object` -- источник звука привязан к этой сущности;
* `number max_distance = 32` -- максимальная дистанция от источника, на которой слышен звук (используется евклидова метрика).

## Примечания

1. ↑ TODO: инфа насчёт "глобальности" нуждается в проверке.
2. ↑ TODO: описание полей таблицы `sound_parameters` является переводом документации и нуждается в проверке.
Minetest.request http api

## Синтаксис

```
table | nil = **minetest.request\_http\_api**()

```

## Описание

Возвращает `HTTPApiTable`, содержащий http-функции, если вызывающему моду был предоставлен соответствующий доступ в `secure.http_mods` или `secure.trusted_mods`; в противном случае возвращает `nil`.

Возвращаемая таблица содержит функции `fetch`, `fetch_async` и `fetch_async_get`.

Работает только во время инициализации; вызывать только из основной области действия мода (не из функции).

Функция существует только в том случае, если сервер был собран с поддержкой cURL.

**ВАЖНО**: Не предоставляйте другим модам доступ к таблице, возвращаемой этой функцией, держите её в локальной переменной.
Minetest.clear objects

## Синтаксис

```
unknown = **minetest.clear\_objects**(*table options*)

```

## Описание

Удаляет все объекты на карте. Принимает в качестве необязательного аргумента таблицу `options` с полем `mode`, которое может иметь следующие значения:

* `"full"` - загружает и просматривает каждый блок карты, очищая объекты (значение по умолчанию);
* `"quick"` - очищает объекты сразу в загруженных блоках карты, объекты в не загруженных блоках карты будут очищены только при следующей активации этих блоков.

## Примечания

1. ↑ TODO: необходимо уточнить возврат функции.
Minetest.get inventory

## Синтаксис

```
InvRef = **minetest.get\_inventory**(table location)

```

## Описание

Возвращает инвентарь, закреплённый за локацией.

Таблица `location` может содержать следующие поля:

* `string type` -- тип локации

* `player` -- инвентарь привязан к игроку;
* `node` -- инвентарь привязан к узлу;
* `detached` -- отдельный инвентарь;

* `string name` -- имя игрока (для `type == "player"`) или инвентаря (для `type == "detached"`);
* `Position pos` -- координаты узла, к которому привязана локация (только для `type == "node"`).
TODO

## Текущие задачи (помимо добавления новой информации)

Приведение существующих статей к общему виду:

* по существующим статьям (где осталось) заменить ссылку на старый lua\_api.txt на шаблон;
* убрать кнопки "править" напротив разделов, расставив в статьях макрос \_\_БЕЗ\_РЕДАКТИРОВАНИЯ\_РАЗДЕЛА\_\_, там, где они ещё есть;
* статьи с редакцией до 11.03.2019 привести к виду, описанному здесь;

Разработка шаблонов:

* предупреждение о работе только во время запуска (обычно для функций регистрации);
* аналог "основной статьи", но in-line (что-то вроде *(подробнее см. link)*);

Разработка правил оформления:

* придумать, что делать с пустым разделом "примечания", точнее с висящим названием раздела, когда сносок в статье нет (возможно, спустить туда шаблоны-состояния (пустышка/перевод/заготовка/страница));
* стандартизировать описание полей таблицы (т.е. когда надо расписать, какие поля таблица содержит, и кто из них за что отвечает);
* определиться с оформлением в тексте строковых (брать ли в кавычки) и числовых (брать ли в <code>) значений;
* разобраться с терминологией и ссылками на неё (возможно - раскидать на отдельные статьи);
Minetest.register abm

## Синтаксис

```
nil = minetest.register_abm(table abm_definition)

```

## Описание

Регистрирует ABM, добавляя его описание в глобальную таблицу minetest.registered\_abms.

**ВАЖНО**: функции регистрации работают только во время инициализации; вызов во время игровой сессии порождает ошибку и падение сервера.

Таблица `abm_definition` может содержать следующие поля:

* `string label`;
* `table | string node_names`;
* `table | string neighbors`;
* `number interval`;
* `number chance`;
* `boolean catch_up`;
* `function action(Position pos, NodeTable node, number active_object_count, number active_object_count_wider)`.

## Примечания

1. ↑ TODO: нужно более подробное описание или ссылка на основную статью.
2. ↑ TODO: здесь только список, нужно добавить описания.
Raycast

## Описание

Райкаст на карте, работающий с коробками выбора.

Его можно создать функцией raycast() или аналогичной `Raycast(pos1, pos2, objects, liquids)`.

Может использоваться как итератор в цикле `for`:

```
local ray = Raycast(...)
for pointed\_thing in ray do
  ...
end

```

Карта загружается по мере продвижения луча. Если карта будет изменена после создания `Raycast`, изменения могут повлиять или не повлиять на объект.

## Методы

```
PointedThing | nil = ray:next()

```

Возвращает следующую вещь, на которую указывает луч, или `nil`.
Minetest.close formspec

## Синтаксис

```
boolean = minetest.close_formspec(string player_name, string form_name)

```

## Описание

Скрывает для игрока с именем `player_name` показанное ранее под именем `form_name` меню

.

Возвращает `true` в случае успеха и `false` - если игрока с таким именем в момент вызова нет на сервере

.

Равносильно вызову `minetest.show_formspec(player_name, form_name, "")`.

## Примечания

1. ↑ TODO: определиться с термином (меню или форма), дать ссылку на основную страницу по теме.
2. ↑ TODO: а если нет `form_name`?
NodeMetaRef

## Описание

Метаданные узла.

Могут быть получены функцией get\_meta().

## Методы

Наследует все методы MetaDataRef, кроме того имеет собственные:

```
InvRef = metadata:get_inventory()

```

Возвращает ссылку на инвентарь, прикреплённый к узлу.

```
unknown = metadata:mark_as_private(string key)
unknown = metadata:mark_as_private(table keys)

```

Помечает ключ `key` (либо каждый ключи из списка `keys`) как приватный, что предотвращает его отправку клиенту.

Обратите внимание, что «приватный» статус будет сохранён только при наличии связанной пары ключ-значение, так что лучше всего вызывать это при инициализации всех других метаданных (например, в вызове `on_construct`).