Showing posts with label game development. Show all posts
Showing posts with label game development. Show all posts

Saturday, January 31, 2009

Halfway through the Job

The no-fluff graphical engine for ruby-warrior is for all practical purpose, finished. It can load the maps, captives, sludge, and other monsters I didn't think of. Pretty cool.

I am just playing or rather, programming my AI to play the game to ensure that I didn't miss anything. It will be interesting to see if I can get the codebase merged back into the original game itself.

All that is left is the bonus programming that I will do. Two week is twice the estimation of this project. This is good. It is better to overestimate the difficulty and duration of a project rather than underestimate them.

My first patron is excellent. He gave me some good advice on how to manage a project and he paid me half for getting the project halfway. When the project is done, he will pay up the rest.

Now all I need is to do some bonus programming for the rest of the duration of the job and polishes them up.

I could probably promote the game at the end of this project and make some extra cash in the form of ads space. Not sure if it is a good idea to do it. Maybe it is tacky and unethical? I did create the graphical front end for it so I can probably promote my graphical front end.

Friday, January 23, 2009

Game Programming Job Scored! Victory is mine!

I got an informal contract from a fellow ruby hobbyist and programmer to work on the graphical frontend for ruby-warrior for 50 bucks. It is a small amount of money but hey we got to start somewhere, right? (For the record, 50 dollars is a lot of money for me)


Ruby-warrior is essentially an AI programming game in a hack and slash setting. It is something that only appeal to the very geeky crowd of programmers but it is also a lot of fun. My job is to basically blot a graphical engine on top of it to give it more oomph. I won't be doing pretty arts though.

Since the author already worked out the parsing details, making an engine should be a piece of cake. I done it mutiple of time already in my own projects over the years. The best part is that all the work will be made libre and freely availiable.

What I am hoping is jobs beyond this project and of course, more libre games. Every job to me would unlock the path before me and help me make my dream of writing FOSS video games for a living come true.

You can see details of the job here.

Feb 5-6 is the deadline. Let hope I make it!

Wednesday, November 5, 2008

Last Week was Very Busy

I didn't get the chance to code for a long time because the last week has been so busy...

Today, I got the chance to work on RubyTet. Currently, I am working on rewriting the way the game handle the data of blocks and indexes. I am integrating together. As a result, my game over code stop working. However, I don't know where is the location that determine the end game. So there are some voodoo code that I don't know about.

I hope to get some block destruction by the end of the week and I vow to work even more. I got 19 commits today so that's a good start. Moreover, I will be increasing my minimum commit rate to 15.

It is already November...If I don't finish my rubytet project soon then I am not ready to start ransoming my work in December. So I am going to self impose myself a deadline to be finished by this weekend. Here are the goal for version 0.0.1:

1. It will have ever increasing difficulty in term of speed

2. Score points properly. Bonus for straight drop.

3. Block destructions.

4. Polished opening screen.

That's all I can think of right now.

Wednesday, October 8, 2008

Day 17: Adding controls to RubyTet

For RubyTet today, I wrote the game control so that you can move around shapes. I still have not implement the shape changer though. Then I worked on adding rules for adding shapes since it isn't enough to be adding shapes to the field, but actually inserting in the correct position.

As for my other stuff...

Rails: I am momentary confused about rails migration. Tomorrow will clear up as I start over again over the migration part of the tutorial.

Trigonometry: I am proceeding slowly through chapter 3. Still many questions to go.

Libregamewiki: It is business as usual. Not much is going on there.

Friday, October 3, 2008

Day 12 & 13: Slugging through the Weekend

Apparently, my post for Friday did not successfully materialize. All of the work I have done for that blog post disappeared. Oh well.

But for Saturday, I made a fair amount of progress on different tasks.

RubyTet: I got the shapes fixed and is working on the drop code.

Libregamewiki: I am working on coordinating the construction effort so that the Libregamewiki will see its most activity ever since the project started.

Space Fighter Ace: I finished chapter 2 of my trig book. I need to accelerate the learning process if I wanted to finish the game by Christmas.

Rubygame book: I worked on providing the neccessary images for learning how to use surfaces.

Rails tutorial: I am slowly working through the tutorial at the moment. I could probably finish the whole thing in one day if I wanted to though. That should be a bonus mission for this weekend.

Thursday, October 2, 2008

Day 11: A Chapter Is Finished

I just finished chapter 1 of the trig book I am reading today. It took me a while because I was doing them between classes. Now, I am a little bit closer to having enough knowledge to complete my Space Fighter Ace project.

As for RubyTet, I got the viewer working. I just need to work out the kinks out.

I am also getting started on a rails tutorial. Once I complete that tutorial, I am going to go create a rails site for RubyTet. There, it will form the website framework for future games. My hope that it will evolve into a general framework for integrating games into sites.

Wednesday, October 1, 2008

Day 10: I Got Forked

