recursal/Fanatic-Fandom huggingface dataset:
GetSceneActions

`sorted_acts = PlayerActionPicker:GetSceneActions(useitem, right)`

## Description

Get actions an item makes available to a player. For example a wormhole might have the JUMPIN and LOOKAT actions.

## Parameters

* `useitem` - The item whose actions you want to get.
* `right` (optional) - If true get the alternate(right-click) actions for the item.

## Examples

`actions = GLOBAL.ThePlayer.components.playeractionpicker:GetSceneActions(some_entity)`

## Notes

* This function is defined in `components/playeractionpicker.lua`.
GetPersistentString

`TheSim:GetPersistentString(filename, onload)`

## Parameters

* `filename` - Name of the file to load.
* `onload` - Function that is called when file is loaded.

## Examples

```
-- Load a string from 'string.txt'.
GLOBAL.TheSim:GetPersistentString("string.txt", function(load\_success, data)
	if load\_success == true and data ~= nil then
		mystring = data
	end
end)

-- Load a number from a file with the same name as your mod's folder.
GLOBAL.TheSim:GetPersistentString(modname, function(load\_success, data)
	if load\_success == true and data ~= nil then
		mynumber = GLOBAL.tonumber(data)
	end
end)

-- Load json data from 'save.json' using a named function for onload.
function LoadJSON(load\_success, data)
	if load\_success == true and data ~= nil then
		myjson = GLOBAL.json.decode(data)
	end
end

GLOBAL.TheSim:GetPersistentString("save.json", LoadJSON)

```

## See Also

* Persistent Strings
* CheckPersistentStringExists
* ErasePersistentString
* GetPersistentStringInClusterSlot
* SetPersistentString
* SetPersistentStringInClusterSlot
Modmain.lua

Here you should do next things:

```
require
modimport
```

(see: API/Common functions)

### Set PrefabFiles

PrefabFiles is a variable that DST expects to be set by the modmain.lua script. Write there a list of strings with all prefabs you added.

### Set Assets

Similar to PrefabFiles, here you should write list of your assets.
Please see: Assets
My Voice

**My Voice** is the first full-length album by Taeyeon. It was released on February 28, 2017. Prior to the release of the album, a music video for "I Got Love" was released on February 18, 2017 as a promotional tool.

A deluxe edition of the album, containing the new title track "Make Me Love You", two new songs and the previous single "11:11", was released on April 5, 2017.
Game lifecycle

New game started

### Location

Level has a set of locations (e.g.: forest, cave). They are connected by worldmigrator components.
See: Shards and Migration Portals

Each level sets one location for player to start with.

### Task set, Task, Rooms

https://dontstarve.fandom.com/wiki/World\_Generation

Functions that affect it:

```
AddModLevel
AddLevelPreInit()
AddLevelPreInitAny()

AddLocation
AddStartLocation

AddModTaskSet()
AddTaskSetPreInit()
AddTaskSetPreInitAny()

AddTask
AddTaskPreInit

AddRoom
AddRoomPreInit

AddGamePostInit
AddSimPostInit
```

//TODO worldgen/set pieces docs
Icon codes

I first saw few of them used in some other modes. It was science station icon and in hex-decimal its code is "F3 B0 80 94". So
I tried all codes from "F3 B0 80 00" to "F3 B0 80 FF". Only codes in range "F3 B0 80 80" - "F3 B0 80 AF" seems to work.

```
󰀀 󰀁 󰀂 󰀃 󰀄 󰀅 󰀆 󰀇
󰀈 󰀉 󰀊 󰀋 󰀌 󰀍 󰀎 󰀏
󰀐 󰀑 󰀒 󰀓 󰀔 󰀕 󰀖 󰀗
󰀘 󰀙 󰀚 󰀛 󰀜 󰀝 󰀞 󰀟
󰀠 󰀡 󰀢 󰀣 󰀤 󰀥 󰀦 󰀧
󰀨 󰀩 󰀪 󰀫 󰀬 󰀭 󰀮 󰀯
```
SetSharedLootTable

`SetSharedLootTable(name, table)`

## Description

Set the loot a prefab drops when it is killed or destroyed.

## Parameters

* `name` - The name of the prefab whose loot table we are setting.
* `table` - A table containing the names and drop rates of the loot.

## Examples

```
-- Create a loot table that always drops two gold nuggets, has a one in ten chance of dropping a red gem, and a one in a hundred chance of dropping a green gem.
rock1\_loot = {
    {'goldnugget', 1.00},
    {'goldnugget', 1.00},
    {'redgem', 0.10},
    {'greengem', 0.01},
}
-- Set our loot table to work with regular boulders.
GLOBAL.SetSharedLootTable("rock1", rock1\_loot)

```

## Notes

* This function is defined in `components/lootdropper.lua`.
AddRecipeTab

`AddRecipeTab(rec_str, rec_sort, rec_atlas, rec_icon, rec_owner_tag, rec_crafting_station)`

## Description

AddRecipeTab adds a crafting tab to the game. This is most typically used to add crafting tabs for specific characters, or for specific crafting structures.

## Parameters

* `rec_str` - The name of the crafting tab.
* `rec_sort` - The sort order of this recipe tab. Determines where on the crafting tab this recipe tab gets placed. Using 999 will put it on the bottom like most custom recipe tabs.
* `rec_atlas` - The .xml Atlas file associated with the rec\_icon.
* `rec_icon` - The .tex file containing the recipe tab's icon.
* `rec_owner_tag` - The builder tag a character must have if only specific characters can use it. Can be set to nil to allow all characters to access it.
* `rec_crafting_station` - If set to true, this crafting tab requires a crafting station to be used. If set to false, or left blank, a crafting station will not be required.

## Return Value

