Logistica

Factorio - Cum funcționează semnalele pentru trenuri și construire de rețele

Și eu, când am construit prima intersecție în cruce, trenul din spate s-a oprit în mijlocul acesteia chiar după sosire, iar fluxul se bloca complet. Dar când am schimbat intrarea cu un semnal de lanț pentru trenuri, totul a curs mult mai ușor, și atunci am înțeles că semnalele obișnuite și cele de lanț au roluri complet diferite.

Logistica

Factorio - Cum funcționează semnalele pentru trenuri și construire de rețele

Și eu, când am construit prima intersecție în cruce, trenul din spate s-a oprit în mijlocul acesteia chiar după sosire, iar fluxul se bloca complet. Dar când am schimbat intrarea cu un semnal de lanț pentru trenuri, totul a curs mult mai ușor, și atunci am înțeles că semnalele obișnuite și cele de lanț au roluri complet diferite.

Acest articol este destinat începătorilor și jucătorilor cu nivel intermediar care tocmai au început să construiască rețele de trenuri în Factorio vanilla 1.1–2.0, și vă ajută să înțelegeți diferența dintre poziția de oprire și zona de rezervare, pentru a putea alege corect tipurile de semnale și construi intersecții și intrări în stații care nu se blochează. Linia principală cu două benzi într-o singură direcție, intersecții cu intrări de lanț și ieșiri obișnuite, și stații cu linii de așteptare în afara liniei principale — doar reținând aceste baze puteți reduce semnificativ blocajele comum. În plus, vă voi arăta cum să divizați blocurile din interiorul intersecțiilor, ținând cont de schimbările din versiunea 2.0, fără să vă confuzați.

Versiunile și termenii folosiți în acest articol

Articolul acesta se ocupă cu semnalele pentru trenuri din Factorio vanilla 1.1–2.0. Specificațiile de bază ale semnalului obișnuit și celui de lanț rămân comune în acest interval, și scheletul de bază pe care trebuie să-l învețe începătorii — „intrări de lanț, ieșiri obișnuite" și „trenurile sunt gestionate pe unități de bloc" — nu se schimbă. Tutorialul oficial de pe wiki-ul Factorio, 『Tutorial: Train signals』, se bazează exact pe aceste reguli de bază.

În articolul acesta, folosesc termenii conform wiki-ului oficial: Semnal obișnuit pentru trenuri (Rail signal), Semnal de lanț pentru trenuri (Rail chain signal), Bloc, Rezervare de cale, Intersecție, Linie de așteptare (stacker), și îmi mențin acești termeni pe tot parcursul. Uneori vorbesc scurt despre „semnalul de lanț" sau „semnalul obișnuit", dar mă refer exact la acesti termeni formali. Este important să menții o terminologie consistentă pentru a nu se încurca explicațiile despre „unde oprim" și „cât spațiu trebuie liber pentru a intra".

Un principiu fundamental pe care trebuie să-l înțelegeți este că trenurile citesc doar semnalele din dreapta direcției lor de mers. Cu linii duble într-o singură direcție, plasarea este directă, dar dacă doriți o linie simplă bidirectională, trebuie să puneți semnale corespunzătoare pe ambele laturi. Aceasta este una dintre cele mai frecvente erori la început — vedeți semnalul, dar trenul nu-l citește din cauza direcției sale.

O diferență de versiune pe care trebuie s-o menționez este subdivizarea din interiorul intersecțiilor. Deși ideea de bază e aceeași în versiunea 1.1, diagramele mai vechi presupun „nu subdivizează prea mult în interior". Totuși, pentru versiunea 2.0, comunitatea raportează că „subdivizarea intersecțiilor cu semnale de lanț devine din ce în ce mai comună". Aceasta nu este o schimbare oficială de specificații, ci mai degrabă o practică comunității pe care o menționez ca o variantă utilă pentru versiunea 2.0. În articolul acesta mențin forma de bază și adaug această variantă ca o observație practică pentru 2.0.

Un alt principiu pe care chiar jucătorii intermediari îl ignora: plasarea sau eliminarea semnalelor și șinelor declanșează o reverificare a căilor pentru toate trenurile. Este descris la 『Railway/Train path finding』, și deși e util în general, în rețele mari face diferență. Și eu o dată am ajustat semnalele pe linia principală și toate trenurile au încetinit în același timp — tot ecranul arăta ca și cum aș fi stricat ceva. De fapt nu era stricat, doar se revalidau căile, dar cu mulți trenuri efectul e vizibil. Modificările se fac cel mai bine în perioade cu trafic redus.

