Tuesday, April 19, 2011

finishing up

So now our project is finally coming to a close, it is really time to get going.  Our team has created a poster, which looks fantastic.  Brittany is putting together an awesome prezie for our final presentation.  Staci and I are finishing up graphics, and Jaime has already done with her tasks.  Today Staci and I plan on implementing the rest of our graphics.  That includes adding a small  animation for each of the magic spells (lightning, fire, and heal).  I have just drawn the graphics for the lightning that we will implement.  A little cloud will appear, and then the lightning will flash two times.  It will be very simple, but it is going to be fun to have some sort of reaction when the player hits the lightning button.  There is already a fire graphic in the code, so I will use that for our implementation of fire.  Lastly, for heal I thought that we could just have little stars flash a couple of times.  After this, our group is done with coding and it just comes down to the presentation and submitting our code.  I hope that we can have it done by the end of the day, but We will definitely have it done by Thursday. 

Tuesday, April 12, 2011

Discovering of fire

I have finally completed the bones graphic I was working on.  Now, whenever a player dies, a small pile of bones appears in its place.  I think that it adds a fun visual for the game that was lacking before. 

Now that I have completed the bones thing, I need to move onto my next task which is to add a fire graphic when the player uses the fire attack.  I think that the concept is very similar to how I added the bones graphic.  It should not be too difficult, so I would like to have it done by Thursday or Friday.  Then I need to do the same thing for lightning, attack, and heal.  Once I figure out how to do the fire one, the rest should follow quite easily.

The semester is zooming by though, so I need to make sure that I stay on top of my tasks or I will be swamped at the end.  I am really happy with our group's progress, and I think that we've already made an impact on the game and the project in general.

Tuesday, April 5, 2011

Graphics

Staci and I have been working on adding some more graphics to the game.  After fiddling around for a few hours in the code, we were able to figure out how to add images onto the game.  This is actually a big breakthrough because now we will be able to implement our ideas.  The thing we are working on now is adding an image of bones after an enemy is killed.  Jaime wanted to add a puddle of blood, but we thought that might be a big gruesome for fourth graders.  We have already added a temporary image for when an enemy dies, and it is in the correct spot.  I just need to draw an image of bones in photoshop so that we can replace the temporary image.

After this, we are going to look into how to add a fire image when the player uses the fire attack.  This should be fairly similar to what we're working on now, so hopefully it will go smoothly.  I would like to have the bones done by Thursday, and the Fire done by next Thursday.

Tuesday, March 29, 2011

POSSCON

POSSCON was really great.  It was definitely a long day, but well worth it.  We had to be outside the computer science building at 7:00 in the morning.  On my way there I saw a school bus going by, and I thought I had been left for a second; I was relieved to see the two vans still outside the comp sci building still there! 

Once we got there, I was happy to see there was breakfast waiting for us.  After grabbing a muffin, we were whisked into a conference room for the "opening ceremony."  It was informative including a few speakers from places like Apache and Microsoft.  My next speaker was "Mad Dog" who actually mocked some of the statistics given by the guy with Microsoft.  He seems like a die-hard open source fan who wants to "stick it to the man."  His speech was very engaging though, and he did not really have the heir of a mad scientist that I had expected.  The world of computing and open source has changed so much in his career.  It is crazy that he was in this world from the beginning and is still in it.

Walter Bender was really cool!  You could tell that he was not impressed with the current school system.  He sarcastically mentioned things such as collaborating is condemned as cheating; in the real world, nobody works alone.  I was really impressed that he created an entire activity on the plane here.  Also, I was impressed that he came all the way from Norway to come to POSSCON.  Something strange though, in one of the activities he showed us about matching patterns.  He had a Nazi symbol as one of the patterns to be matched.  I think it is also a Buddhist symbol... but that was strange.  After his presentation, a bunch of us rushed to him to ask questions.  We talked about the activities that we worked on, and he had heard of Fortune Hunter, so that was awesome.  We asked him when he found time to work on open source projects, and he said that he was unemployed, and that was all he did.  I am amazed by that commitment, but I am too selfish for that.

The last presentation that I went to was about using open source alternatives to software that you would otherwise pay for.  That was definitely informative.  It was kind of weird though because I feel like the audience was just talking amongst themselves and answering the questions being asked instead of the presenter.  He was talking about web development, and which tools he used.  Afterwards, we asked him which were his favorite tools for web development and he said that he was most comfortable with PHP.  He also praised Ruby on Rails.

Overall, I had a great experience.  I talked to two presenters, and I sat with random people at lunch that I talked to.  They were from Oracle, and I asked them all about opportunities.  They said that they are all over the world, and nearly all of the locations accept interns, and that this would be a great way into the company.  I am interested in user interface development, and they said that they have pretty much every kind of computer science position.  This conference was well worth the 12 hour day!

