«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους

Λόγω πολλών αιτημάτων από τους αναγνώστες, ξεκινά μια μεγάλη σειρά άρθρων σχετικά με τη χρήση της τεχνολογίας υπολογιστών χωρίς διακομιστή για την ανάπτυξη μιας πραγματικής εφαρμογής. Αυτός ο κύκλος θα καλύπτει την ανάπτυξη, τη δοκιμή και την παράδοση εφαρμογών στους τελικούς χρήστες χρησιμοποιώντας σύγχρονα εργαλεία: αρχιτεκτονική εφαρμογών microservice (σε έκδοση χωρίς διακομιστή, βασισμένη σε OpenFaaS), σύμπλεγμα Kubernetes για την ανάπτυξη εφαρμογών, βάση δεδομένων MongoDB, επικεντρώθηκε στην ομαδοποίηση και την εφαρμογή cloud, καθώς και στο δίαυλο cloud ΝΑΤ. Η εφαρμογή υλοποιεί το παιχνίδι "Epics", μία από τις παραλλαγές του δημοφιλούς παιχνιδιού σαλόνι "Mafia".

Τι είναι τα «Έπη»;

Αυτή είναι μια παραλλαγή του παιχνιδιού "Mafia", γνωστό και ως "Λυκάνθρωπος". Βασίζεται σε ένα ομαδικό παιχνίδι στο οποίο οι συμμετέχοντες πρέπει να μάθουν βήμα προς βήμα ποιος είναι ποιος και να προσπαθήσουν να κερδίσουν. Δυστυχώς, όταν παίζετε στο διαδίκτυο, ένα τόσο σημαντικό στοιχείο του παιχνιδιού όπως η προσωπική αλληλεπίδραση εξαφανίζεται και οι κανόνες της κλασικής "Μαφίας" είναι αρκετά απλοί, επομένως, για ένα πιο μη γραμμικό και ενδιαφέρον παιχνίδι, συνήθως προστίθενται άλλοι χαρακτήρες, αλλά γενικά τα κύρια χαρακτηριστικά της αρχικής «Μαφίας» διατηρούνται, για παράδειγμα, η αλλαγή ημέρας και νύχτας, μετακινήσεις μόνο τη νύχτα, καθώς και συμμαχίες μεταξύ των συμμετεχόντων. Μια άλλη σημαντική διαφορά μεταξύ του παιχνιδιού στο διαδίκτυο είναι ότι ο κεντρικός υπολογιστής (γνωστός και ως Game Master, Storyteller) είναι συνήθως ένα πρόγραμμα υπολογιστή.

Περιγραφή παιχνιδιού

Οι κανόνες του παιχνιδιού που θέλω να εφαρμόσω είναι παρμένοι από ένα παλιό irc bot που είχα αποθηκεύσει στο προσωπικό μου αρχείο πριν από περίπου 10 χρόνια. Τα "Epics" έχουν μια ιστορία με την οποία ξεκινά κάθε παιχνίδι:

Στο μακρινό βασίλειο, στην τριακοστή πολιτεία, πέρα ​​από τις επτά θάλασσες, ζούσαν και ζούσαν πολλά χωριά, και σε αυτά Καλοί φίλοι и Ομορφα κορίτσια. Έσπειραν ψωμί και πήγαν στο γύρω δάσος να μαζέψουν μανιτάρια και μούρα... Κι αυτό συνεχίστηκε από αιώνα σε αιώνα, ώσπου μια φοβερή καταστροφή συγκλόνισε τη Γη και το κακό άρχισε να απλώνεται σε όλο τον κόσμο! Οι νύχτες έγιναν μεγάλες και κρύες, και μέσα στο σκοτάδι, αγενή και τρομερά πλάσματα περιφέρονταν στο δάσος και περιπλανήθηκαν στο χωριό. Έφτασε από κάπου Ορατό Gorynych και συνήθισε να κλέβει Κόκκινες κοπέλες και να αφαιρεί ό,τι πολύτιμο από τους χωρικούς. Επιβλαβές και άπληστοι Μπάμπα Γιάγκα, που πέταξε με γουδί από μακρινά δάση, μπέρδεψε τα μυαλά των κατοίκων, ακόμη και κάποιοι παράτησαν την τέχνη τους και πήγαν στο δάσος να ληστέψουν, σχηματίζοντας εκεί συμμορία. Οι κακοί συναντήθηκαν Τελώνιο, που ήξερε πώς να μετατραπεί σε δέντρα και θάμνους, άρχισε να παρακολουθεί ειρηνικούς χωρικούς και να υπηρετεί τους ληστές, μυρίζοντας αν οι Good Fellows έφτιαχναν κάτι για να απαλλάξουν τους οικισμούς τους από τα κακά πνεύματα. Καλοί φίλοι και όμορφες κοπέλες, κουρασμένες από τις επιδρομές των ληστών και φοβερούς θανάτους στα χέρια των τρομερών Τολμηρός Μονόφθαλμος, μάζεψε χρυσό και κάλεσε έναν διάσημο παλαιστή από μια γειτονική πόλη - Ιβάν Τσαρέβιτς, ο οποίος υποσχέθηκε να απαλλάξει το χωριό από τους ληστές. Σε ένα ξέφωτο στο δάσος, ο Ιβάν έσωσε από βέβαιο θάνατο Γκρι λυκος, που έπεσε στην παγίδα των Ληστών. Σε αντάλλαγμα, ο Λύκος υποσχέθηκε να ενημερώσει τον Τσαρέβιτς για διάφορα κακά πνεύματα του δάσους. Πέρασε ένας διάσημος θεραπευτής Βασιλίσα η Σοφή, και όταν είδε μπελάδες, έμεινε να φροντίζει τους κατοίκους που είχαν υποφέρει από τις επιθέσεις των ορμωδών. Πίσω από το δάσος εμφανίστηκε ένα μαύρο παλάτι, στο οποίο, σύμφωνα με φήμες, εγκαταστάθηκε Koschei ο Αθάνατος, κάθε βράδυ επισκεπτόταν τα χωριά και μάγευε τους Good Fellows και Red Maiden για να μην τολμήσουν να παρακούσουν τις εντολές του, θα έκαναν τα πάντα όπως έλεγε. Και εγκαταστάθηκε στο Άψυχο Δάσος Γάτα Baiyun, και όποιος τον συναντούσε αποκοιμήθηκε μετά από τα παραμύθια του ή πέθαινε από τα σιδερένια νύχια του.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Far Far Away βασίλειο

Όπως μπορείτε ήδη να δείτε, οι παίκτες χωρίζονται σε διάφορες ομάδες:

  • πολίτες (Good Fellows, Red Maidens, Ivan Tsarevich, Grey Wolf και Vasilisa the Wise)
  • ληστές (οι ίδιοι οι ληστές, καθώς και ο Baba Yaga και ο Leshy)
  • ανεξάρτητο (Snake-Gorynych, Dashing One-Eyed, Frog Princess, Koschey the Immortal, Cat-Bayun)

Ο στόχος του παιχνιδιού, όπως προαναφέρθηκε, είναι να παραμείνουμε ζωντανοί και να κερδίσουμε. Οι αντίπαλοι πρέπει να εγκαταλείψουν το παιχνίδι με τον ένα ή τον άλλο τρόπο, και οι ανεξάρτητοι πρέπει επίσης να παραμείνουν ζωντανοί μέχρι το τέλος του παιχνιδιού. Το παιχνίδι έχει χρυσό, ένα είδος νομίσματος παιχνιδιού που οι παίκτες κερδίζουν μόνο μέσα στο παιχνίδι. Οι νικητές λαμβάνουν χρυσό. Όσο περισσότερο χρυσό, τόσο υψηλότερη είναι η βαθμολογία του παίκτη.

Θα σταθώ λίγο πιο αναλυτικά στην περιγραφή των χαρακτήρων.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Καλός σύντροφος

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Red Maiden