A table is generated using the parameters above, and is added to the CUSTOM\_RECIPETABS table.
Returns the table generated for this recipe tab.

## Examples

Let's take Wickerbottom's Books tab for example. If we wanted to generate the same tab we would call the function using:

`AddRecipeTab("BOOKS", 999, nil, "tab_book.tex", "bookbuilder")`

This accomplishes the following:

* Names the tab "BOOKS"
* Gives the tab the highest sort\_order, putting it on the bottom of the crafting bar.
* Provides no atlas associated with the icon.
* Sets the icon for the crafting tab to "tab\_book.tex"
* Makes it so a character must have the "bookbuilder" tag in order to access this crafting tab.

Now let's take the Ancient Tab for example. It is accessed by standing next to an Ancient Pseudoscience Station. If we wanted to generate a similar tab, we would call the function using:

`AddRecipeTab("ANCIENT", 100, nil, "tab_crafting_table.tex", nil, true)`

This accomplishes the following:

* Names the tab "ANCIENT"
* Gives the tab a sort\_order of 100 which is second to last on the crafting bar. This puts it above character-specific tabs which typically have sort\_order 999.
* Provides no atlas associated with the icon.
* Gives the crafting tab "tab\_crafting\_table.tex" as its icon, which looks like the Ancient Pseudoscience Station.
* Makes it so the crafting tab is only available when the player stands next to the appropriate crafting station.

## Notes

* The definition for this function can be found in `modutil.lua`.
* Examples for in-game recipe tabs can be found in `constants.lua` under RECIPETABS and CUSTOM\_RECIPETABS. However, they are defined using the tables AddRecipeTab would typically generate and return.
* Recipe tabs that use the atlas parameter currently include the turf crafting tab, Wigfrid's battle songs tab, and the trading tabs from The Gorge.
* If the player has too many recipe tabs for the crafting bar, recipe tabs will overlap at the bottom of the crafting bar. The player can still use the scroll wheel to iterate through the hidden tabs.

## See Also

* modutil
* API/AddRecipe
Novice guide

Here are some links I found useful.

### Basics:

By rezecib **-** Getting started with modding DST (and some general tips for DS as well)

https://forums.kleientertainment.com/forums/topic/47353-guide-getting-started-with-modding-dst-and-some-general-tips-for-ds-as-well/#StartWithAnotherMod

Programming in Lua (first edition):

https://www.lua.org/pil/contents.html#P1

### Advanced things:

By PeterA - net\_variable types and sending data from server/host to clients:

https://forums.kleientertainment.com/forums/topic/48264-net\_variable-types-and-sending-data-from-serverhost-to-clients/

By tetrified - Intro to worldgen

https://forums.kleientertainment.com/forums/topic/48070-guide-intro-to-worldgen/
AddChanceLoot

`LootDropper:AddChanceLoot(prefab, chance)`

## Description

Add to the loot an item drops when it is killed or destroyed.

## Parameters

* `prefab` - The name of the prefab to add to the loot table.
* `chance` - The drop chance for the added prefab.

## Examples

```
-- Add a gold nugget to the standard boulder's drops. 1.00 means 100% change of dropping.
AddPrefabPostInit("rock1", function(inst)
    inst.components.lootdropper:AddChanceLoot("goldnugget", 1.00)
end)

```

## Notes

* This function is defined in `components/lootdropper.lua`.
Home

> You can create your own mods for Don’t Starve and Don't Starve Together to change your game and share with the community. Add in new characters, play with the world generation, create new creatures and items, or take your adventure in a whole new direction!
>
> JoeW

Where to start from, some useful links and guides: Novice guide

Modding Software and Tools: Tools

Mod Structure

Game lifecycle

Core DST objects and event

Shards and Migration Portals

###  Language

Mods are created using the scripting language Lua. Don't Starve Together uses Lua version 5.1.

###  Interfaces

Interfaces provide access to game functions that serve many purposes.

* TheGameService
* TheInputProxy
* TheInventory
* TheItems
* TheLeaderboards
* TheNet
* TheRawImgui
* TheShard
* TheSim
	+ Persistent Strings
* TheSystemService
* WorldSim

* ThePlayer
	+ Transform
* TheWorld
	+ Map

###  Functions

Functions are defined in Lua files found in `scripts.zip` which is located in the `data/databundles` folder of the Don't Starve Together game files. Unzipping this file and exploring the scripts it contains is a great way to get to know more about how the game works.

* modutil
	+ Loading Tips
	+ Remote Procedure Calls
* simutil

###  Classes

Classes are sets of variables and functions grouped together to create useful objects.

* components
* EntityScript
* EventHandler
* TheFrontEnd
* TheInput

### Some specific APIs

These wont be used for every mod, but would be very relevant to some.

* API/AddRecipe - For adding crafting recipes to the game.
* API/Prefab
* API/cooking
* API/containers.lua

### DST core APIs

This is an advanced modding stuff. Some great mods use these successfully. But in general it is quite a low level API.

* API/ModManager

### Contribution

See the Style Guide for some information on contributing to the wiki.

There is a template for making pages for API functions in Template:API Function.
An example that uses this template is AddRecipeTab.

A list of API functions that need more documentation can be found in modutil.

A list of all pages on this wiki can be found in Special:AllPages.

## Blogs

 BLOG\_LISTING\_POST\_BUTTON\_TEMPLATE

Flit
6 July 2022

 0

## Spelunk Key: Press a key to jump down holes.

I recently uploaded my first mod to the Steam Workshop. It was a simple idea, add a keyboard control for jumping down wormholes and sink holes. I was tired of accidentally clicking on bats when trying to enter the caves.

The basic functionality was reasonably straightforward, add a keyhandler that a…

Read Full Post

See more >
*Need help building out this community?*

