Une aventure textuelle, c’est quoi ?
Yo, prêt à coder un projet épique ? Dans les tutos précédents, t’as maîtrisé les erreurs (Tuto 17), les modules (Tuto 16), les fichiers (Tuto 15), les dictionnaires (Tuto 13), et bien plus. Maintenant, on va créer une aventure textuelle, un jeu où le joueur fait des choix pour progresser dans une histoire de hack. Ce jeu a une âme de saga qui va captiver tes potes ! 🗡️
Pour un hacker éthique, c’est comme simuler des décisions dans une mission de hack : choisir une action peut réussir ou échouer. Mais on reste responsable : on code pour s’amuser et apprendre, pas pour causer des soucis !
Astuce Éthique : Ton aventure est comme une quête NarcoShield. Fais-la fun et respectueuse !
Comment fonctionne l’aventure ?
Dans ce jeu, le joueur est un hacker éthique qui doit infiltrer un serveur. On utilise un dictionnaire pour stocker les scènes (lieux, choix, résultats) et une boucle pour naviguer. Chaque choix mène à une nouvelle scène ou à une fin. On gère les erreurs pour éviter les plantages, et on ajoute du suspense avec le module time. C’est comme une mission cyber où chaque décision compte !
Analogie : L’aventure, c’est une quête cyber où tu explores des salles (scènes). À chaque salle, tu choisis une porte (choix), et ton chemin change. Les boucliers (try/except) et outils (time) te guident sans tomber dans des pièges !
Hacking tie-in : Un hacker éthique utilise des structures comme des dictionnaires pour organiser des scénarios de test, comme simuler des chemins dans un scan Nmap.
De quoi t’as besoin ?
T’as tout prêt si t’as suivi les tutos précédents :
- Un ordinateur : Avec Python installé (python.org).
- IDLE : Ton atelier pour coder et tester.
- De l’imagination : Prêt à créer une histoire que tes potes vont adorer !
Si Python ou IDLE coince, check Tuto 1 pour l’installation. Demande à un adulte si besoin !
Astuce : Ouvre IDLE et prépare-toi à lancer une quête cyber !
Créer ton aventure textuelle, étape par étape
Suis ces étapes pour coder un jeu où le joueur navigue dans une mission de hack. C’est comme guider une aventure cyber interactive !
-
Ouvre IDLE
Lance IDLE et clique sur Fichier > Nouveau Fichier pour ouvrir une fenĂŞtre vide, ton nouveau monde cyber.
Astuce : Vérifie que t’es dans une nouvelle fenêtre, pas l’interpréteur “>>>”.
-
Écris ton code
Tape ce code dans la fenêtre :import time def show_scene(scene, name): print("\n" + "=" * 40) print(f"{name}, tu es ici : {scene['description']}") time.sleep(1) print("Choix possibles :") for i, choice in enumerate(scene["choices"], 1): print(f"{i}. {choice['text']}") return len(scene["choices"]) scenes = { "start": { "description": "Tu es devant un serveur sécurisé. Que fais-tu ?", "choices": [ {"text": "Scanner les ports", "next": "scan"}, {"text": "Tenter un mot de passe", "next": "password"} ] }, "scan": { "description": "Le scan révèle un port 80 ouvert. Et maintenant ?", "choices": [ {"text": "Exploiter le port", "next": "win"}, {"text": "Revenir en arrière", "next": "start"} ] }, "password": { "description": "Mauvais mot de passe ! Alarme déclenchée !", "choices": [] }, "win": { "description": "Succès ! Tu as infiltré le serveur éthiquement !", "choices": [] } } name = input("C’est quoi ton nom, hacker ? ") print(f"Bienvenue, {name} ! Ta mission : infiltrer un serveur.") current_scene = "start" while current_scene: try: num_choices = show_scene(scenes[current_scene], name) if num_choices == 0: print("Fin de l’aventure !") break choice = int(input("Ton choix (1-{}) ? ".format(num_choices))) if choice < 1 or choice > num_choices: print("Choix invalide, réessaie !") time.sleep(1) continue current_scene = scenes[current_scene]["choices"][choice - 1]["next"] except ValueError: print("Entre un numéro valide !") time.sleep(1)Explication :import time(Tuto 16) ajoute des pauses.input()(Tuto 5) demande un nom. Un dictionnaire (Tuto 13)scenesstocke les scènes et choix. Une fonctionshow_scene(Tuto 11) affiche la scène et les choix. Une bouclewhile(Tuto 8) gère la navigation, avectry/except(Tuto 17) pour les erreurs de saisie etif(Tuto 6) pour valider les choix.
Astuce : Respecte l’indentation (4 espaces) après
def,while,try,if, etfor! -
Sauvegarde ton programme
Clique sur Fichier > Enregistrer. Nomme-le “aventure.py” et sauve-le dans un dossier (ex. : “Mes Documents”). Note l’emplacement !
Astuce : Choisis un nom simple sans espaces (ex. : “aventure.py”).
-
Lance ton programme
Clique sur Exécuter > Exécuter le Module (ou F5). Une fenêtre s’ouvrira, démarrant l’aventure. Essaye (ex. : “Jonathan”, choix “1”, “1”):C’est quoi ton nom, hacker ? Jonathan Bienvenue, Jonathan ! Ta mission : infiltrer un serveur. ======================================== Jonathan, tu es ici : Tu es devant un serveur sécurisé. Que fais-tu ? Choix possibles : 1. Scanner les ports 2. Tenter un mot de passe Ton choix (1-2) ? 1 ======================================== Jonathan, tu es ici : Le scan révèle un port 80 ouvert. Et maintenant ? Choix possibles : 1. Exploiter le port 2. Revenir en arrière Ton choix (1-2) ? 1 ======================================== Jonathan, tu es ici : Succès ! Tu as infiltré le serveur éthiquement ! Fin de l’aventure !Teste d’autres chemins (ex. : choix “2” pour perdre) ou une saisie invalide (ex. : “abc”). Si ça marche, t’as codé une quête cyber ! Si non, passe à “Si ça coince”.
Astuce : Explore tous les chemins pour voir les fins différentes !
-
Joue avec ton code
Ajoute une scène (ex. :"fail": {"description": "Déconnexion !", "choices": []}). Change les descriptions ou choix (ex. :"Tenter un exploit"). Modifie les pauses (ex. :time.sleep(0.5)). Ajoute une condition (ex. : vérifier sinameest vide). Relance (F5) pour tester. Amuse-toi !
Astuce : Partage ton jeu avec un pote pour voir ses choix !
Pourquoi c’est important pour le hacking ?
Ce projet combine tout ce que t’as appris, te préparant à coder des outils cyber :
- Structurer : Les dictionnaires organisent des scénarios, comme des plans de hack.
- Interagir : Les boucles et entrées créent une expérience, comme un script interactif.
- Protéger : La gestion des erreurs rend le jeu robuste, comme un outil de scan fiable.
Hacking tie-in : Un hacker éthique utilise ces compétences pour coder des simulations, comme tester des scénarios de sécurité avec Nmap.
Si ça coince : que faire ?
Pas de panique, nomade, une aventure peut avoir des bugs ! Voici des astuces :
- Erreur “KeyError” ? : Vérifie que les clés de
scenes(ex. :"start","scan") existent et quenextmène à une scène valide. - Erreur “ValueError” ? : Assure-toi que
try/exceptgère bien les entrées non numériques pourint(input()). - Boucle infinie ? : Vérifie que
current_scenechange (vianext) ou que la boucle s’arrête (breaksi pas de choix). - Perdu ? : Relis lentement ou pose une question à Bot-Y. Il est ton guide cyber !
🎯 Mission 18 : Lance une quête cyber !
Suis les étapes pour créer ton aventure textuelle. Ouvre un fichier texte (Bloc-notes ou autre, pas Python). Crée un fichier nommé “code18.txt” dans le dossier “CyberForge” (dans toutpartdela/programmation/, créé dans Tuto 1). Écris dedans : “J’ai codé un jeu qui demande [tes questions] et affiche [un exemple de chemin].” Exemple : “J’ai codé un jeu qui demande nom et choix et affiche Jonathan, tu es ici : Le scan révèle un port 80 ouvert... Succès !” C’est ton dix-huitième trophée de nomade !
Astuce Éthique : Crée une aventure fun et motivante pour tous !
PrĂŞt pour la suite ?
Bravo, t’es un créateur de quêtes cyber ! T’as codé un jeu interactif qui combine tout ce que t’as appris. Dans le Tuto 19, on va explorer les listes en compréhension pour coder plus vite. Ouvre IDLE, jeune nomade, et continue à coder comme un hacker éthique ! 💖