[Status: Under Construction / Υπό Ανάπτυξη] Σημείωση: Το παρόν λογισμικό βρίσκεται σε ενεργή φάση ανάπτυξης. Ορισμένες λειτουργίες ενδέχεται να μην έχουν ολοκληρωθεί ή να υπόκεινται σε αλλαγές.
Το Ritual Stone είναι ένα text-based Role-Playing Game, ανεπτυγμένο εξ ολοκλήρου σε Python. Το λογισμικό βασίζεται σε αρχές Αντικειμενοστρεφούς Προγραμματισμού (Object-Oriented Programming - OOP) για τη δομημένη διαχείριση της κατάστασης του παιχνιδιού, των οντοτήτων και της λογικής των μαχών.
-
Αρχιτεκτονική Κλάσεων & Κληρονομικότητα (Inheritance): Αξιοποιείται η χρήση βασικών κλάσεων (Base Classes), όπως η κλάση
Scene, από την οποία κληρονομούν οι επιμέρους τοποθεσίες (π.χ.Village,Forest). Αντίστοιχα, οι κλάσεις των παικτών (Warrior,Mage,Rogue) και των εχθρών (Goblin,Orc,Troll) ενθυλακώνουν (encapsulate) τα μοναδικά στατιστικά και τις μεθόδους τους. -
Διαχείριση Σκηνών (Scene Management / Finite State Machine): Η ροή του παιχνιδιού (game loop) ελέγχεται μέσω ενός λεξικού αντιστοίχισης (
scenes_map), το οποίο λειτουργεί ως μια απλή μηχανή πεπερασμένων καταστάσεων (Finite State Machine). Η μετάβαση από τη μία σκηνή στην άλλη πραγματοποιείται επιστρέφοντας το όνομα του επόμενου κόμβου κατάστασης (state node). -
Σύστημα Μάχης (Turn-based Combat Loop): Ο βρόχος της μάχης διαχειρίζεται μέσω της ανεξάρτητης κλάσης
Combat. Ελέγχει συνθήκες τερματισμού (HP <= 0) και υπολογίζει δυναμικά τη ζημιά εφαρμόζοντας ψευδοτυχαίες αποκλίσεις (pseudorandom modifiers μέσω τουrandommodule) στις βασικές μεταβλητές επίθεσης και άμυνας των αντικειμένων (objects). Επίσης, χρησιμοποιείται μορφοποίηση αλφαριθμητικών (f-string alignment) για την καθαρή εμφάνιση των στατιστικών στο τερματικό. -
Διαχείριση Πόρων (Resource Management): Οι παίκτες μπορούν να τροποποιήσουν δυναμικά τις τιμές των ιδιοτήτων τους (attributes) κατά τη διάρκεια του χρόνου εκτέλεσης (runtime) μέσω του συστήματος καταστήματος (
Shopclass), υλοποιώντας μόνιμες αυξήσεις στα στατιστικά τους (state mutation).
Για την εκτέλεση του προγράμματος απαιτείται περιβάλλον Python (έκδοση 3.x). Δεν απαιτούνται εξωτερικές βιβλιοθήκες.
1. Λήψη του κώδικα: Μέσω του τερματικού, εκτελέστε την παρακάτω εντολή για να κλωνοποιήσετε το αποθετήριο:
git clone https://github.com/greybea/RPG_Game.git2. Εκκίνηση παιχνιδιού: Μεταβείτε στον φάκελο του project και εκτελέστε το κεντρικό αρχείο ελέγχου (entry point):
cd RPG_Game
python main.py