După această secțiune voi explica principiile comune versiunilor 1.1–2.0, incluzând subdivizarea semnalelor de lanț din interiorul intersecțiilor pentru versiunea 2.0. Aliniind termenii acum veți vedea cum se leagă tăierea blocurilor, aspectul rezervării căilor și plasarea liniilor de așteptare.

Cunoștințe de bază ale semnalelor de trenuri: Blocuri și direcția de mers

Bloc = unitatea minimă de arie sigură

Pentru a înțelege semnalele de trenuri în Factorio, primul lucru de asimilat este „semnalele divid șinele în blocuri". Un bloc este zona sigură a unui tren, și în principiu doar 1 tren per bloc. Aceasta e baza prevenirii coliziunilor. Dacă vă uitați doar la culoarea semnalului pare complicat, dar trenul doar verifică dacă „zona din față e liberă".

Dacă puneți semnale obișnuite la intervale egale pe o linie dreaptă, fiecare creează un bloc nou. După ce trenul din față iese din bloc, trenul din spate poate intra. Deci pe linia principală, în loc să gândiți la un drum lung, e mai ușor să vă gândiți la o succesiune de zone de siguranță mici. După ce am înțeles asta, plasarea semnalelor s-a transformat din „memorare de simboluri" în „organizare de zone".

Confuzia la bifurcații vine din neînțelegerea tăierii blocurilor. Dacă două ramuri se conectează la același bloc, deși par diferite, trenurile nu pot intra ambele simultan. Invers, dacă e semnal, pot folosi rute diferite independent. Intersecția cu lanț la intrare și obișnuit la ieșire se bazează exact pe asta: lăsați trenuri în zona periculoasă de intersecție numai dacă pot ieși într-o zonă sigură.

Figura A ajută mult la înțelegere. Dacă vedeți cum trenurile citesc doar semnalul din dreapta lor, veți înțelege că semnalul e o „intrare direcționată", nu doar o decorație.

Direcția dreapta și semnale bidirectionale

Altul punct important: trenurile citesc doar semnalele din dreapta direcției lor de mers. Semnalul din stânga e ignorat dacă nu se potrivește cu direcția. Liniile duble într-o singură direcție sunt ușoare pentru începători pentru că direcția e fixă, deci semnalele se aliniază natural.

Pe linii duble cu trafic dreapta, semnalele se pun pur și simplu pe dreapta ambelor direcții. Dar pentru linie simplă bidirectională, trebuie semnale pe ambele laturi pentru ambele direcții. Dacă puneți de o singură parte, o direcție nu citește niciodata semnalul și nu se mișcă niciodată.

Și eu am fost prins de asta. Am vrut să economisesc șine cu linie simplă bidirectională, dar am uitat semnalele de o parte, iar trenurile stăteau nemișcate cu ruta „imposibilă". Șinele se conectau, dar nu mergeau. Problema nu era performanța semnalului, ci pur și simplu că trenul nu cita semnalul din acea direcție.

Această regula se aplică și bifurcațiilor și liniilor simple. Liniile bidirectionale sunt posibile, dar ușor de stricat. Versiunea simplă cu linii paralele după direcție e mai ușoară. Pe măsură ce crește numărul de trenuri, această regulă devine mai importantă.

Tutorial:Train signals wiki.factorio.com

Diagnosticare cu vizualizarea blocurilor

Cel mai rapid mod să diagnosticați probleme cu semnalele este vizualizarea blocurilor. Textul e mai lent decât o imagine colorată. Dacă vedeți cum se divid liniile în diferite culori, înțelegeți rapid. Figura B arată clar cum fiecare bloc poate ține 1 tren, iar asta e vizibil imediat.

Privit mai întâi dacă blocul se taie înainte de poziția dorită de oprire. Apoi verificați dacă bifurcațiile și fuziunile rămân într-un singur bloc. La o intersecție cu o culoare, doar 1 tren poate folosi acea zonă. Dacă e divizată fin, trenurile cu rute care nu se intersectează pot merge simultan. Diagramele vechi nu subdivizau prea mult, dar în 2.0 subdivizarea internă cu lanț e mai frecventă și mai ușoară de lucrat.

Diagnosticul arată ușor „altă rută, aceeași culoare" — asta înseamnă blocuri insuficiente. Trenuri neînrudite stau așteptând în spațiu neînrudit. Invers, dacă ieșirea e prea scurtă, ultimul vagon rămâne în intersecție.