Tuesday, March 22, 2011

On Schedule

We are moving forward with our Fortune Hunter Project.  My first task was to fix the "transparency bug."  All of the enemies in the game are drawn as simple 2D figures with a pronounced black outline, or should be.  The black outlines were not showing up in the game.  I took all of the enemies into Adobe Photoshop and changed the black lines into a very dark gray, which looks black.

This was a very tedious process because Photoshop is on Windows, so I had to restart my computer, and then play through the game until I found an enemy every time I wanted to test my fixes.  It was particularly frustrating because if I missed a single pixel, then there would be a noticeable white dot somewhere in the enemy.  I also set up the rest of the concept enemies that still had backgrounds, and took out those backgrounds so that they can be put into the game as well.

I'm looking forward to POSSCON this weekend.  There are three people that I am particularly interested in seeing.  When I was looking through the people that would be presenting, "Mad Dog" stuck out.  He looks like a mad scientist, and I think that alone will make him interesting to talk to.  Also, he has been very influential with Unix, which is an integral part of open source.  He seems like a strong advocate of open source projects, and I would like to know how he finds time to work on projects and still make a living.  Actually, I would like to ask all of the speakers about this.  Walter Bender from One laptop per child will be there.  Not to play favorites, but I am most excited to see him.  Since I'm working on the sugar labs/OLPC project, this will be cool to see the guy who started the whole thing.  Also, he was involved at the MIT media labs.  I am interested in getting into interaction design and the creative side of computer science, and the MIT media lab is legendary in that area.  I would also like to talk to another guy who might be there on Thursday from the MIT media lab.  I think that will be the main part of his presentation, so that would be really informative for me.  I can't wait until next week!

My next task will be to start looking into adding a visual to the lightning attack.  I am really looking forward to this task.  I loved working in the graphics package in python programming class; I got really into the program we had to do on a jack-o-lantern and spent way a ton of time on it. My jack-o-lantern with flashing eyes was voted best in the class :)

I am excited to see what the other group members have done this week when we meet today.  Every Thursday Brittany is going to report back our weeks progress.  Fortune Hunter project is looking good so far, but I think my next endeavor will be much more challenging.

Tuesday, March 15, 2011

Back to work

I just got back from Spring break in San Francisco; I had a great time.  I guess that means it is time to get back to work.  We have created a timeline for our project.  We we plan to accomplish several smaller tasks au lieu of one big task.  That way we will be sure to have something accomplished, even if we cannot finish them all.  That being said, I think that we have taken on tasks that are difficult, but I know that we can do them.

We have decided to have specific tasks that each of us are to work on.  Brittany is going to be working on documentation and link between four's company and Fortune Hunter. Jaime is working on on the dungeon bug; Staci will be working on other coding and design (including menus), and I will be working on graphics.

My first task is going to be to fix the invisible outlines of the enemies.  I have found a simple solution for this bug, so I will have it done by next Tuesday.  In addition to this bug, I will work on adding visuals to the game whenever the player does an attack or magic event.  I will probably just have a simple flashing graphic for each spell including fire, lightning, heal, and also attack.  The lightning graphic should be accomplished two weeks after I finish the bug.  Then each week after that I should have another implementation completed.  I think that this is a realistic goal for the end of the year, and it should add a lot to the experience of the game.

Thursday, March 3, 2011

Project Goals

We have been looking at Fortune Hunter now for a while.  We were able to fix the scan bug, and now we need to think about what we want to complete by the end of the semester.  First, there is one more bug that is listed on the bug tracker, although I think that there are definitely some more bugs.  This bug deals with getting stuck in one of the rooms.  This will be a difficult bug to fix because in order to test it, we must play through to that room each time.  This could take quite a while, and it will get really frustrating.

We found another bug that we would like to fix.  This involves the enemies' images.  The color black in the enemies shows up transparent.  After investigating this issue, I saw that there is a method convert alpha.  This changes the alpha (transparency) of a given color.  This allows you to have a character drawn on a certain color background, and then get rid of it to allow the actual game's background to show through.  There must be a call to convert black to an alpha of zero, which makes it transparent.  We could probably go through the code, find it, and fix it, but I think there might be a simpler solution.  If we were to go into photoshop and change all of the black to a very dark grey, it would look practically the same.  However, the dark grey would not be converted to an alpha of zero, so the image would remain intact.

Other possible features that we could work on would be to add visual elements to the battle scenes. For example, I think that it would be cool to have a simple fire image flash when a fire spell is called.  I saw that there was actually a fire image already in the source code, but I'm not sure what it's used for currently. Since the graphics are very simple in the game, I don't think that it would be too hard to add a simple 2D images into the game. We would just need to look into how the images are drawn onto the scene.  Once we figured out how to do one, it would be simple to add images for the other attacks such as lightning.