Καλός σύντροφος и Red Maiden - ο πιο διαδεδομένος και κύριος ρόλος στο παιχνίδι. Πρόκειται για πολίτες που κοιμούνται τη νύχτα και εργάζονται τη μέρα. Τη νύχτα δέχονται επίθεση από έναν από τους ληστές, το φίδι Gorynych και άλλους ρόλους, και η Vasilisa the Wise τους θεραπεύει. Με κάποια μικρή πιθανότητα, ο Good Fellow ή το Red Maiden μπορούν να επιβιώσουν από την επίθεση χωρίς ζημιά (πιθανόν να χάσουν χρυσό στη διαδικασία), ωστόσο, όλοι θα αναγνωρίσουν το ψευδώνυμο του παίκτη την επόμενη μέρα μετά την επίθεση. Τη νύχτα, αυτοί οι παίκτες δεν κάνουν καμία κίνηση, αλλά αναλύουν την κατάσταση του παιχνιδιού με βάση τα μηνύματα στη συνομιλία του παιχνιδιού. Κατά τη διάρκεια της ημέρας, αυτοί οι παίκτες αποφασίζουν ψηφίζοντας ποιος από αυτούς δεν είναι ο Good Fellow ή το Red Maiden. Ο παίκτης που ψηφίστηκε από την πλειοψηφία των άλλων παικτών φεύγει από το παιχνίδι, οι υπόλοιποι παίκτες λαμβάνουν ή χάνουν χρυσό. Εάν οι παίκτες δεν επιλέξουν κανέναν με πλειοψηφία, κανένας παίκτης δεν θα εκτελεστεί.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Ιβάν Τσαρέβιτς

Ιβάν Τσαρέβιτς - αρχικά ανώνυμος υπερασπιστής αμάχων. Τη νύχτα ελέγχει τους ρόλους άλλων παικτών, αφού γνωρίζει μόνο έναν από τους συμμάχους του - τον Γκρίζο Λύκο. Με την άμεση συμμετοχή του Γκρίζου Λύκου (που μπορεί να τσεκάρει και τους ρόλους άλλων παικτών), ο Ιβάν Τσαρέβιτς, αντί να τσεκάρει, μπορεί να σκοτώσει έναν άλλο χαρακτήρα τη νύχτα. Εάν, ως αποτέλεσμα του ελέγχου, ο Ivan Tsarevich δει τον ρόλο ενός Good Fellow ή μιας Red Maiden σε έναν παίκτη, τότε μπορεί να τους καλέσει στη θέση του και να τους συστήσει τον Grey Wolf και άλλους Good Fellows και Red Maiden. Ο Ιβάν μπορεί να παρεμβληθεί από την Πριγκίπισσα Βάτραχος, η οποία μπορεί να τον αποπλανήσει τη νύχτα, χωρίς να αποκαλύπτει τον ρόλο του σε άλλους παίκτες κατά τη διάρκεια της ημέρας. Εάν ο ίδιος ο Ιβάν ανακαλύψει την Πριγκίπισσα Βάτραχος, μπορεί να την προσκαλέσει να συμμετάσχει στους πολίτες, αλλά αν η Πριγκίπισσα αρνηθεί, πεθαίνει στα χέρια του Ιβάν. Το Serpent-Gorynych μπορεί επίσης να παρέμβει στις επιταγές του Ivan-Tsarevich, αλλά, σε αντίθεση με το Frog Princess, κατά τη διάρκεια της ημέρας θα πει στους άλλους παίκτες ποιος από αυτούς είναι ο Ivan-Tsarevich. Κατά τη διάρκεια της ημέρας, ο Ivan Tsarevich δεν διαφέρει από τους άλλους Good Fellows.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Γκρι λυκος

