Skip to content

v3.0.1

Choose a tag to compare

@underpostnet underpostnet released this 23 Feb 03:43
· 154 commits to main since this release

Changelog v3.0.1

2026-02-23

gitlab

  • Fix package json lock template build (e674ec6b)
  • Fix mirror push to GitLab (9585aa50)

bin-file

  • Add missing gitlab.ci.yml build to pwa-microservices-template (ec49ded0)

client-core

  • Add missing keyboard focus search box on iframes docs (c5b0f86c)
  • Add VanillaJs get selector in iframe (e37fa340)

giblab

docs

  • Add VanillaJs get selector in iframe sync darkTheme in docs component. (5b2ba08f)

server-client-build-docs

  • Enable Swagger UI Dark Light Mode (eaadad70)

github-actions

  • Add gitlab mirror CI repository integration (3d6acdef)
  • Fix GitHub Actions npm provenance (cd31b8f0)

cli-run

  • Fix missing cluster type on runners id cluster and gpu env (ddd72d2e)

package

  • Resolve npm ci lock mismatch (357b4e81)

cli-repo

  • Fix Changelog error due to type integration message (750656e1)

cli-ipfs

  • Fix underpost ipfs syntax import in main src index (f7bebb65)

New release v:3.0.0 (2026-02-22)

engine-core

docs

  • Rename cli.md -> CLI-HELP.md (18e18689)
  • Apply fix in swagger-autogen@2.9.2 bug: getResponsesTag missing ¬¬¬ decode (2b0d27db)
  • Remove unused jsdocs sections (ec06f338)

bin-zed

  • Move zed settings file tod zed js bin module (ba32abea)

client-core

  • Fix clear filter user management (a1d79661)

package

  • Fix resolve npm minimatch ReDoS vulnerability (4739fea1)
  • Apply npm audit fix (9496c5c7)
  • Apply npm audit fix versions packages (a1ed004e)

server-client-build-docs

  • Apply Swagger autogen syntax error fix of version v2.9.2 (7c8da2ff)

vscode

  • Remove vs deprecated settings conf, and remove vs extension to minimal and remove comments of vs extensions in vanilla js (b2aec354)

cli-ipfs

  • Implements base ipfs underpost dedicated module (7f4f27f9)

cli-cluster

  • Add Main IPFS Cluster StatefulSet Integration (53dd0903)
  • Add --exposePort custom flag (a29185fe)
  • Refactor pullImage load docker pull images to kind nodes (3bdd5e78)
  • Add --replicas custom option (70bdc6cd)
  • Centralize pullImage for k3s kubeadm kind (873b20d5)
  • Add snap install on init host workflow and cluster safeReset refactor (48b4c33d)

server-logger

  • Add optional file logging to logger factory (ef18a29e)

cli-lxd

  • Refactor lxd module and workflows to vm cluster with k3s control and worker node integration (812d5cdd)

bin-deploy

github-actions

  • Add ref to checkout for provenance in cyberia publish workflow package (6e0f9b59)
  • Add ref to checkout for provenance (0512ebec)
  • Remove copying of MariaDB.js to underpost directory. (d64c64ee)
  • Fix package-pwa-microservices-template-ghpkg commit message propagation logic (c8ef2ea8)

New release v:2.99.8 (2026-02-18)

github-actions

  • Fix last commit message in npmpkg workflow (6dd0f484)
  • Fix MariaDB import in CI workflows (2002c11f)
  • Fix GitHub Actions commit message (e36c4fb6)

dockerfile

  • Underpost image dockerfiles file formats and clean comment (6e22157c)

conf

  • Fix repository README logic builder (d88c5317)

db

cli-static

New release v:2.99.7 (2026-02-17)

cli-ssh

cli-cron

  • Change order exec createJobNow logic (524b8b80)
  • Fix error prepare subPath in cronjob subPath mount (33bedaff)
  • Fix engine path definition and remove old cmd job in ci core sync command (dbc5b6e6)
  • Refactor run sync cron and remove redundant cron runner (5885a747)
  • Add SSH flag to remote cron exec (4339fb9d)
  • Add underpost cron jobs config env persistence (d8d15eda)

