Game: Goban
Game: Goban
Warning: This may seem long winded for such a simple game. I have tried to document everything throughout the life of Goban's development, so I can learn as much as I can from it.
Introduction
Goban is a game I developed for a course, COSC4397 Introduction to Interactive Game Development, at the University of Houston. The game provides a Go board for two players to play a game of Go.
The game is written using Microsoft's XNA Framework and C#. The only real graphical effects that are used are particle effects, and simple alpha fading. So overall the game is rather simple, much like the game Go itself. :)
Gameplay
The gameplay follows basic rules for Go. Scoring is implemented by simple stone counting, where the player with the most stones on the table in the end, wins. Ko is also implemented.
Development
Goban was developed over the course of two months. During the initial phases a design document was written that outlined the features and storyline of the game, and concept art was created. Since Goban is a direct implementation of a traditional board game, with no storyline to speak of, this part of the project was mostly concept for me. I drew out most of the animations I wanted to implement in either my notebook or my sketchbook, as well as all of the model assets I figured I would need. I kept the models basic, since I don't have a lot of experience creating 3D models and ended up limiting them to the basic goban (go board), goke (stone bowls) including lid, and the stone itself.
The development process for Goban was very incremental. Initially I started out with just a basic board model and a horrible texture. I had a couple of friends who were interested in the game so I'd post videos of my progress as I went. Almost every day added some new feature to the game.
When I modeled the final board, goke, and stone, and was able to place them into the game it really started to get exciting. Once the board was in, and the controls were moving the stone piece around the board I was able to think about how comfortably the game would play. That's when most of the changes to the game got made.
I began implementing new features for the game camera, allowing it to trail behind the stone, almost like a really loose spring. When even that wasn't enough, I implemented the stone movement so that it wouldn't "warp" from location to location, but swiftly slide from point to point. The combination of the camera, and the piece movement made the game feel less jaring.
One of the things I wanted to add from the beginning was some sort of fire effect for when stones were removed from the board. In order to accomplish that I needed to implement a particle engine which led me to spin off from working on Goban directly and implement a particle engine, and a very (read: VERY) basic particle system editor.
Reception
I was lucky enough to have Goban play tested at a UH CompSci department open house. I got to learn a lot about how people approach games in general, and what caused the biggest hurdles for Goban's approachability.
For the most part, the feedback I got was that everyone enjoyed the look of the game. Watching people play it however, it was obvious that the game itself (Go) was not so widely known. No one that I saw playing it knew the rules, and I hadn't implemented any tutorials or help system other than for controls. If I could improve any portion of the game, a tutorial system would be my primary focus.
Conclusion
Goban was a fun game to write, and gaining the experience of watching other people play it was priceless.
I really hope to have some time soon to work on it again. I hope to update it to XNA 2.0, add a tutorial system, and add Xbox Live Networking for network play.
Screenshots
Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/rgiliam/public_html/richard/inc/items/model/_itemlight.class.php on line 683
11/07/07 , 06:04:52 pm , by
Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/rgiliam/public_html/richard/inc/items/model/_item.class.php on line 314
Glitch
Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/rgiliam/public_html/richard/inc/items/model/_item.class.php on line 1267
, 682 words, 59 views
Categories: Graphics, Game Development, XNA






