Claude's Corner: Art Works

The Venerator: a steampunk armed merchant... in spaaace!

Preview of a 3D model depicting a spaceship that's half train engine, half freighter, and all guns.

This is another ship from The Dream, like the Spirit Walk. This one has less of a backstory; let's just say it's supposed to be "only" an armed merchant, but rivals many dedicated warships. Its captain and owner is very successful, and doesn't fool around.

Length:
203 meters
Beam:
26 meters
Decks:
6
Complement:
~1500
Capacity:
36 standard containers
Armament:
6 plasma gatling guns (in casemates)
3 twin autocannons

Out-of-universe, the Venerator was devised by GrayWolf and features in many Dream stories, with two different captains.

OpenSCAD source code, second revision as of May 2025, a year and change after the original:

module MainBody() {
	rotate ([-90, 0, 0])
		cylinder (h = 120, d = 10, center = true);
	translate ([0, 60, 0]) sphere (d = 10);
	translate ([0, -60, 0]) sphere (d = 10);
}

// Central section
color ("silver") hull () {
	translate ([5, 0, 0]) MainBody();
	translate ([-5, 0, 0]) MainBody();
}
color ("gray") {
	translate ([0, -15, 0]) cube ([1, 75, 15], center=true);
}

module CargoBay () {
	cube ([10, 14, 19], center = true);
	cube ([9, 15, 19], center = true);
	cube ([9, 14, 20], center = true);
}
// Cargo bays
color ("darkseagreen") {
	translate ([0, 10, 0]) CargoBay();
	translate ([0, -10, 0]) CargoBay();
	translate ([0, -30, 0]) CargoBay();
}

module Gatling () {
	difference() {
		color("silver")
			cylinder(h = 2.5, d = 6, center = true, $fn=30);
		color("gray")
			cylinder(h = 1, d = 7, center = true);
	}
	color("gray")
		cylinder(h = 3.5, d = 3, center = true, $fn=15);
	color("gray") rotate([-90, 0, 0])
		cylinder(h = 6, d = 1);
}

// Port
translate ([-10, 0, 0]) rotate ([0, 0, 90]) Gatling();
translate ([-10, 45, 0]) rotate ([0, 0, 60]) Gatling();
translate ([-10, -45, 0]) rotate ([0, 0, 120]) Gatling();

// Starboard
translate ([10, 0, 0]) rotate ([0, 0, -90]) Gatling();
translate ([10, 45, 0]) rotate ([0, 0, -60]) Gatling();
translate ([10, -45, 0]) rotate ([0, 0, -120]) Gatling();

module DivingPlane () {
	color ("gray") scale([0.2, 1, 1])
		cylinder (h = 5, r1 = 3, r2 = 2);
}

// Fore
translate ([7.5, 70, 0])
	rotate ([0, 90, 0]) DivingPlane();
translate ([-7.5, 70, 0])
	rotate ([0, -90, 0]) DivingPlane();
// Aft
translate ([7.5, -70, 0])
	rotate ([0, 90, 0]) DivingPlane();
translate ([-7.5, -70, 0])
	rotate ([0, -90, 0]) DivingPlane();

module BridgeWindowHole () {
	translate ([0, 7.5, 0])
		cube ([1.5, 5, 2], center = true);
}

// Front section
union () {
	difference () {
		color ("silver") hull () {
			translate ([0, 30, 7.5])
				sphere (d = 15, $fn=30);
			translate ([0, 30, -7.5])
				sphere (d = 15, $fn=30);
			translate ([0, 85, 7.5])
				sphere (d = 15, $fn=30);
			translate ([0, 75, -7.5])
				sphere (d = 15, $fn=30);
		}
		// Open decks
		color ("darkseagreen") translate ([0, 56, 6])
			cube ([18, 36, 2], center = true);
		color ("darkseagreen") translate ([0, 53, -6])
			cube ([18, 30, 2], center = true);
		// Bridge windows holes
		color ("gray") translate ([0, 85, 7.5]) {
				BridgeWindowHole();
				rotate ([0, 0, 15])
					BridgeWindowHole();
				rotate ([0, 0, -15])
					BridgeWindowHole();
				rotate ([0, 0, 30])
					BridgeWindowHole();
				rotate ([0, 0, -30])
					BridgeWindowHole();
		}
	}
	// Bridge windows
	color ("turquoise") translate ([0, 85, 7.5])
		sphere (d = 14, $fn=30);
	// Inner hull
	color ("silver") translate ([0, 55, 0])
		cube ([12, 40, 20], center = true);
	// Exposed bulkheads
	color ("darkseagreen") translate ([0, 45, 0])
		cube ([14, 1, 15], center = true);
	color ("darkseagreen") translate ([0, 55, 0])
		cube ([14, 1, 15], center = true);
	color ("darkseagreen") translate ([0, 65, 0])
		cube ([14, 1, 15], center = true);
	// Port
	color ("silver") translate ([-7.5, 77, 3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
	color ("silver") translate ([-7.5, 73, -3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
	// Starboard
	color ("silver") translate ([7.5, 77, 3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
	color ("silver") translate ([7.5, 73, -3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
}

module TwinGun () {
	color ("silver") rotate ([0, 90, 0]) {
		cylinder(h = 1, d = 3.5, center = true, $fn=10);
		translate([0, 0, -2])
			cylinder(h = 1, d = 3, center = true, $fn=10);
		translate([0, 0, 2])
			cylinder(h = 1, d = 3, center = true, $fn=10);
		// cylinder (h = 5, d = 2.5, center = true, $fn=10);
		cylinder (h = 6, d = 1, center = true, $fn=10);
	}
	color ("gray") {
		translate ([-1, 0, 0]) cylinder (h = 4, d = 0.6);
		translate ([1, 0, 0]) cylinder (h = 4, d = 0.6);
	}
}

translate ([0, 24, 12]) rotate ([60, 0, 0]) TwinGun();
translate ([0, 24, -12]) rotate ([120, 0, 0]) TwinGun();
translate ([0, 81, -12]) rotate ([-120, 0, 0]) TwinGun();

// Rear section
color ("silver") {
	hull () {
		translate ([0, -50, 7.5]) sphere (d = 15, $fn=30);
		translate ([0, -50, -7.5]) sphere (d = 15, $fn=30);
		translate ([0, -80, 7.5]) sphere (d = 15, $fn=30);
		translate ([0, -80, -7.5]) sphere (d = 15, $fn=30);
	}
	translate ([0, -80, 3])
		cylinder (h = 3, d = 18, center = true, $fn=30);
	translate ([0, -80, -3])
		cylinder (h = 3, d = 18, center = true, $fn=30);
}

module Thruster () {
	rotate([90, 0, 0]) {
		difference() {
			hull() {
				cylinder(h = 20, d = 5, center=true, $fn = 10);
				cylinder(h = 30, d = 3, center=true, $fn = 10);
			}
			cylinder(h = 40, d = 2, center=true, $fn = 10);
		}
		scale([1, 1, 10]) sphere(d = 3, $fn = 10);
	}
}

color ("silver") {
	translate ([-9, -70, 10]) Thruster();
	translate ([9, -70, 10]) Thruster();
	translate ([-9, -70, -10]) Thruster();
	translate ([9, -70, -10]) Thruster();
}

Note: the Venerator isn't mine. Source code is provided for entertainment and education.