Games as Art: A Trend in Game Development of Increasing Artistic Quality

12 11 2012

Games, as a member of new media, have been changing from just technical piece to hybrid piece of new culture and media phenomena. It is important to identify and recognize the artistic quality of games in order to stimulate the development of art and media in this generation. It can also help to discover game as a more powerful tool of art, hence higher quality games would be created. In this paper, games are discussed in general according to its relationship with culture, expressiveness, and the artists’ intention.

In the abstract of Computer Games as Works of Art, the author noted that computer games as a candidate to be regarded as art, just like any other kinds of medium, have already developed a significant heterogeneous tradition[1]. It should be emphasized that not all games can be regarded as art. It is similar to music, movie, literature, and drawing: a song is a song and it is not necessarily a work of art. There are elements within the work, which make it a work of art. Games have an increasing advantage as a candidate because more and more ideas have been brought into games, not just with the technological advance, but also with the rapid growing size of audiences and developers. Game as art is catching more attention with its artistic nature and potential. Even though most games are commercial and market driven, these properties do not obstruct games to be regarded as art. Work of art can be functional and commercial.



[c++] OpenGL first attempt

31 10 2012

This is a class exercise. OpenGl is introduced and I need to get a triangle rendered following  a provided tutorial (this)

Again, getting all the dll and header in place, linked correctly in the VC configuration, so on, are annoying. Different place on google search led me to various solution, including but not limited to: installing the windows SDK (different version), downloading various version of openGL package from different places, ETC. Even after Kevin tell me that there is a download file of source code at the bottom of the tutorial, the errors just shifted to some other errors.

Alright at the time I was distracted with something else, actually it was some course registration issue I was talking to my professor, I found too lines of code I see a lot of time when I am working on xcode. I did not put too much of expectation on it because there are just 2 lines. But of coz it runs or I would not post it here!

“Oh what?! It runs? Okay…”

I am not particularly happy this time. I think I have got used to this kind of situation and it is completely normal.



My first RPG game with C++ and SDL is finally running

30 10 2012

Frankly speaking, following and understanding the tutorial is nothing difficult. Getting all dll and header files in place is thrilling. I should say, until today GUI has been so advance, there is still such thing which is totally not user friendly. I start to admire Gamesalad and Scratch.

Now it is just a black dot moving around a tiled map with keyboard control and collision detection. I can start replacing the tile with something more appealing.

Read the rest of this entry »



Web-based RPG Maker

24 10 2012

Got something by accident, a web-based RPG maker. It works simply by placing images and naming them accordingly, changing several dat files in note pad, and running the html file with a browser on iphone/android. Looks like fun! But I will hold the testing to next week. Arh many works to do!

left: a map dat opened in notepad. middle: the resource images and else. right: js files.

BTW the tutorial is in Japanese. So lucky that I can sort of understand what it says.

http://www.programmingmat.jp/soft_lib/m11rpg/m11rpgwj.html

 



Useful resource get!

24 10 2012

http://www.youtube.com/watch?v=NudiUwtz6Fg&feature=related

When I was checking out this video, I thought if I know how it is made, my assignment for this week is done lol. But the author did not mention anything about the process even somebody asked him in the comment. So I searched some terms and pages he mentioned in the replies. And I get the SDL library, the Simple Direct Media Layer.

This page looks very encouraging and powerful. Feels like if I go through them I can do whatever I want. Let’s go for it for a while.

http://lazyfoo.net/SDL_tutorials/index.php

I also found another Tiled map tutorial with some other library. I will just leave a link here.

http://www.dreamincode.net/forums/topic/230524-c-tile-engine-from-scratch-part-1/



[c++] assignment 6: Tame-a-Little-Doggy Done! =w=..v

20 10 2012