To my surprise, my Space Fighter Ace project got forked. That mean it must be good enough for a project fork! I am excited to see what will happen. I am also learning my trig at a steady pace.

I also managed to get myself unstuck in the RubyTet project. It took me 3 try to find a solution.

As for the forum, I moved the Libregamewiki forum to the FGD network. Hopefully, it will attract new contributors to the wiki.

Tuesday, September 30, 2008

Day 9: Conquering New Ground

For the ninth day of development of RubyTet, I am stuck with something that I do not know how to fix. Nonetheless, I managed to do my 10 commits.

I also started reading chapter one of the trig book that I obtained. Turned out that it was in my book bag the whole time. Once I complete the book, I hope that I will be able to complete the physics of my Space Fighter Ace game.

I also picked out the website design layout for RubyTet. The color scheme has not been picked(it will be picked once I get there) and I did not yet choose the technology for the site. Will it be ruby on rails, or picked off from the shell(wordpress, mediawiki, etc)? I do not know.

One thing is for certain, I am progressing rather nicely. If it goes according to plan, I'll start asking for my first ransom in December.

Sunday, September 28, 2008

7th Day: Lazy Sunday Edition

So this is one week into nonstop game development! Yay!

Not much has goes on for Space Fighter Ace I am afraid. My selection of book is poor and over my head so I have to start all over again.

As for RubyTet, I am moving toward writing a previewer graphical element which allows player to know what is the next part going to be. Not only this is a gameplay element, it will help me tremdously with debugging the game. Since not only it will be displaying the shape that it is going to drop down but also the name of the shape.

On the Libregamewiki front, there is nothing much happening. Though AVRS, one of the Libregamewiki contributor agree with me that we need to resolve the licensing issue somehow.

Friday, September 26, 2008

5th Day: All System Back Online

Libregamewiki is back online. It also got mediawiki upgrades. I also started the first topic on my new forum concerning image licensing.

As for RubyTet, I finally got blocks drawn. It isn't much but that's progress. That's 10 commits a day for you.

I also finished upgrading the Libregamewiki blog, but there will not be a new blog post until next week. So, I am left with only Libregamewiki's planet to update. After that, I'll have to figure out something to improve Libregamewiki's service.

Tommorow, there will be definte work on learning my trignometry for Space Fighter Ace, whatever that may be.

Thursday, September 25, 2008

4th Day: Bumber Ride Progression

For RubyTet, my tetris clone, development is continuing along as usual. I got to the loading the blocks and then drawing part, except it doesn't draw. Moreover, I got the position of my graphics wrong. That's woe for anytime you do something new.

Unfortunately, there seem to be an outrage for the libregamewiki server at the moment. So I couldn't exactly make much progress to upgrading Libregamewiki blog. I just downloaded the latest version of wordpress. Maybe tomorrow, I'll have better luck.

The good news is...Libregamewiki got hit with stumbleupon traffic earlier in the day. It creates lot traffic, but it doesn't exactly benefit me ads revenue wise. So this mean I ought to increase the traffic flowing to Libregamewiki without somehow annoying users. If I can do that, I could get more contributors and more articles.

Wednesday, September 24, 2008

Day 3: The Forum is Ready for Business!

For day 3 in my development log, I continued my vague coding effort on RubyTet. I think we're close to something dropping down into the field.

With agonizing progress of 10 commits everyday, it may take a day or three for the first shape to drop. The important thing is that I maintain progress over time. That's critical discipline training for somebody who want to be a future owner of the first full blown free gaming studio.

Anyway, the big new is that my gaming forum is open for business. This will be the future home of all of my games and gaming services. Yesterday, Charlie of Freegamer suggest that I should abandoned my effort to create my own gaming forum for his general free gaming forum. I disagree.

I don't think I should be asking the guys at forum.freegamedev.net to populate their forum with my personal kiba gaming projects, especially of a commercial nature.

Anyway, since I am officially finished with revitalizing the forum, I'll move on to resurrecting the Libregamewiki blog.

Thursday, August 14, 2008

The 30 Days Postmortem

My 30 days 4 hours a day programming challenge is officially a success. It has propel me to new heights in such rapid pace not seen in the 2 years I been programming. I also learned what it meant to be a disciplined programmer and learned a few new tricks as well.

During the 30 days challenge, I worked on the game engine and the map editor for the KRPGE project, Playground Wars, Space Fighter Ace and the Rubygame Tutorial project.

What I Learn:

I have learned through the 28 hours workweek why my game development projects has been so slow to progress in the past. They just took a lot of work. Even with the 28 hours work week, I still felt that progress is very slow. Nonetheless, I managed to finish the KRPGE's engine proportion in about 14 days. The Map Editor is finished in about the same timeframe.

What went right:

Of course, I was able to keep the schedule despite interruption by parents and outside events. Best of all, I was able to progress phenomenally fast in comparsion to my usual pace of development.

What went wrong:

If there is any wrongdoing, it is that I was undisciplined when it come to designing my game engine's codebase. Although it was easy for me to use, for others, with no documentation, cannot use it. There are several releases of KRPGE but nobody use it except me.

What I would do differently:

I would learn unit testing and set up a bugtracker for each projects. I would also package all my games as gem. Also, it would be nice if I know more about optimization technqiues as my games tend to fall below 30.

What I gained from this challenge:

The most improtance gain is productivity, above all. I finally broke the cycle of procrastination and no game development. I tried many schemes but none work as well as the enforced work hours, in which I was driven to develop under pressure. This build upon my experience from the first RubyWeekend contest. I will continue to use this concept to help keep game development going.

I also gained a newfound apperciation of the difficulty of writing games evidenced by the slow development cycle.

Still, all of these sucess would mean nothing if I don't keep on the pressure on myself to continue game development at this kind of level. That's the next challenge.

Thursday, August 7, 2008

Day 27: Learning Trignometry and More

Although, I been practically gone all afternoon and all morning, I was able to start coding by 16:00 and finish the session for 20:00.

I got a little lecture from Beoran on trig so I can figure out what the heck I am doing with the movement code. Thus, I learned enough to figure out the angle for moving left. The lesson and movement code were incomplete though.

Since I probably didn't have much to do for movement code, I worked on other part of the game instead. I worked on the weapon, rewriting and cleaning up. Due to what the weapon system require and how I need the game to work, I extended the engine to allow for adjustable camera movement and then add an easy way to add characters. I also did the usual cleanup such as eliminating obsolete source code and data files.

Tuesday, August 5, 2008

Day 25: Cooking up Movement Code



The second day of development is all focused on getting the movement code for the player right.

So I spent much of my morning hours writing movement code and rotation code, although I still have to take care of fixing crash bugs because I forgot to include a few files in the mapeditor program.

The rotation code is pretty much complete. You can rotate counterclockwise and clockwise as well stop. The movement code, is on the other hand, have incomplete physics. Although you will go faster with accelerating and then you will continue to move even after you stop, it doesn't take into account the angle of movement.

This will be rectified the next day, I am sure.

5 more days to go!

Monday, August 4, 2008

Day 24: KRPGE Finished, SpaceFighterAce Next

KRPGE is finished in two days! That was quick. Then, I started work on the development of SpaceFighterAce.

First, I had to import svn into git before I can push it, which took me about an hour to figure it out. Then I pushed it to github and use the newly released KRPGE for this project.

At last, I spent time coding and finding graphic for the game. I decided to use a NASA picture as terrain.

This game is going to be awesome!

Sunday, August 3, 2008

Day 23: KRPGE 0.0.3 Works Began

Though I didn't do game development in the morning as I usually do, I still managed to do 4 hours of development.

The main objective for KRPGE 0.0.3 was achieved surprisingly fast and with a few improvement and slight modification over Playground Wars's code. Terrain support, though it suprisngly requires more code than I expected, was completed in the span of two hours. Huzzah!

I also began work on eliminating the redundancy found in EditEngine and GameEngine found in the KRPGE's two program as a neccessary unplanned project along the way to the secondary objective, which is to clean up the Camera's redundant codebase.

Than I began work on the camera itself, writing a method that can be used in all 4 directions and then getting the horzontial movement methods to use the new all purpose method.


Today is fantastic.

7 more days until I achevie my goal!

Friday, August 1, 2008

Day 21: Wrapping up Mapeditor Development

Today, I finished both the map stamping option scroller and the editing system as well. So you can edit maps and cycle through the options that you want to stamp.

The only thing left is writing messages for the logger and fixing typing rendering bug, as well writing the README for the map editor.

It will be released as KRPGE-0.0.2 instead of a standalone application. After that, I'll be working on the next version of KRPGE, incorporating any useful stuff leftover from the playground project.

9 more days left! :D

Thursday, July 31, 2008

Day 20: You can delete!

It is now possible to delete stuff in your mapeditor! It took me a good two hours to code out the functionality and then debug and fix it. Along the way, I made an improvement to the map engine's camera. You can save it and then reload it to see if it work.

I also learned that integers are immutable. Bumber!

Then the rest of my time are spent on figuring a way to display these characters and items graphics on the object chooser so I can get started on adding support for modifying the map. They don't work quite the same way as the map engine do. By the end of my 4 hours effort, I think I was quite close to finishing the mechanism for drawing these images.

A Roadmap

In order to keep the development of various projects from stagnating for a long period of time as well having a fresh release every so often, I devised a roadmap at the KibaBase wiki to follow.

The roadmap assumed that 28 hours are needed to complete each projects' goal. Thus a week is needed to achieve these goals, which is intentionally chosen for the purpose of having a release every week. Also it alternate between game tool development and game development to balance the need to create games and the need to create tools that will help create games.

This will hopefully achevie a sense of direction and progress as well keep me focused on what I need to do in order to achevie the goal of self employment by writing free games.