Γκρι λυκος - βοηθός του Ivan Tsarevich, του οποίου η έντονη όσφρηση βοηθά τον Ivan να βρει άλλους Good Fellows και Red Maidens. Ο Γκρίζος Λύκος λέει σε αυτούς τους παίκτες ποιος είναι ο Ιβάν ο Τσαρέβιτς και επίσης ενημερώνει για άλλους παίκτες με τους ρόλους των Good Fellows και των Red Maidens. Αν ο Λύκος ανακαλύψει έναν ληστή ή άλλον εχθρό, ενημερώνει αμέσως τον Ιβάν Τσαρέβιτς για να αναλάβει δράση το επόμενο βράδυ. Εάν ο Λύκος δεχθεί επίθεση από την Πριγκίπισσα Βάτραχος, μετατρέπεται σε ένα συνηθισμένο καλό φίλο και δεν μπορεί να ελέγξει κανέναν και η πριγκίπισσα δεν θα ξέρει ότι ήταν στην πραγματικότητα ο Γκρίζος Λύκος, αφού ο Λύκος δεν κοιμάται τη νύχτα. Ωστόσο, ο ίδιος ο Λύκος θα μάθει κατά τη διάρκεια της ημέρας ποιος από τους παίκτες είναι η Πριγκίπισσα του Βάτραχου και μπορεί να προσπαθήσει να πείσει τους υπόλοιπους Good Fellows και Red Maiden, τους οποίους έφερε στον Ivan Tsarevich, να ψηφίσουν για την εκτέλεση του Frog. Πριγκίπισσα. Επίσης, το επόμενο βράδυ, μπορεί να προσπαθήσει ανώνυμα να πείσει την Πριγκίπισσα Βάτραχος στο πλευρό των πολιτών, ώστε να μην αγγίξει κανέναν από αυτούς. Ο Λύκος μπορεί να θυσιαστεί τη νύχτα για να σώσει τον Ιβάν Τσαρέβιτς ή τη Βασιλίσα τη Σοφή, αν υποθέσει ότι θα πέσουν ξαφνικά στην επίθεση ληστών ή θα έχουν ζομβοποιηθεί από τον Koshchei (ο Λύκος έχει μια έμφυτη ανοσία στη γοητεία του Koshchei), αλλά Ο Wolf, μετά από αυτοθυσία, αποχωρεί από το παιχνίδι.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Βασιλίσα η Σοφή

Βασιλίσα η Σοφή - παίζει για πολίτες, αλλά δεν ξέρουν γι 'αυτήν, αφού η Βασιλίσα είναι πολύ μέτρια. Επίσης η Βασιλίσα η Σοφή όταν θεραπεύει δεν κάνει ερωτήσεις και σαν καλός γιατρός περιθάλπει τους πάντες. Αλλά αν η Koschey, η Likho ή η Leshy πιουν το φάρμακό της, δεν θα ζήσουν περισσότερο από μια μέρα, αφού η Vasilisa θεραπεύει μόνο ανθρώπους. Το φάρμακο της Βασιλίσας του Σοφού επίσης δεν θα βοηθήσει το φίδι Gorynych ή το Cat-Bayun, αλλά δεν θα φέρουν ούτε κακό. Επίσης, το Kot-Bayun δεν αγγίζει τη Βασιλίσα τη νύχτα, αφού η Βασιλίσα δεν πηγαίνει στο Άψυχο Δάσος για να αγοράσει φαρμακευτικά βότανα. Επιπλέον, τα γυναικεία γούρια της Πριγκίπισσας Βάτραχου δεν λειτουργούν στη Βασιλίσα. Αν προσπαθούσαν να σκοτώσουν τον ασθενή της δύο φορές, η ιατρική θα ήταν ανίσχυρη. Η Βασιλίσα δεν θα σας σώσει από μαγικές επιθέσεις, για παράδειγμα από την κατάρα του Dashing. Κατά τη διάρκεια της ημέρας, η Βασιλίσα συμπεριφέρεται σαν μια Red Maiden και μόνο ένα φευγαλέο, ελαφρώς λυπημένο βλέμμα μπορεί να υπονοήσει λίγο ότι είναι η καλύτερη θεραπευτής στο Μακρινό Βασίλειο.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Κατεργάρης

Ληστές, σε αντίθεση με όλους τους προηγούμενους ρόλους, γνωρίζονται μεταξύ τους, αφού ζουν στην ίδια φωλιά, και γνωρίζουν επίσης τον Leshy και τον Baba Yaga, ώστε να μπορούν να παίξουν συναυλιακά από την πρώτη κίνηση. Αλλά μόνο ο Αρχηγός της συμμορίας εκτελεί ενέργειες τη νύχτα και δεν ψηφίζει τη μέρα, ενώ οι υπόλοιποι Ληστές προσποιούνται επιμελώς τους Good Fellows και Red Maiden. Εάν ο Ηγέτης αποχωρήσει από το παιχνίδι για οποιονδήποτε λόγο, ένας από τους υπόλοιπους Rogues παίρνει αμέσως τη θέση του. Πρώτα απ 'όλα, οι Robbers προσπαθούν να απενεργοποιήσουν τον Ivan the Tsarevich μέχρι να συγκεντρώσει αρκετές δυνάμεις από Good Fellows και Red Maiden για να αντιμετωπίσει ενεργά τους Robbers κατά τη διάρκεια της ημέρας.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Τελώνιο

