UncategorizedOctober 27, 2005 10:41 pm

(Really, just a “concept” now. I don’t think this will be implemented in the near future.)

I had a look at Guild today. Which is a yet another offspring of Angband. However, Guild has something very wonderful about it, multiple characters!!! You only get to choose the name and details for one of them during the “birth” process, but you once in the game you can control them all. There is one designated party leader (but you can switch leaders) and the rest follow the leaders orders.

The leader is controlled by you and you can specify a variety of behaviours of the party. Things such as following you around, staying in one spot, spreading out, chasing monsters, only attacking when ordered, etc. If they see a monster in the distance the ranged party members will shoot/zap it and, if you specify the option, the melee party members will chace it. And this works really well, I hope to play a bit more of Guild later.

So just something to ponder about for WoT, I will try to make sure that there are no design flaws which will prevent us from adding such a feature later on in the development. But right now there are far more basic things to take care of…

by Kostatus

Uncategorized 4:59 pm

Seeing how Kostatus has not written about it yet (exams, you know…), I will take the liberty to post about some of the behind-the-scene development that is going on. Kostatus has used recursion to generate a near-fractal maps. The advantage? More interesting rooms! We now have a pretty flexible room generation mechanism, and development is going to go even faster than it was when the exams are over.

Right now, though, development is practically stalled for at least a week or two. Stay tuned for more updates…

by Atholas

UncategorizedOctober 22, 2005 4:25 pm

I have played around with the interchangeable graphics of WoT and just for fun put in ASCII. Even though it looked quite different from the traditional ASCII graphics (I just used 32x32 tiles with coloured letters on them), it was quite playable and the interchange between Graphical tiles and ASCII tiles was very easy to do.

So I think I shall include the ASCII tile set with the next release as an alternative.

by Kostatus.

Uncategorized 12:40 am

I have spent a lot of time on trying to fix several graphics output issues, redesigned the whole thing. It worked, but it was either slow, ugly (due to the stretching of the images) or both! I could not fix that, so I went back to the original and a few lines of changes from that and… Exactly what I wanted!!! What a waste of a few hours.

Now it is ready for a status bar displaying all the hero stats, which can be implemented after Atholas completes testing his additions ot the Creature class (hopefully soon).

In other news…

I have given some thought to multi-storey buildings and multiple height levels on maps and I have come up with a few associated algorithms which look quite efficient to me. I have even thought of a way to display the height differences graphically (though in practice this might not work well, but we’ll see). So 3D maps could be a reality in WoT.

Progress is very slow right now, in fact you can barely call it progress, but our holidays are coming up soon and we will be able to put much more work into it.

by Kostatus

UncategorizedOctober 21, 2005 2:05 pm

Kostatus just showed me a build that actually has a movable hero with evil greenies chasing the hero around. It is very encouraging to see that. We might just be able to make an alpha release before Christmas after all! Along with this project, I have got a couple other of my own to deal with during summer, but hopefully I will have enough time to deal with all of them at once. With the addition of a new member (I am not quite sure if he has started looking into the code yet…), we are moving full throttle ahead!

Good job, Kostatus.

by Atholas

Website newsOctober 16, 2005 1:25 am

Changed the template to a more appropriate one. Should update the official website too.

UncategorizedOctober 15, 2005 4:28 pm

I have realised something. For obvious reasons I make heavy ussage of the java.util.Map class. But then this makes the wot.engine.AbstractMap easy to confuse with it, especially since java.util.Map extends java.util.AbstractMap! ARGH! So that name was ugly and obscure.

    I have renamed the following:

  1. wot.engine.AbstractMap -> wot.engine.GameMap
  2. wot.engine.BasicMap -> wot.engine.StandardGameMap

Also:

  • wot.engine.creatures.Brain is now an abstract class rather than an interface.
  • I have implemented a better way to do keyboard input for the PC actions. (Still almost the same interface, but much simpler implementation).
AlgorithmsOctober 14, 2005 11:37 pm

I have reviewed Shuruppak today, as a playable game it is… no good for various reasons, but it does have some very interesting features. Even though I have heard of them before I had always assumed that things like some of these would be just way too slow and bring the game to a crippling speed, but Shuruppak seems to have no problems (even though I tested it on a 3GHz, I doubt that the developer would release something that would crawl on even a 500MHz).

  • Sound. Whenever you do an action it makes a sound, some actions make louder sounds than others. For example walking or equipping a hat would make virtually no sound, but changing heavy chainmail armour would make a lot of sound. Sound is propagated through the dungeon using Dijkstra. Just a reminder - if not terminated early, Dijkstra traces the shortest path from a starting node to every other node on the graph (map in this case, but same principle). So actually the algorithm is only performed once! And if you are in need of a fight there is a Yell function, needless to say, it causes a lot of sound.
  • Sight. There is some sort of a concealment raiting which determines how easy you are to spot by sight. Standing in the shadows increases this raiting. ie. If you are closer to the wall there is more shadow, hence you’re more concecaled.
  • So once a creature has detected the PC (by sound, by sight, or maybe some other means), A* is used to find the shortest path from the creature to the PC. A* is considerably faster than Dijkstra when there are no edge weighings on the graph, and when you just need to trace from point A to point B rather than from point A to every other point.

(I got most of this info from the game itself as well as their tech info pages.)

So I think Sound is a feasible one, and the option of yelling is pretty cool.

UncategorizedOctober 13, 2005 1:05 am

After a long procrastination, the Creature class is now almost ready. With this in place, we will be able to make pace in the development again. I should be able finish this off tomorrow. With more of the infrastructures now in place, releasing an alpha version before Christmas seems more releastic than it once was. I will start working on constructing creatures soon.

UncategorizedOctober 10, 2005 10:55 pm

I have completed the basic machinery behind creating creatures, storing them and displaying them on the map. All tested with JUnit (for the first 2) and the obvious visual method for the second one. Yay! Next step movement!