Final missions above ground (M30, co-op M20), surface option for versus matches, docs
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
1ae41228ab
commit
f27dbea2f1
28 files changed
+111
-49
No files matched your search
@@ -72,7 +72,7 @@ to *step through shadows*, the chainbreaker to spin like a *whirlwind*.
|
|||||||
frost glows - and doors of wood, iron and magic. Lock them, and nobody gets through. Not even the giant. Well. Not for a while.
|
frost glows - and doors of wood, iron and magic. Lock them, and nobody gets through. Not even the giant. Well. Not for a while.
|
||||||
|
|
||||||
**✨ Cast nasty spells.** Lightning, healing, seer's eye, cave-in, haste, stoneskin, gold rain, invisibility,
|
**✨ Cast nasty spells.** Lightning, healing, seer's eye, cave-in, haste, stoneskin, gold rain, invisibility,
|
||||||
plague and quake. Your scholars **research** them in the library - one discovery after another.
|
plague, quake and frost. Your scholars **research** them in the library - one discovery after another.
|
||||||
|
|
||||||
**🌫 Explore the dark.** Everything beyond your walls is black until your creatures go there.
|
**🌫 Explore the dark.** Everything beyond your walls is black until your creatures go there.
|
||||||
Somewhere out there: a cave of neutral **dwarves** guarding gold and gems - and sometimes a chest with the plans
|
Somewhere out there: a cave of neutral **dwarves** guarding gold and gems - and sometimes a chest with the plans
|
||||||
@@ -84,6 +84,18 @@ of a dwarven **rune forge tower**. Islands in lava rivers. Mana springs. Creatur
|
|||||||
<br><i>Left: the forge and its little coglings. Right: prison, graveyard, arena, guard posts and the altar. Cosy.</i>
|
<br><i>Left: the forge and its little coglings. Right: prison, graveyard, arena, guard posts and the altar. Cosy.</i>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
**🌳 Up into the daylight.** Some maps reach the surface: grass, birds, sunshine - disgusting - and forests your
|
||||||
|
imps fell for **wood**, the second resource (down below only the odd giant mushroom gives some). Wood builds bridges
|
||||||
|
and wooden doors. Raise walls again where you dug too much, burn the knights' wooden bridges, pull up your
|
||||||
|
**drawbridges** when they come, freeze lava into obsidian to cross it - and roll **battering rams and catapults** out
|
||||||
|
of your forge to break a fortress in the forest.
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<img src="docs/screenshots/surface.png" width="400" alt="The cliff between the dungeon and a sunny forest above ground">
|
||||||
|
<img src="docs/screenshots/bridges.png" width="400" alt="A raised drawbridge, a lowered one, and obsidian on a lava river">
|
||||||
|
<br><i>Left: the world up there. Too bright. Right: a drawbridge up, a drawbridge down, and lava that thinks it is a floor.</i>
|
||||||
|
</p>
|
||||||
|
|
||||||
**👑 Other masters want your realm, too.** Mossgrim the Mouldy (green, smells like a wet cellar) and Lady Nightwell
|
**👑 Other masters want your realm, too.** Mossgrim the Mouldy (green, smells like a wet cellar) and Lady Nightwell
|
||||||
(blue, writes threatening letters on scented paper) dig their own dungeons in free play and in the campaign.
|
(blue, writes threatening letters on scented paper) dig their own dungeons in free play and in the campaign.
|
||||||
And the humans attack *everybody*. Let them bite each other first.
|
And the humans attack *everybody*. Let them bite each other first.
|
||||||
|
|||||||
+13
-1
@@ -30,7 +30,7 @@ Stone bridges over lava exist already (75 gold per tile).
|
|||||||
Built as: `src/bridges.rs` (fire, wear, drawbridges, obsidian), the *Drawbridge* tool (click: down → up →
|
Built as: `src/bridges.rs` (fire, wear, drawbridges, obsidian), the *Drawbridge* tool (click: down → up →
|
||||||
automatic) and the *Frost* spell (lava → obsidian for 40 s); the frost glow trap keeps lava next to it cooled.
|
automatic) and the *Frost* spell (lava → obsidian for 40 s); the frost glow trap keeps lava next to it cooled.
|
||||||
|
|
||||||
## 3. The surface world
|
## 3. The surface world – done (v202611-00038)
|
||||||
|
|
||||||
1. **Surface terrain** – grass, trees, paths, daylight and sky. Trees act like earth: imps fell
|
1. **Surface terrain** – grass, trees, paths, daylight and sky. Trees act like earth: imps fell
|
||||||
them.
|
them.
|
||||||
@@ -48,6 +48,18 @@ automatic) and the *Frost* spell (lava → obsidian for 40 s); the frost glow tr
|
|||||||
with the High Marshal's fortress to destroy. Free play and multiplayer get a map option
|
with the High Marshal's fortress to destroy. Free play and multiplayer get a map option
|
||||||
"Surface". The map editor gets the new terrain.
|
"Surface". The map editor gets the new terrain.
|
||||||
|
|
||||||
|
Built as: `src/wood.rs` (wood, giant mushrooms), `src/walls.rs` (the wall tool), `src/surface.rs` (sky layer
|
||||||
|
`Map::sky`, forests, cliffs and cave mouths, clearings around fortresses), `src/siege.rs` (rams and catapults:
|
||||||
|
in hero waves from wave 4/6, buildable with a forge). The fortresses above ground are the knights' usual
|
||||||
|
fortresses (fortress.rs) in a clearing. Final missions: campaign M30 and co-op M20; free play, versus matches
|
||||||
|
and editor random maps have the option "half above ground".
|
||||||
|
|
||||||
|
## 3b. Music (next milestone)
|
||||||
|
|
||||||
|
Six more underground tracks and a block of six surface tracks: the same leitmotif brighter and in major, synthetic
|
||||||
|
birdsong and wind, flute leads and harp arpeggios. The music follows the camera (surface or underground) with a
|
||||||
|
crossfade.
|
||||||
|
|
||||||
## 4. Additions
|
## 4. Additions
|
||||||
|
|
||||||
1. **Random events** – earthquake (tunnels cave in), lava eruption, flood, gold vein found. Rare
|
1. **Random events** – earthquake (tunnels cave in), lava eruption, flood, gold vein found. Rare
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 1.1 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.1 MiB |
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Lávové ostrovy, pane, s prameny many vroucími uprostřed, a
|
|||||||
camp.m20.title = Velmistr
|
camp.m20.title = Velmistr
|
||||||
camp.m20.story = Velmistr Valerián Jasnoštít čeká ve své citadele za velkou řekou, s posledním střepem a branou řádu. Sto let se modlil, leštil a připravoval. | Znič jeho bránu a vezmi si střep zpět. Pak bude tvé jádro celé - a každý mistr, který ho kdy chtěl, si pro něj přijde naráz. Pěkně jedno po druhém.
|
camp.m20.story = Velmistr Valerián Jasnoštít čeká ve své citadele za velkou řekou, s posledním střepem a branou řádu. Sto let se modlil, leštil a připravoval. | Znič jeho bránu a vezmi si střep zpět. Pak bude tvé jádro celé - a každý mistr, který ho kdy chtěl, si pro něj přijde naráz. Pěkně jedno po druhém.
|
||||||
camp.m30.title = Trůn hlubin
|
camp.m30.title = Trůn hlubin
|
||||||
camp.m30.story = Stalo se, jak jsem říkal: tvé jádro je celé a teď ho chce každý. Mossgrim a Lady Nightwell táhnou spolu a co zbylo z Řádu, otevírá svou bránu naposledy. | Znič obě jádra mistrů i bránu řádu. Pak budou mít hlubiny přesně jednoho pána. Hádej koho. Nápověda: mě ne, já jsem tu přes čaj.
|
camp.m30.story = Stalo se, jak jsem říkal: tvé jádro je celé a teď ho chce každý. Mossgrim a lady Nightwell se prokopali na povrch a vrchní maršál čeká ve své pevnosti v lese – denní světlo, ptáci, celý balík. Odporné. | Vylez ze skály, znič obě jádra pánů a bránu řádu v pevnosti. Pak bude mít svět přesně jednoho pána. Hádej koho. Tip: ne mě, já jsem čajový.
|
||||||
camp.epilogue = Zelené jádro se rozpadá, modré pohasíná a brána řádu utichá. Kdesi nahoře píše Světlá stráž velmi dlouhé hlášení a dopisy Lady Nightwell přestaly chodit. | Křivoprst uvařil čaj. Jsi celý, pane. Podsvětí je tvé.
|
camp.epilogue = Zelené jádro se rozpadá, modré pohasíná a brána řádu utichá. Kdesi nahoře píše Světlá stráž velmi dlouhé hlášení a dopisy Lady Nightwell přestaly chodit. | Křivoprst uvařil čaj. Jsi celý, pane. Podsvětí je tvé.
|
||||||
lair.arrivals = Volná lůžka: {0}, noví tvorové přicházejí rychlostí {1} %
|
lair.arrivals = Volná lůžka: {0}, noví tvorové přicházejí rychlostí {1} %
|
||||||
job.help = Pomáhá
|
job.help = Pomáhá
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Vrchní maršál padl! Jeho zbroj řinčí jako upuštěný šup
|
|||||||
coop.m19.t1 = Čeká na východě. Ať čeká. Nejdřív vyčistěte stráže.
|
coop.m19.t1 = Čeká na východě. Ať čeká. Nejdřív vyčistěte stráže.
|
||||||
coop.m19.t2 = Zase rytíři a lučištnice. Řádu docházejí nápady.
|
coop.m19.t2 = Zase rytíři a lučištnice. Řádu docházejí nápady.
|
||||||
coop.m20.title = Mossgrimův pád
|
coop.m20.title = Mossgrimův pád
|
||||||
coop.m20.story = Když je vrchní maršál pryč, Mossgrim zůstal sám. Vzal na sebe podobu žhavého draka a shromáždil každého tvora, který ho ještě poslouchá.\n\nSkoncujte se zrádcem. Skoncujte s jeho armádou. A pak, páni - čaj.
|
coop.m20.story = Bez vrchního maršála je Mossgrim sám – nahoře v lese, na slunci, zrovna tam. Přijal podobu žhavého draka a shromáždil každou bytost, která ho ještě poslouchá.\n\nVylezte ze skály a skoncujte se zrádcem. S jeho armádou. A pak, páni – čaj.
|
||||||
coop.m20.start = Mossgrime, ty stará houbo. Liga tě pozdravuje.
|
coop.m20.start = Mossgrime, ty stará houbo. Liga tě pozdravuje.
|
||||||
coop.m20.goal = Porazte Mossgrima a všechny jeho tvory.
|
coop.m20.goal = Porazte Mossgrima a všechny jeho tvory.
|
||||||
coop.m20.boss = Mossgrim už není. Mech zase doroste. On ne.
|
coop.m20.boss = Mossgrim už není. Mech zase doroste. On ne.
|
||||||
|
|||||||
+2
-2
@@ -571,7 +571,7 @@ camp.m29.story = Lavaøer, mester, med manakilder, der koger i midten, og en for
|
|||||||
camp.m20.title = Stormesteren
|
camp.m20.title = Stormesteren
|
||||||
camp.m20.story = Stormester Valerian Lysskjold venter i sit citadel hinsides den store flod, med den sidste splint og ordenens port. Han har bedt, pudset og forberedt sig i hundrede år. | Ødelæg hans port og tag splinten tilbage. Så er din kerne hel - og hver eneste mester, der nogensinde har villet have den, kommer efter den på én gang. Én ting ad gangen.
|
camp.m20.story = Stormester Valerian Lysskjold venter i sit citadel hinsides den store flod, med den sidste splint og ordenens port. Han har bedt, pudset og forberedt sig i hundrede år. | Ødelæg hans port og tag splinten tilbage. Så er din kerne hel - og hver eneste mester, der nogensinde har villet have den, kommer efter den på én gang. Én ting ad gangen.
|
||||||
camp.m30.title = Dybets trone
|
camp.m30.title = Dybets trone
|
||||||
camp.m30.story = Det gik, som jeg sagde: din kerne er hel, og nu vil alle have den. Mossgrim og Lady Nightwell marcherer sammen, og det, der er tilbage af Ordenen, åbner sin port en sidste gang. | Ødelæg begge mesterkerner og ordenens port. Derefter har dybet præcis én mester. Gæt hvem. Et tip: ikke mig, jeg er ham med teen.
|
camp.m30.story = Det gik, som jeg sagde: din kerne er hel, og nu vil alle have den. Mossgrim og Lady Nightwell har gravet sig op til overfladen, og højmarskallen venter i sin fæstning i skoven – dagslys, fugle, hele pakken. Ulækkert. | Kravl ud af klippen, ødelæg begge mesterkerner og ordenens port inde i fæstningen. Derefter har verden præcis én mester. Gæt hvem. Tip: ikke mig, jeg er temanden.
|
||||||
camp.epilogue = Den grønne kerne smuldrer, den blå bliver mørk, og ordenens port forstummer. Et sted deroppe skriver Lysvagten en meget lang rapport, og Lady Nightwells breve er holdt op med at komme. | Krumfinger har lavet te. Du er hel, mester. Underverdenen er din.
|
camp.epilogue = Den grønne kerne smuldrer, den blå bliver mørk, og ordenens port forstummer. Et sted deroppe skriver Lysvagten en meget lang rapport, og Lady Nightwells breve er holdt op med at komme. | Krumfinger har lavet te. Du er hel, mester. Underverdenen er din.
|
||||||
lair.arrivals = {0} ledige senge: nye væsner ankommer med {1}% hastighed
|
lair.arrivals = {0} ledige senge: nye væsner ankommer med {1}% hastighed
|
||||||
job.help = Hjælper
|
job.help = Hjælper
|
||||||
@@ -1539,7 +1539,7 @@ coop.m19.boss = Højmarskallen er faldet! Hans rustning klirrer som en tabt best
|
|||||||
coop.m19.t1 = Han venter i øst. Lad ham vente. Ryd vagterne først.
|
coop.m19.t1 = Han venter i øst. Lad ham vente. Ryd vagterne først.
|
||||||
coop.m19.t2 = Riddere og bueskytter igen. Ordenen er ved at løbe tør for ideer.
|
coop.m19.t2 = Riddere og bueskytter igen. Ordenen er ved at løbe tør for ideer.
|
||||||
coop.m20.title = Mossgrims fald
|
coop.m20.title = Mossgrims fald
|
||||||
coop.m20.story = Med højmarskallen væk står Mossgrim alene. Han har taget skikkelse af en glødelindorm og samlet hvert eneste væsen, der stadig lytter til ham.\n\nGør det af med forræderen. Gør det af med hans hær. Og så, mestre - te.
|
coop.m20.story = Uden højmarskallen står Mossgrim alene – oppe i skoven, i solen, af alle steder. Han har taget skikkelse af en gløddrage og samlet alle væsner, der stadig lytter til ham.\n\nKravl ud af klippen og gør det af med forræderen. Med hans hær. Og så, mestre – te.
|
||||||
coop.m20.start = Mossgrim, din gamle svamp. Forbundet sender sine hilsner.
|
coop.m20.start = Mossgrim, din gamle svamp. Forbundet sender sine hilsner.
|
||||||
coop.m20.goal = Besejr Mossgrim og alle hans væsner.
|
coop.m20.goal = Besejr Mossgrim og alle hans væsner.
|
||||||
coop.m20.boss = Mossgrim er ikke mere. Mosset gror ud igen. Det gør han ikke.
|
coop.m20.boss = Mossgrim er ikke mere. Mosset gror ud igen. Det gør han ikke.
|
||||||
|
|||||||
+2
-2
@@ -571,7 +571,7 @@ camp.m29.story = Lavainseln, Meister, mit kochenden Manaquellen in der Mitte, un
|
|||||||
camp.m20.title = Der Großmeister
|
camp.m20.title = Der Großmeister
|
||||||
camp.m20.story = Großmeister Valerian Hellschild erwartet dich in seiner Zitadelle jenseits des großen Flusses, mit dem letzten Splitter und dem Tor des Ordens. Hundert Jahre lang hat er gebetet, poliert und sich vorbereitet. | Zerstöre sein Tor und hol dir den Splitter. Dann ist dein Kern ganz - und jeder Meister, der ihn je haben wollte, wird auf einmal danach greifen. Eins nach dem anderen.
|
camp.m20.story = Großmeister Valerian Hellschild erwartet dich in seiner Zitadelle jenseits des großen Flusses, mit dem letzten Splitter und dem Tor des Ordens. Hundert Jahre lang hat er gebetet, poliert und sich vorbereitet. | Zerstöre sein Tor und hol dir den Splitter. Dann ist dein Kern ganz - und jeder Meister, der ihn je haben wollte, wird auf einmal danach greifen. Eins nach dem anderen.
|
||||||
camp.m30.title = Der Thron der Tiefe
|
camp.m30.title = Der Thron der Tiefe
|
||||||
camp.m30.story = Es kam, wie ich gesagt habe: Dein Kern ist ganz, und jetzt wollen ihn alle. Mossgrim und Lady Nightwell marschieren gemeinsam, und was vom Orden übrig ist, öffnet ein letztes Mal sein Tor. | Zerstöre beide Meisterkerne und das Tor des Ordens. Danach hat die Tiefe genau einen Meister. Rate, wen. Kleiner Tipp: nicht mich, ich bin der Teemann.
|
camp.m30.story = Es kam, wie ich sagte: Dein Kern ist ganz, und jetzt will ihn jeder. Mossgrim und Lady Nightwell haben sich bis an die Oberfläche gegraben, und der Hochmarschall wartet in seiner Festung im Wald – Tageslicht, Vögel, das volle Programm. Widerlich. | Steig aus dem Fels, zerstöre beide Meisterkerne und das Tor des Ordens in der Festung. Danach hat die Welt genau einen Meister. Rate mal, wen. Tipp: nicht mich, ich bin der Teemann.
|
||||||
camp.epilogue = Der grüne Kern zerbröselt, der blaue erlischt, und das Tor des Ordens verstummt. Irgendwo dort oben schreibt die Lichtwacht einen sehr langen Bericht, und Lady Nightwells Briefe bleiben aus. | Krummfinger hat Tee gekocht. Du bist wieder ganz, Meister. Das Unterreich gehört dir.
|
camp.epilogue = Der grüne Kern zerbröselt, der blaue erlischt, und das Tor des Ordens verstummt. Irgendwo dort oben schreibt die Lichtwacht einen sehr langen Bericht, und Lady Nightwells Briefe bleiben aus. | Krummfinger hat Tee gekocht. Du bist wieder ganz, Meister. Das Unterreich gehört dir.
|
||||||
lair.arrivals = {0} freie Plätze: Neue Kreaturen kommen mit {1}% Tempo
|
lair.arrivals = {0} freie Plätze: Neue Kreaturen kommen mit {1}% Tempo
|
||||||
job.help = Hilft mit
|
job.help = Hilft mit
|
||||||
@@ -1539,7 +1539,7 @@ coop.m19.boss = Der Hochmarschall ist gefallen! Seine Rüstung scheppert wie ein
|
|||||||
coop.m19.t1 = Er wartet im Osten. Lasst ihn warten. Erst die Garde.
|
coop.m19.t1 = Er wartet im Osten. Lasst ihn warten. Erst die Garde.
|
||||||
coop.m19.t2 = Wieder Ritter und Schützen. Dem Orden gehen die Ideen aus.
|
coop.m19.t2 = Wieder Ritter und Schützen. Dem Orden gehen die Ideen aus.
|
||||||
coop.m20.title = Mossgrims Fall
|
coop.m20.title = Mossgrims Fall
|
||||||
coop.m20.story = Ohne den Hochmarschall steht Mossgrim allein. Er hat die Gestalt eines Glutwurms angenommen und jede Kreatur versammelt, die ihm noch gehorcht.\n\nBeendet den Verräter. Beendet seine Armee. Und dann, Meister - Tee.
|
coop.m20.story = Mit dem Hochmarschall ist Mossgrim allein – oben im Wald, in der Sonne, ausgerechnet. Er hat die Gestalt eines Glutwurms angenommen und jede Kreatur versammelt, die noch auf ihn hört.\n\nSteigt aus dem Fels und beendet den Verräter. Beendet sein Heer. Und dann, Meister – Tee.
|
||||||
coop.m20.start = Mossgrim, du alter Pilz. Der Bund lässt grüßen.
|
coop.m20.start = Mossgrim, du alter Pilz. Der Bund lässt grüßen.
|
||||||
coop.m20.goal = Besiegt Mossgrim und alle seine Kreaturen.
|
coop.m20.goal = Besiegt Mossgrim und alle seine Kreaturen.
|
||||||
coop.m20.boss = Mossgrim ist nicht mehr. Das Moos wächst nach. Er nicht.
|
coop.m20.boss = Mossgrim ist nicht mehr. Das Moos wächst nach. Er nicht.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Νησιά λάβας, αφέντη, με πηγές μάνα
|
|||||||
camp.m20.title = Ο Μέγας Μάγιστρος
|
camp.m20.title = Ο Μέγας Μάγιστρος
|
||||||
camp.m20.story = Ο Μέγας Μάγιστρος Βαλέριαν Λαμπρασπίδας περιμένει στην ακρόπολή του πέρα από το μεγάλο ποτάμι, με το τελευταίο θραύσμα και την πύλη του τάγματος. Προσεύχεται, γυαλίζει και προετοιμάζεται εδώ κι εκατό χρόνια. | Κατάστρεψε την πύλη του και πάρε πίσω το θραύσμα. Τότε ο πυρήνας σου θα είναι ολόκληρος - και κάθε άρχοντας που τον ήθελε ποτέ θα έρθει να τον πάρει, όλοι μαζί. Ένα-ένα τα πράγματα.
|
camp.m20.story = Ο Μέγας Μάγιστρος Βαλέριαν Λαμπρασπίδας περιμένει στην ακρόπολή του πέρα από το μεγάλο ποτάμι, με το τελευταίο θραύσμα και την πύλη του τάγματος. Προσεύχεται, γυαλίζει και προετοιμάζεται εδώ κι εκατό χρόνια. | Κατάστρεψε την πύλη του και πάρε πίσω το θραύσμα. Τότε ο πυρήνας σου θα είναι ολόκληρος - και κάθε άρχοντας που τον ήθελε ποτέ θα έρθει να τον πάρει, όλοι μαζί. Ένα-ένα τα πράγματα.
|
||||||
camp.m30.title = Ο Θρόνος των Βαθών
|
camp.m30.title = Ο Θρόνος των Βαθών
|
||||||
camp.m30.story = Έγινε όπως το είπα: ο πυρήνας σου είναι ολόκληρος, και τώρα τον θέλουν όλοι. Ο Μόσγκριμ και η Λαίδη Νάιτγουελ βαδίζουν μαζί, κι ό,τι απέμεινε από το Τάγμα ανοίγει την πύλη του μια τελευταία φορά. | Κατάστρεψε και τους δύο πυρήνες αρχόντων και την πύλη του τάγματος. Μετά από αυτό τα βάθη έχουν ακριβώς έναν άρχοντα. Μάντεψε ποιον. Υπόδειξη: όχι εμένα, εγώ φτιάχνω το τσάι.
|
camp.m30.story = Έγινε όπως είπα: ο πυρήνας σου είναι ακέραιος, και τώρα τον θέλουν όλοι. Ο Μόσγκριμ και η Λαίδη Νάιτγουελ έσκαψαν ως την επιφάνεια, κι ο Ύπατος Στρατάρχης περιμένει στο φρούριό του στο δάσος – φως της μέρας, πουλιά, όλο το πακέτο. Αηδία. | Βγες από τον βράχο, κατάστρεψε και τους δύο πυρήνες των αρχόντων και την πύλη του τάγματος μέσα στο φρούριο. Μετά ο κόσμος θα έχει ακριβώς έναν άρχοντα. Μάντεψε ποιον. Βοήθεια: όχι εμένα, εγώ φτιάχνω τσάι.
|
||||||
camp.epilogue = Ο πράσινος πυρήνας θρυμματίζεται, ο γαλάζιος σβήνει, και η πύλη του τάγματος σωπαίνει. Κάπου εκεί πάνω η Φωτοφρουρά γράφει μια πολύ μακροσκελή αναφορά, και τα γράμματα της Λαίδης Νάιτγουελ έπαψαν να έρχονται. | Ο Στραβοδάχτυλος έφτιαξε τσάι. Είσαι ολόκληρος, αφέντη. Ο κάτω κόσμος είναι δικός σου.
|
camp.epilogue = Ο πράσινος πυρήνας θρυμματίζεται, ο γαλάζιος σβήνει, και η πύλη του τάγματος σωπαίνει. Κάπου εκεί πάνω η Φωτοφρουρά γράφει μια πολύ μακροσκελή αναφορά, και τα γράμματα της Λαίδης Νάιτγουελ έπαψαν να έρχονται. | Ο Στραβοδάχτυλος έφτιαξε τσάι. Είσαι ολόκληρος, αφέντη. Ο κάτω κόσμος είναι δικός σου.
|
||||||
lair.arrivals = {0} ελεύθερα κρεβάτια: νέα πλάσματα φτάνουν με ταχύτητα {1}%
|
lair.arrivals = {0} ελεύθερα κρεβάτια: νέα πλάσματα φτάνουν με ταχύτητα {1}%
|
||||||
job.help = Βοηθά
|
job.help = Βοηθά
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Ο Ύπατος Στρατάρχης έπεσε! Η πανοπλ
|
|||||||
coop.m19.t1 = Περιμένει στα ανατολικά. Ας περιμένει. Καθαρίστε πρώτα τους φρουρούς.
|
coop.m19.t1 = Περιμένει στα ανατολικά. Ας περιμένει. Καθαρίστε πρώτα τους φρουρούς.
|
||||||
coop.m19.t2 = Πάλι ιππότες και τοξότριες. Το Τάγμα ξεμένει από ιδέες.
|
coop.m19.t2 = Πάλι ιππότες και τοξότριες. Το Τάγμα ξεμένει από ιδέες.
|
||||||
coop.m20.title = Η Πτώση του Μόσγκριμ
|
coop.m20.title = Η Πτώση του Μόσγκριμ
|
||||||
coop.m20.story = Με τον Ύπατο Στρατάρχη εκτός, ο Μόσγκριμ στέκεται μόνος. Πήρε τη μορφή ενός δράκου της θράκας και μάζεψε κάθε πλάσμα που ακόμη τον ακούει.\n\nΤελειώστε τον προδότη. Τελειώστε τον στρατό του. Και μετά, αφέντες - τσάι.
|
coop.m20.story = Χωρίς τον Ύπατο Στρατάρχη ο Μόσγκριμ είναι μόνος – πάνω στο δάσος, στον ήλιο, απ' όλα τα μέρη. Πήρε τη μορφή δράκου της θράκας και μάζεψε κάθε πλάσμα που ακόμα τον ακούει.\n\nΒγείτε από τον βράχο και τελειώστε τον προδότη. Τελειώστε τον στρατό του. Κι ύστερα, άρχοντες – τσάι.
|
||||||
coop.m20.start = Μόσγκριμ, γέρικο μανιτάρι. Η συμμαχία σού στέλνει χαιρετίσματα.
|
coop.m20.start = Μόσγκριμ, γέρικο μανιτάρι. Η συμμαχία σού στέλνει χαιρετίσματα.
|
||||||
coop.m20.goal = Νικήστε τον Μόσγκριμ και όλα του τα πλάσματα.
|
coop.m20.goal = Νικήστε τον Μόσγκριμ και όλα του τα πλάσματα.
|
||||||
coop.m20.boss = Ο Μόσγκριμ δεν υπάρχει πια. Τα βρύα θα ξαναφυτρώσουν. Αυτός όχι.
|
coop.m20.boss = Ο Μόσγκριμ δεν υπάρχει πια. Τα βρύα θα ξαναφυτρώσουν. Αυτός όχι.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Lava islands, master, with springs of mana boiling in the middl
|
|||||||
camp.m20.title = The Grand Master
|
camp.m20.title = The Grand Master
|
||||||
camp.m20.story = Grand Master Valerian Brightshield waits in his citadel beyond the great river, with the last shard and the gate of the order. He has prayed, polished and prepared for a hundred years. | Destroy his gate and take back the shard. Then your core is whole - and every master who ever wanted it will come for it at once. One thing at a time.
|
camp.m20.story = Grand Master Valerian Brightshield waits in his citadel beyond the great river, with the last shard and the gate of the order. He has prayed, polished and prepared for a hundred years. | Destroy his gate and take back the shard. Then your core is whole - and every master who ever wanted it will come for it at once. One thing at a time.
|
||||||
camp.m30.title = The Throne of the Deep
|
camp.m30.title = The Throne of the Deep
|
||||||
camp.m30.story = It happened as I said: your core is whole, and now everybody wants it. Mossgrim and Lady Nightwell march together, and what is left of the Order opens its gate one last time. | Destroy both master cores and the gate of the order. After this the deep has exactly one master. Guess who. Hint: not me, I am the tea man.
|
camp.m30.story = It happened as I said: your core is whole, and now everybody wants it. Mossgrim and Lady Nightwell have dug their way up to the surface, and the High Marshal waits in his fortress in the forest – daylight, birds, the works. Disgusting. | Climb out of the rock, destroy both master cores and the gate of the order inside the fortress. After this the world has exactly one master. Guess who. Hint: not me, I am the tea man.
|
||||||
camp.epilogue = The green core crumbles, the blue one goes dark, and the gate of the order falls silent. Somewhere above, the Lightwatch is writing a very long report, and Lady Nightwell's letters have stopped coming. | Crookfinger has made tea. You are whole, master. The underworld is yours.
|
camp.epilogue = The green core crumbles, the blue one goes dark, and the gate of the order falls silent. Somewhere above, the Lightwatch is writing a very long report, and Lady Nightwell's letters have stopped coming. | Crookfinger has made tea. You are whole, master. The underworld is yours.
|
||||||
lair.arrivals = {0} free beds: new creatures arrive at {1}% speed
|
lair.arrivals = {0} free beds: new creatures arrive at {1}% speed
|
||||||
job.help = Helping
|
job.help = Helping
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = The High Marshal has fallen! His armour clatters like a dropped
|
|||||||
coop.m19.t1 = He waits in the east. Let him wait. Clear the guards first.
|
coop.m19.t1 = He waits in the east. Let him wait. Clear the guards first.
|
||||||
coop.m19.t2 = Knights and archers again. The Order is running out of ideas.
|
coop.m19.t2 = Knights and archers again. The Order is running out of ideas.
|
||||||
coop.m20.title = Mossgrim's Fall
|
coop.m20.title = Mossgrim's Fall
|
||||||
coop.m20.story = With the High Marshal gone, Mossgrim stands alone. He has taken the shape of an ember wyrm and gathered every creature that still listens to him.\n\nEnd the traitor. End his army. And then, masters - tea.
|
coop.m20.story = With the High Marshal gone, Mossgrim stands alone – up in the forest, in the sun, of all places. He has taken the shape of an ember wyrm and gathered every creature that still listens to him.\n\nClimb out of the rock and end the traitor. End his army. And then, masters - tea.
|
||||||
coop.m20.start = Mossgrim, you old fungus. The league sends its regards.
|
coop.m20.start = Mossgrim, you old fungus. The league sends its regards.
|
||||||
coop.m20.goal = Defeat Mossgrim and all his creatures.
|
coop.m20.goal = Defeat Mossgrim and all his creatures.
|
||||||
coop.m20.boss = Mossgrim is no more. The moss will grow back. He will not.
|
coop.m20.boss = Mossgrim is no more. The moss will grow back. He will not.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Islas de lava, amo, con fuentes de maná hirviendo en el centro
|
|||||||
camp.m20.title = El Gran Maestre
|
camp.m20.title = El Gran Maestre
|
||||||
camp.m20.story = El Gran Maestre Valerian Escudoclaro espera en su ciudadela al otro lado del gran río, con el último fragmento y la puerta de la orden. Lleva cien años rezando, lustrando y preparándose. | Destruye su puerta y recupera el fragmento. Entonces tu núcleo estará completo, y todos los señores que alguna vez lo quisieron vendrán a por él a la vez. Cada cosa a su tiempo.
|
camp.m20.story = El Gran Maestre Valerian Escudoclaro espera en su ciudadela al otro lado del gran río, con el último fragmento y la puerta de la orden. Lleva cien años rezando, lustrando y preparándose. | Destruye su puerta y recupera el fragmento. Entonces tu núcleo estará completo, y todos los señores que alguna vez lo quisieron vendrán a por él a la vez. Cada cosa a su tiempo.
|
||||||
camp.m30.title = El trono de las profundidades
|
camp.m30.title = El trono de las profundidades
|
||||||
camp.m30.story = Pasó lo que dije: tu núcleo está completo y ahora todo el mundo lo quiere. Mossgrim y Lady Nightwell marchan juntos, y lo que queda de la Orden abre su puerta por última vez. | Destruye ambos núcleos de señores y la puerta de la orden. Después de esto, las profundidades tendrán exactamente un amo. Adivina quién. Pista: yo no, yo soy el del té.
|
camp.m30.story = Pasó lo que dije: tu núcleo está entero y ahora todos lo quieren. Mossgrim y Lady Nightwell han excavado hasta la superficie, y el Alto Mariscal espera en su fortaleza del bosque: luz del día, pájaros, todo el lote. Asqueroso. | Sal de la roca, destruye los dos núcleos de los maestros y la puerta de la orden dentro de la fortaleza. Después, el mundo tendrá exactamente un maestro. Adivina quién. Pista: yo no, yo soy el del té.
|
||||||
camp.epilogue = El núcleo verde se desmorona, el azul se apaga y la puerta de la orden enmudece. En algún lugar de arriba, la Guardia Luminosa redacta un informe larguísimo, y las cartas de Lady Nightwell han dejado de llegar. | Dedotuerto ha preparado té. Vuelves a estar completo, amo. El inframundo es tuyo.
|
camp.epilogue = El núcleo verde se desmorona, el azul se apaga y la puerta de la orden enmudece. En algún lugar de arriba, la Guardia Luminosa redacta un informe larguísimo, y las cartas de Lady Nightwell han dejado de llegar. | Dedotuerto ha preparado té. Vuelves a estar completo, amo. El inframundo es tuyo.
|
||||||
lair.arrivals = {0} camas libres: las nuevas criaturas llegan al {1}% de velocidad
|
lair.arrivals = {0} camas libres: las nuevas criaturas llegan al {1}% de velocidad
|
||||||
job.help = Ayudando
|
job.help = Ayudando
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = ¡El Gran Mariscal ha caído! Su armadura tintinea como un cajó
|
|||||||
coop.m19.t1 = Espera en el este. Que espere. Acabad primero con los guardias.
|
coop.m19.t1 = Espera en el este. Que espere. Acabad primero con los guardias.
|
||||||
coop.m19.t2 = Otra vez caballeros y arqueros. A la Orden se le acaban las ideas.
|
coop.m19.t2 = Otra vez caballeros y arqueros. A la Orden se le acaban las ideas.
|
||||||
coop.m20.title = La caída de Mossgrim
|
coop.m20.title = La caída de Mossgrim
|
||||||
coop.m20.story = Sin el Gran Mariscal, Mossgrim está solo. Ha adoptado la forma de un dragón de brasas y ha reunido a todas las criaturas que aún le obedecen.\n\nAcabad con el traidor. Acabad con su ejército. Y después, maestros: té.
|
coop.m20.story = Caído el Alto Mariscal, Mossgrim está solo: arriba, en el bosque, al sol, nada menos. Ha tomado la forma de una sierpe de brasas y ha reunido a toda criatura que aún le obedece.\n\nSalid de la roca y acabad con el traidor. Acabad con su ejército. Y luego, maestros: té.
|
||||||
coop.m20.start = Mossgrim, viejo hongo. La liga te manda saludos.
|
coop.m20.start = Mossgrim, viejo hongo. La liga te manda saludos.
|
||||||
coop.m20.goal = Derrotad a Mossgrim y a todas sus criaturas.
|
coop.m20.goal = Derrotad a Mossgrim y a todas sus criaturas.
|
||||||
coop.m20.boss = Mossgrim ya no existe. El musgo volverá a crecer. Él no.
|
coop.m20.boss = Mossgrim ya no existe. El musgo volverá a crecer. Él no.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Laavasaaria, mestari, keskellä kiehuvia manalähteitä, ja sul
|
|||||||
camp.m20.title = Suurmestari
|
camp.m20.title = Suurmestari
|
||||||
camp.m20.story = Suurmestari Valerian Kirkaskilpi odottaa linnoituksessaan suuren joen takana, mukanaan viimeinen siru ja ritarikunnan portti. Hän on rukoillut, kiillottanut ja valmistautunut sata vuotta. | Tuhoa hänen porttinsa ja ota siru takaisin. Silloin ytimesi on ehjä - ja jokainen mestari, joka on sitä koskaan halunnut, tulee hakemaan sitä yhtä aikaa. Yksi asia kerrallaan.
|
camp.m20.story = Suurmestari Valerian Kirkaskilpi odottaa linnoituksessaan suuren joen takana, mukanaan viimeinen siru ja ritarikunnan portti. Hän on rukoillut, kiillottanut ja valmistautunut sata vuotta. | Tuhoa hänen porttinsa ja ota siru takaisin. Silloin ytimesi on ehjä - ja jokainen mestari, joka on sitä koskaan halunnut, tulee hakemaan sitä yhtä aikaa. Yksi asia kerrallaan.
|
||||||
camp.m30.title = Syvyyksien valtaistuin
|
camp.m30.title = Syvyyksien valtaistuin
|
||||||
camp.m30.story = Kävi niin kuin sanoin: ytimesi on ehjä, ja nyt kaikki haluavat sen. Mossgrim ja Lady Nightwell marssivat yhdessä, ja ritarikunnan rippeet avaavat porttinsa vielä kerran. | Tuhoa molemmat mestarien ytimet ja ritarikunnan portti. Sen jälkeen syvyyksillä on täsmälleen yksi mestari. Arvaa kuka. Vihje: en minä, minä olen teemies.
|
camp.m30.story = Kävi kuten sanoin: ytimesi on ehjä, ja nyt kaikki haluavat sen. Mossgrim ja Lady Nightwell ovat kaivautuneet pintaan, ja ylimarsalkka odottaa linnoituksessaan metsässä – päivänvaloa, lintuja, koko paketti. Inhottavaa. | Kiipeä ulos kalliosta, tuhoa molemmat mestariytimet ja ritarikunnan portti linnoituksen sisällä. Sen jälkeen maailmalla on tasan yksi mestari. Arvaa kuka. Vihje: en minä, minä olen teemies.
|
||||||
camp.epilogue = Vihreä ydin murenee, sininen sammuu, ja ritarikunnan portti hiljenee. Jossain yläpuolella Valonvartio kirjoittaa hyvin pitkää raporttia, eivätkä Lady Nightwellin kirjeet enää tule. | Kierosormi on keittänyt teetä. Olet ehjä, mestari. Alamaailma on sinun.
|
camp.epilogue = Vihreä ydin murenee, sininen sammuu, ja ritarikunnan portti hiljenee. Jossain yläpuolella Valonvartio kirjoittaa hyvin pitkää raporttia, eivätkä Lady Nightwellin kirjeet enää tule. | Kierosormi on keittänyt teetä. Olet ehjä, mestari. Alamaailma on sinun.
|
||||||
lair.arrivals = Vapaita vuoteita {0}: uusia olentoja saapuu {1}% nopeudella
|
lair.arrivals = Vapaita vuoteita {0}: uusia olentoja saapuu {1}% nopeudella
|
||||||
job.help = Auttaa
|
job.help = Auttaa
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Ylimarsalkka on kaatunut! Hänen haarniskansa kolisee kuin pudon
|
|||||||
coop.m19.t1 = Hän odottaa idässä. Antaa odottaa. Raivatkaa ensin vartijat.
|
coop.m19.t1 = Hän odottaa idässä. Antaa odottaa. Raivatkaa ensin vartijat.
|
||||||
coop.m19.t2 = Taas ritareita ja jousimiehiä. Ritarikunnalta loppuvat ideat.
|
coop.m19.t2 = Taas ritareita ja jousimiehiä. Ritarikunnalta loppuvat ideat.
|
||||||
coop.m20.title = Mossgrimin tuho
|
coop.m20.title = Mossgrimin tuho
|
||||||
coop.m20.story = Ylimarsalkan poistuttua Mossgrim seisoo yksin. Hän on ottanut hehkulohikäärmeen hahmon ja koonnut jokaisen olennon, joka vielä tottelee häntä.\n\nLopettakaa petturi. Lopettakaa hänen armeijansa. Ja sitten, mestarit - teetä.
|
coop.m20.story = Ylimarsalkan kaaduttua Mossgrim on yksin – ylhäällä metsässä, auringossa, kaikista paikoista. Hän on ottanut hehkulohikäärmeen hahmon ja koonnut jokaisen olennon, joka yhä kuuntelee häntä.\n\nKiivetkää ulos kalliosta ja tehkää loppu petturista. Hänen armeijastaan. Ja sitten, mestarit – teetä.
|
||||||
coop.m20.start = Mossgrim, vanha sienesi. Liitto lähettää terveisiä.
|
coop.m20.start = Mossgrim, vanha sienesi. Liitto lähettää terveisiä.
|
||||||
coop.m20.goal = Kukistakaa Mossgrim ja kaikki hänen olentonsa.
|
coop.m20.goal = Kukistakaa Mossgrim ja kaikki hänen olentonsa.
|
||||||
coop.m20.boss = Mossgrimia ei enää ole. Sammal kasvaa takaisin. Hän ei.
|
coop.m20.boss = Mossgrimia ei enää ole. Sammal kasvaa takaisin. Hän ei.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Otoci od lave, gospodaru, s izvorima mane koji ključaju u sred
|
|||||||
camp.m20.title = Veliki meštar
|
camp.m20.title = Veliki meštar
|
||||||
camp.m20.story = Veliki meštar Valerijan Svijetloštit čeka u svojoj citadeli iza velike rijeke, s posljednjom krhotinom i vratima reda. Sto godina se molio, glancao i pripremao. | Uništi njegova vrata i vrati krhotinu. Tada je tvoja jezgra cijela - a svaki gospodar koji ju je ikad želio doći će po nju odjednom. Jedno po jedno.
|
camp.m20.story = Veliki meštar Valerijan Svijetloštit čeka u svojoj citadeli iza velike rijeke, s posljednjom krhotinom i vratima reda. Sto godina se molio, glancao i pripremao. | Uništi njegova vrata i vrati krhotinu. Tada je tvoja jezgra cijela - a svaki gospodar koji ju je ikad želio doći će po nju odjednom. Jedno po jedno.
|
||||||
camp.m30.title = Prijestolje dubina
|
camp.m30.title = Prijestolje dubina
|
||||||
camp.m30.story = Dogodilo se kako sam rekao: tvoja je jezgra cijela, i sad je svi žele. Mossgrim i Lady Nightwell marširaju zajedno, a ono što je ostalo od Reda otvara svoja vrata posljednji put. | Uništi obje jezgre gospodara i vrata reda. Nakon toga dubine imaju točno jednog gospodara. Pogodi koga. Savjet: ne mene, ja sam onaj s čajem.
|
camp.m30.story = Bilo je kako sam rekao: tvoja jezgra je cijela i sad je svi žele. Mossgrim i Lady Nightwell prokopali su se do površine, a visoki maršal čeka u svojoj tvrđavi u šumi – dnevno svjetlo, ptice, cijeli paket. Odvratno. | Izađi iz stijene, uništi obje jezgre gospodara i vrata reda u tvrđavi. Nakon toga svijet ima točno jednog gospodara. Pogodi koga. Savjet: ne mene, ja sam čajdžija.
|
||||||
camp.epilogue = Zelena jezgra se mrvi, plava se gasi, a vrata reda utihnu. Negdje gore Svjetlostraža piše vrlo dugačak izvještaj, a pisma Lady Nightwell prestala su stizati. | Krivoprst je skuhao čaj. Cijel si, gospodaru. Podzemlje je tvoje.
|
camp.epilogue = Zelena jezgra se mrvi, plava se gasi, a vrata reda utihnu. Negdje gore Svjetlostraža piše vrlo dugačak izvještaj, a pisma Lady Nightwell prestala su stizati. | Krivoprst je skuhao čaj. Cijel si, gospodaru. Podzemlje je tvoje.
|
||||||
lair.arrivals = Slobodni kreveti: {0} - nova stvorenja stižu brzinom od {1}%
|
lair.arrivals = Slobodni kreveti: {0} - nova stvorenja stižu brzinom od {1}%
|
||||||
job.help = Pomaže
|
job.help = Pomaže
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Visoki maršal je pao! Oklop mu zvecka kao ispala ladica s pribo
|
|||||||
coop.m19.t1 = Čeka na istoku. Neka čeka. Najprije počistite stražu.
|
coop.m19.t1 = Čeka na istoku. Neka čeka. Najprije počistite stražu.
|
||||||
coop.m19.t2 = Opet vitezovi i strijelci. Redu ponestaje ideja.
|
coop.m19.t2 = Opet vitezovi i strijelci. Redu ponestaje ideja.
|
||||||
coop.m20.title = Mossgrimov pad
|
coop.m20.title = Mossgrimov pad
|
||||||
coop.m20.story = Kad Visokog maršala više nema, Mossgrim stoji sam. Poprimio je oblik žarnog zmaja i okupio svako stvorenje koje ga još sluša.\n\nOkončajte izdajnika. Okončajte njegovu vojsku. A onda, gospodari - čaj.
|
coop.m20.story = Bez visokog maršala Mossgrim je sam – gore u šumi, na suncu, baš tamo. Poprimio je oblik žarnog zmaja i okupio svako stvorenje koje ga još sluša.\n\nIzađite iz stijene i dokrajčite izdajnika. Dokrajčite njegovu vojsku. A onda, gospodari – čaj.
|
||||||
coop.m20.start = Mossgrime, stara gljivo. Savez te pozdravlja.
|
coop.m20.start = Mossgrime, stara gljivo. Savez te pozdravlja.
|
||||||
coop.m20.goal = Porazite Mossgrima i sva njegova stvorenja.
|
coop.m20.goal = Porazite Mossgrima i sva njegova stvorenja.
|
||||||
coop.m20.boss = Mossgrima više nema. Mahovina će ponovo izrasti. On neće.
|
coop.m20.boss = Mossgrima više nema. Mahovina će ponovo izrasti. On neće.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Lávaszigetek, mester, közepükön forrongó manaforrásokkal,
|
|||||||
camp.m20.title = A Nagymester
|
camp.m20.title = A Nagymester
|
||||||
camp.m20.story = Valerian Fénypajzs Nagymester a nagy folyón túli citadellájában vár, az utolsó szilánkkal és a Rend kapujával. Száz évig imádkozott, suvickolt és készülődött. | Pusztítsd el a kapuját, és szerezd vissza a szilánkot. Akkor a magod egész lesz - és minden mester, aki valaha akarta, egyszerre jön majd érte. Egyszerre csak egyet.
|
camp.m20.story = Valerian Fénypajzs Nagymester a nagy folyón túli citadellájában vár, az utolsó szilánkkal és a Rend kapujával. Száz évig imádkozott, suvickolt és készülődött. | Pusztítsd el a kapuját, és szerezd vissza a szilánkot. Akkor a magod egész lesz - és minden mester, aki valaha akarta, egyszerre jön majd érte. Egyszerre csak egyet.
|
||||||
camp.m30.title = A mélység trónja
|
camp.m30.title = A mélység trónja
|
||||||
camp.m30.story = Úgy történt, ahogy mondtam: a magod egész, és most mindenki azt akarja. Mossgrim és Lady Nightwell együtt menetelnek, és ami a Rendből maradt, utoljára még kinyitja a kapuját. | Pusztítsd el mindkét mestermagot és a Rend kapuját. Ezután a mélységnek pontosan egy ura lesz. Találd ki, ki. Segítek: nem én, én vagyok a teafőző.
|
camp.m30.story = Úgy lett, ahogy mondtam: a magod ép, és most mindenki akarja. Mossgrim és Lady Nightwell felásták magukat a felszínre, a főmarsall pedig az erdei erődjében vár – napfény, madarak, a teljes csomag. Undorító. | Mássz ki a sziklából, pusztítsd el mindkét mester magját és a rend kapuját az erődben. Utána a világnak pontosan egy mestere lesz. Találd ki, ki. Tipp: nem én, én a teás vagyok.
|
||||||
camp.epilogue = A zöld mag szétmorzsolódik, a kék kialszik, és a Rend kapuja elnémul. Valahol odafent a Fényőrség egy nagyon hosszú jelentést ír, Lady Nightwell levelei pedig már nem érkeznek. | Görbeujj teát főzött. Újra egész vagy, mester. Tiéd az alvilág.
|
camp.epilogue = A zöld mag szétmorzsolódik, a kék kialszik, és a Rend kapuja elnémul. Valahol odafent a Fényőrség egy nagyon hosszú jelentést ír, Lady Nightwell levelei pedig már nem érkeznek. | Görbeujj teát főzött. Újra egész vagy, mester. Tiéd az alvilág.
|
||||||
lair.arrivals = {0} szabad ágy: az új lények érkezési sebessége {1}%
|
lair.arrivals = {0} szabad ágy: az új lények érkezési sebessége {1}%
|
||||||
job.help = Segít
|
job.help = Segít
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = A Főmarsall elesett! A páncélja úgy csörömpöl, mint egy l
|
|||||||
coop.m19.t1 = Keleten vár. Hadd várjon. Előbb tisztítsátok meg a terepet az őreitől.
|
coop.m19.t1 = Keleten vár. Hadd várjon. Előbb tisztítsátok meg a terepet az őreitől.
|
||||||
coop.m19.t2 = Megint lovagok és íjászok. A Rendnek elfogynak az ötletei.
|
coop.m19.t2 = Megint lovagok és íjászok. A Rendnek elfogynak az ötletei.
|
||||||
coop.m20.title = Mossgrim bukása
|
coop.m20.title = Mossgrim bukása
|
||||||
coop.m20.story = A Főmarsall eltűntével Mossgrim egyedül maradt. Parázssárkány alakját öltötte, és összegyűjtött minden lényt, amely még hallgat rá.\n\nVégezzetek az árulóval. Végezzetek a seregével. És aztán, mesterek - tea.
|
coop.m20.story = A főmarsall bukása után Mossgrim egyedül maradt – fent az erdőben, a napon, éppen ott. Parázssárkány alakját öltötte, és minden lényt összegyűjtött, aki még hallgat rá.\n\nMásszatok ki a sziklából, és végezzetek az árulóval. A seregével. Aztán, mesterek – tea.
|
||||||
coop.m20.start = Mossgrim, te vén gomba. A szövetség üdvözletét küldi.
|
coop.m20.start = Mossgrim, te vén gomba. A szövetség üdvözletét küldi.
|
||||||
coop.m20.goal = Győzd le Mossgrimot és minden lényét.
|
coop.m20.goal = Győzd le Mossgrimot és minden lényét.
|
||||||
coop.m20.boss = Mossgrim nincs többé. A moha visszanő. Ő nem.
|
coop.m20.boss = Mossgrim nincs többé. A moha visszanő. Ő nem.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Isole di lava, maestro, con fonti di mana che ribollono nel mez
|
|||||||
camp.m20.title = Il Gran Maestro
|
camp.m20.title = Il Gran Maestro
|
||||||
camp.m20.story = Il Gran Maestro Valeriano Scudolucente attende nella sua cittadella oltre il grande fiume, con l'ultimo frammento e la porta dell'ordine. Per cento anni ha pregato, lucidato e si è preparato. | Distruggi la sua porta e riprenditi il frammento. Allora il tuo nucleo sarà intero - e ogni maestro che l'abbia mai voluto verrà a prenderselo tutto in una volta. Una cosa alla volta.
|
camp.m20.story = Il Gran Maestro Valeriano Scudolucente attende nella sua cittadella oltre il grande fiume, con l'ultimo frammento e la porta dell'ordine. Per cento anni ha pregato, lucidato e si è preparato. | Distruggi la sua porta e riprenditi il frammento. Allora il tuo nucleo sarà intero - e ogni maestro che l'abbia mai voluto verrà a prenderselo tutto in una volta. Una cosa alla volta.
|
||||||
camp.m30.title = Il trono degli abissi
|
camp.m30.title = Il trono degli abissi
|
||||||
camp.m30.story = È andata come dicevo: il tuo nucleo è intero, e ora lo vogliono tutti. Mossgrim e Lady Nightwell marciano insieme, e ciò che resta dell'Ordine apre la sua porta un'ultima volta. | Distruggi entrambi i nuclei dei maestri e la porta dell'ordine. Dopo, gli abissi avranno esattamente un maestro. Indovina chi. Un indizio: non io, io sono quello del tè.
|
camp.m30.story = È andata come dicevo: il tuo nucleo è intero, e ora lo vogliono tutti. Mossgrim e Lady Nightwell hanno scavato fino in superficie, e l'Alto Maresciallo aspetta nella sua fortezza nel bosco: luce del giorno, uccelli, tutto il pacchetto. Disgustoso. | Esci dalla roccia, distruggi entrambi i nuclei dei maestri e la porta dell'ordine dentro la fortezza. Dopo, il mondo avrà un solo maestro. Indovina chi. Suggerimento: non io, io sono quello del tè.
|
||||||
camp.epilogue = Il nucleo verde si sbriciola, quello blu si spegne e la porta dell'ordine tace. Da qualche parte lassù, la Guardia della Luce sta scrivendo un rapporto lunghissimo, e le lettere di Lady Nightwell hanno smesso di arrivare. | Ditastorte ha preparato il tè. Sei di nuovo intero, maestro. Gli inferi sono tuoi.
|
camp.epilogue = Il nucleo verde si sbriciola, quello blu si spegne e la porta dell'ordine tace. Da qualche parte lassù, la Guardia della Luce sta scrivendo un rapporto lunghissimo, e le lettere di Lady Nightwell hanno smesso di arrivare. | Ditastorte ha preparato il tè. Sei di nuovo intero, maestro. Gli inferi sono tuoi.
|
||||||
lair.arrivals = {0} letti liberi: le nuove creature arrivano al {1}% della velocità
|
lair.arrivals = {0} letti liberi: le nuove creature arrivano al {1}% della velocità
|
||||||
job.help = Aiuta
|
job.help = Aiuta
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Il Gran Maresciallo è caduto! La sua armatura sferraglia come u
|
|||||||
coop.m19.t1 = Aspetta a est. Lasciatelo aspettare. Prima eliminate le guardie.
|
coop.m19.t1 = Aspetta a est. Lasciatelo aspettare. Prima eliminate le guardie.
|
||||||
coop.m19.t2 = Di nuovo cavalieri e arciere. L'Ordine sta finendo le idee.
|
coop.m19.t2 = Di nuovo cavalieri e arciere. L'Ordine sta finendo le idee.
|
||||||
coop.m20.title = La caduta di Mossgrim
|
coop.m20.title = La caduta di Mossgrim
|
||||||
coop.m20.story = Senza il Gran Maresciallo, Mossgrim è rimasto solo. Ha preso la forma di un drago di brace e ha radunato tutte le creature che gli danno ancora retta.\n\nFinite il traditore. Finite il suo esercito. E poi, maestri: tè.
|
coop.m20.story = Caduto l'Alto Maresciallo, Mossgrim è solo: su nel bosco, al sole, figurarsi. Ha preso la forma di un drago di brace e radunato ogni creatura che ancora lo ascolta.\n\nUscite dalla roccia e finite il traditore. Finite il suo esercito. E poi, maestri: tè.
|
||||||
coop.m20.start = Mossgrim, vecchio fungo. La lega ti manda i suoi saluti.
|
coop.m20.start = Mossgrim, vecchio fungo. La lega ti manda i suoi saluti.
|
||||||
coop.m20.goal = Sconfiggete Mossgrim e tutte le sue creature.
|
coop.m20.goal = Sconfiggete Mossgrim e tutte le sue creature.
|
||||||
coop.m20.boss = Mossgrim non c'è più. Il muschio ricrescerà. Lui no.
|
coop.m20.boss = Mossgrim non c'è più. Il muschio ricrescerà. Lui no.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Lava-eilanden, meester, met kokende manabronnen in het midden,
|
|||||||
camp.m20.title = De Grootmeester
|
camp.m20.title = De Grootmeester
|
||||||
camp.m20.story = Grootmeester Valerian Helderschild wacht in zijn citadel aan de overkant van de grote rivier, met de laatste scherf en de poort van de orde. Honderd jaar lang heeft hij gebeden, gepoetst en zich voorbereid. | Vernietig zijn poort en haal de scherf terug. Dan is je kern heel - en elke meester die hem ooit wilde hebben, komt er tegelijk op af. Een ding tegelijk.
|
camp.m20.story = Grootmeester Valerian Helderschild wacht in zijn citadel aan de overkant van de grote rivier, met de laatste scherf en de poort van de orde. Honderd jaar lang heeft hij gebeden, gepoetst en zich voorbereid. | Vernietig zijn poort en haal de scherf terug. Dan is je kern heel - en elke meester die hem ooit wilde hebben, komt er tegelijk op af. Een ding tegelijk.
|
||||||
camp.m30.title = De troon van de diepte
|
camp.m30.title = De troon van de diepte
|
||||||
camp.m30.story = Het ging zoals ik zei: je kern is heel, en nu wil iedereen hem hebben. Mossgrim en Lady Nightwell trekken samen op, en wat er over is van de Orde opent nog een laatste keer haar poort. | Vernietig beide meesterkernen en de poort van de orde. Daarna heeft de diepte precies een meester. Raad eens wie. Tip: niet ik, ik ben van de thee.
|
camp.m30.story = Het ging zoals ik zei: je kern is heel, en nu wil iedereen hem. Mossgrim en Lady Nightwell hebben zich naar de oppervlakte gegraven, en de Hoge Maarschalk wacht in zijn burcht in het bos – daglicht, vogels, het hele pakket. Walgelijk. | Klim uit de rots, vernietig beide meesterkernen en de poort van de orde in de burcht. Daarna heeft de wereld precies één meester. Raad eens wie. Tip: ik niet, ik ben van de thee.
|
||||||
camp.epilogue = De groene kern brokkelt af, de blauwe dooft, en de poort van de orde valt stil. Ergens boven schrijft de Lichtwacht een heel lang rapport, en de brieven van Lady Nightwell komen niet meer. | Krommevinger heeft thee gezet. Je bent heel, meester. De onderwereld is van jou.
|
camp.epilogue = De groene kern brokkelt af, de blauwe dooft, en de poort van de orde valt stil. Ergens boven schrijft de Lichtwacht een heel lang rapport, en de brieven van Lady Nightwell komen niet meer. | Krommevinger heeft thee gezet. Je bent heel, meester. De onderwereld is van jou.
|
||||||
lair.arrivals = {0} vrije bedden: nieuwe wezens komen met {1}% snelheid
|
lair.arrivals = {0} vrije bedden: nieuwe wezens komen met {1}% snelheid
|
||||||
job.help = Helpt
|
job.help = Helpt
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = De Hoge Maarschalk is gevallen! Zijn harnas rammelt als een geva
|
|||||||
coop.m19.t1 = Hij wacht in het oosten. Laat hem wachten. Ruim eerst de wachters op.
|
coop.m19.t1 = Hij wacht in het oosten. Laat hem wachten. Ruim eerst de wachters op.
|
||||||
coop.m19.t2 = Alweer ridders en boogschutters. De Orde raakt door haar ideeën heen.
|
coop.m19.t2 = Alweer ridders en boogschutters. De Orde raakt door haar ideeën heen.
|
||||||
coop.m20.title = Mossgrims val
|
coop.m20.title = Mossgrims val
|
||||||
coop.m20.story = Nu de Hoge Maarschalk weg is, staat Mossgrim alleen. Hij heeft de gedaante van een gloeddraak aangenomen en elk wezen verzameld dat nog naar hem luistert.\n\nMaak een eind aan de verrader. Maak een eind aan zijn leger. En dan, meesters - thee.
|
coop.m20.story = Zonder de Hoge Maarschalk staat Mossgrim alleen – boven in het bos, in de zon nota bene. Hij heeft de gedaante van een gloedworm aangenomen en elk wezen verzameld dat nog naar hem luistert.\n\nKlim uit de rots en maak een eind aan de verrader. Aan zijn leger. En dan, meesters – thee.
|
||||||
coop.m20.start = Mossgrim, ouwe schimmel. De liga laat je groeten.
|
coop.m20.start = Mossgrim, ouwe schimmel. De liga laat je groeten.
|
||||||
coop.m20.goal = Versla Mossgrim en al zijn wezens.
|
coop.m20.goal = Versla Mossgrim en al zijn wezens.
|
||||||
coop.m20.boss = Mossgrim is niet meer. Het mos groeit wel terug. Hij niet.
|
coop.m20.boss = Mossgrim is niet meer. Het mos groeit wel terug. Hij niet.
|
||||||
|
|||||||
+2
-2
@@ -571,7 +571,7 @@ camp.m29.story = Lavaøyer, mester, med manakilder som koker i midten, og en for
|
|||||||
camp.m20.title = Stormesteren
|
camp.m20.title = Stormesteren
|
||||||
camp.m20.story = Stormester Valerian Lysskjold venter i citadellet sitt bortenfor den store elven, med det siste skåret og ordenens port. Han har bedt, pusset og forberedt seg i hundre år. | Ødelegg porten hans og ta tilbake skåret. Da er kjernen din hel - og hver eneste mester som noen gang har villet ha den, kommer etter den på én gang. Én ting om gangen.
|
camp.m20.story = Stormester Valerian Lysskjold venter i citadellet sitt bortenfor den store elven, med det siste skåret og ordenens port. Han har bedt, pusset og forberedt seg i hundre år. | Ødelegg porten hans og ta tilbake skåret. Da er kjernen din hel - og hver eneste mester som noen gang har villet ha den, kommer etter den på én gang. Én ting om gangen.
|
||||||
camp.m30.title = Dypets trone
|
camp.m30.title = Dypets trone
|
||||||
camp.m30.story = Det gikk som jeg sa: kjernen din er hel, og nå vil alle ha den. Mossgrim og Lady Nightwell marsjerer sammen, og det som er igjen av Ordenen, åpner porten sin en siste gang. | Ødelegg begge mesterkjernene og ordenens port. Etter dette har dypet nøyaktig én mester. Gjett hvem. Et hint: ikke meg, jeg er han med teen.
|
camp.m30.story = Det gikk som jeg sa: kjernen din er hel, og nå vil alle ha den. Mossgrim og Lady Nightwell har gravd seg opp til overflaten, og høymarskalken venter i festningen sin i skogen – dagslys, fugler, hele pakka. Ekkelt. | Klatre ut av fjellet, ødelegg begge mesterkjernene og ordenens port inne i festningen. Etter dette har verden nøyaktig én mester. Gjett hvem. Hint: ikke meg, jeg er temannen.
|
||||||
camp.epilogue = Den grønne kjernen smuldrer, den blå blir mørk, og ordenens port blir stille. Et sted der oppe skriver Lysvakten en veldig lang rapport, og Lady Nightwells brev har sluttet å komme. | Krokfinger har laget te. Du er hel, mester. Underverdenen er din.
|
camp.epilogue = Den grønne kjernen smuldrer, den blå blir mørk, og ordenens port blir stille. Et sted der oppe skriver Lysvakten en veldig lang rapport, og Lady Nightwells brev har sluttet å komme. | Krokfinger har laget te. Du er hel, mester. Underverdenen er din.
|
||||||
lair.arrivals = {0} ledige senger: nye skapninger ankommer med {1}% fart
|
lair.arrivals = {0} ledige senger: nye skapninger ankommer med {1}% fart
|
||||||
job.help = Hjelper
|
job.help = Hjelper
|
||||||
@@ -1539,7 +1539,7 @@ coop.m19.boss = Høymarskalken har falt! Rustningen hans skrangler som en mistet
|
|||||||
coop.m19.t1 = Han venter i øst. La ham vente. Rydd unna vaktene først.
|
coop.m19.t1 = Han venter i øst. La ham vente. Rydd unna vaktene først.
|
||||||
coop.m19.t2 = Riddere og bueskyttere igjen. Ordenen begynner å gå tom for ideer.
|
coop.m19.t2 = Riddere og bueskyttere igjen. Ordenen begynner å gå tom for ideer.
|
||||||
coop.m20.title = Mossgrims fall
|
coop.m20.title = Mossgrims fall
|
||||||
coop.m20.story = Med høymarskalken borte står Mossgrim alene. Han har tatt skikkelse av en glødlindorm og samlet hver eneste skapning som fortsatt lytter til ham.\n\nGjør slutt på forræderen. Gjør slutt på hæren hans. Og så, mestere - te.
|
coop.m20.story = Uten høymarskalken står Mossgrim alene – oppe i skogen, i sola, av alle steder. Han har tatt form av en glødorm og samlet alle skapninger som fortsatt lytter til ham.\n\nKlatre ut av fjellet og gjør slutt på forræderen. På hæren hans. Og så, mestere – te.
|
||||||
coop.m20.start = Mossgrim, din gamle sopp. Forbundet sender sine hilsener.
|
coop.m20.start = Mossgrim, din gamle sopp. Forbundet sender sine hilsener.
|
||||||
coop.m20.goal = Beseir Mossgrim og alle skapningene hans.
|
coop.m20.goal = Beseir Mossgrim og alle skapningene hans.
|
||||||
coop.m20.boss = Mossgrim er ikke mer. Mosen gror tilbake. Det gjør ikke han.
|
coop.m20.boss = Mossgrim er ikke mer. Mosen gror tilbake. Det gjør ikke han.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Ilhas de lava, amo, com fontes de mana a ferver no meio, e uma
|
|||||||
camp.m20.title = O Grão-Mestre
|
camp.m20.title = O Grão-Mestre
|
||||||
camp.m20.story = O Grão-Mestre Valerian Escudo-Claro espera na sua cidadela para lá do grande rio, com o último fragmento e o portão da ordem. Rezou, poliu e preparou-se durante cem anos. | Destrói o portão dele e recupera o fragmento. Então o teu núcleo estará inteiro - e todos os mestres que alguma vez o quiseram virão buscá-lo ao mesmo tempo. Uma coisa de cada vez.
|
camp.m20.story = O Grão-Mestre Valerian Escudo-Claro espera na sua cidadela para lá do grande rio, com o último fragmento e o portão da ordem. Rezou, poliu e preparou-se durante cem anos. | Destrói o portão dele e recupera o fragmento. Então o teu núcleo estará inteiro - e todos os mestres que alguma vez o quiseram virão buscá-lo ao mesmo tempo. Uma coisa de cada vez.
|
||||||
camp.m30.title = O Trono das Profundezas
|
camp.m30.title = O Trono das Profundezas
|
||||||
camp.m30.story = Aconteceu como eu disse: o teu núcleo está inteiro, e agora toda a gente o quer. O Mossgrim e a Lady Nightwell marcham juntos, e o que resta da Ordem abre o portão uma última vez. | Destrói os dois núcleos dos mestres e o portão da ordem. Depois disto, as profundezas têm exatamente um mestre. Adivinha quem. Dica: eu não, eu sou o do chá.
|
camp.m30.story = Aconteceu como eu disse: o teu núcleo está inteiro e agora todos o querem. Mossgrim e Lady Nightwell escavaram até à superfície, e o Alto Marechal espera na sua fortaleza na floresta – luz do dia, pássaros, o pacote completo. Nojento. | Sai da rocha, destrói os dois núcleos dos mestres e o portão da ordem dentro da fortaleza. Depois disto o mundo terá exatamente um mestre. Adivinha quem. Pista: eu não, eu sou o do chá.
|
||||||
camp.epilogue = O núcleo verde desfaz-se, o azul apaga-se e o portão da ordem cai em silêncio. Algures lá em cima, a Guarda da Luz escreve um relatório muito longo, e as cartas da Lady Nightwell deixaram de chegar. | O Dedotorto fez chá. Estás inteiro, amo. O submundo é teu.
|
camp.epilogue = O núcleo verde desfaz-se, o azul apaga-se e o portão da ordem cai em silêncio. Algures lá em cima, a Guarda da Luz escreve um relatório muito longo, e as cartas da Lady Nightwell deixaram de chegar. | O Dedotorto fez chá. Estás inteiro, amo. O submundo é teu.
|
||||||
lair.arrivals = {0} camas livres: novas criaturas chegam a {1}% da velocidade
|
lair.arrivals = {0} camas livres: novas criaturas chegam a {1}% da velocidade
|
||||||
job.help = A ajudar
|
job.help = A ajudar
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = O Alto Marechal caiu! A armadura dele chocalha como uma gaveta d
|
|||||||
coop.m19.t1 = Ele espera a este. Deixem-no esperar. Primeiro limpem os guardas.
|
coop.m19.t1 = Ele espera a este. Deixem-no esperar. Primeiro limpem os guardas.
|
||||||
coop.m19.t2 = Outra vez cavaleiros e arqueiros. A Ordem está a ficar sem ideias.
|
coop.m19.t2 = Outra vez cavaleiros e arqueiros. A Ordem está a ficar sem ideias.
|
||||||
coop.m20.title = A Queda do Mossgrim
|
coop.m20.title = A Queda do Mossgrim
|
||||||
coop.m20.story = Sem o Alto Marechal, o Mossgrim está sozinho. Tomou a forma de uma serpe de brasa e reuniu todas as criaturas que ainda lhe obedecem.\n\nAcabem com o traidor. Acabem com o exército dele. E depois, amos - chá.
|
coop.m20.story = Com o Alto Marechal caído, Mossgrim está sozinho – lá em cima, na floresta, ao sol, imagine-se. Tomou a forma de uma serpe de brasa e reuniu todas as criaturas que ainda o escutam.\n\nSaí da rocha e acabai com o traidor. Acabai com o seu exército. E depois, mestres – chá.
|
||||||
coop.m20.start = Mossgrim, seu velho fungo. A liga manda cumprimentos.
|
coop.m20.start = Mossgrim, seu velho fungo. A liga manda cumprimentos.
|
||||||
coop.m20.goal = Derrotem o Mossgrim e todas as suas criaturas.
|
coop.m20.goal = Derrotem o Mossgrim e todas as suas criaturas.
|
||||||
coop.m20.boss = O Mossgrim já não existe. O musgo volta a crescer. Ele não.
|
coop.m20.boss = O Mossgrim já não existe. O musgo volta a crescer. Ele não.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Insule de lavă, stăpâne, cu izvoare de mana clocotind la mij
|
|||||||
camp.m20.title = Marele Maestru
|
camp.m20.title = Marele Maestru
|
||||||
camp.m20.story = Marele Maestru Valerian Scutluminos așteaptă în citadela lui de dincolo de marele râu, cu ultimul ciob și poarta ordinului. O sută de ani s-a rugat, a lustruit și s-a pregătit. | Distruge-i poarta și ia ciobul înapoi. Atunci miezul tău va fi întreg - și fiecare stăpân care l-a vrut vreodată va veni după el deodată. Pe rând, pe rând.
|
camp.m20.story = Marele Maestru Valerian Scutluminos așteaptă în citadela lui de dincolo de marele râu, cu ultimul ciob și poarta ordinului. O sută de ani s-a rugat, a lustruit și s-a pregătit. | Distruge-i poarta și ia ciobul înapoi. Atunci miezul tău va fi întreg - și fiecare stăpân care l-a vrut vreodată va veni după el deodată. Pe rând, pe rând.
|
||||||
camp.m30.title = Tronul adâncurilor
|
camp.m30.title = Tronul adâncurilor
|
||||||
camp.m30.story = S-a întâmplat cum am zis: miezul tău e întreg și acum toată lumea îl vrea. Mossgrim și Lady Nightwell mărșăluiesc împreună, iar ce a mai rămas din Ordin își deschide poarta o ultimă dată. | Distruge ambele miezuri ale stăpânilor și poarta ordinului. După asta, adâncurile au exact un stăpân. Ghici cine. Indiciu: nu eu, eu sunt omul cu ceaiul.
|
camp.m30.story = S-a întâmplat cum am zis: nucleul tău e întreg, iar acum toți îl vor. Mossgrim și Lady Nightwell și-au săpat drum până la suprafață, iar Înaltul Mareșal așteaptă în fortăreața lui din pădure – lumina zilei, păsări, tot pachetul. Dezgustător. | Ieși din stâncă, distruge ambele nuclee ale stăpânilor și poarta ordinului din fortăreață. După asta lumea va avea exact un stăpân. Ghicește cine. Indiciu: nu eu, eu sunt omul cu ceaiul.
|
||||||
camp.epilogue = Miezul verde se fărâmițează, cel albastru se stinge, iar poarta ordinului amuțește. Undeva sus, Straja Luminii scrie un raport foarte lung, iar scrisorile lui Lady Nightwell nu mai vin. | Degetstrâmb a făcut ceai. Ești întreg, stăpâne. Lumea de dedesubt e a ta.
|
camp.epilogue = Miezul verde se fărâmițează, cel albastru se stinge, iar poarta ordinului amuțește. Undeva sus, Straja Luminii scrie un raport foarte lung, iar scrisorile lui Lady Nightwell nu mai vin. | Degetstrâmb a făcut ceai. Ești întreg, stăpâne. Lumea de dedesubt e a ta.
|
||||||
lair.arrivals = {0} paturi libere: creaturile noi sosesc cu {1}% viteză
|
lair.arrivals = {0} paturi libere: creaturile noi sosesc cu {1}% viteză
|
||||||
job.help = Ajută
|
job.help = Ajută
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Mareșalul Suprem a căzut! Armura lui zăngăne ca un sertar de
|
|||||||
coop.m19.t1 = Așteaptă la est. Lăsați-l să aștepte. Curățați întâi gărzile.
|
coop.m19.t1 = Așteaptă la est. Lăsați-l să aștepte. Curățați întâi gărzile.
|
||||||
coop.m19.t2 = Iar cavaleri și arcași. Ordinul rămâne fără idei.
|
coop.m19.t2 = Iar cavaleri și arcași. Ordinul rămâne fără idei.
|
||||||
coop.m20.title = Căderea lui Mossgrim
|
coop.m20.title = Căderea lui Mossgrim
|
||||||
coop.m20.story = Cu Mareșalul Suprem dispărut, Mossgrim a rămas singur. A luat forma unui balaur de jar și a adunat fiecare creatură care încă îl mai ascultă.\n\nTerminați-l pe trădător. Terminați-i armata. Iar apoi, stăpâni - ceai.
|
coop.m20.story = Fără Înaltul Mareșal, Mossgrim e singur – sus în pădure, în soare, tocmai acolo. A luat chipul unui balaur de jar și a strâns toate creaturile care încă îl ascultă.\n\nIeșiți din stâncă și terminați-l pe trădător. Terminați-i oastea. Și apoi, stăpâni – ceai.
|
||||||
coop.m20.start = Mossgrim, ciupercă bătrână ce ești. Liga îți transmite salutări.
|
coop.m20.start = Mossgrim, ciupercă bătrână ce ești. Liga îți transmite salutări.
|
||||||
coop.m20.goal = Învingeți-l pe Mossgrim și toate creaturile lui.
|
coop.m20.goal = Învingeți-l pe Mossgrim și toate creaturile lui.
|
||||||
coop.m20.boss = Mossgrim nu mai e. Mușchiul va crește la loc. El nu.
|
coop.m20.boss = Mossgrim nu mai e. Mușchiul va crește la loc. El nu.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Лавовые острова, хозяин, посреди н
|
|||||||
camp.m20.title = Великий магистр
|
camp.m20.title = Великий магистр
|
||||||
camp.m20.story = Великий магистр Валериан Светлощит ждёт в своей цитадели за великой рекой, с последним осколком и вратами ордена. Сто лет он молился, полировал и готовился. | Разрушь его врата и верни осколок. Тогда твоё ядро станет целым - и все хозяева, что когда-либо его хотели, явятся за ним разом. Всё по порядку.
|
camp.m20.story = Великий магистр Валериан Светлощит ждёт в своей цитадели за великой рекой, с последним осколком и вратами ордена. Сто лет он молился, полировал и готовился. | Разрушь его врата и верни осколок. Тогда твоё ядро станет целым - и все хозяева, что когда-либо его хотели, явятся за ним разом. Всё по порядку.
|
||||||
camp.m30.title = Трон глубин
|
camp.m30.title = Трон глубин
|
||||||
camp.m30.story = Вышло, как я и говорил: твоё ядро целое, и теперь его хотят все. Моссгрим и леди Найтвелл идут вместе, а остатки Ордена в последний раз открывают свои врата. | Уничтожь оба ядра хозяев и врата ордена. После этого у глубин будет ровно один хозяин. Угадай кто. Подсказка: не я, я тут по части чая.
|
camp.m30.story = Вышло, как я говорил: ваше ядро цело, и теперь его хотят все. Моссгрим и леди Найтвелл прокопались на поверхность, а верховный маршал ждёт в своей крепости в лесу — дневной свет, птички, полный набор. Мерзость. | Выберитесь из скалы, уничтожьте оба ядра мастеров и врата ордена в крепости. После этого в мире будет ровно один мастер. Угадайте кто. Подсказка: не я, я чайный.
|
||||||
camp.epilogue = Зелёное ядро рассыпается, синее гаснет, и врата ордена умолкают. Где-то наверху Светлый Дозор пишет очень длинный отчёт, а письма леди Найтвелл больше не приходят. | Кривопал заварил чай. Ты снова целый, хозяин. Подземелье твоё.
|
camp.epilogue = Зелёное ядро рассыпается, синее гаснет, и врата ордена умолкают. Где-то наверху Светлый Дозор пишет очень длинный отчёт, а письма леди Найтвелл больше не приходят. | Кривопал заварил чай. Ты снова целый, хозяин. Подземелье твоё.
|
||||||
lair.arrivals = {0} свободных мест: новые существа приходят со скоростью {1}%
|
lair.arrivals = {0} свободных мест: новые существа приходят со скоростью {1}%
|
||||||
job.help = Помогает
|
job.help = Помогает
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Верховный маршал пал! Его доспехи г
|
|||||||
coop.m19.t1 = Он ждёт на востоке. Пусть ждёт. Сначала разберитесь со стражей.
|
coop.m19.t1 = Он ждёт на востоке. Пусть ждёт. Сначала разберитесь со стражей.
|
||||||
coop.m19.t2 = Снова рыцари и лучницы. У Ордена кончаются идеи.
|
coop.m19.t2 = Снова рыцари и лучницы. У Ордена кончаются идеи.
|
||||||
coop.m20.title = Падение Моссгрима
|
coop.m20.title = Падение Моссгрима
|
||||||
coop.m20.story = Без Верховного маршала Моссгрим остался один. Он принял облик огненного змия и собрал всех существ, которые ещё его слушают.\n\nПокончите с предателем. Покончите с его армией. А потом, повелители, - чай.
|
coop.m20.story = Без верховного маршала Моссгрим остался один — наверху, в лесу, на солнце, подумать только. Он принял облик огненного змея и собрал всех существ, что ещё его слушают.\n\nВыберитесь из скалы и покончите с предателем. Покончите с его армией. А потом, мастера, — чай.
|
||||||
coop.m20.start = Моссгрим, старый гриб. Лига шлёт тебе привет.
|
coop.m20.start = Моссгрим, старый гриб. Лига шлёт тебе привет.
|
||||||
coop.m20.goal = Победите Моссгрима и всех его существ.
|
coop.m20.goal = Победите Моссгрима и всех его существ.
|
||||||
coop.m20.boss = Моссгрима больше нет. Мох отрастёт. Он - нет.
|
coop.m20.boss = Моссгрима больше нет. Мох отрастёт. Он - нет.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Lávové ostrovy, pane, s prameňmi many vrúcimi uprostred, a
|
|||||||
camp.m20.title = Veľmajster
|
camp.m20.title = Veľmajster
|
||||||
camp.m20.story = Veľmajster Valerián Jasnoštít čaká vo svojej citadele za veľkou riekou, s posledným črepom a bránou rádu. Sto rokov sa modlil, leštil a pripravoval. | Znič jeho bránu a vezmi si črep späť. Potom bude tvoje jadro celé - a každý majster, ktorý ho kedy chcel, si poň príde naraz. Pekne jedno po druhom.
|
camp.m20.story = Veľmajster Valerián Jasnoštít čaká vo svojej citadele za veľkou riekou, s posledným črepom a bránou rádu. Sto rokov sa modlil, leštil a pripravoval. | Znič jeho bránu a vezmi si črep späť. Potom bude tvoje jadro celé - a každý majster, ktorý ho kedy chcel, si poň príde naraz. Pekne jedno po druhom.
|
||||||
camp.m30.title = Trón hlbín
|
camp.m30.title = Trón hlbín
|
||||||
camp.m30.story = Stalo sa, ako som hovoril: tvoje jadro je celé a teraz ho chce každý. Mossgrim a Lady Nightwell tiahnu spolu a čo zostalo z Rádu, otvára svoju bránu naposledy. | Znič obe jadrá majstrov aj bránu rádu. Potom budú mať hlbiny presne jedného pána. Hádaj koho. Nápoveda: mňa nie, ja som tu cez čaj.
|
camp.m30.story = Stalo sa, ako som vravel: tvoje jadro je celé a teraz ho chce každý. Mossgrim a lady Nightwell sa prekopali na povrch a vysoký maršal čaká vo svojej pevnosti v lese – denné svetlo, vtáky, celý balík. Odporné. | Vylez zo skaly, znič obe jadrá pánov a bránu rádu v pevnosti. Potom bude mať svet presne jedného pána. Hádaj koho. Tip: nie mňa, ja som čajový.
|
||||||
camp.epilogue = Zelené jadro sa rozpadá, modré hasne a brána rádu stíchne. Kdesi hore píše Svetlá stráž veľmi dlhé hlásenie a listy Lady Nightwell prestali chodiť. | Krivoprst uvaril čaj. Si celý, pane. Podsvetie je tvoje.
|
camp.epilogue = Zelené jadro sa rozpadá, modré hasne a brána rádu stíchne. Kdesi hore píše Svetlá stráž veľmi dlhé hlásenie a listy Lady Nightwell prestali chodiť. | Krivoprst uvaril čaj. Si celý, pane. Podsvetie je tvoje.
|
||||||
lair.arrivals = Voľné lôžka: {0}, nové tvory prichádzajú rýchlosťou {1} %
|
lair.arrivals = Voľné lôžka: {0}, nové tvory prichádzajú rýchlosťou {1} %
|
||||||
job.help = Pomáha
|
job.help = Pomáha
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Vrchný maršal padol! Jeho zbroj rinčí ako spadnutá zásuvka
|
|||||||
coop.m19.t1 = Čaká na východe. Nech čaká. Najprv vyčistite stráže.
|
coop.m19.t1 = Čaká na východe. Nech čaká. Najprv vyčistite stráže.
|
||||||
coop.m19.t2 = Zase rytieri a lukostrelkyne. Rádu dochádzajú nápady.
|
coop.m19.t2 = Zase rytieri a lukostrelkyne. Rádu dochádzajú nápady.
|
||||||
coop.m20.title = Mossgrimov pád
|
coop.m20.title = Mossgrimov pád
|
||||||
coop.m20.story = Keď je vrchný maršal preč, Mossgrim zostal sám. Vzal na seba podobu žeravého šarkana a zhromaždil každého tvora, ktorý ho ešte počúva.\n\nSkoncujte so zradcom. Skoncujte s jeho armádou. A potom, páni - čaj.
|
coop.m20.story = Bez vysokého maršala je Mossgrim sám – hore v lese, na slnku, práve tam. Prijal podobu žeravého draka a zhromaždil každú bytosť, ktorá ho ešte počúva.\n\nVylezte zo skaly a skoncujte so zradcom. S jeho armádou. A potom, páni – čaj.
|
||||||
coop.m20.start = Mossgrim, ty stará huba. Liga ťa pozdravuje.
|
coop.m20.start = Mossgrim, ty stará huba. Liga ťa pozdravuje.
|
||||||
coop.m20.goal = Porazte Mossgrima a všetky jeho tvory.
|
coop.m20.goal = Porazte Mossgrima a všetky jeho tvory.
|
||||||
coop.m20.boss = Mossgrim už nie je. Mach zase dorastie. On nie.
|
coop.m20.boss = Mossgrim už nie je. Mach zase dorastie. On nie.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Острва од лаве, господару, с извори
|
|||||||
camp.m20.title = Велики мајстор
|
camp.m20.title = Велики мајстор
|
||||||
camp.m20.story = Велики мајстор Валеријан Светлоштит чека у својој цитадели иза велике реке, с последњом крхотином и капијом реда. Сто година се молио, гланцао и припремао. | Уништи његову капију и врати крхотину. Тада је твоје језгро цело - а сваки господар који га је икад желео доћи ће по њега одједном. Једно по једно.
|
camp.m20.story = Велики мајстор Валеријан Светлоштит чека у својој цитадели иза велике реке, с последњом крхотином и капијом реда. Сто година се молио, гланцао и припремао. | Уништи његову капију и врати крхотину. Тада је твоје језгро цело - а сваки господар који га је икад желео доћи ће по њега одједном. Једно по једно.
|
||||||
camp.m30.title = Престо дубина
|
camp.m30.title = Престо дубина
|
||||||
camp.m30.story = Догодило се како сам рекао: твоје језгро је цело, и сад га сви желе. Мосгрим и Лејди Најтвел марширају заједно, а оно што је остало од Реда отвара своју капију последњи пут. | Уништи оба језгра господара и капију реда. После тога дубине имају тачно једног господара. Погоди кога. Савет: не мене, ја сам онај с чајем.
|
camp.m30.story = Било је како сам рекао: твоје језгро је цело и сад га сви желе. Мосгрим и леди Најтвел прокопали су се до површине, а високи маршал чека у својој тврђави у шуми – дневна светлост, птице, цео пакет. Одвратно. | Изађи из стене, уништи оба језгра господара и капију реда у тврђави. После тога свет има тачно једног господара. Погоди кога. Савет: не мене, ја сам чајџија.
|
||||||
camp.epilogue = Зелено језгро се мрви, плаво се гаси, а капија реда утихне. Негде горе Светлостража пише веома дугачак извештај, а писма Лејди Најтвел су престала да стижу. | Кривопрст је скувао чај. Цео си, господару. Подземље је твоје.
|
camp.epilogue = Зелено језгро се мрви, плаво се гаси, а капија реда утихне. Негде горе Светлостража пише веома дугачак извештај, а писма Лејди Најтвел су престала да стижу. | Кривопрст је скувао чај. Цео си, господару. Подземље је твоје.
|
||||||
lair.arrivals = Слободни кревети: {0} - нова створења стижу брзином од {1}%
|
lair.arrivals = Слободни кревети: {0} - нова створења стижу брзином од {1}%
|
||||||
job.help = Помаже
|
job.help = Помаже
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Високи маршал је пао! Оклоп му звец
|
|||||||
coop.m19.t1 = Чека на истоку. Нека чека. Најпре почистите стражу.
|
coop.m19.t1 = Чека на истоку. Нека чека. Најпре почистите стражу.
|
||||||
coop.m19.t2 = Опет витезови и стрелци. Реду понестаје идеја.
|
coop.m19.t2 = Опет витезови и стрелци. Реду понестаје идеја.
|
||||||
coop.m20.title = Мосгримов пад
|
coop.m20.title = Мосгримов пад
|
||||||
coop.m20.story = Кад Високог маршала више нема, Мосгрим стоји сам. Попримио је облик жарког змаја и окупио свако створење које га још слуша.\n\nОкончајте издајника. Окончајте његову војску. А онда, господари - чај.
|
coop.m20.story = Без високог маршала Мосгрим је сам – горе у шуми, на сунцу, баш тамо. Попримио је облик жарког змаја и окупио свако створење које га још слуша.\n\nИзађите из стене и докрајчите издајника. Докрајчите његову војску. А онда, господари – чај.
|
||||||
coop.m20.start = Мосгриме, стара гљиво. Савез те поздравља.
|
coop.m20.start = Мосгриме, стара гљиво. Савез те поздравља.
|
||||||
coop.m20.goal = Поразите Мосгрима и сва његова створења.
|
coop.m20.goal = Поразите Мосгрима и сва његова створења.
|
||||||
coop.m20.boss = Мосгрима више нема. Маховина ће поново израсти. Он неће.
|
coop.m20.boss = Мосгрима више нема. Маховина ће поново израсти. Он неће.
|
||||||
|
|||||||
+2
-2
@@ -572,7 +572,7 @@ camp.m29.story = Lavaöar, mästare, med manakällor som kokar i mitten, och en
|
|||||||
camp.m20.title = Stormästaren
|
camp.m20.title = Stormästaren
|
||||||
camp.m20.story = Stormästare Valerian Ljussköld väntar i sitt citadell bortom den stora floden, med den sista skärvan och ordens port. Han har bett, putsat och förberett sig i hundra år. | Förstör hans port och ta tillbaka skärvan. Då är din kärna hel - och varenda mästare som någonsin velat ha den kommer efter den på en gång. En sak i taget.
|
camp.m20.story = Stormästare Valerian Ljussköld väntar i sitt citadell bortom den stora floden, med den sista skärvan och ordens port. Han har bett, putsat och förberett sig i hundra år. | Förstör hans port och ta tillbaka skärvan. Då är din kärna hel - och varenda mästare som någonsin velat ha den kommer efter den på en gång. En sak i taget.
|
||||||
camp.m30.title = Djupets tron
|
camp.m30.title = Djupets tron
|
||||||
camp.m30.story = Det blev som jag sa: din kärna är hel, och nu vill alla ha den. Mossgrim och Lady Nightwell marscherar tillsammans, och det som är kvar av orden öppnar sin port en sista gång. | Förstör båda mästarkärnorna och ordens port. Efter detta har djupet exakt en mästare. Gissa vem. Ledtråd: inte jag, jag är tegubben.
|
camp.m30.story = Det gick som jag sa: din kärna är hel, och nu vill alla ha den. Mossgrim och Lady Nightwell har grävt sig upp till ytan, och högmarskalken väntar i sin fästning i skogen – dagsljus, fåglar, hela paketet. Äckligt. | Klättra ut ur berget, förstör båda mästarkärnorna och ordens port inne i fästningen. Sedan har världen exakt en mästare. Gissa vem. Tips: inte jag, jag är temannen.
|
||||||
camp.epilogue = Den gröna kärnan smulas sönder, den blå slocknar, och ordens port tystnar. Någonstans där uppe skriver Ljusvakten en mycket lång rapport, och Lady Nightwells brev har slutat komma. | Krokfinger har kokat te. Du är hel, mästare. Underjorden är din.
|
camp.epilogue = Den gröna kärnan smulas sönder, den blå slocknar, och ordens port tystnar. Någonstans där uppe skriver Ljusvakten en mycket lång rapport, och Lady Nightwells brev har slutat komma. | Krokfinger har kokat te. Du är hel, mästare. Underjorden är din.
|
||||||
lair.arrivals = {0} lediga sängar: nya varelser kommer i {1}% fart
|
lair.arrivals = {0} lediga sängar: nya varelser kommer i {1}% fart
|
||||||
job.help = Hjälper till
|
job.help = Hjälper till
|
||||||
@@ -1540,7 +1540,7 @@ coop.m19.boss = Överste marskalken har fallit! Hans rustning skramlar som en ta
|
|||||||
coop.m19.t1 = Han väntar i öster. Låt honom vänta. Rensa vakterna först.
|
coop.m19.t1 = Han väntar i öster. Låt honom vänta. Rensa vakterna först.
|
||||||
coop.m19.t2 = Riddare och bågskyttar igen. Orden börjar få slut på idéer.
|
coop.m19.t2 = Riddare och bågskyttar igen. Orden börjar få slut på idéer.
|
||||||
coop.m20.title = Mossgrims fall
|
coop.m20.title = Mossgrims fall
|
||||||
coop.m20.story = Med överste marskalken borta står Mossgrim ensam. Han har tagit en glödlindorms skepnad och samlat varenda varelse som fortfarande lyssnar på honom.\n\nGör slut på förrädaren. Gör slut på hans armé. Och sedan, mästare - te.
|
coop.m20.story = Utan högmarskalken står Mossgrim ensam – uppe i skogen, i solen, av alla ställen. Han har tagit skepnad av en glödorm och samlat varje varelse som fortfarande lyssnar på honom.\n\nKlättra ut ur berget och gör slut på förrädaren. På hans här. Och sedan, mästare – te.
|
||||||
coop.m20.start = Mossgrim, din gamla svamp. Förbundet hälsar.
|
coop.m20.start = Mossgrim, din gamla svamp. Förbundet hälsar.
|
||||||
coop.m20.goal = Besegra Mossgrim och alla hans varelser.
|
coop.m20.goal = Besegra Mossgrim och alla hans varelser.
|
||||||
coop.m20.boss = Mossgrim finns inte mer. Mossan växer tillbaka. Det gör inte han.
|
coop.m20.boss = Mossgrim finns inte mer. Mossan växer tillbaka. Det gör inte han.
|
||||||
|
|||||||
@@ -6,7 +6,8 @@
|
|||||||
//
|
//
|
||||||
// Lobby messages (JSON, one object per WebSocket frame):
|
// Lobby messages (JSON, one object per WebSocket frame):
|
||||||
// {"t":"rooms"} -> list of open matches
|
// {"t":"rooms"} -> list of open matches
|
||||||
// {"t":"create","sides":[0,2,3,4]?,"map_w":96?,"map_h":128?,"difficulty":1?,"mission":12?,"doc":{..}?}
|
// {"t":"create","sides":[0,2,3,4]?,"map_w":96?,"map_h":128?,"difficulty":1?,"mission":12?,"doc":{..}?,"surface":true?}
|
||||||
|
// -> "surface": a free match whose eastern half lies above ground
|
||||||
// -> "doc": an editor campaign (CampaignDoc JSON) for a co-op
|
// -> "doc": an editor campaign (CampaignDoc JSON) for a co-op
|
||||||
// match of its mission "mission"; it goes along with "start"
|
// match of its mission "mission"; it goes along with "start"
|
||||||
// "seed":77?,"carry":[..]? with a doc: an interrupted run goes
|
// "seed":77?,"carry":[..]? with a doc: an interrupted run goes
|
||||||
@@ -88,6 +89,7 @@ struct Room {
|
|||||||
mission: Option<usize>,
|
mission: Option<usize>,
|
||||||
doc: Option<Value>, // editor campaign of a co-op match (sent to every client at the start)
|
doc: Option<Value>, // editor campaign of a co-op match (sent to every client at the start)
|
||||||
resume: Option<(u32, Value)>, // a resumed editor campaign run: its seed and what the masters carry
|
resume: Option<(u32, Value)>, // a resumed editor campaign run: its seed and what the masters carry
|
||||||
|
surface: bool, // a free match half above ground
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
@@ -382,7 +384,7 @@ impl Netplay {
|
|||||||
}
|
}
|
||||||
let name = self.clients.get(&conn).map(|c| c.name.clone()).unwrap_or_else(|| "Guest".into());
|
let name = self.clients.get(&conn).map(|c| c.name.clone()).unwrap_or_else(|| "Guest".into());
|
||||||
let seats = sides.iter().map(|s| (*s, new_seat(*s, false))).collect::<HashMap<_, _>>();
|
let seats = sides.iter().map(|s| (*s, new_seat(*s, false))).collect::<HashMap<_, _>>();
|
||||||
let room = Room { code: code.clone(), sides, seats, pending: HashMap::new(), turn: 0, started: false, paused: false, missing: false, seed: None, map_w, map_h, difficulty, mission, doc, resume };
|
let room = Room { code: code.clone(), sides, seats, pending: HashMap::new(), turn: 0, started: false, paused: false, missing: false, seed: None, map_w, map_h, difficulty, mission, doc, resume, surface: msg.get("surface").and_then(|v| v.as_bool()).unwrap_or(false) };
|
||||||
self.rooms.insert(code.clone(), room);
|
self.rooms.insert(code.clone(), room);
|
||||||
if let Some(c) = self.clients.get_mut(&conn) {
|
if let Some(c) = self.clients.get_mut(&conn) {
|
||||||
c.room = Some(code.clone());
|
c.room = Some(code.clone());
|
||||||
@@ -647,6 +649,9 @@ impl Netplay {
|
|||||||
if let Some(doc) = &r.doc {
|
if let Some(doc) = &r.doc {
|
||||||
m["doc"] = doc.clone();
|
m["doc"] = doc.clone();
|
||||||
}
|
}
|
||||||
|
if r.surface {
|
||||||
|
m["surface"] = json!(true);
|
||||||
|
}
|
||||||
if let Some((_, carry)) = &r.resume {
|
if let Some((_, carry)) = &r.resume {
|
||||||
m["carry"] = carry.clone();
|
m["carry"] = carry.clone();
|
||||||
m["resume"] = json!(true);
|
m["resume"] = json!(true);
|
||||||
|
|||||||
+7
-4
@@ -358,16 +358,19 @@ pub fn missions() -> Vec<MissionDef> {
|
|||||||
.boss(Paladin, 10)],
|
.boss(Paladin, 10)],
|
||||||
..base("m20", (160, 160), 2020, vec![Goal::Heart, Goal::Shards])
|
..base("m20", (160, 160), 2020, vec![Goal::Heart, Goal::Shards])
|
||||||
});
|
});
|
||||||
|
// the finale above ground: the dungeon in the rock, the eastern half a forest with the High
|
||||||
|
// Marshal's fortress (the gate of the order) and both rival masters
|
||||||
v.push(MissionDef {
|
v.push(MissionDef {
|
||||||
portals: 3,
|
portals: 3,
|
||||||
gold: 6000.0,
|
gold: 6000.0,
|
||||||
gate: true,
|
|
||||||
waves: true,
|
waves: true,
|
||||||
first_wave: 420.0,
|
first_wave: 420.0,
|
||||||
gate_defenders: true,
|
gate_defenders: true,
|
||||||
rivers: vec![river(false, true, 0.45, 4, 2), river(true, false, 0.5, 4, 2)],
|
rivers: vec![river(false, true, 0.3, 4, 2)],
|
||||||
islands: vec![island((0.3, 0.2), false, true, 3000)],
|
islands: vec![island((0.2, 0.2), false, true, 3000)],
|
||||||
rivals: vec![(0.85, 0.22, 2, 2), (0.85, 0.78, 2, 3)],
|
forts: vec![fort((0.8, 0.5), (27, 25), &[3], &[Arrow, Cannon, Magic, Arrow, Cannon, Magic, Arrow, Cannon], 3, 14, 4, 4, 3, 3000).heart().boss(Paladin, 10)],
|
||||||
|
rivals: vec![(0.86, 0.15, 2, 2), (0.86, 0.85, 2, 3)],
|
||||||
|
surface: 0.48,
|
||||||
..base("m30", (176, 176), 3030, vec![Goal::Rivals, Goal::Heart])
|
..base("m30", (176, 176), 3030, vec![Goal::Rivals, Goal::Heart])
|
||||||
});
|
});
|
||||||
v
|
v
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ pub fn coop_campaign() -> CampaignDoc {
|
|||||||
waves: sp.waves.0,
|
waves: sp.waves.0,
|
||||||
wave_limit: sp.waves.1,
|
wave_limit: sp.waves.1,
|
||||||
first_wave: if sp.waves.0 { sp.waves.2 } else { 300.0 },
|
first_wave: if sp.waves.0 { sp.waves.2 } else { 300.0 },
|
||||||
gen: GenDoc { rivers: sp.gen.0, lava: sp.gen.1, forts: sp.gen.2, rivals: 0, difficulty: sp.gen.3, surface: false },
|
gen: GenDoc { rivers: sp.gen.0, lava: sp.gen.1, forts: sp.gen.2, rivals: 0, difficulty: sp.gen.3, surface: i + 1 == specs.len() },
|
||||||
next: (i + 1 < specs.len()).then(|| format!("c{:02}", i + 2)),
|
next: (i + 1 < specs.len()).then(|| format!("c{:02}", i + 2)),
|
||||||
pos: (40.0 + (i % 5) as f32 * 220.0, 40.0 + (i / 5) as f32 * 140.0),
|
pos: (40.0 + (i % 5) as f32 * 220.0, 40.0 + (i / 5) as f32 * 140.0),
|
||||||
..MissionDoc::default()
|
..MissionDoc::default()
|
||||||
|
|||||||
+16
-2
@@ -90,6 +90,7 @@ pub struct StartInfo {
|
|||||||
pub teams: Vec<(u8, u8)>, // (side, team) of a versus match
|
pub teams: Vec<(u8, u8)>, // (side, team) of a versus match
|
||||||
pub next: bool, // the next mission of a running editor campaign co-op match
|
pub next: bool, // the next mission of a running editor campaign co-op match
|
||||||
pub carry: Vec<(u8, crate::campaign::Carry)>, // what every side brings into that mission
|
pub carry: Vec<(u8, crate::campaign::Carry)>, // what every side brings into that mission
|
||||||
|
pub surface: bool, // a free match whose eastern half lies above ground
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug, Default)]
|
#[derive(Clone, Debug, Default)]
|
||||||
@@ -223,6 +224,18 @@ impl MatchClient {
|
|||||||
self.send_create(sides, map_w, map_h, difficulty, None);
|
self.send_create(sides, map_w, map_h, difficulty, None);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// a free match; `surface`: its eastern half lies above ground
|
||||||
|
pub fn create_land(&mut self, sides: &[u8], map_w: usize, map_h: usize, difficulty: u8, surface: bool) {
|
||||||
|
let n = self.outbox.len();
|
||||||
|
self.send_create(sides, map_w, map_h, difficulty, None);
|
||||||
|
if let (true, Some(text)) = (surface, self.outbox.get_mut(n)) {
|
||||||
|
if let Ok(mut msg) = serde_json::from_str::<Value>(text) {
|
||||||
|
msg["surface"] = json!(true);
|
||||||
|
*text = msg.to_string();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn create_coop(&mut self, mission: usize, sides: &[u8], map_w: usize, map_h: usize, difficulty: u8) {
|
pub fn create_coop(&mut self, mission: usize, sides: &[u8], map_w: usize, map_h: usize, difficulty: u8) {
|
||||||
self.send_create(sides, map_w, map_h, difficulty, Some(mission));
|
self.send_create(sides, map_w, map_h, difficulty, Some(mission));
|
||||||
}
|
}
|
||||||
@@ -550,7 +563,8 @@ impl MatchClient {
|
|||||||
// a resumed editor campaign run goes on like the next mission of a running one
|
// a resumed editor campaign run goes on like the next mission of a running one
|
||||||
let resume = editor && v.get("resume").and_then(|x| x.as_bool()).unwrap_or(false);
|
let resume = editor && v.get("resume").and_then(|x| x.as_bool()).unwrap_or(false);
|
||||||
let carry: Vec<(u8, crate::campaign::Carry)> = if resume { v.get("carry").cloned().and_then(|c| serde_json::from_value(c).ok()).unwrap_or_default() } else { Vec::new() };
|
let carry: Vec<(u8, crate::campaign::Carry)> = if resume { v.get("carry").cloned().and_then(|c| serde_json::from_value(c).ok()).unwrap_or_default() } else { Vec::new() };
|
||||||
self.start = Some(StartInfo { seed, map_w, map_h, difficulty, sides, local_side, mission, ai, doc, editor, teams, next: resume, carry });
|
let surface = v.get("surface").and_then(|x| x.as_bool()).unwrap_or(false);
|
||||||
|
self.start = Some(StartInfo { seed, map_w, map_h, difficulty, sides, local_side, mission, ai, doc, editor, teams, next: resume, carry, surface });
|
||||||
self.error = None;
|
self.error = None;
|
||||||
self.status = None;
|
self.status = None;
|
||||||
}
|
}
|
||||||
@@ -581,7 +595,7 @@ impl MatchClient {
|
|||||||
}
|
}
|
||||||
r.ai = ai.clone();
|
r.ai = ai.clone();
|
||||||
}
|
}
|
||||||
self.start = Some(StartInfo { seed, map_w, map_h, difficulty, sides, local_side, mission: Some(mission), ai, doc: Some(doc), editor: true, teams, next: true, carry });
|
self.start = Some(StartInfo { seed, map_w, map_h, difficulty, sides, local_side, mission: Some(mission), ai, doc: Some(doc), editor: true, teams, next: true, carry, surface: false });
|
||||||
self.error = None;
|
self.error = None;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+6
-2
@@ -349,7 +349,7 @@ fn account_action(a: MenuAction, cloud: &mut Cloud, menu: &mut Menu, app: &mut A
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
MenuAction::MatchJoin(code) => app.client.join(&code),
|
MenuAction::MatchJoin(code) => app.client.join(&code),
|
||||||
MenuAction::MatchCreate => app.client.create(&[0, 2, 3, 4], app.settings.map_w, app.settings.map_h, app.settings.difficulty),
|
MenuAction::MatchCreate => app.client.create_land(&[0, 2, 3, 4], app.settings.map_w, app.settings.map_h, app.settings.difficulty, app.settings.surface),
|
||||||
MenuAction::MatchCoopCreate(mission) => {
|
MenuAction::MatchCoopCreate(mission) => {
|
||||||
let all = campaign::missions();
|
let all = campaign::missions();
|
||||||
if let Some(d) = all.get(mission) {
|
if let Some(d) = all.get(mission) {
|
||||||
@@ -692,7 +692,7 @@ impl App {
|
|||||||
let next = run_seed.is_some();
|
let next = run_seed.is_some();
|
||||||
let seed = run_seed.unwrap_or_else(|| next_seed(self.seed));
|
let seed = run_seed.unwrap_or_else(|| next_seed(self.seed));
|
||||||
let editor = doc.is_some();
|
let editor = doc.is_some();
|
||||||
let info = StartInfo { seed, map_w, map_h, difficulty: self.settings.difficulty, sides: vec![0, 2], local_side: Some(0), mission: Some(mission), ai: vec![2], doc, editor, teams: Vec::new(), next, carry };
|
let info = StartInfo { seed, map_w, map_h, difficulty: self.settings.difficulty, sides: vec![0, 2], local_side: Some(0), mission: Some(mission), ai: vec![2], doc, editor, teams: Vec::new(), next, carry, surface: false };
|
||||||
if !self.start_match_game(info) {
|
if !self.start_match_game(info) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -772,6 +772,10 @@ impl App {
|
|||||||
if !self.game.start_match(&info.sides, local) {
|
if !self.game.start_match(&info.sides, local) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if info.surface {
|
||||||
|
// the same land on every client: built from the shared seed
|
||||||
|
self.game.add_surface(info.seed, 0.5, 2 + (info.map_h / 64) as u32);
|
||||||
|
}
|
||||||
self.game.coop = false;
|
self.game.coop = false;
|
||||||
self.game.set_teams(&info.teams);
|
self.game.set_teams(&info.teams);
|
||||||
self.game.ai_difficulty = info.difficulty;
|
self.game.ai_difficulty = info.difficulty;
|
||||||
|
|||||||
@@ -183,4 +183,16 @@ mod tests {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn the_finale_is_fought_above_ground() {
|
||||||
|
let g = crate::campaign::start_mission(29, None);
|
||||||
|
assert!(g.surface_share() > 0.3, "share {}", g.surface_share());
|
||||||
|
assert_eq!(g.rivals.len(), 2);
|
||||||
|
assert!(g.gate_hp > 0.0 && g.has_gate());
|
||||||
|
let (gx, gy) = g.map.gate;
|
||||||
|
assert!(g.map.sky(idx(gx + 1, gy + 1)), "the gate of the order stands in the forest");
|
||||||
|
// the heroes find their way from the gate to the core
|
||||||
|
assert!(g.map.hero_path_to_core(idx(gx + 1, gy + 1)).is_some());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user