💡 Tip

Pentru probleme de semnal, mai întâi verificați „semnalul e din latura pe care trenul îl citește?" și „ieșirea e în alt bloc?". Asta vă permite să tăiați rapid răspunsurile.

Gândiți-vă la rețea ca la zone colorate, nu ca la diagrame de cale. Când vedeți cum se taie, design-ul devine clar: care zone trebuie independente?

Diferența dintre semnalul obișnuit și cel de lanț

Comportamentul semnalului obișnuit și principiile de plasare

Semnalul obișnuit e simplu: vede doar dacă 1 bloc în față e liber, alte ramuri nu-i pasă. Dacă e liber, trenul merge; dacă e ocupat, se oprește. Asta e de folos în locuri unde așteptarea lungă nu dăunează.

Exemplu: secțiuni lungi de cale care se rup, sau linii de așteptare dinaintea stației. Dacă un tren stă acolo ore, e bine — e rolul locului. Cu semnale obișnuite puse des, trenurile pot începe să avanseze mai repede, crescând fluxul pe linie dreaptă.

La începutor, am crezut că semnalele sunt la fel. Dar semnalul obișnuit la intrarea unei intersecții permite trenului să intre și apoi să se oprească în interiorul intersecției dacă ieșirea e blocată — asta e rău. Semnalul obișnuit nu vede prea departe, deci comportamentul e corect din perspectiva lui, dar rezultatul e nefast. Odată ce înțelegeti asta, semnalul obișnuit devine clar: e semnalul pentru zone sigure de așteptare, nu pentru intrări periculoase.

Figura C arată diferența dintre „poziție de oprire" și „interval de vedere" clar. Semnalul obișnuit decide doar pe baza 1 bloc, deci e bun pentru a opri trenurile la locuri precise.

Comportamentul semnalului de lanț și cele 4 stări

Semnalul de lanț e mult mai precaut. Vede nu 1 bloc în față, ci următorul semnal sau ieșirea căii. Nu doar dacă e liber, ci și dacă ruta până acolo poate fi rezervată fără ca trenul să se blocheze. E semnalul care spune „vei putea ieși din aici, deci mergi", și nu îți voi permite intrare dacă nu poți ieși.

Utilizare: intersecții, bifurcații, linii simple — locuri unde oprirea în interior e dezastru. Wiki oficial spune exact asta.

Semnalul de lanț are 4 stări: verde, galben, roșu, și albastru.

StareSens
VerdeIeșirea e disponibilă și puteți intra fără probleme
GalbenLansez în curs, dar mergeți cu grijă
RoșuNu puteți intra
AlbastruUnele ieșiri sunt libere, altele nu

Albastrul e ce-i face pe mulți confuzi. Nu înseamnă „tot e bine". Înseamnă: bifurcația dreapta e liberă, dar stânga e blocată. Deci trenul către dreapta merge, dar trenul către stânga rămâne. La început credeam că albastru = mergi, dar de fapt depinde de ce cale vrea trenul.

Și auto-explorarea căii după așteptare e importantă. Trenurile reexaminează ruta după ceva timp pe care comunitatea o raportează ca ~5 secunde, dar wiki oficial nu dă o cifră exactă — asta e din observații comunității. E mai sigur să spun „se reexaminează după un timp" decât o cifră precisă.

Comparația din tabel 1 e la fel cu gândirea practică:

AspectSemnal obișnuitSemnal de lanț
Folosire principalăLinii lungi, ruperea liniei principale, zone de așteptareIntrări în intersecții, intrări în bifurcații, intrări în linii simple
Interval de vedere1 bloc în fațăPână la următorul semnal sau ieșire și rezervare
Așteptare lungăUșoarăDesign pentru a evita
Stări semnalVerde, galben, roșuVerde, galben, roșu, albastru
Prea multeSubdiviziune finală fluidizeazăInterval de rezervare prea mare blochează
Rail chain signal - Factorio Wiki wiki.factorio.com

Unde să opriți, unde să nu opriți niciodată

La design, regula e simplă: așteptare lungă = semnal obișnuit, nu se oprit în interior = semnal de lanț. Gata. Asta reduce deja erorile.

La stație cu linie de așteptare în față, liniile de așteptare interne sunt obișnuite. Trenurile stau acolo cu intenție. La intersecție, bifurcație, linie simplă — sunt de lanț. Nu opriți la intrare, opriți în exterior.