* Rules of this wiki
* Getting Started
* How to Contribute
* Managing your new community
* Guides
* All Help articles

You can also be part of the larger Fandom family of communities. Visit Fandom's Community Central!

*Community Founders*: Write a good and paragraph-length description for your welcome section about your topic. Let your readers know what your topic is about and add some general information about it. Then you should visit the admin dashboard for more tips.
TheWorld

### userdata

```
entity
GroundCreep
Map
Pathfinder
SoundEmitter
Transform
WaveComponent

```

### functions

```
checkwaveyjonestarget
OnRemoveEntity
PostInit
removewaveyjonestarget
reservewaveyjonestarget
spawntask
spawnwaveyjones

```

### tables

```
actioncomponents
components
event_listeners
event_listening
generated
lower_components_shadow
meta
minimap
moonstormwindowovertask
net
pendingtasks
replica
shard
state
topology
updatecomponents
wallupdatecomponents
worldstatewatching

```

### booleans

```
has_ocean
hideminimap
inlimbo
ismastershard
ismastersim
persists
watchingcycles

```

### numbers

```
GUID
spawntime

```

### strings

```
name
prefab
worldprefab

```
Downtime Plots

Note: please make sure to read the rules on Downtime before continuing!

(A table used for determining the price of the plot based on the size of the building being built, determined by the number of rooms a building has)

**Purchasing Just the Land:**

* If you wish to purchase a plot of land, but do not wish to build on it right away, then you may purchase a plot at the Standard rating, however should you wish build more than the maximum 9 rooms on this plot when the time comes, you must purchase the appropriate category of land needed to house this expansion, ie a Large plot for an expansion calling for 10 to 19 rooms, a XL plot for an expansion calling for 20 to 30 rooms, and so on, paying the difference of the cost for your upgrade
	1. Example: Jimmy wants to expand his Standard Town plot into a Large Town plot. He must pay an additional 800 Gp fee to do so, with his total Gp spent on the plot coming out to be 1,600 Gp, aka the cost of a Large Town plot.
* When expanding a plot like this, the new land acquired is considered to have the same Hardship/Boone as the original plot, with the owner paying the difference for things like plot ruins and the like.
	1. Example: Jimmy has now expanded his plot, but his original plot had the Hardship Crumbling Expectations. He already paid 500 Gp to fix his hardship on the original plot, but with this new expansion, he must fix the foundations on the new areas of his plot. Since Jimmy has upgraded to a Large Town plot (Plot Rating 3), this will cost him an additional 1,000 Gp to fix, with the total amount of Gp spent on fixing plot foundations equaling 1,500 Gp, the amount of gold needed to overcome the Crumbling Expectations hardship for a Large Town Plot.

Status of the Land being bought

(A table used for determining the status of the land once it is bought, granting Hardships/Boones to its new owner)
TheItems

`TheItems` interface provides access to functions that manage skins. Its metatable is found in `ItemServerProxy`.

## Functions

```
BarterGainItem
BarterLoseDuplicateItems
BarterLoseItem
GetBarterBuyPrice
GetBarterSellPrice
GetEventStatus
GetIAPDefs
GetLevelForWXP
GetWXPForLevel
OpenBox
RedeemCode
ReportCrowGame
ReportCrowKidGame
ReportRedbirdGame
ReportSnowbirdGame
StartPurchase
SwapItems

```
FindEntities

`entities = TheSim:FindEntities(x, y, z, radius, must_have_tags, cant_have_tags, must_have_one_of_tags)`

## Description

This function return a table of entities, within a radius of a location, that match the specified tags.

## Parameters

* `x` - The x coordinate our search is centred on.
* `y` - The y coordinate our search is centred on.
* `z` - The z coordinate our search is centred on.
* `radius` - The radius of the area we want to find entities in.
* `must_have_tags` (optional) - A table containing tags that entities must have.
* `cant_have_tags` (optional) - A table containing tags we want to exclude from results.
* `must_have_one_of_tags` (optional) - A table containing tags that entities must have at least one of.

## Return Value

* `entities` - A table containing all the entities that match our criteria.

## Examples

```
-- Get the players current position.
x,y,z = GLOBAL.ThePlayer.Transform:GetWorldPosition()

-- Find all entities close to the player.
entities = GLOBAL.TheSim:FindEntities(x, y, z, 4)

-- Find all cookable foods near the player.
entities = GLOBAL.TheSim:FindEntities(x, y, z, 4, {"cookable"})

-- Find all cookable foods near the player, except for mushrooms.
entities = GLOBAL.TheSim:FindEntities(x, y, z, 4, {"cookable"}, {"mushroom"})

-- Find all entities that are on fire or burnt.
entities = GLOBAL.TheSim:FindEntities(x, y, z, 4, nil, nil, {"fire", "burnt"})

-- Get a count of the number of trees, excluding stumps, that are nearby.
tree\_count = #GLOBAL.TheSim:FindEntities(x, y, z, 40, {"tree"}, {"stump"})

```

## See Also

* FindEntity
* FindClosestEntity
SetPersistentString

`TheSim:SetPersistentString(filename, data, encode, onsave)`

## Parameters

* `filename` - Name of the file to save.
* `data` - Data to save in file.
* `encode` (optional) - Boolean flag indicating if data should be encoded.
* `onsave` (optional) - Function that is called when file is saved.

## Examples

```
-- Save a string to 'string.txt'.
GLOBAL.TheSim:SetPersistentString("string.txt", "An example string.")

-- Save an encoded number to a file with the same name as your mod's folder.
GLOBAL.TheSim:SetPersistentString(modname, 124, true)

-- Save json data to 'save.json' using a named function for onsave.
function SaveJSON(save\_success)
	if save\_success == true then
		print("Save successful.")
	end
end

local data = {heat = "hot", time = 3}
GLOBAL.TheSim:SetPersistentString("save.json", GLOBAL.json.encode(data), false, SaveJSON)

```

