Vulcan is a hot planet with lava rivers, located close to the sun, featuring high energy output from solar panels. In all likelihood, 70% of the time, this will be the second planet—after the starting planet, Novis—where you'll need to build a base and explore.
Metallurgical Research Package
The main perk of the planet Vulcan is the orange canisters and the tungsten ore with calcite.
There are no issues with it either; it’s available on Vulkan, even in small quantities:
The same applies to the large deposits, with the sole caveat that the large tungsten deposits are guarded by Ibaka—a foe with high resistance to almost everything, 30,000 HP, and rapid regeneration.
Demolish the Demolisher!
Resists:
Poison capsules and cartridges
I advise you to carefully choose which Destroyer to attack, as the tungsten might turn out to be in a hard-to-reach spot surrounded by lava, forcing you to resort to some awkward maneuvers:
Artillery
Production of cannons and their shells:
Export of calcite and tungsten beams from Vulcan:
Conditional statements
In Factoria, you can set up checks for your ship—similar to `if-else` conditional statements in programming languages—to fully automate the process of loading and unloading items and flying the ship without your direct involvement.
Using JavaScript code as an example:
/* Sticky header */
window.onscroll = function() {myFunc()};
var header = document.getElementById("head");
var sticky = header.offsetTop;
function myFunc() {
if (window.pageYOffset > sticky) {
header.classList.add("sticky");
} else {
header.classList.remove("sticky");
}
}
When you scroll the site on a mobile phone, this JS code pins the site menu to the top of the screen and unpins it if you return to the very top of the page.
Let’s break down what’s written in normal language:
/* Sticky menu */ – the name of the script and what it does.
window.onscroll = function() {myFunc()}; — execute the function myFunc() when the webpage is scrolled on a mobile phone.
var header = document.getElementById("head"); — a variable named `header` that references the element with the ID `head` in the HTML document: `<header id="head"></header>`.
`var sticky = header.offsetTop;` — the variable named `sticky` references the `header.offsetTop` value; this corresponds to the element's position when the user is at the very top of the page and has not yet scrolled down.
function myFunc() { — opening our function myFunc()
if (window.pageYOffset > sticky) { — a check to see if the page scroll position (window.pageYOffset) exceeds the element's initial "sticky" position at the top of the page; i.e., if a user on a mobile phone starts scrolling, the following action is triggered:
header.classList.add("sticky"); — adds the class "sticky" to the HTML <header></header> tag, resulting in <header class="sticky"></header>; this fixes the site menu to the top of the page as the user scrolls.
} else { — in other cases, i.e., if the page is back at the very top
header.classList.remove("sticky"); — remove the "sticky" class so it reverts to <header></header> and the mobile menu becomes static.
Factorio also has conditional operators:
We're creating an if-else condition for the ship:
function Ship on Vulcan() { if all requests are fulfilled (orange cans = 2000 and tungsten beams = 1000) or ammo < 200 {
Flew to the base; }
}
The same applies to the database: you export items from the platform using queries:
You specify a conditional statement:
function Ship at Base () { if ammo > 1000 and all ship and cargo repair requests have been completed {
Fly to Vulcan; }
}
This might come in handy for someone, because manually triggering the flight every time is a real pain in the ass, and without conditions, the ship would just fly aimlessly and get torn apart by asteroids. You can also choose which planet to request specific resources from for the ship.