Τελώνιο τη νύχτα κατασκοπεύει τους Ληστές, ενημερώνοντάς τους για τους ρόλους που βρέθηκαν στη Φωλιά τους, αλλά τη μέρα δεν ψηφίζει, αφού δεν μένει στο χωριό. Ωστόσο, άλλοι παίκτες μπορούν να ψηφίσουν τον Leshy και έτσι να τον εκτελέσουν. Δεδομένου ότι το Leshy προέρχεται από τους βάλτους, δεν μπορεί να παρασυρθεί από την Πριγκίπισσα Βάτραχος, και αν προσπαθήσει, το Leshy θα σημαδέψει το σπίτι της και οι χωρικοί θα μάθουν ποια είναι πραγματικά. Ο Leshem δεν πρέπει να φοβάται το ξόρκι του Koshchei, αλλά η Vasilisa μπορεί να τον θεραπεύσει μέχρι θανάτου. Εάν ο Kot-Bayun προσπαθήσει να επιτεθεί στον Leshy, κινδυνεύει να χάσει τα σιδερένια νύχια του και τότε ο Kot θα πρέπει να αποκοιμίσει τα θύματα μόνο με το γουργούρισμα του.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Μπάμπα Γιάγκα

Μπάμπα Γιάγκα Δουλεύει επίσης μαζί με τους Robbers και κάνει ξόρκια τη νύχτα: μπορεί είτε να στείλει ασθένεια σε άλλους παίκτες είτε να προστατεύσει έναν από τους συμμάχους του από επίθεση. Η μαγεία της είναι ακόμα πιο δυνατή από την κατάρα του Likh. Κατά τη διάρκεια της ημέρας, η Baba Yaga είναι επίσης ενεργή: όποιος βρίσκεται υπό την προστασία της δεν μπορεί να εκτελεστεί ούτε με πλειοψηφία. Ωστόσο, η παροχή μαγικών ριζών για προστασία κατά τη διάρκεια της ημέρας είναι περιορισμένη, επομένως η Baba Yaga δεν μπορεί να προστατεύσει κανέναν, συμπεριλαμβανομένης της ίδιας, περισσότερες από τρεις φορές ανά παιχνίδι. Κατά τη διάρκεια της ημέρας, ο Baba Yaga προσποιείται ότι είναι μια συνηθισμένη Red Maiden και ψηφίζει με όλους τους άλλους.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Δράκων

Δράκων τη νύχτα πετάει πάνω από χωριά, δάση και βάλτους και επιδίδεται σε ληστείες, αποκαλύπτοντας τον ρόλο του ληστού τη μέρα. Κατά τη διάρκεια της ημέρας, το Φίδι κοιμάται, επομένως δεν ψηφίζει, αλλά μπορεί να εκτελεστεί κατά πλειοψηφία. Το φίδι είναι πολύ επικίνδυνο για όλους, ειδικά για τους Ληστές και τον Ιβάν Τσαρέβιτς. Το φίδι δεν νοιάζεται ποιον ληστεύει, αλλά αν τον ανακαλύψει ο Λύκος ή ο Λέσυ, μπορεί να γίνει ένας πολύτιμος σύμμαχος. Εάν σκοτώσετε το Φίδι τη νύχτα, μπορείτε, με κάποια πιθανότητα, να λάβετε ένα πολύτιμο αντικείμενο - το Snake Skin, το οποίο θα προστατεύσει τον ιδιοκτήτη του μια φορά από σωματική επίθεση.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
περίφημα μονόφθαλμος

