Finding core content
Core content is everything the game ships with: its weapons and armor, perks, story fights, opponents, arenas, sounds, models and icons. Your mod can reuse any of it without copying files. You only need its ID, the exact name the game knows it by.
The Core catalog pages in the sidebar list every ID, generated from the game’s own data. Search a page, click an ID to copy it, and paste it into your script.
Three steps to use core content
Section titled “Three steps to use core content”1. Declare the core dependency in mod.toml. Every mod that names core
content needs it:
[[dependencies]]id = "core"version = ">=2.0 <3.0"2. Copy the ID from the catalog. Qualified IDs start with core: followed by
a path, such as core:items/weapon/weapon_katana.
3. Pass it to the matching lookup. Each kind of content has its own function, and each returns a handle: a value that stands for that content. Pass the handle wherever a definition expects one.
local katana = sf2.items.get("core:items/weapon/weapon_katana")local model = sf2.assets.model("core:gamedata/models/mdl_weapon_katana_ritual")local gong = sf2.assets.audio("core:gamedata/sounds/snd_gong")local shogun = sf2.warriors.get_template("core:warrior-templates/shogun_katana")Which lookup takes which ID
Section titled “Which lookup takes which ID”| Content | ID looks like | Use it with | Catalog |
|---|---|---|---|
| Equipment and consumables | core:items/weapon/weapon_katana |
sf2.items.get |
Items |
| Perks | core:perks/perk_cobra |
sf2.perks.get |
Perks |
| Story fights and battles | core:fights/zone_1/tournament/3 |
sf2.fights.patch { target = … } |
Story map |
| Opponent blueprints | core:warrior-templates/shogun_katana |
sf2.warriors.get_template |
Warriors |
| Arenas and dojos | core:locations/dojo |
location = …, sf2.locations.select_dojo |
Locations |
| Sounds and music | core:gamedata/sounds/snd_gong |
sf2.assets.audio |
Audio |
| 3D models | core:gamedata/models/mdl_weapon_katana_ritual |
sf2.assets.model |
Art |
| Icons and portraits | core:ui/items/armor12.img_armor_mantle_of_night |
sf2.assets.sprite |
Art |
The handles are not interchangeable. An item is a complete piece of equipment with stats and a price; a model is only its appearance. To make a new weapon that looks like the katana, register your own weapon and pass the katana’s model, as in Your first weapon.
Plain names without core:
Section titled “Plain names without core:”A few fields take a plain name instead of a qualified ID. The catalog lists these too.
| Field | Example | Catalog |
|---|---|---|
tactic on a warrior |
"Aggressive" |
Tactics |
avatar on a warrior |
"boss_shogun" |
Portraits |
subtype on an item |
"Katana" |
Item subtypes |
skeleton on a warrior or actor |
"SkeletonHeavy" |
Rigs |
sound in sf2.fx.screen |
"snd_gong" |
Audio |
Move names such as ThrowForwardV are also plain names. The
VS Code extension completes them, and the
Moveset Lab shows them in game.
Spelling rules
Section titled “Spelling rules”- Write IDs in lowercase. The game ignores case in IDs, but the catalog uses lowercase, and so should your scripts, so that searches and comparisons match.
- Always include
core:. Without it, an ID refers to your own mod.sf2.items.get("items/weapon/weapon_katana")looks for a katana your mod registered, and fails with “not registered”. - Don’t guess IDs from display names. Names shown in game are translations and can differ from the ID. Use the catalog’s search, which matches both.
- A few legacy items share a name, so their IDs carry a suffix, for example
core:items/ranged/glaivebowarrow/riflebullet. Copy those from the catalog rather than typing them.
Autocomplete in VS Code
Section titled “Autocomplete in VS Code”With the Eclipse Modding extension,
type core: inside a lookup’s quotes to get suggestions for that lookup’s kind,
with the English name beside each one. Hovering a core ID shows what it is.
The extension also warns about an ID that doesn’t exist and suggests the closest
match, and flags a missing core: prefix.
Reuse or replace
Section titled “Reuse or replace”Using an ID as shown above reuses core content: your mod points at it and nothing in the base game changes. To change the original itself, for example to give the vanilla katana a different icon everywhere, use asset replacement or a patch, which have their own permissions and conflict rules.
What the catalog leaves out
Section titled “What the catalog leaves out”- Icons inside atlases. Many icons live inside a shared image called an atlas, and their names aren’t stored anywhere the catalog can read. The Art page lists every atlas, and the icons the game’s own data refers to, which covers equipment, perk and portrait icons.
- Translated text. Core text keys are not listed; reuse the text of an item or perk through its handle instead.