For any online game, having a personalized avatar is pretty important.
Some experimets I made concerning easy animated sprite creation for the game. Turns out we only need 3 base images, at least for this scale.
(The conversation has been moved from GameItems, for the first few only keeping the relevant paragraphs)
It doesn’t need to be managed by GameItems, the way it is in SecondLife?. Maybe each player could have a personalized sprite, and maybe also a “portrait” for the sidebar. Or, his appearance could be determined by a set of flags (hair colour and style, clothes colour an style, skin colour, etc.) used to generate the sprite. In any case, it doesn’t need to be managed through items. – EmileKroeger
I agree that asking the players to draw their own avatars would suck.
We can try to approach the problem differently: where and how is avatar information stored? 1) The avatar is stored as a sprite or set of sprites on the player’s machine, and those sprites are broadcast to whoever sees the player. 2) The avatar is represented by a set of “text” attributes (hair colour and style, glasses, etc.) stored on the player’s machine, and the server uses those attributes to build the sprites that will be sent to those who see the player. 3) The avatar is equal to a collection of items (clothes, wigs, glasses, swords) stored with their graphics on the player’s machine, and these objects are broadcast to all who can see them. 4) The avatar is equal to a collection of items stored with their graphics on the player’s machine, and these objects are sent to the server only; the server then builds some sprites out of those images, and sends them to whoever can see the player.
So. All of these allow the player to personalize their avatar, though 1) makes it a bit difficult - it can be done with “dollmakers” (like some internet forums have) entirely seperated from the actual game (though it can be possible to make a dollmaker on a server, where the players can build there character in-game).
Solution 1) Doesn’t allow exchanging or trading. But the problem is, the open source and MultiServer nature of the game makes it very hard to implement any kind of trade of GameItems between players :P
Hmm. I’ll drift a bit off topic here, but please tell me what you think of the various technical solutions up there. I tend to like 1), but 3) is nice too (it has the advantage that it still allows the look of your character to change when you pick up items, etc.
Anyway; drifting off-topic to general philosophy: one thing I’d like (and I’m not sure I talked about it elsewhere on this wiki, I probably did) is that if Joe is the administrator of one domain / kingdom / FloatingIsland /Dungeon, he can’t use that to give an unfair advantage to his player outside of the zone he’s administrating: he can’t give his character a +20 sword of exterminating and a huge stack of gold. Or he can, but won’t be able to use them outside his home. I believe that is important, because it means we can allow anyone to administer his server, to administer his little corner of the world, without worrying that they’re cheats.
But this also means that it’s pretty hard to have any kind of reliable economy. You can have all the trade, gold, etc. inside one server, but if you start having items / money that has value accross the servers, then what prevents a player from creating a domain, giving himself plenty of neat stuff?
Another constraint is decentralization: it shouldn’t be necessary to store any information in any centralized place. Some servers may decide to store some player info, but the game should work fine if they don’t. Having a central repository of “who owns what item” would enable trade, but I think the cost is not worth the benefit.
So, back to avatar personalization: if we don’t have trade, it’s hard to make the aspect of your avatar part of the reward system; because anybody can make a copy of any graphic (though for solutions 2) and 4) above, he’d have to have his own server to do that).
I believe that even with those constraints, it’s possible to make a fun game.
In fact, some “dollmakers” could be quite difficult to reach; for example there could be a “dragon armor” dollmaker for members of the Dragon Slayer Guild; while any player could make a copy of sprites created with that dollmaker and use them for his avatar, he couldn’t fake membership of the Dragon Slayer Guild (which could be proved only with a cookie digitally signed by the Guildmeister). Other players (or administrators, I mean, DreamLords) seeing him parade around with a dragon armor but without being a member of the guild might take appropriate action. So winning a DragonArmor? would be a reward in itself, even though technically nothing prevents you from “stealing” one. – EmileKroeger
Hmm, I think my big rant was a bit superfluous; the key point would just be that “permanent items can’t be lost” (and therefore, can’t be exchanged). This is why it’s impossible to have global health, money, or tradeable items. Or, it would be possible, but I believe it’s possible (and considerably easier) to make a good enough game without them. – EmileKroeger
Solution 5) seems pretty good too, I wonder why I haden’t thought of it :) So basically, the game only cares about sprites, and clients can have DollMakers? to build their character’s sprite.
I like the “loose compling” this implies - the way elements fit together doesn’t matter to the core game engine, so the game can work without anybody implementing a DollMaker? or agreeing to what parts constitute a character (body+head? Torso+legs+arms+head? etc.). Plus, it’s still possible to add doll makers on the servers too. – EmileKroeger