I hope that we are able to make some good contributions to Fortune Hunter.  I think that if we stick to fixing things that are not out of our comfort zone, then we will be able to make an impact on the game.

Thursday, February 17, 2011

getting to the good stuff

After we chose what bug we would fix, we started looking through the code to find anything that related to the scan.  The bug was that when the player tried to scan an enemy, it would attack them and would not actually scan them.  We quickly fixed the problem concerning attacking the enemy when a scan is used.  There was actually an attack command under the scan enemy function.  We just got rid of this peice of code to fix that problem.  I believe that Jaime has found the solution to the other part of the bug.

Now that we have fixed the bug, we need to start thinking about what we can do to contribute to Fortune Hunter.  When I played the game, I thought that there was a serious need for improved graphics.  One of the characters was really pixelated and was see-through in parts of it.  Also, it does not react at all when it is attacked.  I would be interested in adding some sort of graphics element that made the game a little more interactive.  I think that this would be a feasible project for this semester.  We will see what the group decides.

Thursday, February 10, 2011

extermination

After attempting to build the project all weekend with no success and researching possible problems for hours, I got into the classroom and tried to show my teammates the problem, so I used the exact same terminal commands that I had been using all weekend....it worked on the first attempt!  In a way, it was frustrating, but I am really happy to have the project built.  Our project uses git, and it has a repository within the main repository called "fortune engine."  That was where my problem lay; I had to get the files from that repository by updating the git submodule using the terminal.  I kept getting the same error, which was something like "no socket available."  I researched what could cause this error, and the main consensus was that I had a firewall up that blocked the connection between my computer and the repository.  I'm not sure what it really was; it could have been as simple as my internet connection is too slow at home.

Whatever the issue was, I have the game running now.  To build the project, all you have to do is cd to the folder that contains the "MafhActivity" and run it by terminal using the "python MafhActivity.py" command.  Something that we thought was weird about the project was that we cannot see the whole game on our laptop screens, and the game cannot be resized.  We asked Jonathon (the Fortune Hunter guru) about this problem and he said that the game is made specifically for the XO laptops, and that is the resolution that they need.  He jokingly said that the only fix would be to get better computers... although I think that he was not joking.

Fortune Hunter only has two active bugs at the moment, so that made it easy for us to decide.  One of them was that once the player got into a certain dungeon, he couldn't move around in there.  We thought that this could be too difficult to find the source of the problem.  Instead, we chose the bug about the "scan" function.  Players have the ability to attack, perform magic, or scan an enemy.  The scan function should show the enemy's weakness and the number of hit points left.  However, when you scan now (which we have done now in the game) it instantly kills the enemy.  Not only does it attack when it should not, it doesn't even show the enemy's weakness or hit points left. 

We thought that this was a bug that we might be able to fix.  We have started looked at the source code that involves the scan function.  We found the def of scan in a python file.  It seems to be correct.  That means that the source of the problem is that the scan function is not actually called.  When the player hits the "scan" button, it must call attack or something.  That is our current theory, we shall know soon enough with further investigation.

Tuesday, February 8, 2011

Looking better

Things are starting to look better for four's company.  Originally, I was trying to build the fortune hunter project in netbeans, but after contacting one of the main developers, he said that he just runs the file mafhactivity.py, and that runs the game.  We tried this, but we got an error regarding one of the files called game engine.  When we looked in the game engine folder, there was nothing in it.  We asked John about this, and he said that this was an easy fix.  We just needed to do a git submodule update, and we would be able to run the game.  Everyone was able to run the game except for me!  I am going to ask my group for help updating the git submodule....   This should hopefully be a quick fix, and then we will be able to start looking for a bug that we would like to fix. 

I went to do the homework for the class today,  but for some reason the cs.cofc.edu was down, so I was not able to access that.  will blog about it after I can access the site again...

Tuesday, February 1, 2011

Rough Week

This has been a tough week for four's company.  Staci and I have been sick for the last few days, and Staci has had even more trouble with her computer.  Our team has not been able to meet and work on this deliverable together, so that has made things more difficult.  Four's Company have officially decided to work on Fortune Hunter, which is an educational RPG activity for Sugar OS.  We originally thought that this project was too complex for us to work on, but we will be able to manage will all of the support that Fortune Hunter offers.  We have all been trying to get the code and build our project on our own, and none of us have been able to complete this. We have all been able to get the code for the project.  I think that we have all done it in different ways.  Jaime used the terminal to get the code as well as Brittany, but she was able to do it in OSX. 

