Skip to main content
Version: latest - a1.7.0 βš–οΈ

Assets

All you need to know about Assets

Assets in nanos world are all objects or content which come from Unreal Engine, i.e. Maps, StaticMeshes, SkeletalMeshes, Sounds, Particles, etc are all Assets.

In order to use custom Assets in your servers, you must have or create an Asset Pack. Asset Packs are a set of Assets that were exported together from Unreal.

Folder Structure​

All Asset Packs go under Server/Assets/ folder. Each Asset Pack is a folder under that.

info

Note: Asset Packs downloaded when connecting to servers will be stored in Server/Assets/ folder as well!

Server Folder
NanosWorldServer.exe
Packages/
β”œβ”€β”€ my-asset-pack-01/
β”‚ β”œβ”€β”€ MyAsset_01.uasset
β”‚ β”œβ”€β”€ MyAsset_02.uasset
β”‚ β”œβ”€β”€ MyBigMap.umap
β”‚ β”‚ ...
β”‚ └── Assets.toml
β”œβ”€β”€ awesome-weapons/
β”‚ β”œβ”€β”€ BigFuckingGun.uasset
β”‚ β”‚ ...
β”‚ └── Assets.toml
Assets/
Config.toml

Assets Pack Configuration​

Asset Packs have a configuration file in the root of the Asset Pack folder, called Assets.toml, in this file we can setup all pertinent settings related to the Asset Pack:

Assets.toml
loading...

Settings Detailed​

SettingDescription
nameFriendly name of the Asset Pack
authorAuthor(s) of the Asset Pack
versionVersion of the Asset Pack - please refer to SemVer
imageImage URL to be displayed in the Vault
unreal_folderName of the root folder in the Unreal Project which exported this Assets. This is important so the Assets can keep the relative references correct.
assets.mapsList of Maps in this Asset Pack
assets.static_meshesList of Static Meshes in this Asset Pack
assets.skeletal_meshesList of Skeletal Meshes in this Asset Pack
assets.soundsList of Sounds in this Asset Pack
assets.animationsList of Animations in this Asset Pack
assets.particlesList of Particles in this Asset Pack
assets.materialsList of Materials in this Asset Pack
assets.blueprintsList of Blueprints in this Asset Pack
assets.othersList of other Assets in this Asset Pack

Referencing Assets in Scripting​

To be able to use Assets through scripting, you will first have to ensure that the Asset Pack is loaded, an Asset Pack is loaded if:

  1. Set the Map to be loaded (this will make it's Asset Pack to be loaded automatically)
  2. Manually set in Server.toml the assets to load
  3. Manually set in any loaded package, in Package.toml the asset_requirements

With that, you can refer to it's assets using the following pattern:

"ASSET_PACK_PATH::ASSET_KEY"

Example:

"my-asset-pack-01::SM_Cube"

tip

ASSET_PACK_PATH is the Asset Pack folder name and ASSET_KEY is the key defined in the Assets.toml.

Types of Assets​

TypeDescription
MapAn Unreal Engine Map/Level
Static MeshUnreal Static Meshes can be used to load meshes for Props and StaticMeshes
Skeletal MeshUnreal Skeletal Meshes can be used to load meshes for Characters and Vehicles
SoundUnreal Sounds to load Sounds
ParticleUnreal Particles can be used for settings in several entities, including Particle Class itself
AnimationUnreal Animations can be used for settings in Character and Weapons
MaterialUnreal Materials can be used for customizing meshes surfaces and used as Post Process
BlueprintUnreal Actor Blueprints can be used for spawning Blueprint entities
Note

Some methods require some specific Type of Assets to load, attempting to load an invalid or wrong type will cause an Error. E.g.: Character:SetMesh() requires an Asset of type Skeletal Mesh.

nanos world Default Asset Pack​

nanos world provides a default Asset Pack which is already included in the base game. Please refer to nanos world Default Asset Pack for more information.

tip

To create your own Asset Pack, please refer to Importing Assets