Când am pus greșit lanț în liniile de așteptare, trenurile deveneau prea prudente și nu se mai strângeau. Cand am pus obișnuite în interior și lanț la intrare, fluxul s-a normalizat imediat. Zona de așteptare trebuie cu semnal obișnuit, intrarea cu semnal de lanț.

💡 Tip

Dacă vă gândiți „pot lăsa trenul să aștepte aici 30 de secunde?" și răspunsul e da, semnal obișnuit. Dacă nu, lanț.

Tutorialul oficial pentru asta e fixing-ul intersecțiilor cu lanț — exact aceeași idee. Deci diferența nu-i culoarea, ci ce zoni sunt pentru așteptare și ce sunt pentru trecere.

Intersecții fără blocaj: intrări de lanț, ieșiri obișnuite

T-intersecție: configurare minimă stabilă

T-intersecția e simplă și regula de bază funcționează perfect. Pun lanț la intrări, obișnuit la ieșiri. Trenul intră doar dacă poate ieși, nu se blochează în interior.

Plasez lanț pe fiecare intrare la T, și obișnuit la fiecare ieșire. Important: ieșirea e puțin mai departe. Dacă e prea aproape, ultimul vagon al trenului rămâne în intersecție. Asta = blocaj complet.

Și eu am pus ieșiri prea aproape cu trenuri lungi. Capul iese, coadă rămâne, toți se blochează. Cand am adăugat spațiu, s-a rezolvat. Figura D arată forma minimă corectă. Regula: lanț la intrare, obișnuit la ieșire, spațiu după ieșire.

Intersecție în cruce: design de blocuri interne pentru flux simultan

Pentru să lăsați mai mulți trenuri simultan în cruce, subdivizați interiorul cu lanț. Nord→Sud și Est→Vest se intersectează, deci nu merge simultan. Dar Nord→Est și Sud→Vest nu se ating — pot merge exact în același timp dacă blocurile interne sunt separate.

Cu interior ca un singur bloc, chiar rutele care nu se ating se blochează reciproc. Subdivizând, doar rutele care se ating competează. Comunitatea raportează intersecții care pot lăsa 4 trenuri simultan (când traseele nu se ating). Diferența dintre „1 tren la un moment" și „4 trenuri simultan pe rute diferite" crește MULT odată ce creșce densitatea.

Greșeală: prea mulți lanțuri. Intervalul de rezervare se lărgește și trenurile stau prea prudent, chiar dacă zona e liberă. Granularitatea trebuie potrivită cu mărimea și densitatea. Mică cruce = puțină subdiviziune. Uriașă cruce = mai multă.

Figura E arată ideea clar: lanț la intrare, subdivizare internă după necesitate, obișnuit la ieșire.

💡 Tip

Daca cruce se blochează, mai întâi verificați ieșirea după cruce are spațiu pentru tren?. Design corect interior nu ajută dacă vagonul rămâne în cruce.

Bifurcații, fuziuni, și intrări de linie simplă

Bifurcațiile și fuziunile crează blocaje deși nu par complicate. Motiv: ramură ocupată + tren care vrea acea ramură = stop la bifurcație → linia principală se blochează.

Semnalul de lanț la bifurcație vede ce ramură e liberă. Dacă ambele sunt ocupate, se oprește la intrare. Semnalul obișnuit lasă trenul în bifurcație să aștepte, blochând spate. Cu lanț, doar trenurile către rama liberă intră.

Fuziunea: nu așteptați în fuziune. Tren oprit în fuziune = ambele ramuri blocate = linia principală se blochează. Lanț la intrare = intră doar dacă poate ieși.

Figura F arată design stabil: lanț la intrare, obișnuit la ieșire.

Linia simplă: intrare de lanț, vede până la ieșire din linie, apoi vede și traficul opus. Asta e sigur.

Rețele mari au probleme la bifurcații/fuziuni, nu la intersecții principale. Intrări de lanț, ieșiri obișnuite și aici.

Legarea stații la linia principală: linii de așteptare pentru a evita blocajul stației

Componente de linie de așteptare

Dacă mai mulți trenuri folosesc aceeași stație, nu-i așteptați pe linia principală. Cu linie de așteptare în față, așteptați acolo. Și eu am pus trenuri să aștepte pe linie principală la 2 stații și s-au blocat toate intersecțiile — dincolo.

Design: bifurcă de pe linia principală, aștepți în linii paralele, apoi mergi la stație. Linia principală curge, liniile de așteptare primesc ce nu intră la stație. Figura G e ca o parcare.

