Older blog entries for Excalibor (starting at number 4)

OK, been working in Math::Vector and Math::Vector::Vector3D and it's almost ready to submit to CPAN.

I've sent an RFC to comp.lang.perl.modules to know the opinion of people about it... I've checked there's a Bit::Vector package, but it seems overkilling to me for what I wanted to implement, a metric space through a vector space and a norm (R^n). I'll wait and see how people respond to it. I wanted to reuse Math::Polynomial, a very nicely written package, but there were too many 'dangerous' functions to disable or modify, and so I started it from scratch...

Vector3D provides vector cross product in R^3, which will be useful for Fleet to make the physics of movement for ships and missiles and "slow" proton beams (laser and electron beams move at light speed).

Not much more hacking, as I was working on the self-defense sprays article for JNC. I'm almost ready for another submission, hopefully almost the last one... :-)

Been reviewing Force Commander, by Lucasart, at my co-worker's place. Interesting, but there are not too many things we can take for the project, which will probably be called Fleet. Also helped him to setup CVS and get the source (from a floppy, no net access as of yet...)

Been hacking for a while late in the night, improving base Ship class and creating mutators and other methods. Have found I need Vectors and Perl does not provide any fairly complete package with them... Found one with Matrices and another with Polynomials, but both have very poor support for vector operations... I'll probably change one of them and extend it to have at least support for all vectorial space operations... that way we'll be able to implement a ship's position, speed and acceleration fairly easily :-) Movement, within the time grain will be choosing, should be as realistic as possible... I'd go towards a full Newton Physics support, but I'm afraid it would make things too complex to play (imagine you are manning 30+ ships of different sizes and displacements in a formation to change course maintaining the formation... a 100% realistic thing would be total chaos! But by providing a constant acceleration within a small time frame, things are simpler and movement still fairly realistic... still, people will probably need traing to do that without a Frigate collisioning against a Line Ship... :-)

3D is yet another thing... Human brain is not really ready to deal with full 3D sensorial information (that's why we get disoriented when diving and flying takes so long to learn... compared to driving a car, or walking), we are used to a 'fat 2D' world, or to a "stack of planes" at best... Moving basically 2 degrees-of-freedom objects in an isometric view in StarCraft or even the more complex thing of Force Commander or a "3D" simulator like X-Wing, etc is very different to manning a fleet of N ships against some other M ships in a real space, with accelerations, gravitational fields, etc... I don't think there's an easy-for-the-brain interface to 3D (even if we draw a rotating cube on the screen, which is probIaby the best approach nowadays... well, we'll see when we have to assault the GUI...

I was thinking on implementing the interface in C^3 (ie, three dimensional complex vectors) with info about position and speed at the same time... but it won't help, people is not used to phase spaces, either... and drawing C^3 in a 2D screen would be... a big challenge :-)

Despite there's FTL communications and travel in this Universe, intership communication will probably go by light and we are thinking about implementing that delay into the game, making it much more interesting... <eg> :-)

Not much more hacking and thinking, except some blueprints of some of the ships classes (Satellite Hunter and Destroyer), because I was also watching Ally Mcbeal, and was somewhat distracted ;-) There'll be more on Monday, I hope...

Not been hacking a lot as of late, with my b-day and all... Today's my first sister's b-day.. she's not hooked to the Internet, but here goes my happy birthday, Cristina! :-)

Been working on a revision on my self-defense sprays for the Journal of Non-lethal Combatives, I hope next submission will be closest to the last one...

Nants is gonna have to wait for a while, as I'm gonna start a new project and try to finish it this time... Space Realms hasn't gone too far, actually has not gone, stop. This will be different, more strategy oriented toward space battles... I already have an interested programmer (actually one of my co-workers) which is good, as I started yesterday late night :-)

Core will be in Perl 5, which is cool for this, then the GUI will be GTK+ or some other, we'll see when it's the time... Actually GUI independence is a part of the overall design phylosophy... As soon as there's more than shiptypes, a pic of ships silouettes and a skeleton base Ship class, we'll post it to the Net for collaborators... GPL, btw...

Well, at last I have been able to play around a little bit with EDMA 0.5.1

Had some problems registering some classes, I must be doing something wrong...

Submitted a patch to David Martínez (the Lead Programmer of the project) fixing a lot of small, stupid problems with the IDFWizard, but as my environment is not fully working with EDMA I am not sure I didn't break anything... I hope I didn't... Had to fight to retake my Tcl/Tk back to work memory, but it was fun to do...

Didn't have time for more, tomorrow's my birthday and we are celebrating 3 birthdays at the same time, so lots of logistics and preparation for the party. I need more sleeping.

Time to shutdown my brain for a while and do some paying work.

Two days ago I just installed GNU EDMA 0.5.1.

EDMA is an Open Component Model Framework for GNU, similar to IBM's SOM or M$'s COM

There are some errors in a Tcl/Tk application to register new classes, I hacked it and now it works... However, the line-oriented tool didn't, I couldn't even try the examples... it may be some weird environment thing, have to check it with a little bit of time...

Also did some hacking to add multi-card support to HAWHAW, but Norbert released 3.0 before I finished, and he added a lot of code to support HDML output... blargh, even though it's a clever hack, it'll make this migration even harder... well, we'll see...

And my nants project... (Nanite + ant :-) started in Ruby, switched to Java and I'm finally thinking in returning to the roots and doing it in Perl... I'll release something as soon as I have something to release... The idea is making small objects to live in a space with food and, well, let them live there, just doing their stuff...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!