So we are moving to GUI. Microsoft Visual C++ 2010 Express, just like every other software from Microsoft, is having an a-bit-clumsy interface. At first it took me some time to even locate the toolbox and the items I need. The “button” items in the menu only show up when “window form application” is chosen as the document type. It is also a requirement to enable the drag-and-drop IDE. But this is not mentioned in any tutorial I have gone through. Before knowing that, I started up with a normal window application, leaving the window form application as a second step to test out. But I gave up exploring the normal window application quickly after 15 minutes I discovered no matter how hard I dig into the user preferences to find the buttons, the toolbox still remains empty!

I started feeling optimistic because I felt like conquering the most ridicules issue I would be facing, and the WYSIWYG editing interface is soooo easy to get along with. Programming a simple tic-tac-toe should not be that difficult. I still remember the day I was learning Netbeans IDE for Java. That was totally a flash through my mind. Programming the buttons is just like programming anywhere else but a lot simpler… Well that was Java. In window form, the language, even though still C++ as it said, does not look like the C++ we used since the beginning of this quarter. Not apparent COUT and CIN is observed, neither do “<<” and “>>”. The “->” symbol and everything else look just like alien language. C++ is much bigger than I thought.

Surviving form this kind of uncertainty did not take me that long. The main challenge is actually parsing values in between the classes and functions. The window form is a template or framework pre-written with classes and stitched together. It is the same as Objective-C and iOS programming I am recently investigating. But in this stranger language, even declaration and assigning a variable become nightmare. All kinds of scary errors showed up! Wrong place to place the declaration, wrong place to assign the value, wrong type to pass, wrong syntax, not allowed type… So discouraging!

After many tests, failure, tutorial has gone through, most problems are solved. I can now assign the text in a textbox with int data with a convertToString function (finally!). The variables need to be declared here (above image) in order to make them usable by the form, function and event handlers. This is quite common. However, an array cannot be declared here. It said “only static data members can be initialized inside a ref class or value type”. This means it is not supported. What?? This might be common sense to programmer, but it seems non-sense to me, and I had searched for half an hour on how to declare and array, which used to be like this: char myChar[10]; It allows me to declare it in the main of the form. But if I need to call it in a function, it is undeclared.

This is how it looks like at the stage I am about to implement the game logic with an array. Of course I can make a tic tac toe without using any array, but repetitive work is not my favor.

I started to think (because searching for solution seems like endless!). I need to make good use of tools in my hand to make a playable game with GUI. This should be the task, instead of trying to solve pointless issue I am facing in pure programming. I changed my game to Tamagochi — another flash in my mind.



Rockman X DEMO!

12 10 2012

My assignment 04 is a PS1 game. I always want to challenge it to the limit you know. At first I thought of making the Tekken and demonstrate the combo system with 3D characters… Well, that may be too harsh. I decided to make this assignment as a summery of my last 3 game. A game which I can make use of the logic I created for previous assignment. And as I am a big fan of Rockman (aka Megaman), Rockman X is the choice for this time!

As usual, I was quite ambitious at first. Here is the plan:

I intended to skip the fancy costume of the sprites and focus on the action and mechanism of Rockman X: to defeat a boss, get the weapon, and use the new weapon to tackle the weak point of the other boss.

I learned from the experience when I was working on Bomberman and Lemmings and borrowed logic from there. The character listen to the variable returned from the stage to detemine which side rockman is facing. And as this is a side scrolling game, the movement is handled also in the stage.

The blocks of the ground repeatedly mount themselves onto a globle stage coordinate. The keyboard input controls the coordinate. Rockman’s position is always fixed.

Charging and shooting are troublesome. If Scratch needs to change or manipulate several variables at once, there will be trouble and unknown bugs, making the logic dont work somehow.



The outcome is not looking bad even I skipped the animation of the character. But I did not make it to stage 2 and so on, because that may be too much for a demo.

Player can still move the cursor. But when he presses confirm, this will show up lol.

Enjoy!



ITGM 351 assignment 2

9 10 2012

