Last time I wrote about the structure of the overall capability arc in Corridor. This time, I’d like to explore someĀ ideas for how to implement Corridor.
Everything is Corridors
So, the first thing is the cohesive underlying principle. A corridor is a designed transit space. We’re most familiar with the spatial variety, that is a transport corridor along a space-time vector, but one can have corridors along any axis. Storage is a transport corridor along a simple time vector. A workshop is a transformative corridor, along a time vector. A vehicle is a corridor generator on the outside, and storage within. Nested corridors!
Corridor Components
There are several corridor/room types. These are differentiated along a variety of axies. All of the corridors can be multiple lanes wide. For example, three basic types of transit corridors come to mind:
1. Pedestrian. The single-wide variety is a narrow corridor. This is a stairway when sloped, or a ladder when vertical.
2. Vehicle. This is the Basically a powered rail for surface-contacting surface-bound things like cable cars, trains, and monorails. This is an open funicular when steeply sloped, or an open elevator platform when vertical.
3. Vessel. A runway, launch, thing, for flying stuff like bullets, missiles, fighters, spaceships, and freighters.
In addition, multiple corridor types can be combined. For example, Pedestrian-Vehicle corridors are powered walkways, escalators, or closed elevators, depending on orientation. A Vehicle-Vessel corridor is a roadway for scooters, motorcycles, cars, and trucks.
There are 6 basic types of corridor contents, which are also the component types that everything is built from (examples are depending on corridor type for pedestrian/vehicle/vessel):
1. Forge. For making new things. Mess hall/garage/fab bay. Fabbery
2. Pipes. For transporting materials. Water pipes/material feeds/fuel lines. Pipery
3. Storage. For storing and parking things. Quarters/cargo bay/hangar. Havery
4. Control. For interfacing and controlling things. Console/drivers seat/cockpit. Controllery
5. Light. And electricity. Lights/motors/mass drivers. Powery
6. Structure. The underlying property of all other properties. If it isn’t anything else, it’s: Girdery
Content types can also be combined. For example, Forge-Infrastructure is an arbor/power plant/engine room. And Infrastructure-Storage is water tanks/batteries/fuel tanks.
Extended Game-space
Scale hierarchy: each of the scales are composed of multiple components of the smaller scales.
The ruling structural scheme is parenthesized. Solids are mostly uniform convex objects. Networks are the negative space around a collection of convex voids. Foam is both. The distinction of the various ruling ordering modes prevents the Spore, Factorio, Minecraft problem of uniform noise dominating large scales.
Component scale, for real small things like bullets, wires, micro-chips, coins. (solids)
Artifact scale, for things you hold and wear like guns, interfaces, lights, handles, equipment, suits. (solids)
Vehicle scale, for things you ride like scooters, cars, chairs, beds. (foam)
Vessel scale, for things you can walk around in like submarines, airships, rooms, and corridors. (network)
Station scale, for whole bases, buildings, outposts, ponds, and streams. (foam)
City scale, for towns, mountains, rivers, and lakes. (solids)
Region scale, for metropolies, mountain ranges, drainage basins. (foam)
Territory scale, for continents and oceans. (solids)
Moon scale, for those real big space stations, and small planets. (foam)
Stellar scale, for big planets, stars. (solids)
Cluster scale, for globular clusters, galaxies. (foam)
Firmament scale, filaments of clusters. (network)
Universe scale, bounded by the curvature of space. (solids)
Undo, AI mimicry, multiplayer, and play-through verification.
Keep a log of all actions in order with prerequisites. Reverse them for undo, which should support selective undo using the prerequisite links.
Use standardized transit times between tasks and task times for normalization, AI mimicry, leader-board ranking, a-synch multiplayer, and retrapolation of contingent systems.
This also allows VR play, since teleportation is no advantage when transit is standardized. Also allows non-synchronous multiplayer, with total time using critical path analysis.
Include default option for simple pathing optimization. Can be disabled to allow fine-tuning. Waypoints should respect implicit and explicit lanes, with waypoint width for pathing versatility. Opposing travel paths will exclude co-temporal use. Uni-directional travel limits to the slowest user.
This allows you to go back in time to trace events back to their origins, alter history?
Object Contents and Resource Use
Very similar to Space Engineers. Each resource in an object is tracked by:
Capacity, total storage when chock full
Threshhold, minimum resource amount for object operation (below this, the object is inoperable)
Rated Depletion, how fast you can pull this resource out during normal operation
Efficiency rating, how little waste there is for this resource. 1 is 0.9, 3 is 0.999.
Game Mode Axies
Optimization can be measured along three axies (Thanks Zach Barth!): Time, Materials, and Footprint.
PVE-PVP continuum. Single player can play peaceful, or opt in against AI opponents through fast-growth “loud” technology (radio comms) which gives away your location. AI do not have causality defying psychic comms, so it shouldn’t pose a real threat, as long as you are playing well.
Multi-player can play peaceful co-op, or opt in against human opponents through fast-growth “loud” tech as above. Sharding prevents “game over” states for any particular player, and performance can be compared at any point.
Zero elimination competitive play is possible through fast-growth “unstable” tech, allowing internal revolts, rebellions, and insurrections controlled by opponent AI or players. This removes run-away snowball victory states.
Temporal and physical location can be arbitrary until establishment is required, allows switching between different modes in a single play-thru. Selective undo would allow a single playthrough network. Also allows multiple players to contribute a-synchronously to the same effort.