Multi Cursor / Copy & Paste
It’s now possible to have more than one Structure
as cursor.
Simply select multiple Structure
s and either press Ctrl+C
or the new Copy Selected
button.
You can now rotate or place your cursor’s Structure
s.
Some notes:
-
When removing selected
Structure
s, they are now set as your cursor (basically the ‘cut’ operation) -
Structure
s withInfluence
are always placed first to ensure otherStructure
s are placed successfully -
You can move the cursor
Structure
s relatively to your cursor viaCtrl+WASD/ArrowKeys
. This can be helpful when placing large patterns -
When placing
Structure
s it places ‘as much as possible’. If you e.g. have50 Belt
in your inventory and try to place100 Belt
it will place half of them (which ones it picks is pretty much undefined for the player)
Same is true if otherStructure
s or terrain are in the way
Turning Structures On And Off
It’s now possible to turn Structure
s on and off. They’ll stop operating and won’t consume or produce any energy.
There’s a new cursor and hotkey (O
) to toggle a single Structure
on and off. It’s also possible to turn selected Structure
s on or off.
Note that Structure
s that have an Influence
can’t be turned off.
Below an image of turned off Structure
s and the new buttons:
Production Stats
I added a new view that shows your factory’s production stats of the last minute.
For now the production stats aren’t serialized. Due to that you have to wait for one minute after loading until the values displayed are up-to-date (‘Production of last minute since loading’).
In the future I might serialize the production stats and add historical charts.
The ‘Stats Overlay’ button was moved to the render settings, and I updated the icon to represent a bar chart.
Below an image of the new view:
Setting More Structure Limits
Version 0.4.0
introduced the ability to set an Item
spawn limit for Source
s.
This release now also makes it possible to set a limit for:
-
Launch Pad
=> If limit is reached, the ship is launched early -
Sink
=> Won’t accept any moreItem
s when limit reached (see more in Module improvements) -
Chest
=> Won’t accept thisItem
ifChest
already contains limit count of it -
Provider
=> Won’t accept thisItem
if planet inventory already contains limit count of it
This is very useful since you can now easily control production in your factory (e.g. “Only craftRT1
if there are100 Belt
s available”)
Note that limits are considered ‘per item’ and not in ‘total’.
Module Improvements
There have been many improvements to the Module
system in this release.
Belt Versions Of Source And Sink
I added new versions of Source
and Sink
that behave like Belt
s. With them it’s not required to use Arm
s anymore to feed Module
s or to grab their output. You can just connect them to a system of Belt
s.
The new versions are called BeltLike
while the previous ones are now called ChestLike
.
Since the new versions are better, they’re locked behind a new technology and cost more than their less powerful variants.
Below an image of the old and new Source
and Sink
:
Rework Of Modularize Logic
Since it’s now possible to also set an Item
limit for Sink
s I changed the stop condition ‘all sinks having items’ to ‘all sinks reached their limit’.
In combination with the Source
limit, you can now setup your Module
to for example create exactly 10 Belt
from 20 Iron Plate
.
In previous versions the game would try to find the greatest common divisor for your Module
‘s inputs, outputs and tick time and divide those values by it.
This does not happen anymore and instead you can now choose this value yourself via the new Modularize Divisor
button.
By for example multiplying all limits by 10
and also setting the divisor to 10
you can greatly reduce the ‘lost time’ of your Module
due to its warmup phase.
To prevent cheating, good values (output counts) are rounded down, while bad values (input counts, duration) are rounded up.
With the above changes you can now define Module
s that waste no resources and run as quickly as possible.
Due to that I removed the ‘give back’ logic that was running during the Modularize
step to prevent Item
loss.
Unmodularize Rotated Modules
For the new multi cursor I had to implement rotation of a Structure
group. Due to that, it’s now also possible to unmodularize rotated Module
s.
New Structures Overflow And Underflow
This release contains the new Structure
s Overflow
and Underflow
.
They both behave similarly to Splitter
but either prioritize the front for output (Overflow
) or the sides (Underflow
).
They are great for setting up priorities for certain parts of a factory.
I also added a new technology to unlock them.
Progress Instead Of Cooldown
I reworked the entire ‘cooldown system’ to now track a progress instead.
Some Structure
s still have a cooldown that defines how quickly they perform an action,
but their current state is now tracked as progress.
This should now be way less confusing than the previous system.
Burning / Smelting Rework
Previously Furnaces
would simply convert 1 Coal + 1 Ore => 1 Plate
, while Burner Power
would generate energy for some time after accepting Coal
.
I reworked this system to be more flexible:
-
An
Item
can now have aThermal Energy
that is released when burning it (OnlyCoal
has it for now) -
Ore
s now require aSmelt Energy
to be turned intoPlate
s (For now same value for allOre
s and equal toCoal
‘s thermal energy) -
Burner Power
andFurnace
now have aSmelt Speed
that defines how much of that energy they can use / convert per tick -
Electric Furnace
requires moreEnergy
than itsSmelt Speed
. It has therefore a non-optimal energy efficiency
I also heavily nerfed the Electric Furnace
by increasing its energy usage.
Note that above changes barely changed the behavior since I tweaked most values to yield the same results as before.
But now it’s possible to add more energy sources besides Coal
and for example make some Ore
s way harder to smelt than others.
InfoBox Improvements
This release contains some improvements for the InfoBox
:
- Addition of more description texts in general
- Improving existing texts regarding formatting and wording
-
Limit values are now shown in the
InfoBox
- All technologies are now described
The previous version introduced logic for the InfoBox
such that it will only show when the cursor hasn’t moved for a while.
Some players didn’t like that change. I therefore added behavior modes for the InfoBox
:
-
Smart
the previous behavior, visible after cursor stop -
Always
visible whenever there’s any information present -
Never
never visible
You can change the behavior from the render settings or by pressing Tab
.
In case of Never
I added a warning when starting a game to make sure players don’t accidentally lose the InfoBox
.
Burner Power Tiers
I added higher tiers for the Burner Power
which convert energy faster.
Lab Changes
I changed Lab
to only hold one of each Research Token
. Due to that and the progress changes the Lab
‘s behavior should now be more transparent.
Tech Tree
I added some logic to the tech tree’s layouting to reduce the length of dependency connections. It’s still not perfect, but better than before.
Minor Improvements
There have been additional, minor improvements:
-
If there’s a
Belt
at the cursor, it now also correctly uses the low-res version -
The
InfoBox
icon was remade -
I changed the default selection mode to
Set
and changed the order of modes when iterating them -
The
Starter
influence range now matches that of 3Influence Mk1
-
A
Miner
now always mines the resource right below it even if there’s a higher count of something else in its range
Balancing
I changed multiple recipes to not require the previous Mk
. The changes follow this example:
FROM: Crossing Mk2
requires Crossing Mk1
and 2 Motor
TO: Crossing Mk2
requires 4 Belt Mk2
and 2 Motor
In addition to that I increased the cost of Provider
.
Bugfixes
There have been some bugfixes in this release:
-
The cooldown / progress and other overlays are now rendered correctly for
Long Arm
-
Times are now displayed correctly in case of a
0
value - Fix the description texts of selection modes
Multiplayer
Please note that multiplayer is HIGHLY experimental and might never make it into the release version of Factor Y
. It’s possible that issues are found that just can’t be fixed, causing me to drop multiplayer entirely.
Also please don’t purchase Factor Y
expecting multiplayer at some point. Consider it a singleplayer-only game.
This release only contains some multiplayer features so I can start with internal tests.
Many months ago I had a working server for Factor Y
and stopped maintaining it. Previous to this release I got it to work again.
This release’s Factor Y
client is now able to connect to a server, but the public release does not contain the server executable. For now I’ll be the only ‘host’ of games until things stabilized.
If you want to take part in multiplayer tests, please join the Discord. I might organize something there.