Coder Social home page Coder Social logo

slay-and-conquer's Introduction

Ꮪⳑⲁⲩ 🙵 Ⲥⲟⲛჹⳙⲉⲅ

Slay & Conquer est un jeu de stratégie tour par tour, inspiré de Slay et Civilization.

Pilotes de votre carte graphique

Avant tout, il n'est pas nécessaire d'avoir une carte graphique dédiée (nvidia, amd radeon...) pour lancer Slay & Conquer: le plupart des processeurs récent possèdent une carte graphique integré qui prend en charge vulkan.

Si vous possedez une carte nvidia, il faudra utiliser le pilote propriétaire, car le pilote nouveau ne prend pour l'instant pas en charge vulkan. Référez vous au liens suivants pour installer les drivers nécessaires:

(Article décrivant l'installation de vulkan sur d'autre distributions)

Compilation du projet

Pour compiler, le projet nécessite deux dépendances: le SDK Vulkan, et Qt 5.12.1, avec la prise en charge Vulkan activé. Nous avons crée un script qui permet d'installer automatiquement une version portable de ces deux dépendances (donc installé dans le dossier du projet, pas sur votre système). Nous expliquerons la compilation uniquement via ce script. Si vous souhaitez compiler vous même le projet, referez vous à la documentation spécifique à votre distribution de linux. Le script ne fonctionnera que sur des architectures x86-64bits.

Compilation et lancement du projet

Lancez un terminal à la racine du projet puis lancez:

chmod +x setup_compile_et_lance.sh
./setup_compile_et_lance.sh

Ce script va s'assurer que vous avez toutes les dépendances requises.

Il téléchargera qt5.zip, une archive contenant la version spécifique de Qt nécessaire (Qt 5.12.2, avec la prise en charge Vulkan activé), le SDK Vulkan, ainsi que libicu:63 et libdouble-conversion:3.

La compilation se lancera, et si il n'y a pas d'erreur le script vous proposera de lancer le jeu.

Fichier de configuration

Le chemin du fichier de configuration est:$HOME/.config/Slay3/SlayAndConquer.conf

Il permet de customiser:

  • Les touches pour se déplacer
  • La résolution du jeu
  • La caméra du jeu

En cas de problèmes

Vérifiez d'abord que vulkan fonctionne correctement en lançant vulkaninfo (Si vulkaninfo affiche un erreur, c'est qu'il y a un problème avec votre installation de vulkan).

Il est également possible que la version de qt5 installé par le script de compilation ne soit pas à jour; Supprimez le dossier qt5 situé à la racine du projet, faites make distclean pour nettoyer tout les fichiers compilés, et relancez setup_compile_et_lance.sh afin de re-télécharger et recompiler le projet.

Mécanique du jeu:

Condition de victoire :

Domination (c’est-à-dire élimination de toute les capitales)

Carte :

La carte est généré de manière procédurale, et est de taille finie. Les villes sont également générés aléatoirement (mais de manière à ne pas donner d'avantage).

Les joueurs :

Plusieurs joueurs tour-par-tour, et des I.A.

Tour :

Début de tour : les différentes villes génèrent un certain nombre d'or lié en fonction de leur niveau. Une partie de cet or est consommé par les unités présentes. Si il n'y a pas assez d'or, une ou plusieurs (en fonction de l'ampleur du deficit) unités au hasard désertent.

Or :

La monnaie centrale du jeu. Sert à:

  • Acheter des unités
  • Payer les unités (à chaque tour)

Unités :

Caractéristiques:

  • Point de vie (si l'unité ne bouge pas et n'attaque pas pendant un tour, elle regagne de la vie).
  • Point d’attaque
  • Point de défense
  • Portée d'attaque
  • Mobilité (portée de mouvement)
  • Hauteur de mouvement: la hauteur qu'une unité peut monter (par exemple les cavaliers ne peuvent pas grimper une montagne comme le ferai un soldat à pieds)

Case :

Hexagonale; Peu contenir:

  • Une ville
  • Une unité

Ville :

Donne une certaine quantité d'or (proportionel à la rentabilité de la ville) à chaque début tour au joueur qui la possède. Si un autre joueur place une unité sur une ville et y reste pendant le tour du joueur qui possède la ville, alors la ville est conquise; la ville devienne la propriété du joueur qui l'a prise.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.