Showing posts from February, 2010

0.8.0 on the way

Sorry I haven't posted in a while. I have been real busy with school, taxes, and life in general. This quarter at school is almost over and I have all of my taxes taken care of except my city taxes. Even though I have been busy lately I have managed to make some progress on Enigma. I only have one known bug right now assuming the right-click death doesn't return. I have also gotten Enigma client and server to work on Linux minus the video playback and in game browser. The video simply isn't implemented for any other platform because the windows version uses DirectShow. I plan to use gstreamer for Linux but I haven't implemented it yet. I'm not planning on doing that for this release though because that will be allot of work to learn the API and get a working implementation. However Audio, Video, and physics all have a device based architecture so it is easy to create new "devices" if you know the API. What I really need is some platform maintainers or jus…

Npc working

I got npcs working in enigma about an hour ago. I thought I should post an update for all of you keeping tabs on the project. I cheated and used the message to locate the answer from the answer map but it works pretty well right now. I'm also keeping all npc information in memory. This may become a problem in the future because of the memory requirements however I'll cross that bridge when I come to it.

That is normally a bad policy but like many other things in this project until I get some hard data about how this all works under load I can't optimize correctly.

It's getting late I'll blog more when I'm closer to the next release. Peace out.

Npc progress

I finally got Npcs in the game last night. Or at least the server reports them to the client correctly and the client displays them in the correct location. Right now the location is pretty bad I just set it to 0,0,0 so it's off the edge of the map and below it a bit. You still can't talk to Npcs or anything yet so this seems like a baby step but it was a pain. One thing I should mention is that the Npcs id field is zero which is a problem. Server side I made the code use a string Id for Npcs so content creators could give them meaningful Ids. That won't work for the client/server protocol though because the string id could be large and I should really only need 4 bytes. Well unless we need more than four billion Npcs. But anyway I'll have to account for that somehow. Maybe a static int that increments when a new Npc is created. Like a reference count but I wouldn't decrement it when one is deleted. I mean really I only need the id for telling the client which Npc …