AI in Creative Production

Joeseph Hall

Introduction

    My interest in learning C# (pronounced "C Sharp") for video game creation was initially met with a lack of specific educational resources; most available courses focused on informational technology and database management. Yet, C# remains a cornerstone for using Unity, a leading platform in both professional and independent video game development. This gap in educational resources led me to consider the potential of AI in this field.

    C# is a modern programming language developed by Microsoft. It's part of the .NET framework and is widely used for creating various types of software applications, including Windows applications, websites, and videogames.

    The central question of my research is: Can AI enhance and simplify the creation of educational tools? My experience suggests that AI is particularly adept at crafting diverse analogies for explaining complex concepts and handling programming languages like C#. These capabilities could potentially accelerate the development of educational tools, making them more accessible to individuals with limited programming backgrounds, like myself.

Ethical Questions

    Despite the potential benefits, some critiques argue that an over-reliance on AI might diminish critical thinking and problem-solving skills, fostering a dependency that could impair independent learning. However, my personal experience contradicts this view; using AI has enhanced my problem-solving abilities and encouraged me to explore novel solutions and iterate on ideas.

    Furthermore, the use of AI in creating educational content raises significant questions regarding the ownership of intellectual property. While AI can assist in generating code snippets or game design elements, this issue is not unique to AI. The practice of utilizing and modifying existing online resources, such as those found on Codepen.io or GitHub, has long been a staple in the tech community.

    It is also vital to acknowledge the limitations of AI, including the potential for inaccuracies. Ensuring the reliability of AI-generated content is crucial, as it is with any educational resource. This involves rigorous verification of information, which is a best practice in any scholarly or creative endeavor. This essay will further explore these themes, examining the implications of AI in educational settings, particularly in the realm of video game development, and addressing ethical considerations alongside practical applications.

Building a Game

    The main problem I had was my own rustiness with Unity, it had been almost a year since I had last used it and there had been a few updates since then. However I found I could simply ask Chat for the steps to do any functionality I needed to help with. We started by discussing the Unity game I wanted to make, which allows players to learn programming by assembling spells using code snippets. We implemented and adjusted various gameplay elements such as changing spell elements and strengths using buttons and sliders. These buttons and sliders were meant to symbolize the different types of variables, such as checkbox for booleans and slider for floats.

    Using ChatGPT to code is very helpful but can be frustrating, there are some times where you need to think of different ways to describe what you want. For instance when you want elements stacked on top of eachother you need to be explicit in what way they are stacked, so stacked vertically on the screen or stacked depth wise with each overlapping eachother. We went through and traded code and bugfixed together until we had something that resembled my vision. This working prototype demo allows users to select different values for variables and lets them see the code change as they do it.

    ChatGPT can be very intelligent in its ideas for certain functionalities but sometimes it forgets what it has already given you and will need to be reminded of code periodically. However, at any time that you don't understand something either that Chat has said or a topic that is beyond your current understanding, Chat is ready willing and able to explain in many ways to help you. This is the reason I chose to create this project, AI can reach out to so many sources of knowledge at once that it has the ability to explain and teach anyone that is willing to learn from it. The primary hurdle I anticipate with AI as a teaching tool is two-fold, people opposed to AI and are unwilling to listen, and conversely those who follow and believe AI blindly, as I've said before there is room for criticism in working with AI.

Reflections

    Despite the criticisms concerning potential dependency on AI and the risks to critical thinking, my firsthand experiences highlight that AI can indeed complement traditional learning methods by offering new ways to engage with material and solve problems. These interactions have not replaced my problem-solving skills but rather have enriched them, enabling me to approach issues with a refreshed perspective and a broader set of tools.

    In conclusion, the integration of AI into the learning process for video game programming in C# has not only filled a crucial gap in educational resources but has also proven to be a transformative tool in simplifying and enhancing the creation of innovative educational tools. This journey began with a personal challenge—a lack of tailored learning materials for using C# in Unity. However, AI's capacity to generate relevant analogies and manage complex programming tasks has made it an invaluable ally in navigating this terrain.

    As we move forward, it is clear that AI will continue to play a pivotal role in educational landscapes, particularly in fields that benefit from dynamic and interactive learning tools like video game development. This exploration has not only reinforced the utility of AI in education but has also opened the door to further innovative approaches that could redefine how subjects are taught and learned in digital environments. The balance between leveraging AI's capabilities and maintaining essential human oversight will be crucial as we continue to harness these technologies for educational advancement.

Media

Chatting with ChatGPT

Creating the game in Unity

Collaborative code

The Project

    This Unity-based game serves as a demonstration of what can be achieved with the integration of AI in development, crafted within a day in collaboration with ChatGPT. It explores fundamental C# variable types such as strings, integers, floats, and booleans. On the left side of the screen, players interact with digital representations of these variables: choosing words for strings, selecting numbers for integers, and so forth. This demo showcases the basic capabilities and the speed of development facilitated by AI tools. Prior to consulting ChatGPT, I was unaware of how to host the game within an HTML environment, which illustrates the extended functionality and educational potential that AI brings to programming. This experience highlights how AI can significantly accelerate development processes and introduce developers to new technological possibilities.

    To play the "game" you need to click the following link and then the blue arrows in the right side of the screen, then change the variables on the left side of the player to see how code on the right changes.

https://dtc-wsuv.org/jhall24/spellcraft/game/spellcraft.html