Creating Assignment June 5th(Quest of Elements).

For this assignment, the 2 random words were: Game and motif. I created a board game called Quest of Elements.

The “Quest of the Elements” game is an interactive text-based adventure implemented in Python. In the game, the player assumes the role of a character who embarks on a quest through different locations to acquire elemental powers. At the beginning of the game, the player selects a character class from a list of options, each with unique attributes such as health, attack, and defense. The player’s objective is to navigate through various locations on the game board, including difficult terrain, ancient ruins, and battles with dangerous creatures.

When encountering a location, the player is presented with a description and a chance to perform an action. The success of the action depends on a predetermined success chance. Successful actions lead to progress, while unsuccessful ones result in health loss.

In battles with creatures, the player engages in turn-based combat, strategically choosing attack and defense options. Both the player and enemy have health, attack, and defense attributes, and the battle continues until either party’s health reaches zero.

Throughout the game, the player’s health is constantly monitored, and reaching zero health leads to the game being over. However, defeating enemies grants the player powers, adding a layer of excitement.

The game provides options to continue playing or quit after each encounter.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Sun Jun  4 16:35:46 2023

@author: enockmecheo
"""

import random

# Define the player classes
player_classes = {
    "Knight": {
        "health": 100,
        "attack": 20,
        "defense": 15,
    },
    "Mage": {
        "health": 80,
        "attack": 30,
        "defense": 10,
    },
    "Rogue": {
        "health": 70,
        "attack": 25,
        "defense": 5,
    },
    "Druid": {
        "health": 90,
        "attack": 15,
        "defense": 20,
    },
}

# Define the game board
game_board = {
    "Terrain": {
        "description": "You navigate through difficult terrain.",
        "success_chance": 0.8,
        "health_loss": 5,
    },
    "Ruins": {
        "description": "You explore ancient ruins for clues.",
        "success_chance": 0.6,
        "health_loss": 10,
    },
    "Dangers": {
        "description": "You face dangerous creatures in battle.",
        "success_chance": 0.4,
        "health_loss": 15,
    },
}

# Define the elements
elements = ["Fire", "Water", "Earth", "Air"]

# Define the main game loop
def play_game():
    player_class = select_player_class()
    print("You are a", player_class)

    player_stats = player_classes[player_class]
    player_health = player_stats["health"]
    player_attack = player_stats["attack"]
    player_defense = player_stats["defense"]
    player_elements = []

    while True:
        print("\n---------")
        location = select_location()
        print("You encountered", location)

        location_stats = game_board[location]
        location_description = location_stats["description"]
        success_chance = location_stats["success_chance"]
        health_loss = location_stats["health_loss"]

        print(location_description)
        success = perform_action(success_chance)
        
        if success:
            if location == "Dangers":
                player_health, enemy_defense = battle(player_health, player_attack, player_defense)
                if player_health <= 0:
                    print("Game Over. You were defeated!")
                    break
                elif enemy_defense <= 0:
                    player_elements.append(random.choice(elements))
                    print("You defeated the enemy and acquired an element!")
            else:
                player_health -= health_loss
                print("You successfully completed the action but lost", health_loss, "health.")
        else:
            player_health -= health_loss
            print("You failed to complete the action and lost", health_loss, "health.")

        if player_health <= 0:
            print("Game Over. Your health reached 0!")
            break

        play_again = input("Do you want to continue? (y/n): ")
        if play_again.lower() != "y":
            break

    print("\n---------")
    print("Game Over. Thanks for playing!")

def select_player_class():
    print("Select your player class:")
    for i, player_class in enumerate(player_classes):
        print(i+1, "-", player_class)
    while True:
        choice = int(input("Enter the number of your choice: "))
        if 1 <= choice <= len(player_classes):
            return list(player_classes.keys())[choice-1]
        else:
            print("Invalid choice. Try again.")

def select_location():
    return random.choice(list(game_board.keys()))

def perform_action(success_chance):
    return random.random() <= success_chance

def battle(player_health, player_attack, player_defense):
    enemy_health = random.randint(50, 100)
    enemy_attack = random.randint(10, 20)
    enemy_defense = random.randint(5, 15)

    print("Battle Begins! You vs Enemy")
    print("Player Health:", player_health)
    print("Enemy Health:", enemy_health)

    while True:
        player_damage = player_attack - enemy_defense
        enemy_damage = enemy_attack - player_defense

        player_health -= enemy_damage
        enemy_health -= player_damage

        print("\nPlayer deals", player_damage, "damage to the enemy.")
        print("Enemy deals", enemy_damage, "damage to the player.")
        print("Player Health:", player_health)
        print("Enemy Health:", enemy_health)

        if player_health <= 0 or enemy_health <= 0:
            break

    return player_health, enemy_defense

# Start the game
play_game()

Make – Random Simulation

Words Generated: Fairy & Photograph

The first literal thing that came to my mind when I got these words was a fairy taking a photograph. But then I thought that I should think laterally, and I started asking the “Why” questions. Why does a fairy take photograph? Why does a fairy want to preserve the moment? Why are moments forgotten?….. Finally, I decided on the idea of creating a social media platform just for fairies, although imposters like Peter Pan and Captain Hook will hack into the system. I called the app Fairygram. This is a platform where fairies can take photographs, share with other fairies and preserve the moment. It is very much inspired by Instagram but it’s obviously much better. I am not a UI/UX designer so the interface does look like Instagram, but don’t be fooled it can do much more. Apart from the basic futures like liking a post or commenting on it, the app allows the user to send pixie dust to the fairies. It also has a marketplace to shop for portions and a magic ball feature to call friends. Although now that I think about it, the magic ball might be used by a wicked witch to spy on others. Hence the app requires some future work to solve these privacy and security concerns but here’s a demo of what the UI would look like…

Making Assignment 7

Shahram Chaudhry

Words: Pride and Bride

As I contemplated these words, I realized their immense potential to express a myriad of ideas. Within the realm of marriage, pride and honor have traditionally been associated with women, particularly as brides. It occurred to me that by creating a textual portrait of a bride and incorporating the words that spring to mind when contemplating the institution of marriage, I could contribute to the ongoing discourse surrounding women’s rights. Especially in my country, where these discussions hold great significance, it is crucial to critically examine what marriage means in our present context and what it should signify for us to foster a progressive society that rejects patriarchy and discrimination.

While many words, such as honor, dignity, and respect, share a similar essence to pride, they carry slightly different connotations. In our culture, these terms are often used interchangeably, reflecting their importance in shaping the perception of a traditional marriage. It is worth noting that most of the words that come to mind tend to have negative connotations, which stem from my personal perspective on marriage. However, amidst these notions, there are also positive words that embody the ideals of a successful marriage.

The varying sizes of each word within the textual portrait represent the importance accorded to them in a typical Pakistani marriage. For instance, “Honor” takes up a significant portion of the portrait, underscoring its paramount importance, while “joy” occupies a smaller space, suggesting a lesser emphasis placed on this aspect. This portrayal aims to initiate a reflection on the multifaceted nature of marriage and encourage a nuanced dialogue on reshaping its meaning to align with a progressive society.

By presenting these words in a visually impactful manner, I hope to evoke a thoughtful response and contribute to a broader understanding of marriage in our society.

Kollage Kollectiv Notes

  • The website was very professional and tech-looking so I assumed we’d be going to another very professional studio, so actually seeing art in a very raw form especially in a naturally aesthetic and artsy environment (in a very rundown way too) was a very good change
  • They started small from a very basic idea, but were willing to work with it despite all their fears of not meeting certain bars, just kept going and are now actually a pretty big initiative
  • The idea that art is never about perfection has never been accentuated more (all other artists talk about not caring about perfection yet it seems that they aim for it)
  • Feel proud about using stuff that others no longer need shows humility and open-mindedness
  • The fact that they mostly use recycled materials and work out of available materials goes to show that they are actually very creative: it is easy to think of something to make and acquire the required materials/tools and equipment but it is much harder to work out of limited resources ( no one knows better about this than us since we do it everyday)
  • Also, not letting financial constraints demotivate them shows that they are very passionate about what they do
  • “Don’t get influenced by technology, just use it as just another tool.” I think this is something we all need to reflect upon
  • I think it was worth missing the Prague trip for 🙂

Harshini’s Visit

  • Class of 2018
  • Born and raised in Sri Lanka
  • Switched from SRPP to Film and New Media and Theatre in Abu Dhabi
  • Photographer and Projection designer
  • Study away in Florence , NY
  • VJ : video jockey – eye opening for her because not spending 16-20 hrs on editing like usually do
  • Putting body into work
  • Being someone from two very different places, exploration of new identity, art gave a way to process that
  • During pandemic, trying to understand relationship between her and the outer world
  • How body can be seen as extension of nature, removing gender binary concept
  • When I have an idea, I say lets do it
  • Very honest, open , no fakeness  : also talked about climate change protestors being performative and how she strongly dislikes it
  • Also very relatable probably because NYUAD alumni, knows us on a deeper level and probably understood the purpose of the visit and the nature of our class better
  • You don’t have to know everything, you just need to know a little bit to collaborate so others can help you
  • Made a piece based on 3 worlds: first one inspired by mangroves, second one inspired by desert and third one inspired by view of water – first world was inspired by ongoing wildfires in Australia, Amazon and San Francisco
  • Three distinct worlds but how to tie them together and generally we engage with screen passively, experience it in a totally different framework each time you come back to it: Harshini wanted screen to be an active engagement for audience
  • She didn’t want to convert this piece to VR because the weight of the headset would take away the comfort
  • If we are creating something online, embrace the digitality entirely 
  • Try to find what you are interested in
  • Going to artist talks is good because you rediscover and realize new things
  • Be okay with being honest about your shortcomings: she told her supervisor that she knew nothing and was scared but very willing to learn
  • Also, use the knowledge/medium that you know until you learn new skills
  • Writing reflections can help discover consistent modes of working/making art ( basically ties back to the concept we studied that we need to analyze our own work to learn from it and grow from it)
  • Loved how she noticed how its hard to keep eye contact after pandemic
  • Berlin’s landscape not very inclusive: but if a space doesn’t exist you have to create it
  • She had a very interactive and engaging conversation style

Studio Visit 3 – Kollage Kollectiv

Collaborative, Free working environment in an open yard.

Inspiration from gathered materials from scrapyard. “3D-collage”

Stay true to your idea, stick to the best way to implement them.

Involves electronics, welding, programming, and building, sparks my major-related interest

Artist visit (Harshini)

Harshini

  • Favorite artist visit so far
  • Explores anything and everything that piques her interest
  • “You don’t have to  know everything. You just have to know a little bit and talk to someone who knows more.”
  • Her piece Scared Body reminds me of Farah Al Qasmi’s piece Wrestling with SPectres (2019)
  • Capstone project !!!!!
  • Honest depiction of berlin

Ephemeral Tomorrow

  • Lasers, constellations from satellites orbiting earth
  • Keep changing the satellites because of increasing number
  • Lots of science and data
  • Epiphytes(??)
  • Show how the natural world (Trees) communicate with one another
  • Shows how trees are alive (“living” organisms)
  • Not very interactive
  • Medium = electricity(??)
  • Sound and light centered art