Matching Items (4)
Filtering by

Clear all filters

135081-Thumbnail Image.png
Description
Last Hymn was created by the team of Tyler Pinho, Jefferson Le, and Curtis Spence with the desire to create an eccentric Role Playing Game focused on the exploration of a strange, dying world. Battles in the game are based off of rhythm games like Dance Dance Revolution using a

Last Hymn was created by the team of Tyler Pinho, Jefferson Le, and Curtis Spence with the desire to create an eccentric Role Playing Game focused on the exploration of a strange, dying world. Battles in the game are based off of rhythm games like Dance Dance Revolution using a procedural generation algorithm that makes every encounter unique. This is then complemented with the path system where each enemy has unique rhythm patterns to give them different types of combat opportunities. In Last Hymn, the player arrives on a train at the World's End Train Station where they are greeted by a mysterious figure and guided to the Forest where they witness the end of the world and find themselves back at the train station before they left for the Forest. With only a limited amount of time per cycle of the world, the player must constantly weigh the opportunity cost of each decision, and only with careful thought, conviction, and tenacity will the player find a conclusion from the never ending cycle of rebirth. Blending both Shinto architecture and modern elements, Last Hymn used a "fantasy-chic" aesthetic in order to provide memorable locations and dissonant imagery. As the player explores they will struggle against puzzles and dynamic, rhythm based combat while trying to unravel the mystery of the world's looping time. Last Hymn was designed to develop innovative and dynamic new solutions for combat, exploration, and mapping. From this project all three team members were able to grow their software development and game design skills, achieving goals like improved level design, improved asset pipelines while simultaneously aiming to craft an experience that will be unforgettable for players everywhere.
ContributorsPinho, Tyler (Co-author) / Le, Jefferson (Co-author) / Spence, Curtis (Co-author) / Nelson, Brian (Thesis director) / Walker, Erin (Committee member) / Kobayashi, Yoshihiro (Committee member) / Computer Science and Engineering Program (Contributor) / Computing and Informatics Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
135016-Thumbnail Image.png
Description
Programming is quickly becoming as ubiquitous a tool as general mathematics. The technology field is progressing at an exponential rate and driving this constantly evolving field forward requires competent software developers. Elementary and high school educational facilities do not currently express the importance of the computer science field. Computer science

Programming is quickly becoming as ubiquitous a tool as general mathematics. The technology field is progressing at an exponential rate and driving this constantly evolving field forward requires competent software developers. Elementary and high school educational facilities do not currently express the importance of the computer science field. Computer science is not a required course in high school and nearly impossible to find at a middle school level. This lack of exposure to the field at a young age handicaps aspiring developers by not providing them with a foundation to build on when seeking a degree. This paper revolves around the development of a virtual world that encompasses principles of programming in a video game structure. The use of a virtual world-based game was chosen under the hypothesis that embedding programming instruction into a game through problem-based learning is more likely to engage young students than more traditional forms of instruction. Unlike the traditional method of instruction, a virtual world allows us to "deceive" the player into learning concepts by implicitly educating them through fun gameplay mechanics. In order to make our video game robust and self-sufficient, we have developed a predictive recursive descent parser that will validate any user-generated solutions to pre-defined logical platforming puzzles. Programming topics taught with these problems range from binary numbers to while and for loops.
ContributorsWest, Grant (Co-author) / Kury, Nizar (Co-author) / Nelson, Brian (Thesis director) / Kobayashi, Yoshihiro (Committee member) / Computer Science and Engineering Program (Contributor) / Computing and Informatics Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
135148-Thumbnail Image.png
Description
\English is a programming language, a method of allowing programmers to write instructions such that a computer may understand and execute said instructions in the form of a program. Though many programming languages exist, this particular language is designed for ease of development and heavy optimizability in ways that no

\English is a programming language, a method of allowing programmers to write instructions such that a computer may understand and execute said instructions in the form of a program. Though many programming languages exist, this particular language is designed for ease of development and heavy optimizability in ways that no other programming language is. Building on the principles of Assembly level efficiency, referential integrity, and high order functionality, this language is able to produce extremely efficient code; meanwhile, programmatically defined English-based reusable syntax and a strong, static type system make \English easier to read and write than many existing programming languages. Its generalization of all language structures and components to operators leaves the language syntax open to project-specific syntactical structuring, making it more easily applicable in more cases. The thesis project requirements came in three parts: a compiler to compile \English code into NASM Assembly to produce a final program product; a standard library to define many of the basic operations of the language, including the creation of lists; and C translation library that would utilize \English properties to compile C code using the \English compiler. Though designed and partially coded, the compiler remains incomplete. The standard library, C translation library, and design of the language were completed. Additional tools regarding the language design and implementation were also created, including a Gedit syntax highlighting configuration file; usage documentation describing in a tutorial style the basic usage of the language; and more. Though the thesis project itself may be complete, the \English project will continue in order to produce a new language capable of the abilities possible with the design of this language.
ContributorsDavey, Connor (Author) / Gupta, Sandeep (Thesis director) / Bazzi, Rida (Committee member) / Calliss, Debra (Committee member) / Barrett, The Honors College (Contributor)
Created2016-05
Description

This paper explores the inner workings of algorithms that computers may use to play Chess. First, we discuss the classical Alpha-Beta algorithm and several improvements, including Quiescence Search, Transposition Tables, and more. Next, we examine the state-of-the-art Monte Carlo Tree Search algorithm and relevant optimizations. After that, we consider a

This paper explores the inner workings of algorithms that computers may use to play Chess. First, we discuss the classical Alpha-Beta algorithm and several improvements, including Quiescence Search, Transposition Tables, and more. Next, we examine the state-of-the-art Monte Carlo Tree Search algorithm and relevant optimizations. After that, we consider a recent algorithm that transforms Alpha-Beta into a “Rollout” search, blending it with Monte Carlo Tree Search under the rollout paradigm. We then discuss our C++ Chess Engine, Homura, and explain its implementation of a hybrid algorithm combining Alpha-Beta with MCTS. Finally, we show that Homura can play master-level Chess at a strength currently exceeding that of our backtracking Alpha-Beta.

ContributorsMoore, Evan (Author) / Kobayashi, Yoshihiro (Thesis director) / Kambhampati, Subbarao (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2023-05