cron-cli

  • Enable createJobNow in cron setup-start (bdce5ca0)

cli-run

  • Improve message commit clean on logic propagate in template-deploy runnner (dfa64105)
  • Add replaceNthNewline logic in template-deploy runner (282faf73)

github-actions

  • Replace split logic ')' character, to simply deletes the first line and keeps everything from the second line (6c1fbdf1)

cli-repo

  • Fix propagation message logic (9ff035f1)
  • Add logic to propagate integration commit message between repos (4f7201c9)
  • Add --changelog-no-hash flag and logic (d71cfe06)
  • Add changelog commits logic to sub repo builds (c8e94c32)
  • Remove redundant --msg flag in cmt command (59b529bb)

cli-system

  • Fix missing fs import (94bbd4ec)
  • Add cli system module as a SystemProvisionig OS instructions provider (d8e629e7)

bin-deploy

  • Add sync start scripts of each deploy id dd.router (3d40afa8)

docs

  • JSDoc name, descriptions, and render logic improvements (01a288ab)

cli

  • Chore exports and ssh command description (589f0403)

New release v:2.99.6 (2026-02-15)

cli-cron

  • Add update envs with ip in dns job logic (ab685064)
  • Migrate PM2 cronjobs to Kubernetes cronjobs (968361a2)

build

  • Fix remove dd-core cron files exclusive copy (cb7b594f)

docs

  • Improve cluster lifecycle and cron ref (a15e9a8d)
  • chore main cluster lifecycle commands (144db5f9)

manifests

  • Add k8s base engine core cron jobs yamls (8c2e54a5)

cli-static

  • Add --run-sv flag to run http server to preview the static build (bd73bdd0)

cli-baremetal

  • Fix nfs root directoy build cleanup logic (302879a7)
  • Add kickstart commissioning workflow logic and Cloud init and kickstart bootstrap http server enhancements (c0fecb91)
  • Fix ipxeBuildIso method with forceRebuild parameter (b79f030c)
  • Add iso-ram rocky9 kickstart anaconda logic workflow (2607edf2)
  • Remove redundate logic and, add silent on run kill http bootstrap port (95b7b990)
  • Add bootstrapHttpServerRun flag in baremetal callback for standalone http bootstrap run server options workflow (e360a7d9)
  • Remove machine system id in kernel params (6a706392)
  • Add nfs server reset optional flag (a42e76b5)
  • Remove chroot enlistment cloud init script (c153b186)

client-core

  • Fix iframe docs component inconsistent modals positions on pwa app cycle (fe716235)

scripts

  • MAAS DHCP dynamic range fix (b89b577d)

New release v:2.99.5 (2026-02-11)

client-docs

  • Remove legacy static generator site guide docs (cdb67b86)

cli-baremetal

  • Add enable ssh in cloud init config in commission workflow (9c3dee4f)
  • Refactor commission workflow with cloud init cmd run commission enlist request (2d908f76)
  • Add to IPXE build iso method iso-nfs commission workflow type support (76476eb9)
  • Add --ipxe-build-iso workflow (4b305884)
  • Fix baremetal machineFactory method and add fallbackArchitecture for commission arch handle (7e921fee)
  • Add hp-envy-iso-ram baremetal commissioning workflow (c9a00a3c)
  • Create maasCliExec method and apply centralized implementation (752833c8)

cli-static

  • Chore remoe redundant comments (b8fb0259)
  • Simplified static example README.md and remove unused params build (3ac1cc2c)

server-logger

  • Refactor logger factory with log level and skip arg function param (56394e5e)

cli-image

  • Remove un legacy secretDockerInput (8dc8e7a2)
  • Remove legacy docker secrets logic (4580efac)

cli-cloud-init

  • Fix kernelParamsFactory missing mac address arg (207647c4)
  • Create kernerParamsFactory cloud init method (57945e9a)

