Core Concepts¶
Cargo Network Pro is built around a few simple objects.
Cargo Type¶
CargoType is a ScriptableObject that represents a resource, such as:
- Wood
- Ore
- Tools
- Furniture
Create cargo types for every item your routes can move or your nodes can request.
Cargo Node¶
CargoNode is the place where cargo is stored, requested, produced, or transferred.
Common node types:
- Town
- Factory
- Mine
- Warehouse
- Harbor
- Airport
Nodes contain inventory, request data, production rules, stage progression, and events.
Cargo Route¶
CargoRoute defines the ordered list of stops and the transport mode.
Supported transport modes:
- Rail
- Sea
- Air
Routes also store visual settings, rail prefabs, corner settings, loop mode, load rules, and unload rules.
Cargo Transport Agent¶
CargoTransportAgent moves along a route and performs the actual cargo work:
- Arrive at a stop
- Unload accepted cargo
- Load available cargo
- Move to the next stop
- Display cargo visuals
Looped routes wrap from the last stop to the first. Non-looped routes ping-pong between endpoints.
Request-Driven Progression¶
Nodes can start with one initial request. When that request is completed, the node unlocks its first stage.
Each stage can then add:
- new requests
- new production rules
- storage capacity
- footprint size
- visuals to enable
- UnityEvents to call
This lets you create city, factory, and settlement progression without writing custom progression code.