## See Also

* Persistent Strings
* CheckPersistentStringExists
* ErasePersistentString
* GetPersistentString
* GetPersistentStringInClusterSlot
* SetPersistentStringInClusterSlot
AddLoadingTip

`AddLoadingTip(stringtable, id, tipstring, controltipdata)`

## Parameters

* `stringtable` - Which string table our tip should be added to.
* `id` - A unique id for this tip.
* `tipstring` - The text string to use for this loading tip.
* `controltipdata` - A table of controls to be substituted into `tipstring`.

## Notes

* This function is defined in `modutil.lua`.
Holly

Formerly dubbed "the gayest god killer of all time" Holly wishes to reclaim that title after a coup that occurred by some of Gods fallen angels to strip Holly of her title. She goes after the big boss that created these Angels as he still lurks. Creating and Destroying at will.

Personality:

"Heavy Hitter, God Beater" as she always said and the same could be said for her personality, when she see's a God she hits hard and doesn't miss. Never pulling her punches and making sure they're out for the count, outside she's sweet and loves nothing more than adventuring with her mates.

Skills:

She is proficient in small dark matter bursts from her fingers and wields a mighty claymore named Claire, it is infused with dark matter within a small orb on it's hilt allowing for almost weightless swings allowing it to send flying even the toughest foes. She has a sixth sense and is able to tell at least 3 seconds into the future which comes in handle a bunch of times, especially when you make enemies with Gods !

Backstory:

Holly the gayest god killer of all time, wasn't always a God killer. She lived a terrible life only filled with despair and misery. She was grafted for The Great Angel War II at the young age of 6, due to being able to manipulate dark matter she was a powerful asset but didn't like being used as a tool. She was on the Angel Side and was a accidental by-product of what God named the perfect girl. Made from ketamine, spice and everything nice. He sadly failed this experiment due to an oversight. Accidentally forgetting to give the soul positive matter and instead allowing it to manifest with non pure matter in the surrounding air caused by the energy from The Great Angel War I. She longed for vengeance after this and set off on a lonesome quest to end Gods evil reign. She manages to do it but little did she know God just barely escaped. She went back to the enemy field and told them what happened and how the great angel wars are now over. The humans welcomed her and gave her the title of The Gayest God Killer of All Time. That was until the Coup planned by the Angels. In which they were anonymously told that God was still alive and Holly was a fraud. All she had was a claymore, some friends and a lust to gain back her name. Here we are. The Great Angel War III and hopefully the final one.

Backstory 2

She has no body because she lost the Reaper's Game

### Aliases

Holly Gamer the 79thHolly

Hollgamer

Hollgay

Hollyween

cheese
Hyperbolica

**Hyperbolica** is a game made by CodeParade that was released to Steam on the 14th of March, 2022. It is the second actual game (after HyperRogue) to feature a geometry other than Euclidean. It was also released on itch.io. When you buy it on itch.io a Steam Key is included.

## Features

Hyperbolica features geometries such as Hyperbolic, Spherical, and Euclidean Geometry.

Hyperbolic is mostly used. Spherical is used at the farm. Euclidean Geometry is used outside Hyperbolica meaning in the classroom and the end fight.

It has a collection of mini-games stylized to many different genres.

## Technical

It can be played normally on PC and in VR. It also supports controller.
The Maze

**The Maze** is a location in Hyperbolica. A Platonic Crystal can be found here. To get there you need to get a map from the soothsayer.

In there you can find someone who gives you a Giant Pin that leads you to the Crystal.

## Map

There are several things and robots you can find in the maze:

* There are a few lecterns with information about the lore of Hyperbolica you can read
* You can find the hexahedron at the very end of the maze.
* There is a lost kid who will give you a yo-yo if you guide them back to the entrance.
* You can collect a pin for your map that will guide you to the hexahedron from a robot.
* There is a chocolate bar that can be collected
* The maze is one of the locations of SuperGuy137, the content creator
* You can talk to Iris, the entrepreneur at a specific location in the maze
Claire Woods

The Claire Woods covers almost the entirety of the Western side of Cielargent. It is a luxuriant and deep temperate forest. The fauna and flora are very diverse and colorful. Some say certain parts of it remain unexplored, even by its inhabitants.

The forest is mostly inhabited by communities of elves. These elves have a particular bond with nature and live in harmony with it, usually making settlements and villages that intertwine deeply with the trees themselves. They gladly accept outsiders as long as they show respect to nature, sometime even letting them join their community. However, if one acted against the forest, they will promptly banish them from their land.

This can be a problem with certain lords of the Cielargent houses. Many of them have lands connected to or even within the forest and often want to expand upon it. This may sometime cause some friction between Cielargent and the elven people. While the state agreed with the elves to not interfere on their domain, some lords do not see it that way.

Many druidic circles live there as well. They rarely go out of the forest and usually keep to the most "untouched" parts of the land.
Holly Lore Wiki

All of the very important lore of Holly

**Welcome to the Holly Lore Wiki!**
Welcome to the most legendary Wiki of all time.

## Important articles

PlaceholderA page about your topicPlaceholderA Main CharacterPlaceholderThe First EpisodePlaceholderAn Important LocationPlaceholderA Key EventPlaceholderA Crucial ItemThe worst image in existenceHolly's HousemarioSwagmeister"Steve Palchuck from hit Netflix original Trollhunters

*Need help building out this community?*

* Rules of this wiki
* Getting Started
* How to Contribute
* Managing your new community
* Guides
* All Help articles

You can also be part of the larger Fandom family of communities. Visit Fandom's Community Central!