περίφημα μονόφθαλμος τη νύχτα σκοτώνει όποιον μπει στο δρόμο του και όποιον δεν μπορεί να σκοτώσει (Leshy, Kota-Bayun ή το φίδι Gorynych) βρίζει, έτσι ώστε όποιος προσπαθήσει να επικοινωνήσει με τον καταραμένο το ίδιο βράδυ θα πεθάνει τη μέρα . Ο ίδιος ο καταραμένος πεθαίνει και σε αυτή την περίπτωση, μόνο που δεν πεθαίνει ο Kot-Bayun, ο οποίος απλά πηγαίνει για ύπνο για να πάρει δύναμη, παρακάμπτοντας τη σειρά του το επόμενο βράδυ. Μόνο ο Baba Yaga μπορεί να σώσει τον Likh από την κατάρα. Η κατάρα δεν επηρεάζει αυτόν που νίκησε το Cat-Bayun: αυτός, όπως και ο Cat, απλά πηγαίνει για ύπνο και παραλείπει μια στροφή.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Πριγκίπισσα Βάτραχος

Πριγκίπισσα Βάτραχος δεν μπορεί να κερδίσει το παιχνίδι, αλλά μπορεί να κερδίσει πολλά χρήματα αποπλανώντας άλλους παίκτες τη νύχτα. Ο δελεασμένος χάνει τη σειρά του. Ο βάτραχος δεν μπορεί να αποπλανήσει τη Βασιλίσα τη Σοφή και θα πρέπει επίσης να αποφύγει τον Λέσι, ο οποίος θα την προδώσει σε όλους την επόμενη μέρα. Εάν ο Ιβάν ο Τσαρέβιτς ή ο Αρχηγός των Ληστών βρουν τον Βάτραχο, μπορούν να καλέσουν πολίτες ή τους Ληστές στο πλευρό τους, ενώ ο Ιβάν δεν θα δεχτεί την άρνηση του Βάτραχου, αλλά ο Ηγέτης δεν είναι τόσο επιλεκτικός. Αλλά η πριγκίπισσα είναι αρκετά πονηρή, μπορεί να γίνει διπλός πράκτορας, γιατί παρά το γεγονός ότι δεν μπορεί να κερδίσει μόνη της, αυτή είναι μια εξαιρετική ευκαιρία να κερδίσει χρυσό, επειδή οι πιθανότητες επιβίωσης μέχρι το τέλος του παιχνιδιού αυξάνονται πολύ! Κατά τη διάρκεια της ημέρας, η Πριγκίπισσα Βάτραχος προσποιείται ότι είναι η Κόκκινη Κόρη και ψηφίζει με όλους μαζί.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Koschei ο Αθάνατος

Koschei ο Αθάνατος ζει στο κάστρο του. Τη νύχτα, περπατά στα γύρω χωριά και ζομβοποιεί Good Fellows και Red Maiden, που έρχονται στην υπηρεσία του και εκτελούν αδιαμφισβήτητα όλες τις εντολές. Αρνούμενος να εκτελέσει μια εντολή, για παράδειγμα, να ψηφίσει κατά τη διάρκεια της ημέρας διαφορετικά από αυτό που είπε ο Koshchei ή να γράψει μηνύματα στη συνομιλία κατά τη διάρκεια της ημέρας εάν ο Koshchei το απαγόρευε, ο Υπηρέτης του Koshchei πεθαίνει. Έτσι, ο Koschey είναι σε θέση να επηρεάσει τα αποτελέσματα της ψηφοφορίας κατά τη διάρκεια της ημέρας, παρόλο που ο ίδιος δεν ψηφίζει. Εάν ο Koshchei σκοτωθεί, όλα τα θύματά του επίσης πεθαίνουν. Η Βασιλίσα μπορεί να θεραπεύσει τον υπηρέτη Koshchei, ο οποίος στη συνέχεια επιστρέφει στον αρχικό του ρόλο. Το Snake-Gorynych και ο Wolf έχουν μια έμφυτη ανοσία στη ζομβοποίηση, οπότε ο Koschey, όσο κι αν θέλει, δεν μπορεί να τους μετατρέψει στην υπηρεσία του. Ο Λύκος μπορεί επίσης να βοηθήσει τον Ιβάν ή τη Βασιλίσα να ξεφύγουν από τα προβλήματα θυσιάζοντας τον εαυτό του. Το Saved by the Wolf αποκτά την ανοσία του Wolf στη ζομβοποίηση.

«Νέα Έπη». Για προγραμματιστές, επιχειρηματίες και περίεργους ανθρώπους
Γάτα Baiyun