cli-repo

  • Add index from head in cmt --log flag history (d3f9cb69)

package

  • Remove --clear-discovered --remove-machines in default baremetal script (276ff4e4)

cli-run

  • Add list disk devices runner (14dc4d7e)

src-index

  • Add required nodejs major version warning (c6ef0afd)

cli-secrets

  • Remove legacy docker secrets api (7db58689)

bin-deploy

  • Rename build/syncs envs batch workflows (c2e89cf8)

server-tls

  • Chore js docs path module (50e795a0)
  • Rename comments module to UnderpostTLS namespace (9a4ed608)

cli-config

  • Add copy option to get operations (5837f55f)

engine-core

  • Rename default toPath in playwright workflow (348e4cd6)

New release v:2.99.4 (2026-02-03)

cli-deploy

  • Smplified existsContainerFile remove legacy useKindDockerPod (ff877519)
  • Refactor existsContainerFile and add useKindDockerPodlogic and remove legacy tf-vae-test monitor runner (a7ab0866)

engine-core

  • Add base playwright deployment (8e020cd6)
  • Fix js docs params types and descriptions (9c50af10)
  • Revert compiler js options and set checkJs false to vs code problems (e4566c6c)
  • Fix fas api load image with latest underpost cli version (ac785df4)
  • Fix: js config import meta module option (58b22b73)
  • chore: License year (987a1dc6)
  • Add volume in exclude js config and checkJs attribute (e6bdd41a)

client-core

  • Fix user timestamps and CLI flags (61109e3a)
  • Add Polyhedron immersive particle color palettes (40471fab)
  • Add Polyhedron component immersive fullscreen image faces mode effects (8a00a8d7)
  • Chore missing translate key (43a6c807)

cli-baremetal

  • Change args to options for more readable cli docs (401f82b2)

server-proxy

server-process

  • Improve process.js run openTerminal with graphical as root (298b265c)
  • Fix openTerminal DBUS_SESSION_BUS_ADDRESS env (58a24816)

cli-run

  • Add options.logs customization in git-conf runner (2ae5d3cc)
  • Add --logs and --monitor-status flags options customization (1c395cc6)

server-tls

  • Add Underpost tls Namespace (cc31c8ee)

server-logger

  • Refactor loggerFactory to custom underpostLogger with merge 'setUpInfo' interface typedef scope (34ae041a)

scripts

client-underpost

  • Add base Polyhedron component view (aefb59be)

New release v:2.99.1 (2026-01-29)

cli-run

  • In sync runner add cmd customization (056564e5)
  • Add missin name space in ssh-deploy runners and add shh-deploy-db-status runner (56b017e7)
  • Fix missing dev case in deploy runner (6e928c0b)

engine-cyberia

  • Fix handle missing atlas sprite fileId (dc1adbc4)

github-actions

  • Add init workflow deployment dd-core, dd-lampp, and dd-test (1a56deb2)
  • Add ssh-init-engine-cyberia worflow to dd-cyberia cd (5478f7d7)

cli-ssh

  • Add sshRemoteRunner for runner exec arbitrary shell commands on a remote server via SSH with proper credential handling (3764291a)

cli-monitor

  • Add multiple version async monitor support and rename version to versions for cli flag compatibility (03a56097)
  • Add readyDeployment monitor mode (1e7a4fa9)

cli-deploy

  • Fix ternary custom image handle on manifest build (b02ba105)

cli-env

  • Chore js docs comments in build param set method (9c66cdfc)

New release v:2.99.0 (2026-01-28)

cli-run

  • Add custom etc-hosts runner (541dbb0b)
  • Fix runner sync deploy handle custom versions (983feae4)
  • Add 'crypto-policy' runner to DEFAULT:SHA1 for compatibility (cd24992e)
  • Add top customers ps and headers in ps runner (d221b8a8)
  • Add top-consumers custom path to run ps (Displays running processes) (c07e29be)
  • Add missing --timeout-response in monitor command (a1f02fb4)
  • Add missing switchTraffic options object args, and centralize monitor switchTraffic (314db030)

auth

  • Fix cookieOptionsFactory in development etc hosts session persistence case (ab242ee3)

cli-config

  • Add batch build deploy id envs in set method (bb5857c3)

cli-cluster

  • Increment await time valkey-service status monitor (a33d30fe)

github-actions

  • Update base underpost image version deploy from v2.8.846 to v2.98.3 (dcbb9e83)

server-dns

  • Fix missing class ref getLocalIPv4Address and UnderpostDns export (bf311240)

cli-monitor

  • Simplify and change to etc hosts test in development case monitor (b2bbff6a)
  • Remove monitor-init-callback-script (c95e759c)
  • Simplify and improve monitor input runtime methods (a68a4333)

cli-deploy

  • Add flag --underpost-quickly-install in default cmd run deployments yaml (04c16a94)
  • Add and centralize timeout response proxy flags (e89a6e3f)
  • Add HTTPProxy response timeout option cutomization (e9132794)

engine-core

  • Refactor and improve underpost modules and exports to Underpost index main class (7865e95d)

cli

  • Remove un used script command (f79d65f3)

engine-cyberia

  • Remove duplicate comments (923cc103)
  • chore comments object layer component (1cdf2e79)
  • Add object layer api/component atlas sprite sheet integration (499479a4)
  • Add in object layer viewer check if modal is open and DOM element exists before trying to render (d3e4c75f)
  • Fix object layer viewer full grid reload on navigation router events (3edb984f)

cli-cyberia

  • Add git clean assets directory on drop option (7bddac9c)

New release v:2.98.3 (2026-01-23)

client-core

  • Fix and robust Fullscreen Component for PWA for cross compatibility (f303c1d5)
  • Fix add restrict markdown link handlers to file on panel form component (f498cc6e)
  • Add missing markdown-source-copied translate data (8ee364b2)

engine-cyberia

  • Fix object layer viewer prevent full grid reload on navigation (50d9a20d)

cli-cyberia

  • Add command to install cyberia dedicated dependencies (a817e316)

New release v:2.98.1 (2026-01-23)

bin-deploy

  • Add router default-conf build in version-build logic (196b0c6f)

scripts

  • Rocky Linux setup script simplification (06255c17)

client-core

  • Add PanelForm copy markdown option (8e65564a)
  • Add PanelForm Markdown Link Click Handling (1152759b)
  • Fix document service search response bug (04a4e3dc)
  • Remove unused services (5be25ec9)
  • Add Default Management Clear Filter Button and related event listener and logic (f0a55bab)
  • Fix duplicate notification default management (e74f9646)

cli-run

  • Chore reorder runners keys in static runners attr (7bebd622)

cli-repository

  • Chore rename g8 -> G8 comments and default options (a624ffdd)
  • Fix -g8 flag and related logic (aef3575b)

cli-cluster

  • Fix unused kind-config-cuda conf on kind cluster (e0b0cb2e)

bin-build

  • Fix origin package json sub repo builder switch case (67505c5f)

dependencie

  • Remove systeminformation and cyberia module dependencies of base core engine (b81b0a8d)
  • Add fast-json-stable-stringify dependencie (7a0cd142)

engine-cyberia

  • Add ObjectLayer modal frame validation fallback (3f6fe3dd)
  • Fix Filter New Object Layer Highlight (f076e6c2)
  • Clean up cyberia client legacy components (ef85e18b)
  • Refactor object layer model schema and add atlas cli sprite sheet generation and API support, with new object-layer-render-frames and atlas-sprite-sheet related models (f7044c63)

engine-core

  • Fix default management new item filter in default management component (a0ae66bd)

engine

  • Converted all the static field initializers to getter methods in package main index.js (fe11f692)

New release v:2.98.0 (2026-01-14)

