Help us shape the future of Go! Take the 2026 Go Developer Survey

check

package
v0.1.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 24, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Package check decides whether a built mod may run, without a game. It is the check a publishing service runs before it offers a release to players: a WebAssembly mod must keep to the host's imports and start in the host's sandbox limits, an interpreted mod must name a runtime Modlock ships, the settings and metrics a mod declares must be well formed, and its client content must stay in its own addon.

Index

Constants

View Source
const ContentDir = "panorama"

ContentDir is the built mod's directory of client content: the panorama directory of the mod's content addon, which a player's game mounts while it plays the mod.

View Source
const DataDir = sandbox.DataDir

DataDir is the built mod's directory of the files the mod reads.

View Source
const ManifestFile = sandbox.ManifestFile

ManifestFile is the manifest's file name in a built mod.

Variables

View Source
var AssetDirs = []string{"models", "materials", "particles"}

AssetDirs are the built mod's directories of compiled game resources that its content addon carries beside the Panorama content, each under the addon's name, as models/<addon>/pawn.vmdl_c. A mod names them with {addon} in the path, such as models/{addon}/pawn.vmdl.

Functions

func Addon added in v0.1.8

func Addon(manifest *manifestpb.Manifest) string

Addon returns the name of the content addon a release of the mod ships: its slug and version. Panorama keeps each layout it loads for the life of the game, so every release names its own, and a slug belongs to one mod.

func AddonDirs added in v0.1.15

func AddonDirs() []string

AddonDirs returns every directory of a built mod that goes into its content addon: the Panorama content and the asset directories.

func Content added in v0.1.8

func Content(dist fs.FS, addon string) error

Content checks that every file in dist's addon directories lies under the addon's name, panorama/<kind>/<addon>/ or <asset dir>/<addon>/, so one mod's content never replaces another's or the game's.

func Mod

func Mod(ctx context.Context, dist fs.FS) (*manifest.Manifest, error)

Mod checks the built mod in dist and returns its manifest.

func Module

func Module(ctx context.Context, module []byte) error

Module checks that module keeps to the host's boundary and starts within the host's memory and time limits with every host request answered empty.

func Scripted added in v0.1.8

func Scripted(dist fs.FS) (string, error)

Scripted returns the first file of dist's client content that runs code in a player's game, or "" when none does. A script runs code, and so does a layout that loads a script, holds one inline or handles an event. A layout this package cannot read counts as running code, so a publishing service can hold scripted content for creators it trusts.

func Slug

func Slug(slug string) error

Slug reports whether slug is a valid mod slug.

func Version added in v0.1.8

func Version(version string) error

Version reports whether version is a valid mod version.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL