From e8fa320a1b36c7d6d69d312c9fb8034e21cdeb67 Mon Sep 17 00:00:00 2001 From: erictey Date: Mon, 6 Oct 2025 17:22:33 +1300 Subject: [PATCH 1/9] Added practical challenge - Hangman --- .../en/guides/python/turtle/5-hangman/1.mdx | 310 ++++++++++++++++++ .../guides/python/turtle/5-hangman/index.mdx | 37 +++ 2 files changed, 347 insertions(+) create mode 100644 src/content/docs/en/guides/python/turtle/5-hangman/1.mdx create mode 100644 src/content/docs/en/guides/python/turtle/5-hangman/index.mdx diff --git a/src/content/docs/en/guides/python/turtle/5-hangman/1.mdx b/src/content/docs/en/guides/python/turtle/5-hangman/1.mdx new file mode 100644 index 00000000..013b1b19 --- /dev/null +++ b/src/content/docs/en/guides/python/turtle/5-hangman/1.mdx @@ -0,0 +1,310 @@ +--- +type: tutorial +title: 'Making a Hangman Game' +description: |- + Tutorial: Creating a simple hangman game. +--- +import Checklist from '/src/components//Checklist.astro'; +import Box from '/src/components/tutorial/Box.astro'; + + +### Let's start by importing our required modules. + +```python +import turtle +from turtle import done +import random +``` + +We will be using turtle to draw our hangman, and programming a game logic will interact with our turtle. + +### Defining our Variables + +*"The computer will randomly pick a word from a list"* Heh, remember that? Told you the steps will come in handy! + +```python +word_list = ["ENTER", "SHOUT", "LOCOMOTIVE", "TECHNOLOGY", "TURTLE", "PROGRAMMING", "SECURITY", "DESIGN", + "ANIMATION", "HACKING", "ROCKET", "ENGINEER", "SCIENCE", "POKEMON", "FORTNITE", "BRAINROT", "SKIBIDI", "TOILET"] +secret_answer = random.choice(word_list) +wrong_tries = 0 +max_tries = 6 +``` +The code above defines a list of words that could possibly be chosen by the program to be the "secret answer". +We use python's built in random module to allow the program to choose a random word from the list above. + +`wrong_tries` and `max_tries` will help us in game logic later on. + +:::note[Reminder] +Lists start at 0. This will be important later! +::: + +``` python +guessed_input = ["_"] * len(secret_answer) +``` + +This piece of code will tell the program to print a number of "_" blank spaces to match the number of letters +in the chosen "secret answer". + + +### Setting up the "screen" and "pens" + +The turtle needs a "canvas" to draw on. I'm going to use white ink on black background because I think its easier on the eyes. +You can choose whatever color you like! Go wild! + +```python +screen = turtle.Screen() +screen.title("Eric's Hangman") +screen.setup(width=1920, height=1080) +screen.bgcolor("Black") + +# Settings for the "pen" +pen = turtle.Turtle() +pen.pensize(5) +pen.color("White") +pen.speed(0) # 0 is instant +``` +Now our turtle is armed with a pen and a canvas. Time to draw! + +### Drawing our gallow + +The gallow will be a fixed part of our program, and will not be changed by other parts of our program. + +Let's start by defining our function: + +```python +def draw_gallows(): + pen.penup() + pen.goto(0, 300) + pen.pendown() + pen.left(90) + pen.forward(200) + pen.left(90) + pen.forward(400) + pen.left(90) + pen.forward(900) + pen.left(90) + pen.forward(800) + +draw_gallows() +``` +We can try removing `pen.penup()` or `pen.pendown()` to see how the turtle draws strange lines between parts. +It's a great de-bugging introduction. + +### Drawing our unfortunate victim of capital punishment. + +*"A wrong guess makes the turtle draw a part of a stick figure."* + +The above commandment gives us a clue. Again, let's start by defining our function: +```python +def draw_hangman(wrong_tries): + if wrong_tries == 1: + # draw head + elif wrong_tries == 2: + # draw body + ... +``` + +This code tells our turtle to draw a part of a body everytime the player gets a guess wrong. +`if` player guess is wrong, then draw a body part. We don't want turtle to draw the same body part over and over +again as that would make a rather uninteresting game of hangm-, hang..thing? + + +`elif` is used to tell the program to draw different parts of the body based on the number of wrong tries the player +has guessed. + +Here is what the code should look like when completed. + +```python +def draw_hangman(wrong_tries): + if wrong_tries == 1: # drawing head + pen.penup() + pen.goto(0, 200) + pen.pendown() + pen.circle(50) # radius + elif wrong_tries == 2: # body + pen.penup() + pen.goto(0, 200) + pen.pendown() + pen.right(90) + pen.forward(300) + elif wrong_tries == 3: # Left hand + pen.penup() + pen.goto(0, 150) + pen.pendown() + pen.right(45) + pen.forward(150) + elif wrong_tries == 4: # Right Hand + pen.penup() + pen.goto(0, 150) + pen.pendown() + pen.left(90) + pen.forward(150) + elif wrong_tries == 5: # Left Leg + pen.penup() + pen.goto(0, -100) + pen.pendown() + pen.right(90) + pen.forward(150) + elif wrong_tries == 6: # Right Leg + pen.penup() + pen.goto(0, -100) + pen.pendown() + pen.left(90) + pen.forward(150) + +``` +### Making a lose/win screen + +How does a player know that they've won, and saved our hero. Or, they lost, and our hero became another victim of +ancient and barbaric practices. + +Just get the program to tell them duh! + +```python +def win_screen(): + pen.hideturtle() + pen.color("Green") + pen.penup() + pen.goto(0, 0) + pen.write(f"YOU WIN, YOUR WORD WAS: {secret_answer}", + align="center", + font=("Courier", 30, "bold") + ) + + +def lose_screen(): + pen.hideturtle() + pen.color("Red") + pen.penup() + pen.goto(0, 0) + pen.write(f"YOU LOSE, YOUR WORD WAS: {secret_answer}", + align="center", + font=("Courier", 30, "bold") + ) +``` + +### Game logic + +Let's take a moment and refresh ourselves with what we want the program to do in terms of our games "logic": + +*"A player will try to guess the secret word one letter at a time."* + +```python +guess = screen.textinput("Type a Letter: ", "").upper() +``` +A small pop-up box appears asking the player to type a letter. The `.upper` part turns lowercase letters to +upper case letters. So "a" and "A" are treated the same. + +We also want an "error message" to show when a player enters an invalid character, such as a number. +This is called input validation. + +```python + +while wrong_tries < max_tries: # While the player is still in game + # makes a window for text input + guess = screen.textinput("Type a Letter: ", "").upper() + # INPUT VALIDATION!! always check for empty input before string methods i + if not guess or not guess.isalpha() or len(guess) != 1: + print("Please enter a single alphabet") + continue + +``` + +The above code means that if the guessed input is not an alphabet using the `.isalpha` method, or if +the input is longer than one character (you'd be cheating!) using the `len` method, the command line will print +"Please enter a single alphabet". + +*"A wrong guess makes the turtle draw a part of a stick figure"* + +This can also mean: + +*"A correct guess will NOT make the turtle draw a part of a stick figure"* + +And that's exactly where we will start with our game logic. In words: + +I want my program to check if the guessed letter is in the secret word. +- If it is, I'd like to replace a printed "_" with the correct alphabet, and correct position. +- If it is NOT, I'd like the turtle to draw a part of the hangman. + +In code: + +```python +guessed_letters = [] #Stores the guessed_letters in a list, that is updated later on. +guessed_pen = turtle.Turtle() +word_pen = turtle.Turtle() + ... + + ... + # Adds the guessed letters to the list "guessed_letters" + guessed_letters.append(guess) + + # it is important to index (i). if say secret_answer was "hello", list(enumerate(secret_answer)) --> (0, H), (1, E), (2, L) etc etc + if guess in secret_answer: # If the letter is found in secret_answer + # this means go through every character in secret_answer, starting from i (0, ie the first letter), and return the letter and the position. + for i, letter in enumerate(secret_answer): + if letter == guess: # checks if the guessed letter is in every single position of the secret word + # changes guessed_input to the letter at the correct i position + guessed_input[i] = guess + print(f"Nice one! ", (guessed_input)) + word_pen.clear() + word_pen.color("White") + word_pen.penup() + word_pen.goto(0, -600) + word_pen.write(f"{guessed_input}", + align="Center", font=("Courier", 25, "bold")) + + else: + wrong_tries += 1 # adds 1 to wrong_tries + draw_hangman(wrong_tries) # starts from step 1 + guessed_pen.penup() + guessed_pen.color("White") + guessed_pen.goto(0, -500) + guessed_pen.clear() + guessed_pen.write( + f"Guessed: {guessed_letters}", align="center", font=("Courier", 18, "bold")) + print("Wrong! Try again") + + +``` +I also want the program to print out a list of alphabets that I've already guessed but was incorrect. +That's what the variables `guessed_pen` and `word_pen' do. + + +## Checklist + + +- [ ] Can you identify the `loop` in the above code, and explain what it does? +- [ ] Can you explain what `guessed_letters = []` means and why it is important? +- [ ] BONUS CREDIT: There is a reason why `word_pen` and `guessed_pen` had to be defined to be different than the regular pen. Do you know what it is? + + + +### Ending the game + +*"Too many wrong guesses, the turtle finishes the drawing and you lose."* +*"Guess the word before that happens, you win."* + +In other words, if our number of attempts is equal to our maximum attempt we've set for ourselves, +tell the player they lost. + +How do we know if the player won? +If all the "_" are filled out with correct alphabets! Makes sense? + +```python + +if wrong_tries == max_tries: + lose_screen() + break + if "_" not in guessed_input: # When all "_" are filled out ie u won + win_screen() + break # what happens if i leave this out? + +``` + +There you have it! Hangman deconstructed into its bits and pieces and put together in one fun project. +Run the program using `python3 run turtle_hangman.py'. + +Clone the repo: https://github.com/erictey/turtle_hangman.git + + + diff --git a/src/content/docs/en/guides/python/turtle/5-hangman/index.mdx b/src/content/docs/en/guides/python/turtle/5-hangman/index.mdx new file mode 100644 index 00000000..c177184f --- /dev/null +++ b/src/content/docs/en/guides/python/turtle/5-hangman/index.mdx @@ -0,0 +1,37 @@ +--- +type: tutorial +title: 'Practical Challenge - Hangman' +description: |- + Tutorial: Breakdown a game of hangman! +--- +import Checklist from '/src/components//Checklist.astro'; +import Box from '/src/components/tutorial/Box.astro'; + +## Introduction + +Now that we know python basics, and how to use the module Turtle, let's put it all together and create +a simple and interactive hangman game. In this game: +- The computer will randomly pick a word from a list +- A player will try to guess the secret word one letter at a time. +- A wrong guess makes the turtle draw a part of a stick figure. +- Too many wrong guesses, the turtle finishes the drawing and you lose. +- Guess the word before that happens, you win. + +It may seem unnecessary to list out each step of the hangman game - everyone knows how to play hangman! +But I promise, it definitely helps makes things ALOT simpler as we proceed. + +Before we proceed, a quick knowledge check: + + +## Checklist + + +- [ ] Do we know what lists are and how to define them? +- [ ] Do we know what loops are and how do set them up? +- [ ] Do we know x and y coordinates and what they mean? +- [ ] Do we remember how to use turtle? + + + + +Once we're ready. Lets proceed! \ No newline at end of file From a693debf3090d0fa9d383c0952422bdbcf464b45 Mon Sep 17 00:00:00 2001 From: EricTey Date: Mon, 13 Oct 2025 20:08:37 +1300 Subject: [PATCH 2/9] Fixed Landing Page Dead Links --- package.json | 17 +++++++++++++++-- .../docs/en/guides/cybersecurity/index.md | 4 ++-- src/content/docs/en/landing.mdx | 8 ++++---- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 3443ccf0..63ce9246 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@types/mdast": "4.0.4", "@types/node": "22.17.1", "@typescript-eslint/parser": "8.40.0", - "astro": "5.13.3", + "astro": "^5.13.3", "astro-auto-import": "0.4.4", "astro-eslint-parser": "1.2.2", "astro-og-canvas": "0.7.0", @@ -76,5 +76,18 @@ "sharp": "^0.34.0", "tailwindcss": "^3.4.17" }, - "packageManager": "pnpm@10.15.0" + "packageManager": "pnpm@10.15.0", + "description": "To all who come to this happy place: welcome.", + "main": "index.js", + "repository": { + "type": "git", + "url": "git+https://github.com/Tuhura-Tech/wiki.git" + }, + "keywords": [], + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/Tuhura-Tech/wiki/issues" + }, + "homepage": "https://github.com/Tuhura-Tech/wiki#readme" } diff --git a/src/content/docs/en/guides/cybersecurity/index.md b/src/content/docs/en/guides/cybersecurity/index.md index 950bd0a3..e27119f6 100644 --- a/src/content/docs/en/guides/cybersecurity/index.md +++ b/src/content/docs/en/guides/cybersecurity/index.md @@ -1,6 +1,6 @@ --- -title: Javascript -description: A simple website built using flask +title: Cybersecurity +description: A well engineered program is well protected. sidebar: order: 1 --- \ No newline at end of file diff --git a/src/content/docs/en/landing.mdx b/src/content/docs/en/landing.mdx index 764e44c4..21b2d577 100644 --- a/src/content/docs/en/landing.mdx +++ b/src/content/docs/en/landing.mdx @@ -25,10 +25,10 @@ import SplitCard from '/src/components/Landing/SplitCard.astro' - - [Python](/python) - - [Javascript](/javascript) - - [Game Development](/game-design) - - [CyberSecurity](/cybersecurity) + - [Python](/en/guides/python) + - [Javascript](/en/guides/javascript) + - [Game Development](/en/guides/game-dev) + - [CyberSecurity](/en/guides/cybersecurity) From ef1e956946f32b3b8e4f92bcb8b6089f58139e2f Mon Sep 17 00:00:00 2001 From: EricTey Date: Mon, 2 Feb 2026 17:47:29 +1300 Subject: [PATCH 3/9] Added Introduction to XRP robotics. Added videoPlayer component if someone wants to embed a video. --- astro.sidebar.ts | 1 + src/assets/xrprobotics/choosemode.png | Bin 0 -> 14473 bytes src/assets/xrprobotics/connection.png | Bin 0 -> 58267 bytes src/components/videoPlayer/videoPlayer.astro | 13 ++ .../docs/en/guides/xrp-robotics/index.mdx | 126 ++++++++++++++++++ src/content/nav/en.ts | 3 +- 6 files changed, 142 insertions(+), 1 deletion(-) create mode 100644 src/assets/xrprobotics/choosemode.png create mode 100644 src/assets/xrprobotics/connection.png create mode 100644 src/components/videoPlayer/videoPlayer.astro create mode 100644 src/content/docs/en/guides/xrp-robotics/index.mdx diff --git a/astro.sidebar.ts b/astro.sidebar.ts index a7b00d99..3abe8706 100644 --- a/astro.sidebar.ts +++ b/astro.sidebar.ts @@ -73,6 +73,7 @@ export const sidebar = [ }, ], }), + group('guide.robotics', { autogenerate: { directory: 'guides/xrp-robotics' } }), group('guide.security', { autogenerate: { directory: 'guides/cybersecurity' } }), group('guide.3d', { autogenerate: { directory: 'guides/blender' } }), group('guide.python', { diff --git a/src/assets/xrprobotics/choosemode.png b/src/assets/xrprobotics/choosemode.png new file mode 100644 index 0000000000000000000000000000000000000000..5c41f2c973e0f69e9ccb2429252ae91d8c770331 GIT binary patch literal 14473 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 Urd83Ozf!Rz>% literal 0 HcmV?d00001 diff --git a/src/assets/xrprobotics/connection.png b/src/assets/xrprobotics/connection.png new file mode 100644 index 0000000000000000000000000000000000000000..144b08fa24b427a4e60a2be207263ff7c7e2fb96 GIT binary patch literal 58267 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

hfY$JKk1GL%9%PrQf@y9Q4kJqA*(V6L_=;y%L3 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 literal 0 HcmV?d00001 diff --git a/src/components/videoPlayer/videoPlayer.astro b/src/components/videoPlayer/videoPlayer.astro new file mode 100644 index 00000000..b94d3c40 --- /dev/null +++ b/src/components/videoPlayer/videoPlayer.astro @@ -0,0 +1,13 @@ +--- +const { url, title } = Astro.props; +--- + +

+