Friday, August 14, 2009

Video

Here is the first demo video for Broken Empire. Hope you enjoy it!

http://www.youtube.com/watch?v=jDQZfWdsLko

Wednesday, August 12, 2009

Chat

Well, it isn't as elegant as I would have liked, but I am now able to pass messages between clients as a chat system. Currently the messages appear on the console, rather than on-screen, but that isn't a big deal. Easily taken care of! Also, I only have implemented zone-wide chat. No whispers or kingdom chat at this time.

The downside? I need an actual node path to get the chat manager to instantiate. I may be able to stash() it to keep it from showing up, but it still isn't what I was hoping would work.

I will have to ask a couple questions in the panda forums tomorrow, but I am happy with where it is at for the night.

Oh, btw: Did you notice I mentioned kingdom chat up there? That is going to be the grouping that corresponds to guilds or corps or whatever in other games. You will be able to establish private jump-nodes to other star systems. These will be 2 linked nodes, that cannot go anywhere else. The up side is that if you want to create a private area in the game, you can lock out other jump nodes, and just keep your own grouping of star systems that you and your friends share. Similar to bubbles in TradeWars, which is exactly the type of concept I was looking for here.

I also updated the flight controls so that the ship rotates slightly as you steer, so it doesn't look so fixed in space. As you pitch and yaw, the ship changes the pitch and heading to make the motion more realistic. Someday I will learn how the particle system works and then add side thrusters as well. The only thing I don't like about it right now is that if you release the steering button, it 'jerks' back to center, which can be a bit disorienting. I need to animate the transition back to center, hopefully with a simple lerp() function.

All in all, a good night.

Sunday, August 9, 2009

Checklist

I have posted the starts of a checklist of things to do. As people get a chance to try things out, I would hope that additional items would be put into the comments sections ongoing.

Saturday, August 8, 2009

Database (yay!)

The asteroid field is now contained inside a database. It reads into a list structure that works just like the old one, so the change is seamless. However, it will now be much easier to programmatically change the asteroid locations in the database.

Going back to the earlier checklist I made:


(/)Database (ugh) for persistence.
(X)Respawning asteroids.
( )Jump node between starting point and asteroid field.
( )Chat system.
( )Defining minerals and randomly populating the asteroids with resources.

( )Ship detail database storage
( ) 2d Overlay for ship controls

I will give a half mark for database. I now know what I have to do to manipulate it, but there are obviously more things that need to be done immediately (player persistance, for example). I also need to start saving and recalling ship details.

I guess a jump node would be a good next step, since it is mainly just causing the jump on a collision, rather than from a keypress. I also want to get a chat system in place, and work on the 2D overlay for the game controls.

Friday, August 7, 2009

Database (ugh)

I am in the process of learning database access in Python. It really isn't that bad, it just seems that my brain is opposed to absorbing the info.

The good news is that I have a database, and there is a table defined for all of the asteroids. I have info entered in for 2 of the asteroids, and my small test program is now able to read the field names from the table, read the fields, and put them into a 2 dimensional list. This is the same structure that the current CSV parsing function uses, so if I can build a DB access function to put the data into the same structure, I won't have to change anything else in the program to make it work.

The other good thing is that once I can read the DB in code, I will then make it so I can write the DB in code. At that point, it would be almost trivial to make a solar system editor that lets me drag and drop asteroids into the scene, and get them added to the database on the fly.

Work continues tomorrow...

Sunday, August 2, 2009

Weekend Progress

Slow, but got some done. Asteroids now respawn, and as a bonus, they no longer just sit there. Each client handles spinning the asteroids in space. The AI sends XYZ positional data, and the client puts an HPR (heading, pitch, rotation) spin on it, randomly generated for each asteroid. It definitely adds to the effect.

Still need the database, which is getting more pressing with each step, but will require a bit of research before I can implement it. Also, I want to get a chat system in place for communication between players. And, of course, all the other stuff I said in the last post.

I think I will load it all up to the server and check the outside connection tomorrow. If that goes well, I may let a couple people connect to it and see how little there actually is!

Thursday, July 30, 2009

Baby Steps

I got the starfieldAI program moved to the server. I tested with 2 clients. A bit of an anomaly starting the second one, but it sorted right out, and everything worked fine. What was nice is that I just moved it to the Linux box with FTP, and started it up. No re-writes, re-compiling or anything.

Next steps:
Database (ugh) for persistence.
Respawning asteroids.
Jump node between starting point and asteroid field.
Chat system.
Defining minerals and randomly populating the asteroids with resources.

Not necessarily in that order.