Description Box

I’ve now added description boxes for items in the game. When you hover over an item it’ll now open a window and display the items description text.

I have also come up with a new design document which alters the game play. I am switching Crestfallen from being a naval based game to on land. You’ll be able to play for one of two factions and choose to be either a Warder, or a Wizard. Both classes have melee and ranged, the main difference will be in the abilities. Wizards will use Will in order to channel magic, while Warders will use Will differently to focus on specialized mundane attacks.

AI

Its been a while since I have posted anything. I am up to version 1.0.50. Currently I am working on implementing AI. I have been working on the AI since December, and have been experimenting with different ways to handle it. Tonight I decided to trash the way I was doing and rewrite my AI from scratch.

I looked into using Panda AI which is included as of Panda 1.7.0. I quickly ran into a huge issue that I have yet to figure out. First, Panda AI requires you to build static meshes for navigation. This is a problem since I am currently using a heightmap generator, my terrain mesh is dynamically generated. I tried to find ways to work around this, but ran into a wall every time.

This brings me to my AI library. I am definitely taking ideas from Panda AI, but I am writing it such a way that it will not require a static mesh to generate paths. I am implementing the following features;
Add a team
Add a group of units to a team
Add units to a group
Behind the scenes update task is automatically called when the class is instantiated. This update task is responsible for controlling the AI.
Ability to specify world obstacles. Objects that should be avoided by the AI.
Ability to specify AI boundaries. Since I am using heightmaps for my maps – this solution will likely be derived by creating another image, which will then be read in and will determine where a npc can travel on the map.
Ability to specify the following behavior priorities for each group:
1. Go to waypoint.
2. Seek.
3. Attack.
4. Avoid other ships. This specifies how close a ship will get to another ship.

Pharmakos Software, LLC

I have officially launched Pharmakos Software, LLC.  I have registered the domain www.pharmakossoftware.com, nothing is there but a blank page for now.

I will retain this site as my personal development blog, albeit I will likely link to it from the other domain.

On to the good stuff.  I have upgraded to the latest version of treegui.  I have to say that I am loving the new version.  I implemented a basic HUD containing health, mana, gold and a time elasped clock.   I’ve also added the first song which was contributed by my friend Tim Soderstrom.  You can visit his site, Moo Cow Productions, under the Blogroll.

Here are the latest screenshots from version 1.0.0.20.

Shiny new HUD

screenshot-tue-nov-17-22-47-38-2009-2754

Shiny new HUD

*mutter*

I have been unable to work on the game for the last month or so.  First, my desktop died….and it died gloriously.  I ended up having to purchase a new motherboard and cpu.  I’m using onboard video until I can save up for a nicer video card.  To make matters worse, the computer died days before a trip to Utah to find a place to live.  While I was able to order new parts, and have them shipped, I was not able to assemble the computer until about two weeks later…just in time for me to actually move to Utah.  The entire month of August was a bust development wise.  I am settled in here now and am looking forward to getting back to work.

Themes

Its been a few weeks since my last post.  I am working on the game nearly every day.  Visible progress is slow, but I have been making changes to the code.  I now have networking code, and have added authentication into the game.

I am currently working on making my own theme, and refactoring the gui code.  While treegui had a decent basic system, I’m needing to modify it to my meet my nodes.  Since I am not a graphic artist, its going to take me a little while to make a decent looking interface.

Camera Control

Camera control is now fully functional.  Right now I’ve mapped wasd to control the camera.  The camera stays pointed at the player model.  The camera moves from a behind the character perspective all the way to top – down perspective.  The camera can also be rotated entirely around the player.  I will be adding game option settings to set the camera to near, medium and far.

I am waiting on adding player movement before releasing any in-game footage.

Wireframes, HDR, Screenshots … oh my!

I added the ability to take screenshots in game, as well as toggle textures on/off, and toggle wireframe on/off. I also added the option to enable/disable vertical sync in the video settings. HDR is now enabled, although I haven’t hadn’t that to the video settings screen yet.

I added a terrain generator class. I created a completely flat terrain, since the game will mostly be in water. I’m working on creating a water shader which will make the water…well…look and act like water.

I’ve implemented the in-game menu system. My game is going to be multiplayer only. I’m designing the game to be anti rage quiter as much as possible. For instance, once you start a game – there will be no option to return to the main menu until the end of the game. If you want to quit mid-game, you’ll be forced to exit to desktop – and doing so will penalize your ranking heavily.

As you can see there is a chat button, however it is only semi functional at this point. It accepts user input, but I have yet to build out a chat window and log.

Menu System

Ok, the menu system is functional.  You can now set audio and video settings.  The game must be restarted for changes to take effect.  I am using treeforms treegui for Panda3d.  Well, in all fairness, its now a pretty modified version of treegui.  Treeform’s alpha version was a good starting, I’ve had to make several changes to make it work how I’d like. Unfortunately I’m still using the default theme that came with treegui, but here are some pics demonstrating the menu system. I’ll change the theme as soon as I can, especially since the theme does not fit my game type at all.

Game Menu

I worked on the game menu today.  You can now go into all of the submenu’s and traverse the main menu.  I am going to re-use some code from OpenMyGate.  I wrote a windows registry class, to read and write to the registry, and plan on using that store the game configuration settings.  The next item I am working on is making the sound and video options.  The game settings will be loaded from the registry when the game is first started, any changes made to the game configuration will be saved to the registry.

Open Source Contributions

This is unrelated to both projects I am working on.  I made my first contribution to an open source project.  I submitted bug 3324 in LimeSurvey, and submitted the fix along with it.  The fix itself was very simple, and they included the change in the latest release, 1.85.  Anyways, it feels good to give back to the community even if was a very minor contribution.

Return top