client-core

  • In file explorer add missing nav path after upload files (22b9d3e3)
  • Simplify fileexplorer mimetype file info display from table files to edit modal (ae441743)
  • Implements file explorer document edit feature (e5a8a84e)
  • Implements Minimal Custom Pagination for File Explorer (acf953b7)
  • Add clean search box history on logout event (ffb07e12)
  • Filter Document Search by idPanel Tag (4f473489)
  • Cleanup document model and streamline search logic (9e3eebc7)
  • Fix Epiphany responsive screen orientation compatibility (c0e42ccd)
  • Implement preventing Orphaned Files in Document Service (2f35476d)
  • Implement filter query default management browser navigation handler (31dc83ba)
  • Fix auto save on cell edit in Default Management (607d0085)

New release v:2.97.5 (2026-01-12)

cli-db

  • Implements orphaned file clean collections workflow. (c69763c0)
  • Add missing js docs comments (e85df3ec)

client-core

  • Add js docs comments in src/client/services/core/core.service.js (a81a1ad8)
  • Centralizing Query Param Handling in Services with generic abstract method (2ac38972)
  • Implements file explorer public toggle document switch (580831d7)
  • Rename @Private to @method js docs (8e85094c)
  • Implements base server data query SSRM pagination (6341984c)
  • Remove unused /sh core api path (47e47526)
  • Implement client file service get blob by id generic switch use case with data defualt mode (64686b61)
  • Implements in api service file document ownership authorization validation (d6663ca1)
  • Fix urlFactory abstraction method (3cbe674f)
  • Improve cloud component transfer files to content componentn to render logic (167f6a0d)
  • Improve user profile image logic render (451ffdf6)
  • Remove getDefaultProfileImageId, and simplify case use static resource avatar. (1b64f824)
  • Remove dotenv on object-layer module (cf5173d9)
  • Refactor and improve ux SPA public profile navigation consistency (04d16bb6)
  • Fix chat socket io sub path connections (b2aade8a)
  • Refactor public profile routing and user info handling (cc6080a5)
  • Remove unused pathOptions in setQueryPath (4691f33e)
  • Implement and simplify dynamic public profile modal update (30e9f2a8)
  • Implement public profile SPA navigation (01d1061e)
  • Fix panel component: Add conditional onclick clean-file event (3056c767)
  • Add public profile view in underpost client (ca459d3b)
  • Implements username URI-Safe validator (d0a17614)
  • Implement PublicProfile onObserverListener (935f43f6)
  • Add public profile public api endpoint (2a419dff)
  • Add PublicProfile component and user profile settings (60dee0a8)
  • Add public profile and brewDescription in user model and account update related logic. (6700fc5e)
  • Refactor SearchBox.RecentResults to ensure only serializable data is persisted to localStorage (excluding DOM elements). (896480c2)
  • Implements historySearchBox with SearchBox.RecentResults consistency (e9088ccf)
  • Refactor underpost panel utf8 file handling and improve panel form file upload and header render user logic (89ffa667)
  • Improve PanelForm uploader avatar username render (acfa25b6)
  • Rename panel form profile label (fcd14d5c)

clinet-core

  • Improve public profile RouterEvents logic (3e0ad850)

New release v:2.97.1 (2026-01-04)

conf

  • Update default confs js with the last deploys conf changes (f73782bf)

client-core

  • Improve profile Image Avatar Implementation logic render ux/ui (cd094651)
  • Improve Public Tag Visibility and auth logic (58d20ef7)
  • Fix Search Box scroll tracking logic on pointer search box history (abc91914)
  • Improve styles logic Search Box Icon and Panel Title (b7093e31)
  • Improve document search service with Optimization Strategy regex (6ac9a165)
  • Improve Unified Active/Selected States style panel form tags (59d0fa67)
  • Improve panel form styles (4931fa45)
  • SearchBox Refactoring add auth search box Security rules (ee547ad9)
  • Implement and Abstract Modal SearchBox Core Component, and custom document search provider for underpost client. (afdbfbc4)

client-clore

  • Implement PanelForm creator avatar username option render (424a4a05)