Structura: bifurcă de linie principală, apoi distribui în multiple linii de așteptare, apoi fuzionează înapoi la stație. Important: așteptarea se întâmplă în liniile de așteptare, nu la stație.

💡 Tip

Linie de așteptare = zone de așteptare obișnuite (semnal normal). Intrare = lanț dacă prea plini, Normal dacă e spațiu.

De ce lanț la intrare, obișnuit în interior

Intrare de lanț: liniile de așteptare pline? Nu intru. Lanț vede dacă sunt linii libere. Normal la intrare = trenuri intră și se blochează la bifurcație dacă nu-s linii libere.

Interior de așteptare: long stay area = normal, nu lanț. Lanț în zona de așteptare = prea prudent, trenurile nu se strâng.

💡 Tip

Dacă linie de așteptare se blochează, verificați intrare (plin?) sau interior (lungime suficientă?).

Calcul de capacitate

Linie de așteptare prea mică = blocare spate imediat. Calcul: cate trenuri vin la stații? + buffer pentru overlap + așteptări. 2 stații ≠ 2 linii. Dacă 5 trenuri vin la 2 stații, vreau 3-4 linii de așteptare.

Lungime: tren întreg se încadrează. Dacă coada rămâne în bifurcație, tot se blochează.

Estimare ușoară: trenuri pe stații → linii de așteptare → lungime trenului per linie.

Greșeli obișnuite și cum să reparați blocaje

4 tipuri comune de blocaj

Cel mai rau: 1 tren merge, 2+ trenuri = blocaj total. E greu de detectat.

  1. Intrare de intersecție = normal: tren intră, se blochează în interior → toate direcțiile stau.
  2. Ieșire prea aproape: coada rămâne în intersecție.
  3. Rotondă prea mică: tren în interior așteptă → ceilalți nu intră.
  4. Linie simplă fără loc de evitare: trenuri din ambele capete se ciocnesc.

💡 Tip

Blocaj = în loc greșit. Intrare de intersecție blocată? Lanț. Ieșire blocată? Lungime. Stație blocată? Linie de așteptare. Linie simplă? Loc de evitare.

Tutorial:Train signals wiki.factorio.com

Cum să identificați ce bloc e vinovat

Când totul se blochează, nu adăugați semnale la întâmplare — asta-i alogic. Urmăriți: unde se opresc trenurile? Intersecție internă = design intrare. Coada în intersecție = lungime ieșire. Stație blocată = linie de așteptare. Linie simplă blochată = loc de evitare.

Uneori blocajul e comportament de design: normal la intrare de cruce permis tren să intre și aștepte → blochez toți.

Invers, lanț prea des = prea prudent = merge lent.

Checklist vizual: unde trebuie să se oprească? Acolo semnal normal. Unde nu trebuie? Semnal lanț sau asigură că pot ieși.

Cum să extindeți rețea sigur

Standard: doua linii, o direcție

Baza stabilă: două linii, o direcție ambelor. Stânga sus, dreapta jos, sau orice. Consistent. Asta face intersecțiile clare, stiile uniforme, și permite altcuiva să nu strupe rețea.

Linie simplă economisește șine, dar semnalele devin complicate. Și apoi se blochează.

Doua linii = sigur și ușor de crescut.

Lanț: strictly necesar

Lanț e bun, dar nu peste tot. Prea mulți lanțuri = prea prudent = lent. Lanț la intrări (intersecție, bifurcație, linie simplă), normal la ieșiri și linii lungi.

Supraveghiere = blocaj mai rău, nu mai bun.

Schimbări în siguranță

Mari rețele: semnal nou = toți trenurile recalculează căi. Poți bloca accidental în alt loc. Schimbări în trepte, o zone la un moment, și verifică efectul.

Checklist rapid

  1. O direcție pe linia principală (dreapta sau stânga, ales unu)
  2. Lanț la o intersecție blocantă
  3. Ieșire e destul de lungă pentru tren?
  4. Stație cu linie de așteptare?
  5. Trenuri stau afară la cozi, nu-n interior

💡 Tip

Când blocaj: „unde stă trenul?" = unde-i vina.

Asta-i suficient. Rețea sigură crește din baze solide, nu complicate.

article.share

R

RinSeo

Factorio 2,000時間超。100駅以上の列車ネットワーク運用実績と Death World マラソンクリアの経験から、物流・防衛の実践ノウハウをお届けします。