18/02: Coffee Quest Before 4 plans
Today's entry reminds me of an old joke. A pilot tells his passengers, "I've got some good news and some bad news. The good news is that you will be hitting the town early. The bad news is that you will be hitting the town." Well, Coffee Quest fans, I have some good news and some bad news. Before we get to the news, though, I will point out that this week's winner on the Blazing Games coming soon poll is Picture Puzzle 2. The next few weeks should be interesting as the non-story games have all built up good numbers so the polls could go any direction. In fact, if the non-story fans started taking advantage of the one vote a day policy that the coffee quest fans are taking advantage of, things could change quite dramatically.
Now, as for that news. I had started the week thinking that I wanted to give the coffee quest fans something, as my new skill system that is under development is a while off and I don't want to post code unless it is functioning. So, I figured that I would play around with the bitmap support that Flash 9 has and see if I could port the ray casting code. That would be visual and would at least let them know I was actually working. While playing with the bitmaps, I started thinking that perhaps a software 3D engine might be possible. I have enough knowledge to do this, and the new JIT compiling that Flash 9 does might make it fast enough. Still, software 3D is a lot of work. So, I did a search to see if anybody in the open source community was already working on such a project using a LGPL compatible license. Then I found Papervision 3D. This is a very impressive software 3D engine which should be able to handle everything that I need for Coffee Quest 5 and 6 (and then some). That is the good news.
The bad news is that the source code is in private beta, which means that while I may be able to play with their code right now, I am not suppose to release anything that uses their code. Or at least that is my interpretation. That means that the 3D aspects of CQFS exist but won't be officially implemented until sometime in the future. So, for you fans who are wondering what is going on with CQFS (and more particularly the Coffee Quest games that are going to be using this) I will outline my work plans for Coffee Quest Before 4.
I am currently going to finish the new entity/skill system that I have been working on for quite a while (about 25 hour so far) which is a much more flexible version of the entity system that is being used in Dungeon Romp and Melee Combat. While this was originally going to be a quick port of the existing code, the changes and additions I have made to this system (such as having it use xml, a much cleaner template system, and a skill system that is very flexible) have pretty much required a re-write from scratch. This entity system covers all the creatures, items, and NPCs in the game as well as the player so finishing this exceedingly important. Once I have the system working I will post it just so fans can see that some progress is being made.
Once this is done, I will get a proper character sheet and inventory working. In theory this shouldn't be too large of a step, but it will probably take a lot longer than I want. Of course, this is very visual so at least non-coders will have something to look at. I will get the stores working at this point as well, if only so I have an easy way of getting items in and out of the inventory. Yes, there will be stores, and towns, in CQb4, CQ5 (just a store) and CQ6 (many different cities).
The next step will be the map system. This is actually far along in development as before switching CQFS to Flash I was doing this in Java so it is just a matter of porting code that already exists (no, it's not functioning which is why it was not released. I have a personal policy of not posting code on a public repository until it is functional [not necessarily complete, but it should compile and run]). This leads to the combat system, which should cover all of the role-playing parts of the engine. If Papervision3D isn't ready at this point, I will have a bunch of difficult decisions to make, which I will probably have polls for so Coffee Quest fans can have their say.
Once the CQFS stuff is done, it is just a matter of making maps, data files, artwork, and implementing CQb4 related puzzles. Yes, there is a lot of work ahead of me before CQb4 sees the light of day, but I think it will be worth the effort.
Now, as for that news. I had started the week thinking that I wanted to give the coffee quest fans something, as my new skill system that is under development is a while off and I don't want to post code unless it is functioning. So, I figured that I would play around with the bitmap support that Flash 9 has and see if I could port the ray casting code. That would be visual and would at least let them know I was actually working. While playing with the bitmaps, I started thinking that perhaps a software 3D engine might be possible. I have enough knowledge to do this, and the new JIT compiling that Flash 9 does might make it fast enough. Still, software 3D is a lot of work. So, I did a search to see if anybody in the open source community was already working on such a project using a LGPL compatible license. Then I found Papervision 3D. This is a very impressive software 3D engine which should be able to handle everything that I need for Coffee Quest 5 and 6 (and then some). That is the good news.
The bad news is that the source code is in private beta, which means that while I may be able to play with their code right now, I am not suppose to release anything that uses their code. Or at least that is my interpretation. That means that the 3D aspects of CQFS exist but won't be officially implemented until sometime in the future. So, for you fans who are wondering what is going on with CQFS (and more particularly the Coffee Quest games that are going to be using this) I will outline my work plans for Coffee Quest Before 4.
I am currently going to finish the new entity/skill system that I have been working on for quite a while (about 25 hour so far) which is a much more flexible version of the entity system that is being used in Dungeon Romp and Melee Combat. While this was originally going to be a quick port of the existing code, the changes and additions I have made to this system (such as having it use xml, a much cleaner template system, and a skill system that is very flexible) have pretty much required a re-write from scratch. This entity system covers all the creatures, items, and NPCs in the game as well as the player so finishing this exceedingly important. Once I have the system working I will post it just so fans can see that some progress is being made.
Once this is done, I will get a proper character sheet and inventory working. In theory this shouldn't be too large of a step, but it will probably take a lot longer than I want. Of course, this is very visual so at least non-coders will have something to look at. I will get the stores working at this point as well, if only so I have an easy way of getting items in and out of the inventory. Yes, there will be stores, and towns, in CQb4, CQ5 (just a store) and CQ6 (many different cities).
The next step will be the map system. This is actually far along in development as before switching CQFS to Flash I was doing this in Java so it is just a matter of porting code that already exists (no, it's not functioning which is why it was not released. I have a personal policy of not posting code on a public repository until it is functional [not necessarily complete, but it should compile and run]). This leads to the combat system, which should cover all of the role-playing parts of the engine. If Papervision3D isn't ready at this point, I will have a bunch of difficult decisions to make, which I will probably have polls for so Coffee Quest fans can have their say.
Once the CQFS stuff is done, it is just a matter of making maps, data files, artwork, and implementing CQb4 related puzzles. Yes, there is a lot of work ahead of me before CQb4 sees the light of day, but I think it will be worth the effort.