I was able to get the source from the GIT repository for our project.  It was fairly painless, once I signed into the repository, there was one button to get a ".tar" for the whole project.  I installed Netbeans with python plugin to try to build the project, but I have been unsuccessful.  Now that Staci and I are feeling better, We need to work on this together so that we can build our project.  We have now fallen a little behind, but I think that we will be able to catch up. 

Tuesday, January 25, 2011

Getting more specific...

Last week we chose to contribute to the Sugar Labs project, but that is like giving your address as North America.  There are tons of things to choose from, and we have all decided to work on the Math4 project.  This is still general because within Math4 there are a lot of projects.  We've narrowed that down to three, presently, and they all seem really cool.  All of them are math-centered video games with very simplistic graphics (all of them are 2-d games).  It's exciting because I think that we will all do well to contribute.  We've signed up for the mailing list, but now we need to contact the people from the individual projects.  All of their emails are on the wiki, so it should not be hard.  They all also have very welcoming words on the wiki that makes anyone feel comfortable contacting them to help contribute to the game: they are not just asking for senior software engineers.  I'm really excited for this project, I think presently "PacMath" would be my favorite project... I always like the original PacMan game, so I think that would be fun.  They have lots of specific tasks that need to be accomplished. 

I read in more detail "The Cathedral and the Bazaar."  I think that this is going to be a helpful resource, not just in this class, but also in Operating Systems where we are going to need to use Linux extensively.  At present, I am pretty "anti-Linux," but this made me feel a little more interested in getting to learn it better.  I am hoping however that we will be able to work on our Sugar Labs Project in our "native" operating systems.  Here are some interesting quotes that I found from "The Cathedral and the Bazaar" that might be useful to me now or in the future:

"If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource."

"Smart data structures and dumb code works a lot better than the other way around."

"To solve an interesting problem, start by finding a problem that is interesting to you."

"Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging."

"Good programmers know what to write. Great ones know what to rewrite (and reuse)."

"When you lose interest in a program, your last duty to it is to hand it off to a competent successor."

Thursday, January 20, 2011

Project chosen...

After presenting our top three choices to the class, we have finalized what project we will be working on.  Our group along with another will be working on sugar labs.  There are tons of projects to work on, but our group presently plans to work on Math4.  It is a project that creates fun activities for fourth grade students to learn math. There are opportunities to help with current projects or even start our own.... our group has not yet decided what we are going to do.  I am really excited about this project, especially since it is for a really good cause.  I joined the IRC chat called "sugar newbies."  There are capabilities for chatting, although there were not many members on.  There are quite a few other IRC channels as well for things such as specific development questions.  I also joined the mailing list, and our group created a team email account so that it would be easier for us to share emails concerning this project.  I briefly skimmed over Cathedral and the bazaar, and it seems to be a useful resource for people beginning in the open source world.  I liked the statement saying that once you got bored with a project, you have the responsibility to pass it off to somebody else.  Do your civic duties.  I will read in more detail and comment on my next blog.

Thursday, January 13, 2011

Day Two

Today we were looking into what FOSS projects we would work on for this semester.  The main one that jumped out at me and the rest of four's company was OLPC (one laptop per child).  This project seeks to make sure that every child has a laptop.  They have created a cheat and durable laptop that uses solar power so that kids in even the most remote regions would be able to have access to a computer.  There are tons of possibilities in this project from creating educational activities, reporting bugs, helping with documentation, or even contributing to the user interface that runs on the laptop.  This project was primarily written in Python, which makes me feel confident that we would be able to look through the source code and know what is happening.  Not only would this be an exciting and fun project to work on, I like that it helps underprivileged children; it is definitely something I would  like to contribute to.

Sugarland is another possibility for a project that we could work on.  It ties into OLPC, but the focus on that would be the interface on the laptops.  This would be my second choice because I am really interested in user-interface design.  I think that it would be an interesting project to work on that we would be able to contribute to.  I would prefer OLPC where we would be able to create activities for children.

Our third choice is Open office for children.  We chose this because we are set on doing a project within the realm of education for children.  We have all used open office, so our familiarity makes us feel comfortable with this project.  We are looking forward to working on one of these projects, I really hope that we will be able to work on the OLPC project however, our group is very enthusiastic about it.

Wednesday, January 12, 2011

Day One

We did not waste any time on the first day of class.  We got straight into groups and began working on an introduction assignment.  I got a strong sense of deja vu as I looked around the classroom and saw nearly everyone from my software engineering class and had the same introduction assignment in front of me.  I am apart of the group four's company, and I am looking forward to working with them.  Now we need to just find a FOSS project to work on.  I learned from software engineering that this is an important step.  You can waste countless hours on a project only to find out that it is not within your capabilities.  I hope that we can find a somewhat simple software that we can get really familiar with so that we can really contribute to the project.  I would say that day one was encouraging, and I am interested to see what the class brings.