*Community Founders*: Write a good and paragraph-length description for your welcome section about your topic. Let your readers know what your topic is about and add some general information about it. Then you should visit the admin dashboard for more tips.
Alexander The Vegito king

Wielder of the cum blade

Destroyer of yo mammians

The perfect, most potent ultimate fusion of swag and strength

Really said fuck it and ran over a meatball sub on the 17th of January 2019

Built different

father of Big Floppa

Member of the Hollydust Crusaders

savior of the hollyverse from Kokichi Chungus (Final Form)

## Alex

### Aliases

Alex, The Vegito King, King Vegito, Based God
Ashe

Ashe is one of the many main characters that joins Holly on her god-slaying quest. He kins Hubert von Vestra from Fire Emblem: Three Houses.

## Overview

Ashe suffers from a measly 5% Strength, Speed, and Defense growth. However, his Luck, Magic and Res growths are outstanding, boasting a 70% growth rate. This means he is able to excel in many magic classes (though it is recommended he learns dark magic classes, as he is able to learn Hades Ω), and he will able to land many critical hits while avoiding many counter crits. (If needed, he can equip the Rafail Gem to ignore the risk of being hit by a critical, just in case.)

Battalion Vantage is a must for Ashe, as he is fragile and can die easily, but will deliver very strong hits with ease. Battalion Wrath, when combined with Ashe’s outstanding Luck growth, can make for many, many critical hits delivered to the enemy, in case a regular spell just doesn’t cut it. Aegis and Pavise are both super helpful, but Ashe suffers from many Subject Weaknesses. If playing on NG+, however, Thyrsus can be equipped with the correct Dragon Sign, which grants Aegis and Pavise for free. If the Chalice of Beginnings is equipped alongside Vantage, then Ashe can be safe even from Bolting and Meteor. Additionally, his high Res growth makes him almost invulnerable to magic attacks.

Naturally, Ashe can eventually class into Dark Mage and Dark Bishop; however, if he accepts himself as trans female during a specific chapter (after filling certain conditions), he will lose both of these classes, but have access to the powerful Gremory, doubling his spell uses. If Dark Mage/Dark Bishop is mastered beforehand, however, he will keep the mastery skill regardless. Otherwise, if one knows what to do ahead of time, then Ashe can go through the Monk class line (Monk, Mage, Priest, Warlock, Bishop, Gremory). Pegasus Knight isn’t too hard to master despite his Subject Weaknesses, which can allow him to master Darting Blow, which offsets the weight problems of his spells.

If Ashe’s spells just don’t cut it, however, he is able to access his Persona. Ashe has access to Thanatos Picaro, which increases the power of his dark magic spells, as well as giving him extra attacks to work with. Door of Hades is more powerful than Hades Ω, and SP costs aren’t worrisome, since he can learn Spell Master to halve SP costs. However, his defense issue isn’t fixed, and Ashe is still susceptible to any physical hits.

Overall, Ashe is a literal glass cannon, unless if dealing with other mages. He dishes out powerful magic attacks with ease, and can take magic attacks head-on, but will suffer greatly against physical hits. He is better suited as an NG+ unit, being able to equip Thyrsus.
Components

A **component** is an object that is attached to a Prefab to give it functionality. This is useful for separating code from Prefab files, and sharing common functionality across multiple Prefabs.

One can use AddComponent to add a component to a Prefab in its Prefab file.

Once the component is initialized, it can be accessed through `inst.components.COMPONENTNAME` Where COMPONENTNAME is the name of the component in lowercase. Some components will require extra setup after AddComponent is called.

Components are each defined in their own lua file, in the scripts/components/ folder.

## See Also

* Prefab
* AddComponent
* Tag
Peepo

Peepo Von Peeponius the third is the third emperor of the Peeponius dynasty. He believes that Holly is a god herself, trying to kill every other god in existence. He's also a pretty decent human being. Peepo is also the leader of the Cum army

Personality:

He likes some things and doesn't like other things, that's really it when it comes to Peepo. He's quite a mysterious character.

Skills:

Master of archery and can apply elemental attributes to any arrow infused with the spirits of dead leaves. In which he also has the ability to draw power from.

Backstory:

Peepo was a old man when he began to see some bodily changes, he felt overflowed with youth in one autumns day in which he turned back into a young boy. In order to control his newfound power he had to store and limit his use. He had to go to the witches academy to get a negative magical catalyst in order to slow the rate at which he would draw energy into his own body to heal and remain youthful. This is when he awakened to some new ideas, due to being a special wielder of this Aken ability he experimented until he found a cause and a use. The cause being dead leaves and a use being his power to control the energy and infuse it into other items of matter. Hence the name Aken. He uses this to create elemental infusions with his arrows and was dubbed the elemental archer.
Little Sophi - Attacks

**Basic Attack - [Blessings Arrow]**

Uses her bow and a blessed arrow, firing it at an enemy target. The blessed arrow cleanses all middle-tier buffs from the target, dealing 80% ATK.

**Skill 1 - [Spiritual Cleanse]**

Summons a beam of holy light on the friendly target with the least HP, and removes all high-tier debuffs from them. Adds 2x **[DEF /\]** buffs and a **[Block]** buff for 20 seconds. If the target has no debuffs, heals them for 150% of Sophi's ATK every 2 seconds for 6 seconds.

**Passive 1 - [Incorporeal Angel]**

Sophi will become incorporeal for 3 seconds every 3 seconds during battle. Cannot be dispelled. Incorporeal beings take no damage from physical attacks, cannot be targeted, and are immune to status effects.

**Passive 2 - [Eternal Light]**