cli-baremetal

  • Improve Ubunut and Rocky chroot Linux Provisioning steps (704a4e3b)
  • Refactor the downloadUbuntuLiveISO function to a generic downloadISO (fc8e7a5e)
  • Reorder options workflow run tasks (650c4f2a)
  • Add rockyTools flags to Provisioning steps for Rocky Linux-based systems. (e57c3cdc)
  • Refactored the baremetal kernel boot parameter construction to use OS family identification (osIdLike) from workflow configuration instead of hostname pattern matching. Also renamed the chroot type to chroot-debootstrap for clarity. (775c70ad)
  • Implements Dracut NFS multiple version options (700b407a)
  • Improve PXE iPXE kernel load workflow (650440e0)
  • Improve mountBinfmtMisc mountCmds and unMountCmds logic (231b245b)
  • Implement ipxeEfiFactory and improve iPXE shouldRebuild logic after cleanup tftp directory (10511e3c)
  • Implements base Rocky9 ARM64 NFS Chroot Workflow (b642f225)
  • Implements base rpi4mbarm64-chroot-rocky9 commission workflow (d9524632)

CYBERIA Network Object Layer Engine CLI

cyberia

Network Object Layer Engine CLI

Downloads Version

This Command Line Interface (CLI) is a core tool for the Cyberia Network Object Layer Engine, specifically designed for processing, generating, and managing game assets, primarily Object Layer elements like skins, floors, and weapons.

It handles image asset quantization, generates data matrices and color palettes, creates separate render frame documents, and persists the resulting structured data into the game's database with top-level references to render frames and atlas sprite sheets.

What this tool does

The CLI scans the local asset folders (./src/client/public/cyberia/assets/{type}/{id}/{direction}/{frame}), quantizes images to a tile matrix and color palette, creates separate ObjectLayerRenderFrames documents, and persists the resulting object-layer documents with references to your configured MongoDB. It also supports reconstructing a visual PNG from the stored matrix for inspection.

Key features:

  • Walks the asset directory structure and processes PNG/GIF files.
  • Produces frame_matrix and map_color arrays from images.
  • Saves processed objects to the ObjectLayer model with top-level references to ObjectLayerRenderFrames.
  • Creates separate ObjectLayerRenderFrames documents for render data.
  • Links ObjectLayers to AtlasSpriteSheet documents via top-level atlasSpriteSheetId.
  • Generates unique UUID v4 seeds (via crypto.randomUUID()) for SHA256 hash uniqueness.
  • Generates SHA256 hash using fast-json-stable-stringify for deterministic serialization.
  • Reconstructs PNG frames from stored tile data for debugging.

Getting Started

Prerequisites

You must have the following installed in your environment:

  • Node.js (v24.10.0 recommended)
  • npm or yarn
  • MongoDB (or access to the configured MongoDB instance)

Installation

npm install -g cyberia

Environment Setup

Ensure your required environment variables (e.g., DEFAULT_DEPLOY_ID, DEFAULT_DEPLOY_HOST, DEFAULT_DEPLOY_PATH) are correctly configured, typically in a .env file, to point the CLI to the correct database instance defined in conf.server.json.

Usage

The CLI is executed from the project root via the cyberia.js script.

Process and import object-layer assets

This will iterate asset folders for the given types and store processed objects in MongoDB.

# Process specific types (comma-separated)
cyberia ol --import skin,floor

# Process all recognized types
cyberia ol --import all

Visualize a processed frame

Reconstructs and opens a PNG from the database-stored frame data. Requires item-id as the first positional argument, followed by direction and frame index in the format [direction]_[frameIndex].

# Show frame with default direction and frame (08_0)
cyberia ol anon --show-frame

# Show specific direction and frame
cyberia ol anon --show-frame 08_0

# Show different directions
cyberia ol anon --show-frame 02_0  # up_idle
cyberia ol anon --show-frame 04_1  # left_idle (second frame)