I declare the following to be my/our own work as understood by the SCAD Policy on Academic integrity, unless otherwise cited
Lau Hon Ming Henry
ITGM 351_Cognitive art of game design_assignment02
Professor: Jose A. Rueda
9 Oct 2012
Stop Watch Hero (proposed name)
This is a 3D puzzle game, which the player acts as a hero who can freeze the time. During the freeze, player needs to move and place the objects in the given world in order to save a target from risk. As the game progress, the player gains more ability (to move bigger objects for example) and involves in disaster in bigger scale.
Vision
Define a new genre within the puzzle game framework.
Objective
Design a puzzle game for console and pc, in which the player controls a time-freezing hero to save a target (s) from risk in each stage. The player moves whatever appropriate in the stage, except the target during the time freeze. The player plans a trick, or a setting. The time resumes as the player confirms the setting and everything continue to move. The player sees whether the setting can create a chain reaction and eliminate the risk facing by the target(s) or not.
The game has open-solution stages that the player is not restricted to solve a stage with pre-assigned ways. The player can basically move everything except the target in later stage. The objects include walking human, animal, cars and machineries. The player can place them wherever he can reach in whatever way he likes. Through this the player will adopt a sense of control through the game. This manner of surrealism like this also builds up a sense of humor. The player enjoys extra pleasure after clearing a stage in a strange way. The player can also save the replay after clearing a stage and share it to receive feedback.
Overview
Platform: Xbox 360, PS3 and PC
Player(s): Single player
Genre: 3D puzzle.
Target group: ages from 7 to 16. Teenage male and female.
Estimated developing time: 1 year with a team of about 10 people.

Read the rest of this entry »



Angry Birds Star Wars… launching Nov 8th!

9 10 2012

Many of my kids like Angry Birds. I should say it is more well known than Hello Kitty today. And They are launching another game crossing over with Star Wars next month. Feels like they are following the old path Hello Kitty did: “There isn’t anything that cannot bear a Hello Kitty on it”.

http://www.usatoday.com/story/tech/2012/10/05/angry-birds-meets-star-wars/1613941/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A%20usatoday-TechTopStories%20%28Tech%20-%20Top%20Stories%29



Lemmings’ Out!

5 10 2012


The functions work perfectly as planned after slight fine tuning. The sound and sprites also working great. The lemmings will fall from the gate one by one after a nice “Let’s Go!” sound. If the game is played properly: player guides the lemmings with appropriate tools, they will get into the goal with a happy “yip-pee” sound. If everything goes fine, the block and explode function are not necessary for this demo stage, they are just for fun.


This is how it looks like in a lemming. The left half handles the walk cycle and collision detection for walking and falling. Actually it works perfectly fine for one lemming. It can turn back when it hit a wall. But at the end after everything are done and the lemmings are duplicated, they cannot walk pass each other: they will just block each other. I know exactly what went wrong in the block. But I afraid if I attempt to change it the whole thing would not work as it should. Well… If they walk straight to the goal, it is just a minor FEATURE! lol


This is how a lemming digs. The magic happens within a tiny black sprite placed in front of the selected lemming. When it touch any wall, pen is down and draw with the background color. And as it is not touching the wall any more, pen is up. With this mechanism, an organic fake tunnel is created. I believe the original game works similarly. No wonder why the background color always remains the same! Oh. But for scratch, the pen always paint at the bottom layer in front of the stage layer. If the walls are not on the stage layer but as separate sprites, the pen has no way to cover them up. It took me more than one hour to figure out why the pen should be working but did not seem like so. This restrict heavily the freedom of me creating the stage.

The stair building works similarly, but the pen down is replaced by stamp utility.

For some reason sometime the countdown timer for the exploding lemming does not reset properly. Should be the clumsy execution of Scratch makes it happen.

But again this is another minor FEATURE.

I need to emphasize here. The graphic and sound really shape the environment and the feel of the game. But I personally do not favor this type of repetitive work in this programming class, and I think this is totally not the point for the assignment.