25 September 2007

Changing to Pawn

Our server side scripting language is called Small. It's a nice, C like scripting, which is easy to integrate with C and has a JIT VM as well, which means it is very fast.
We were using a very old version (since 2005), and since then there have been some new changes to this scripting language, which is now called Pawn.
Some of the changes add features, some fix some problems, while other changes break backward compatibility, especially in the host C functions, which didn't really motivate me to update, as we were pretty content with the version we were using.

However, since we are going to be using this scripting language on the client as well (for some dynamic maps and player based cities), we thought it would be a good idea to finally upgrade to the latest version. Learner did most of the updating work, and we've been tested it on the test server for a few days. Aside for some problems which are now solved, everything was pretty smooth.

Since we are waiting for the testing to be finished (another few more days), I've started to implement some extra new items that were supposed to come later on in the game. One of them is a 'lightmeter', which will be used to determine how visible you are at night or in caves, on a particular tile. Useful for stealth or ambush type 'missions'. The reason this device is useful is beause the server and client calculate the light in a different way. The server uses a square attenuation, while the client uses a linear attenuation, so some areas are really dark while they appear not so dark. This might change on the next client update, althogh if we use a square attenuation on the client, many areas will appear to be very dark, so some players might not like that.

Onc we are done with migrating to Pawn, I'll start finishing the landmines code, do more testing, then prepare for the client update.

10 September 2007

Tailoring skill

Roja always wanted to make a lot of new clothing items for the game, but until recently, she was busy with other things. In the last few weeks, she made a lot of clothing items. Pirate outfits, fancy clothes, and so on.
We had two choices:
1. Sell them from the store and make big $$$ (well, not really).
2. Make a new skill so that the players can make the items themselves.

We decided to go with the new skill, because it would add more fun to the game, which eventually means more $$$ for us (indirectly). We are so devious, aren't we? :)

Anyway, this skill will be very difficult to implement properly. Why? Because the idea of the nice clothes is that they have to be EXPENSIVE, or else everyone has them and they are not rare anymore.
Imagine everyone was able to make clothes, who would be stupid to buy them?
Now, imagine everyone had to do 500 shirts a day just to get more experience in order to make suits. The shorts would not be very valuble on the market, would they?

So the idea is that people should be able to level this skill without actually making [many] clothes. One way is to add a lot of low level resources to the game, such as fabric and dyes. So the low level tailors would just make fabric and dyes, until they reach level 30 or so. Making those things will be time consuming, so many people will not take the skill, leaving only a few selected, dedicated people to do most of the clothing in the game, which they can sell for a lot of gold coins.
Another idea is to move some items from manufacturing to tailoring, such as the scarfs, gloves, etc. But if I do that, I'll need to find some replacement items for the newbie manufacturers, to fill in some gaps.
This skill is still a few months away, so I have enough time to decide how to do it, and will ask for some player feedback as well.

06 September 2007


One thing I want to work on, after I am done with the astrology and the landmines, is a 'pet' system.
I didn't finish designing it, but here is an outline (which might change):
1. Each player would be allowed to have ONE pet.
2. In order to get a pet, you will need to buy an egg. To prevent the overcrowding of the game with pets, those eggs will be expensive (100K gc or more).
3. There might be different kind of pets, and some might be available only for real money. However, all the pets will be equal, they will just look different.
4. Pets will level up, but not by fighting (because if they level up by fighting, a lot of spawns will be taken by people and their pets). Instead, you will level them up by 'feeding' them with various items. Not sure yet what items, how much they will cost, and how many would be required for a level.
5. The pets levels will be different than player's levels. I plan to have only a limited number of pet levels, maybe 10, maybe less. Each level will considerably increase the power/combat capabilities of the pet. For example, level 1 will be good enough for rabbits, level 2 for wolves, level 3 for armed goblins, level 10 for yeti. Again, those levels will need to be determined by testing and by players feedback.
The attributes for the pets (coordination, physique, perception, etc.) will automatically increase with their level.
6. There might be a few classes of pets (pets that use magic, pets that summon, pets that are meele fighters, and so on). However, they will all be free in terms of real life money, and the paid versions will only have a different avatar, not different capabilities.
7. The pets will have a limited 'life', and they will die after a while (probably depending on their level). Players will not be able to heal them or to prolong their life. However, they will be able to ressurect the pets, with some special stones, which will cost in the 100-1000 gc range. I think I will have stones for different levels, so if you have a level 3 pet, you will need a level 3 (or higher) stone. The higher the level, the more expensive. The stones may or may not be manufacturable by the players, this is yet to be decided.
8. There will be an 'upkeeping fee' for the pets, in order for them to keep their level. If you don't 'upkeep' them every month, their level will decrease. The method to upkeep them has to be determined.
9. The pets will fight animals/monsters in normal maps, and other players or pets in PK maps. Some maps might not allow pets (such as Isla Prima). However, the pets will not gain any experience from fighting.
10. Pets will follow their masters, but they will not be able to change the map (when the owner disconnects or changes maps, they will die).

This is the basic outline for the pets, but things might change by the time I actually start working at implementing them. I don't know when they will be done, but I think they will be in the game in less than 6 months.