Valid direction codes:

  • 08: down_idle, none_idle, default_idle
  • 18: down_walking
  • 02: up_idle
  • 12: up_walking
  • 04: left_idle, up_left_idle, down_left_idle
  • 14: left_walking, up_left_walking, down_left_walking
  • 06: right_idle, up_right_idle, down_right_idle
  • 16: right_walking, up_right_walking, down_right_walking

This command:

  • Finds the ObjectLayer by item-id
  • Loads the associated ObjectLayerRenderFrames document
  • Reconstructs the PNG from the stored frame_matrix and map_color
  • Saves it temporarily to disk as {item-id}_{direction}_{frame}.png
  • Opens it with Firefox for visual inspection

Generate Atlas Sprite Sheet

Consolidates all frames (8 directions, multiple modes) from an object layer's render frames into a single optimized PNG atlas with metadata.

# Generate atlas sprite sheet with auto-calculated dimensions (recommended)
cyberia ol anon --to-atlas-sprite-sheet

# Generate atlas with custom dimensions (manual override)
cyberia ol anon --to-atlas-sprite-sheet 4096

This command:

  • Finds the ObjectLayer by item-id or MongoDB _id
  • Loads the associated ObjectLayerRenderFrames document
  • Auto-calculates optimal atlas dimensions based on total frame count (8 directions × all animation modes)
  • Generates a consolidated PNG with all animation frames properly arranged
  • Stores the PNG in the File collection
  • Creates/updates an AtlasSpriteSheet document with frame positions
  • Updates the ObjectLayer with top-level atlasSpriteSheetId reference
  • Uses power-of-2 dimensions for GPU efficiency

Atlas Dimension Calculation:

  • Auto (default): Dynamically calculates optimal size based on:
    • Total number of frames across all directions and modes
    • Individual frame dimensions
    • Grid layout to minimize wasted space
    • Power-of-2 optimization (1024, 2048, 4096, etc.)
  • Manual override: Specify exact dimension (e.g., --to-atlas-sprite-sheet 4096)

Common Atlas Sizes:

  • 1024x1024: ~6-10 frames
  • 2048x2048: ~20-40 frames (typical for character sprites)
  • 4096x4096: ~80-160 frames (complex animations)
  • 8192x8192: Maximum, for extreme cases

The tool automatically warns if frames exceed the specified dimension and suggests a larger size.

View Atlas Sprite Sheet

Opens the consolidated atlas sprite sheet PNG for inspection.

# Show atlas sprite sheet by item-id
cyberia ol anon --show-atlas-sprite-sheet

This command:

  • Finds the ObjectLayer by item-id
  • Retrieves the associated AtlasSpriteSheet via top-level atlasSpriteSheetId or by matching metadata.itemKey
  • Saves it temporarily to disk
  • Opens it with Firefox for visual inspection
  • Displays atlas dimensions in the console

Common Workflows

Complete Asset Processing Pipeline

Process assets from source files through to atlas generation:

# 1. Import object layers from asset directories
cyberia ol --import skin

# 2. Verify a specific frame was imported correctly
cyberia ol anon --show-frame 08_0

# 3. Generate optimized atlas sprite sheet
cyberia ol anon --to-atlas-sprite-sheet

# 4. View the generated atlas
cyberia ol anon --show-atlas-sprite-sheet

Debugging Asset Issues

# Check if frame data is correct for all directions
cyberia ol anon --show-frame 08_0  # down_idle
cyberia ol anon --show-frame 02_0  # up_idle
cyberia ol anon --show-frame 04_0  # left_idle
cyberia ol anon --show-frame 06_0  # right_idle

# Verify walking animations
cyberia ol anon --show-frame 18_0  # down_walking
cyberia ol anon --show-frame 12_0  # up_walking
cyberia ol anon --show-frame 14_0  # left_walking
cyberia ol anon --show-frame 16_0  # right_walking

Working with Multiple Items

# Import multiple types at once
cyberia ol --import skin,floor,weapon

# Process individual items
cyberia ol sword --show-frame 08_0
cyberia ol sword --to-atlas-sprite-sheet
cyberia ol shield --show-frame 08_0
cyberia ol shield --to-atlas-sprite-sheet