Mods introducing new content into the game.
Version: 0.9.8
Date: 2026-10-16
Changes:
- Updated the Chinese mod title, description and release metadata for Mod Portal publication
- No gameplay changes from 0.9.7
Version: 0.9.7
Date: 2026-10-16
Changes:
- Removed placement caps for all five portal colors and all five sizes: any number can be
built by players, robots or scripts without over-limit destruction or item refunds
- Portal registration, placement hints and all existing teleport rules remain unchanged
Version: 0.9.6
Date: 2026-10-15
Changes:
- Green chests have TRULY fixed slots now — found the real switch: the prototype flag
quality_affects_inventory_size=false stops the engine from padding quality chests
(legendary was ×2.5). No more capacity-bar red-X lock: every green chest is physically
exactly its size tier (x1: 1 … x5: 5), whatever its quality. Battery box pinned to 5 too
- Migration: existing chests keep their birth-time slot count forever (the engine never
revisits placed entities), so oversized legacy chests are reshelled in place on load —
contents carried over, filters kept, overflow spilled gently at the door, line/record/FX
references re-keyed to the new entity
Version: 0.9.5
Date: 2026-10-15
Changes:
- Portal ring FX moved to the lower-object layer — portals now read as floor pads, never
drawn over the player (the old y-sorted "door frame" experiment is over)
- Green portals have NO charge-up concept anymore: they're grid appliances — powered =
working, unpowered = paused with items staying put. The meter MJ readout and charge bar
are gone from the GUI; a simple grid status lamp replaces them
- Green quality now does exactly two things, per feedback: cheaper delivery fee and shorter
dispatch interval (×(1/(1+0.2·level)) — legendary pays half and ships twice as often).
Slot count stays size-only (the 0.9.4 bar lock)
Version: 0.9.4
Date: 2026-10-15
Bugfixes:
- Green chest slots are now HARD-LOCKED to the size tier (x1: 1 … x5: 5): the game engine
silently gives quality containers bonus slots (measured: ~+30% per quality level, so a
legendary x5 had 12 usable slots next to a normal one's 5). resize() only works on
script-created inventories and re-creating the entity keeps the quality bonus, so the
capacity bar is now pinned to the tier every few seconds — quality changes nothing, as
requested
- Green line checkboxes were unreachable: the GUI refresh walked the destination list and
hit the row FRAMES (which carry no tags) instead of the checkboxes inside them — disabling
every row every 1/6s and spamming "grey-gone" diagnostics. Checkboxes are now resolved
properly and refresh live
- Orphan power meters/battery boxes are swept every 5s: old versions left invisible
accumulators behind when portals were mined (proof: 9 green portals had 21 meters, a
~290kW phantom drain on the grid)
- Adoption scan covered only the base (x1) entity names — x2..x5 variants were invisible to
relink/adopt self-healing. All 25 names are scanned now
- Green seal hysteresis: on a starving grid the meter hovered near zero and seal/unseal
flipped twice a second, making the chest button flicker. Now seals only when below half
AND not charging (needs >0.1MJ and rising to unseal)
- Ring/light render objects self-heal when their portal entity is replaced (no more crash
on invalid render object)
Version: 0.9.3
Date: 2026-10-15
Changes:
- Green slots scale with SIZE again (x1: 1 → x5: 5) — my misread: quality (the game
mechanic) affects NOTHING on portals; size drives everything. Renamed the stat tables
QUALITY_* → TIER_* in code to kill the confusion for good
Version: 0.9.2
Date: 2026-10-15
Changes:
- Portal display names are now role-based: 载具传送门 / 初级传送门 / 物品传送门 /
紧急传送门 / 星际传送门, size suffix x1–x5 (was color names + S notation)
- Green seal simplified per feedback: power loss just PAUSES deliveries — items stay put
in the chest, nothing is stashed away (the 0.9.0 hidden-vault machinery is gone). Power
check is live: transfers only while the meter is actually gaining or above half — no
more delivering for minutes after the grid dies
- Green chests have a flat 2 slots at all sizes — tier now only discounts line cost and
speeds up deliveries
- All distance checks use ONE ruler now: distance to the portal's EDGE vs the player's
reach — opening range, button enable, auto-close and charge-keeping are consistent
(no more "opens then instantly closes" band), and the red status page finally
auto-closes too (it returned early before the check); red fire button also double-checks
- Ring FX stays on the y-sorted object layer on purpose: north edge covers you, south edge
doesn't — the 2D door-frame effect
Version: 0.9.1
Date: 2026-10-15
Bugfixes:
- Portal rings still floated above players: render objects remember the render layer from
creation time, so old portals kept the old layer forever. FX objects are now rebuilt on
config change AND self-rebuilt whenever the ring's layer is stale
Version: 0.9.0
Date: 2026-10-15
Changes (BREAKING for green portals):
- Green portals are now plain chests — the linked-container "关联" panel mess is gone for
good. Private inventory per portal, checkbox item lines move batches directly between
chests. On power loss the contents are stashed into a hidden vault (invisible and
untouchable) and restored when power returns; overflow on unseal or demolition spills
on the ground — nothing is ever lost
- All the link-id machinery (pools, watchdog, dead ids) is retired
- Old linked-container green portals are removed by the game on load — move items out
BEFORE loading, or rebuild them after (leftover pool contents drop on the ground)
Version: 0.8.4
Date: 2026-10-15
Features:
- Red portals get a second switch: "立即传送 / instant fire" — tick it and stepping on the
portal teleports you instantly again (the original emergency feel). Exit-only wins over
it. A 2-second immunity after landing prevents chain-jumps across instant portals
Bugfixes:
- Green "打开箱子" now actually opens the inventory: scripted sub-window opens were being
intercepted by my own right-click replace logic (infinite bounce back to the config GUI)
Version: 0.8.3
Date: 2026-10-15
Changes:
- ALL portals are manual now — red included: stepping on any portal does nothing; red's
random emergency jump moves to a big red button in its status page. The step-on watcher
loop is gone entirely
Version: 0.8.2
Date: 2026-10-15
Changes:
- No more step-on popups except red (which fires instantly by design): every other portal
opens on right-click only
- Teleport costs raised to luxury levels: blue 20 MJ (slow-free solar), yellow 60 MJ
(vehicles ride along), purple 80 MJ, red 120 MJ — a portal use should beat a tesla shot
- Green line batches cost 400 kJ base + distance; green meter buffer 2→10 MJ, input 2 MW
Version: 0.8.1
Date: 2026-10-15
Features:
- Red portals get an "exit only" switch: with it ON, stepping on the portal does NOT
teleport you — it only serves as a landing spot. Put one at home so you can't misstep out
- Portal icons carry a size digit (S1–S5) in the corner
- Yellow buffer 5→15 MJ (hauling vehicles costs real power, second only to red); recipes
are properly luxurious now (~100×: S1 costs dozens of parts, S5 hundreds)
- Green portals no longer pop their GUI when stepped on — config opens on right-click only
Bugfixes:
- Green "打开箱子" did nothing: gui_mode=none blocks ALL opening — now "all", plus a
link-id watchdog that force-restores the assigned pool if a player edits the id
- Green line selection is now a checkbox list with a live status line (line count, queued
items, last transfer / stuck reason) — was: buttons that only flipped an arrow
- Portal ring FX moved to the ground render layer — no longer floats above the player
Version: 0.8.0
Date: 2026-10-15
Features:
- SIZE TIERS S1–S5: every color now comes in 5 physical sizes (1×1 up to 5×5), each its
own item and recipe. Footprint = t×t tiles, standby drain = 24 kW×t, recipe cost ×t;
capability tiers (charge threshold, blue range and solar rate, green slots and line
speed/cost, placement limit 4+t) are now driven by SIZE, not quality rolls
- Portal names include their size (蓝S3·1); destinations, green lines and placement limits
are per color+size network
- Over-limit placement returns the SAME size item
- Ring/light FX scale with portal size; step-on detection radius follows footprint
- Green legacy -tN shells keep working; old green pool rescue now spills overflow to the
ground instead of vanishing when the new tier-sized pool is smaller
Notes:
- Quality no longer affects portal stats; different qualities of the same size share one
network. Craft the size you want directly — no gambling
Version: 0.7.0
Date: 2026-10-15
Features:
- GREEN REWORK — paired item lines replace the shared pool: every green portal owns a
private inventory; pick line destinations in its GUI (many-to-many, round-robin).
Batches teleport with power cost and transfer time scaled by distance; higher quality
tiers run faster and cheaper
- Green portals now draw continuous standby power via their meter and SEAL when it runs
dry (items can neither enter nor leave until power returns); sealed portals are dimmed
with a floating "断电封存" hint
- Green inventory size = quality tier (1–5 slots); placing a quality green portal swaps
the shell to the matching tier automatically
- Full quality-tier productization: standby drain scales by tier (24/18/14/10/8 kW,
scripted real joules), blue solar charge rate scales (0.6×–1.6×), green line speed
scales — on top of existing threshold / range / limit / cost differences
- Themed per-color recipes (solar parts / chest+inserter / military / engine / high-tech)
replacing the placeholder 4 iron + 2 circuits
- Walking away from an open portal GUI now closes it outright (1-tile grace band)
- Old shared green pools are rescued into the first found portal's new private inventory;
rebuild old green portals to get tier-sized slots
Version: 0.6.8
Date: 2026-10-15
Changes:
- Portal buffer charge now COUNTS toward the teleport instead of resetting to 0 on click:
the idle charge bar is real readiness — a full portal teleports instantly, the battery
bank only covers the shortfall, and empty portals still do the full 5 MW charge-up
ritual. (Red already worked this way; now all colors match.)
Version: 0.6.7
Date: 2026-10-15
Bugfixes:
- Charge bar no longer flickers between 100% and 99% when the battery bank has
accumulators: the bank now sips only the trickle ABOVE 99.5% of the buffer, so the
buffer stays pinned at full; the display also treats ≥99.5% as full
- The "关闭" button now cancels an active charge (same as pressing E) — closing the GUI
mid-charge no longer leaves you locked in place
Changes:
- Both cancel paths (E / close button) now also show the "charge aborted" flying text
Version: 0.6.6
Date: 2026-10-15
Bugfixes:
- Fixed crash when a LEGENDARY portal exists: legendary's quality.level is 5 (there is no
4), which overran the threshold tables — all quality lookups now use a 1–5 tier mapper
- Fixed battery-fed teleports stalling at ~99%: the 24 kW standby drain eats several kJ
between the battery dump and the next 0.25 s charge check, defeating the old 1-joule
tolerance. Fire threshold is now 99.5%, and a battery dump that covers the threshold
teleports instantly
Features:
- Battery bank is now REAL storage: accumulators in the bank are capacity and are NOT
consumed — surplus power trickles from the full portal buffer into the bank at 1 MW,
teleports spend the stored joules. Old saves start with empty banks
- Bank charge is always visible above the portal ("蓄电 x/y MJ") and in the GUI row
- Closing the battery bank returns to the portal GUI automatically
- Vanilla no-power / no-network alert icons hidden on yellow/red/purple portals too
(charge state is carried by the ring light and floating numbers)
Version: 0.6.5
Date: 2026-10-15
Bugfixes:
- ROOT CAUSE FOUND for "destination portal no longer exists" and dead battery-bank button:
`local a, b = x and find_portal(x)` collapses find_portal's two return values into one,
so the record variable was always nil — every destination button got greyed on the first
GUI refresh and the battery button could never find its portal. Storage was never corrupt;
the two readers were. Fixed both call sites. (This same line also caused the 0.6.1
click-eating rebuild loop.)
Version: 0.6.4
Date: 2026-10-15
Bugfixes:
- Self-healing storage: every 5 s an adoption sweep re-links portal records whose entity
link died and re-registers portals that exist in the world but lost their record
(old saves / editor edits / any residual corruption). Fixes persistent "destination
portal no longer exists" grey buttons — send the log if [CP] relink/adopt lines appear
- Added load self-check ([CP] boot-check) logging alive/dead record counts once per load
Internal:
- /cp-debug dump — full storage-vs-world dump to the log, works over RCON
Version: 0.6.3
Date: 2026-10-15
Bugfixes:
- Fixed a hard crash when placing a portal over the per-color+quality limit: the quality
name was read from the entity AFTER it had already been destroyed
- Battery bank button: if the hidden bank chest is missing (e.g. migration gap on old
saves) it is now rebuilt on the spot instead of silently doing nothing; the chest is no
longer flagged not-selectable-in-game, which could block scripted opening
Changes:
- Added one-shot diagnostic log lines ([CP] grey-gone / start_charging gone / battery-btn)
to pin down the "destination portal no longer exists" report — send factorio-current.log
if you see it
Version: 0.6.2
Date: 2026-10-15
Features:
- Progress bars now update smoothly every 2 ticks with a percentage readout, like the
vanilla crafting / accumulator charge displays (was: visible 0.25 s steps, no numbers)
- Red portal status bar now shows charge relative to the fire threshold (same scale as
every other color) instead of absolute buffer fraction — no more jumping right after open
- Stale destination buttons are greyed in place with a "no longer exists" tooltip instead
of rebuilding the whole GUI (follows vanilla "update, don't rebuild" behavior)
Version: 0.6.1
Date: 2026-10-14
Bugfixes:
- Fixed click-eating: portals deleted via the map editor (or any path bypassing the mined/
destroyed events) left stale records that made open GUIs rebuild in an endless loop,
swallowing most clicks. A janitor sweep now removes dead portal records every 1/6 s
Version: 0.6.0
Date: 2026-10-14
Features:
- Quality system integration: a portal's quality tier makes it a DIFFERENT network —
destinations, shared green inventories and placement limits are all per color+quality
- Blue: range = (quality+1)×200 tiles; Yellow/Purple/Red: charge threshold = buffer ×
(100/70/50/35/25)%; Green: per-batch power cost discounted by quality
- Placement limit per color+quality = 5 + quality level (legendary allows 9)
- Tech tree: five research technologies — blue after automation science, green after
logistic science, red after military science, yellow after automobilism, purple after
space platform (production science without Space Age)
- Battery bank: every powered portal gets 5 big slots (accumulators only, 1 item = 5 MJ,
consumed on use) — click a destination and the stored energy dumps instantly into the
charge, enough banked power means near-instant teleport; red portals also draw from the
bank when stepped on undercharged
- One charging session per player: starting a new one cancels your previous
- Charging locks you onto the portal pad (vehicles too); leave by cancelling or closing
the popup (Esc/E) — closing mid-charge auto-cancels
- Charging is much faster now: 5 MW grid input (yellow ~1 s, purple ~4 s at normal quality)
- Vehicles properly blocked from non-yellow portals at every path (walk-on, right-click
open, mid-charge entry, fire time)
- Green portals now consume power via a hidden meter (24 kW standby + per-batch cost)
- Blue portal no longer shows the no-power / no-network warning icons
- Charging FX only pulse while energy is actually rising — a starving portal (no power /
night for solar) shows a faint slow blink instead
Version: 0.5.0
Date: 2026-10-14
Bugfixes:
- Fixed destination buttons wrongly greying out with "target no longer exists": portal ids
are now string keys end-to-end (GUI tags and save serialization silently turn numbers
into strings), with migration for existing saves
Features:
- Belt-style collision: portals occupy their tiles so buildings can no longer overlap them,
while players / cars / spidertrons still walk (drive) right on
- State effects reworked around the ring sprite so they are visible in daylight:
empty = ring hidden; charging up = faint slow breathing; full = ring shown + steady glow;
charging for a teleport = big fast pulsing ring. Green: ring shown when the shared
chest has items
- New /cp-debug command for troubleshooting (prints storage keys and open-GUI button tags)
Notes:
- Mod source now lives in ~/dev/factorio-dev (git); the mods directory gets a hard copy
via scripts/deploy.js — no more symlink doubts
Version: 0.4.2
Date: 2026-10-14
Changes:
- "Near the portal" radius unified and relaxed to 10 tiles (was 2) for both starting a
charge and keeping it — buttons no longer grey out the instant you step away
- Buttons are created in the correct enabled/disabled state (no more brief flash)
- A visible "get closer" hint line appears in the popup when you are too far
- Stronger state-effect contrast: empty = nearly dark, full = bright + faint ring,
charging-for-teleport = big fast pulse with growing ring flash
Version: 0.4.1
Date: 2026-10-14
Bugfixes:
- Fixed a crash when a color had 2+ destinations: GUI element names must be unique per
parent in 2.1, so destination buttons are now named per portal (cp-dest-btn-N)
Version: 0.4.0
Date: 2026-10-14
Features:
- Portal status effects: every portal gets a state light — dark = empty (can't teleport),
slow breathing = charging up (brighter as it fills), steady bright = fully charged,
fast pulse + growing ring flash = charging for a teleport. Green portals glow when the
shared chest has items in it
- Open portal GUIs now auto-refresh: charge bars, charging progress and destination
buttons update live — no more re-clicking the portal to refresh
- Destination buttons grey out with a hint when you walk too far from the portal, and
light back up automatically when you come closer (out-of-range blue destinations stay
grey with their "too far" note)
- Sound effects (Kenney CC0, see SOUNDS-CREDITS.txt): teleport zap (distinct for red),
charge-up start, cancel, error, popup open
Version: 0.3.3
Date: 2026-10-14
Changes:
- Green portal: the link-id panel is now hidden (gui_mode=none) — it was easy to
accidentally click an id and silently leave the shared network. All green portals keep
using one fixed shared inventory; filter slots still available
Notes:
- Verified headless: red charges fine from a real grid (if your red portal won't charge,
check that your network actually has generators, not just empty accumulators)
Version: 0.3.2
Date: 2026-10-14
Changes:
- Blue portal: can now also fast-charge from the grid (input 1 MW); solar self-charging is
now passive all day (no active teleport session needed), still nothing at night
- Clicking a destination now checks distance immediately — no more start-then-cancel stutter
when you click while already walking away
Version: 0.3.1
Date: 2026-10-14
Features:
- Right-click any portal to open its status page (blue portals are clickable now too:
switched back to the accumulator shell with the no-power icon suppressed)
- Status pages: yellow/blue/purple show destinations & charge; red shows a read-only
charge bar; green opens the native shared-chest GUI
- Charging now auto-cancels when the player walks more than 2 tiles away from the portal
(no more long-range yoink if you wander off without cancelling)
Changes:
- Green portal redesigned: now a linked container — all green portals share one inventory.
Use inserters to grab items in/out, with inventory filter slots. No power needed
Version: 0.3.0
Date: 2026-10-14
Features:
- Five colors, five roles:
- Yellow = vehicle portal: teleports you together with your car/tank/spidertron
(other colors now show an "exit the vehicle" hint when driven onto)
- Green = item portal: ships ground items dropped on it to the other green portals
on the same planet (50 kJ per stack, up to 5 stacks per cycle, exit offset prevents loops)
- Blue = solar portal: no grid connection, charges from sunlight by day (night = no charge,
planet solar multiplier applies); range scales with portal number N×200 tiles
- Red = emergency portal: combat-indestructible; when its 30 MJ buffer is full, stepping on
it instantly teleports you to a random other red portal on the same planet (highest cost)
- Purple = cross-planet portal (unchanged: 20 MJ charge ritual)
Version: 0.2.0
Date: 2026-10-14
Features:
- Real power mechanics (laser-turret style): 24 kW standby drain; picking a destination
starts a 1 MW charge-up; teleport fires when the buffer is full, then the buffer empties
- Normal colors need 5 MJ per teleport; purple needs 20 MJ (higher cost for cross-planet)
- Stored energy never feeds back into the grid (output flow 0 W)
- Charging progress bar in the popup, with a cancel button
Version: 0.1.0
Date: 2026-10-14
Features:
- Five portal colors: yellow / blue / green / red / purple, max 5 per color
- Step onto a portal to list the other same-color portals by name, click to teleport instantly
- Purple portals work across planets; other colors are limited to the current planet
- Rename the portal you are standing on in the popup GUI
- Auto default names (黄·1 .. 紫·5), lowest free index first
- Over-limit placement is refused and the item is returned
- Bilingual locale (zh-CN / en)