When Sophi is killed, she explodes in a blinding light, causing blessed petals to rain on the battlefield for 30 seconds. Heals friendly targets by 25% ATK every second, and lowers the ATK and DEF of enemy targets by 20%. Cannot be dispelled. When Sophi re-enters the battlefield, she increases her HP by 20%. Sophi can respawn multiple times, but the HP buff will not stack.

**Passive 3 - [Light of Hope]**

Increases the HP of Sophi by 20% for every Light hero present on the battlefield. Takes 50% less dmg from all damage types.

**Ultimate Skill - [Healing Blast]**

Lighting up and becoming nearly as bright as the very sun, Sophi dispels all high tier and lower debuffs from allies and all high tier and lower buffs from enemies. Then, she marks all nearby friendly targets with the **[Final Hope]** buff, increasing all of their stats by 25% for 30 seconds and her own attack and heal output by 50%. After, she will follow the hero with the highest attack, healing the friendly hero with the lowest HP by 56% her ATK per second, and periodically sending a wave of healing to all nearby heroes that heals all allies by 274% her ATK every 5 seconds. Her skill lasts 30 seconds.
Modinfo.lua

This file describes your mod. It sets what will be shown to everyone in the game. Check other mods to get examples.

(!) This is a script. You can (and I'd encourage you to do so) use variables and all lua functions to help yourself.
For example, if you have some common option types - declare them once and reuse.

## Mod info

```
name = "Your mod name"

description=
[[
This part will be shown in game as a short description. Size limits:
width: 52 characters
hight: 17 rows
]] -- You can make multiline strings like this in lua

author = "Name yourself"

version = "1.0.0"
-- Versioning 101:
-- 1.0.1 -> 1.0.2 is for "I fixed a bug!"
-- 1.0.1 -> 1.1.0 is for "I added a cool feature!"
-- 1.0.1 -> 2.0.0 is for "I added something really big and cool, but it wont work with old version saves"

forumthread = ""
-- you can add a link to a forum thread dedicated to your mod. Remove "http://forums.kleientertainment.com/index.php?%s"
-- it will be added by the game

api\_version = 10
-- Game needs to know what API your mod expects. As far as I know, current version is 10

dst\_compatible = true
dont\_starve\_compatible = false
reign\_of\_giants\_compatible = false
hamlet\_compatible = false
forge\_compatible = false
-- select where your mod should work

all\_clients\_require\_mod = true
-- You can set it to false if it is just a simple UI change that wont be noticeable to other players.
-- Anything that can affect the game world should have this set to "true"

icon\_atlas = "modicon.xml"
icon = "modicon.tex"
-- this sets your mod icon, see section below

server\_filter\_tags = {
   "something", "relevant", "to", "your", "mod"
}
-- this is how other players can find a server where your mod is used

configuration\_options = {
   -- list of all config parameters you want, see next section
}

```

### 'configuration\_options' fields

```
{
   name = "someName",
      -- This is how you will access your mod in the scripts. Should be unique

   label = "yourTitle",
      -- what will be visible to players. It will be cut if too long. On my PC maximum length was 27 characters

   hover = "on mouse hover hint",
      -- what will be shown as a hint on mouse hover. This field is limited too, about 156 characters.
      -- It will be placed into two rows if long enough

   options = {
      -- A list options. Each should be like:
      {
         description = "", -- Short string that will be shown to the user. Max length: 14 characters
         data = ""         -- string, number or boolean value
      }

   },

   default = 1
      -- Default value to be used
}

```

### How to get options in scripts

```
GetModConfigData("optionName")
```

### How to make title in options:

```
{
   name = "someName", -- you wont access it in the scripts, so any unique name will do
   label = "yourTitle",
   hover = "on mouse hover hint",
   options = { { description = "", data = false}}, -- A list of one item - boolean option without a description
   default = false
}
```

How it would look like:

## Text Icons

You can use special characters that will be shown as fancy icon in any label/description/hover text.

How to use them: Icon codes
Buffs and Debuffs

**Buffs**

**Block** - Blocks damage equal to 100% of the ATK of the target for the duration of the effect from all physical and ranged attacks, excluding status effects.

**Boundless** - Target becomes impervious to MOV SPD \/, Bind, Fear, and Seal.

**Camouflage** - Reduces the chance of being hit by a percentage.

**DEF** **Ignoring** - Ignores the DEF value of the target, dealing maximum damage with no DEF mitigation.

**DMG** **Reduction** - Reduces the damage a Gifted takes by a percent value. The percent value is not additive among effects that provide damage reduction, nor is it added with other forms of damage mitigation. Instead, DMG Reduction is applied after the initial damage has been mitigated by Block, DEF, and Natural damage mitigation.

Ex: ((100,000 x 0.2 [80% Natural DMG Reduction]) x 0.5 [50% DMG Reduction])

((100,000 x 0.2) x 0.5)

20,000 x 0.5

10,000 Final Damage

**Healing** **over Time [HoT]** - Heals the target by 1.75 max HP every second for the duration of the effect.

**Invincible** - Negates ALL damage received by all sources (including status effects) for the duration of the effect.

**Invisible** - Target is unable to be directly targeted. However, they can be guessed at through exposure from movement and attacks at a reduced hit chance (Approximately 50% chance). Can also be hit by AOE attacks, and can take damage from status effects.

**Parry** - Nullifies all damage from a single ranged or physical attack, occurring every 3 seconds for the duration of the effect.

**Piercing** - Cuts through [Block] effects and reduces effectiveness of DMG Reduction effects by 20%.

**Precise Blow** - Increases accuracy by 280%; attacks cannot be dodged.

**Quick** - Reduces CD and CT by 50% of Basic Attacks, and reduces CT of Normal and Ultimate Skills by 50%.

**Untraceable** - Allows target to avoid all direct damage and cannot be targeted. Cannot be traced. Can only take damage from AOE attacks and status effects.

**Debuffs**
Rika - Attacks

**Basic - [Target Acquired!]**

Level 5

Aims her laser guiding pistol at a point in the ground at the area with the most enemies. Then, she marks her target and surrounding enemies as ‘Targets’ (enemy gains a **[Targeted]** debuff, with no status ailments). Cooldown: 5 seconds.

**Skill 1- [Reinforcements]**

Level 5

Summons a *[Drone]*, and applies 5x **[DEF /\]** buffs to self for 20 seconds. Drone has **[Summoner]** debuff. Drone gains an **[Untraceable]** buff every 5 seconds, and lasts 5 seconds every time. Cooldown: 20 seconds.

**Skill 2 - [Marked Down]**

Level 5

Removes the **[Challenge]** and **[Provoke]** debuffs from all allies. Causes all allies to focus fire on the nearest weakest enemy target, causing them to be targeted. The enemy target receives 3x **[DEF \/]** debuffs, and receives 20% extra damage for the next 5 seconds. Cooldown: 15 seconds.

**Ultimate Skill - [Bombardment]**

Level 5

Calls in a barrage of 12 explosives on the battlefield, focusing the fire on the enemies with the **[Targeted]** debuff. Explosives deal 220% ATK in an AOE effect, incinerating the ground around the area for 10 seconds, inflicting the **[Burn]** debuff every second an enemy is exposed to the flames for 15 seconds, dealing 25% ATK every second and ignoring DEF. Targets with the **[Targeted]** debuff take an additional 35% ATK. Cooldown: 25 Seconds.

Return - Rika
Valkyrie - Attacks

**Basic Attack - [Whiplash]**

Level 5

Stabs multiple times at an enemy target in front of herself, dealing 26% ATK 7x, and adding a **[ATK /\]** buff to self for 8 seconds.

**Skill 1 - [Through-Strike]**

Level 5

Rushes through the enemy and deals a quick strike at the target, before rebounding and dealing more damage from other angles. Strikes through an enemy target from different angles, becoming **[Untraceable]** for 5 seconds. Deals 34% ATK x10 in this time period, adding an **[ATK /\]** and **[DEF /\]** on herself, moving so quickly her target becomes **[Disoriented]** for 5 seconds. This attack can proceed near-immediately almost any of her attacks.

**Zero CT - [Vanquish for Victory]**

Level 5

Begins the battle in the air, aiming herself at the enemy directly across from her, inflicting **[Stun]**, **[Provoke]**, and **[Bind]** for 5 seconds. Gathers a massive amount of energy into her blades. Becomes **[Invincible]** and adds 5x **[ATK /\ II]** buffs for 5 seconds. Then, slashes through the target, landing behind them after dealing a fatal blow. Deals 1190% DMG in a single strike. If there is no target in front, Valkyrie crashes down into the ground, inflicting 5x **[ATK /\ II]** buffs and a **[MOV SPD /\]** on self for 15 seconds.

**Ultimate - [Call of Judgement]**

Level 5

Declares the enemy target a sinner, then rushes them, landing her feet first infront of her target, causing an explosion before launching herself heaven-ward. Deals 125% ATK. Then strikes through the target from above, dealing 450% ATK. Jumps forth before rushing back, continuing with either her first skill or her basic attack.

Return - Valkyrie
Rise of the Gifted Wiki

A compendium of a WIP that extends itself to a book, and possible extensions into a game.

**Welcome to the Rise of the Gifted Wiki!**
This Wiki is free for anyone to comment on, and potentially edit! However, we'd appreciate no bogus edits.

## Important articles

PlaceholderWhat is ROTG?Main CharactersPlaceholderChaptersPlaceholderA Map of AlelisiaPlaceholderCatastrophePlaceholderBuffs and Debuffs

*Need help building out this community?*

* Rules of this wiki
* Getting Started
* How to Contribute
* Managing your new community
* Guides
* All Help articles

You can also be part of the larger Fandom family of communities. Visit Fandom's Community Central!

We believe in freedom for all to edit, as this is a WIP. As we grow, feel free to visit the admin dashboard.
Khorgrum

Khorgrum is the god of tradition, stone work and dwarven lore. He blesses the kingdom of Kargrim and makes sure the linage of its leader is preserved.

## History

Khorgrum is part of the primal pantheon of gods who saw the dawn of civilization. The kingdom of Kargrim itself was named after him, which explains the similarity between both names.

For hundreds of years, Khorgrum has watched over all dwarfs of Suidae, believing they were the superior race. Legends say he is the one who taught dwarves everything that makes them who they are, from extracting minerals from the bowels of the earth to the immaculate carving of stones so characteristics of the dwarven nation.

It is said that the royal family was handpicked by the god himself persists to this day. He is the father of the nation ,the shaper of stone and the lore keeper of rules.

## Appearance

Khorgrum is represented as a severe looking old dwarf with a long white beard and body as unwavering as a mountain. He wears an attire that could both fit an artisan's workshop as well as a battlefield and in his hand sits his legendary axe.

## Relations

Khorgrum is the kind of god who doesn't really befriend the others.

He has however a stern rivalry against Grunlekha as he seems to have an odd disdain for technology.

## Church of Khorgrum

A significant portion of the dwarves of Kargrim worship Khorgrum. He is a sort of father figure for the kingdom and has guided its development since its inception. While this trend seems especially present in nobility, anyone from the most influent aristocrat to the humble farmer or artisan may devote themselves to Khorgrum.

The faith however is not so accepting when it comes to origin. It is very unlikely for a non-dwarf to worship Khorgrum, and outsiders are truly exceptionals. they will usually be someone who is highly respected by the dwarves or who has done a great deed to help the kingdom. Recently, the exchanges with the nation of Charon have seen some of Khorgrum's influence get to dwarves who are not from Suidae.
TheSystemService

`TheSystemService` interface provides system functions the game uses to perform a variety of tasks. Its metatable is found in `SystemService`.

## Functions

```
AdjustDisplaySafeArea
IsDisplaySafeAreaAdjusted
ClearLastOperation
GetLastOperation
GotoStorePageROG
HasFocus
RetryOperation
SetStalling

```

### Autosave

```
EnableAutosave
IsAutosaveEnabled

```

### Bug Reporting

```
DidBugReportSucceed
FileBugReport
GetBugReportUserCode
IsBugReportRunning

```

### Dedicated Servers

```
StartDedicatedServers
StopDedicatedServers

```

### Storage

```
EnableStorage
IsStorageAvailable
IsStorageEnabled
OverwriteStorage
PrepareStorage

```
Shina Alesco - Strengths & Weaknesses

Description:

A young, energetic girl, yet with a quick temper and a cold, calculating concentration when the time demands it. However, she is as loving and adoring as she is tough with those she cares about. She loves her state, the Hannetta, and feels as though the right people aren't controlling it, and that puts her at odds with those who command her.

Strengths:

An exceptional anti-tank hero with a straightforward Basic Attack and a powerful Ultimate Skill that deals massive damage in a small AOE radius. Her skills are rather quick, and she excels when placed behind a good tank. Her counter allows her to gain distance from close range attackers. She possesses great accuracy and critical rates, along with the rare ability to insta-kill her targets when they reach a certain HP point. A must have to devestate single targets.

Weaknesses:

She possesses a minimal HP pool, and poor defense as well. She doesn't do great when placed on the front lines, and has little resistance to any status effects. She takes down others quickly, but may find herself killed by attacks not even meant to attack her in the first place.

Return - Shina Alesco
Prologue - Catastrophe

Catastrope

    The world braced itself as a new threat approached, something that would change the world forever.

    A chunk of mysterious rock, the size of a small city, previously unidentified, had entered the Solar System. Scientists, were baffled. The increase in detection of such celestial bodies had improved quite a bit, and for such an object to get by detection, scientists could not understand. Even worse, it was highly likely it would hit earth.

   Highly likely, not 100%, because of its strange direction and . It seemed to shift slightly every so often, so its definitive course was not certain. How, it too was a mystery to people. No one knew how the object seemed to “Calibrate” its course, so people, seemed certain that it was a UFO.

    The news was received to many different ears and arms. The world erupted into cheers and chaos, into diplomacy and militancy, into bouts of expectation and channels of fear.

    The people talked and the people attacked. Many countries experienced open rebellions, many regions experienced an uptick of violent resortment. People didn’t know what to do, and what to expect. Suicides, rush shopping, and protests erupted. Many new conspiracy theories would arise, giving way to the increase of people believing that the end of the world was near.

    For once, these assertions would be correct.

    In preparation for the landing of the mysterious object (If it were to occur), teams of scientists and explorers were set to greet the alien visitors. Armies were mobilized and people were prepared for a doomsday scenario, while people debated on how to receive the mysterious object.

    Diplomacy was decided on by a majority of the states, while some decided there would be no room for error; the visitor would have to be destroyed.

Next - Chapter 1

Return - Chapters
Jade Wood

The Jade Wood holds the last remaining World Tree on Dreamer's Respite. Isolated from the mainland, the elven forest has remained shrouded in mystery. With the elves living amongst the magical forest, they have steered clear of conflict for millennia, being particularly wary of adventurers who come through the Ferryman.

## History

The elves of the Jade Wood, used to live all across Dreamer's Respite, making their homes across the mighty world trees that dotted the land. This changed when Old Bedlam launched their attack on the world trees, set on using them for their rituals. The war between Old Bedlam and the elves of the Jade Wood lasted for over a century, as Old Bedlam destroyed almost all of the World Trees, leaving behind the final one known as the Jade Wood. When Old Bedlam fell, the Elves secluded themselves inside the forest, wary of all who approached.

During the First rising of The Sins, the elves created powerful illusions and barriers to keep their home safe, before eventually making a deal with Gozreh, who sent them the mighty Sea Serpent Awanyu, who carved a river forcing the Jade Wood into its own island. The elves distrusted the Ferryman and the adventures he brought, and they isolated themselves watching The Sins rise and fall from the safety of their forest.

Forming a treaty with Charon, they helped the city rebuild after the second rising of the sins. This treaty proved invaluable as an alliance between the two was necessary to stopping Old Bedlam. Sacrificing mages of Conjuration, Enchantment, and Illusion to the mighty Kohvar, peace was brought to the land.

Since then the Elves of the Jade Wood have kept to themselves, their land protected by powerful magic and a mighty river. To this day, many know almost nothing of this land, the appearance and involvement in events brings with it the distinction that something of grave importance might be occurring.

## Culture

Due to centuries of violence with Old Bedlam, the Elves of the Jade Wood are heavily secluded. The city is composed of almost all elves, and outsiders cannot enter easily. Keeping to themselves, they find enjoyment in the natural world around them, tending to the fast forests that cover their island.

### Religion

The elves respect the fey pantheon known as The Eldest, revering their incredible ability to shape the world, but there is also fear in their respect. The Eldest have the power, and temperament, to change the world on a whim. Many elves are also followers of Gozreh, as she provided them with the great Sea Serpent Awanyu**.**

### Magic and Technology

Deeply in touch with nature and the wild fey, many of the elves are skilled users in magic. Primarily focused on Illusion and Enchantment the elves study ways of keeping their home safe. In recent years there has been an increase in the studying of conjuration magic, particularly as a means to travel.

## Notable People

[TBD]