Γάτα Baiyun ζει στο δάσος, κυνηγάει τη νύχτα. Κατά τη διάρκεια της ημέρας κοιμάται στην κοιλότητα του, οπότε δεν συμμετέχει στην ψηφοφορία. Ωστόσο, κατά τη διάρκεια της ημέρας μπορεί να εκτελεστεί κατά πλειοψηφία. Η γάτα μπορεί να επιτεθεί με δύο τρόπους: γουργουρίζει - και μετά το θύμα της αποκοιμιέται και δεν μπορεί να περπατήσει τη νύχτα και δεν μπορεί να ψηφίσει την επόμενη μέρα - ή να σκοτώσει με σιδερένια νύχια. Η επίθεση με νύχια δεν λειτουργεί στο Snake-Gorynych και μετά την επίθεση στον Leshy, η Γάτα μπορεί να μείνει καθόλου χωρίς νύχια! Το Dashing δεν μπορεί να καταραστεί τη Γάτα, η οποία μετά την κατάρα θα κοιμηθεί απλώς για ένα βράδυ. Αν κάποιος καταφέρει να νικήσει το Kota-Bayun, θα θεραπευθεί από οποιαδήποτε ασθένεια ή ασθένεια, συμπεριλαμβανομένης της κατάρας του Likh. Αυτή η ικανότητα Cat παραμένει στον παίκτη μέχρι το τέλος του παιχνιδιού. Οι υπηρέτες του Koshchei δεν μπορούν να ψηφίσουν για τη Γάτα κατά τη διάρκεια της ημέρας, αλλά μπορούν έμμεσα να ανακαλύψουν ποια είναι η Γάτα χωρίς να ενημερώσουν τον Koshchei σχετικά. Ο Kot-Bayun δεν συνάπτει συμμαχίες με τον Ivan ή τους Robbers, επομένως είναι ο πρωταρχικός στόχος για τον Kot.

Τεχνολογίες που χρησιμοποιούνται

Για να γράψω το παιχνίδι, επέλεξα την τεχνολογία υπολογιστών χωρίς διακομιστή που βασίζεται στο OpenFaaS, καθώς είναι αρκετά απλή για την οργάνωση του παιχνιδιού και ταυτόχρονα αρκετά προηγμένη ώστε να γράφει περίπλοκους κανόνες παιχνιδιού χωρίς περιττές επιπλοκές. Θα χρησιμοποιήσω επίσης ένα σύμπλεγμα Kubernetes, καθώς αυτή η μέθοδος ανάπτυξης εφαρμογών καθιστά αρκετά απλή και αξιόπιστη τη γρήγορη ανάπτυξη και τη δυνατότητα εύκολης κλίμακας. Για να δημιουργήσετε τη λογική του παιχνιδιού, μπορείτε να τα βγάλετε πέρα ​​μόνο με το OpenFaaS, αλλά θα προσπαθήσω επίσης να κάνω το Storyteller ως ξεχωριστό δοχείο για να συγκρίνω την πολυπλοκότητα της υλοποίησης. Ως κύρια γλώσσα προγραμματισμού για μικροϋπηρεσίες και λειτουργίες επέλεξα Go, μιας και το μελετάω πολύ καιρό στον ελεύθερο χρόνο μου για να αντικαταστήσω την Perl και το js θα χρησιμοποιηθεί με βάση ένα συγκεκριμένο πλαίσιο αλληλεπίδρασης χρήστη με μικροϋπηρεσίες και λειτουργίες. Για την τελική απόφαση θα σας πω στο αντίστοιχο άρθρο της σειράς. Για να επικοινωνώ τις λειτουργίες μεταξύ τους, επέλεξα το NATS.io, γιατί το είχα ήδη συναντήσει και έχει αρκετά εύκολη ενσωμάτωση στο Kubernetes.

ανακοίνωση

  • Εισαγωγή
  • Ρύθμιση του περιβάλλοντος ανάπτυξης, ανάλυση της εργασίας σε λειτουργίες
  • Εργασία backend
  • Εργασία στο frontend
  • Ρύθμιση CICD, οργάνωση δοκιμών
  • Ξεκινήστε μια δοκιμαστική περίοδο παιχνιδιού
  • Αποτελέσματα της

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο