编辑“︁
HowToAddCreaturesStendhal
”︁(章节)
跳转到导航
跳转到搜索
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
=Edit creatures in xml files= In folder data\conf\creatures you will find xml files that contain all the description of the creatures in game. For example. <source lang="xml"> <creature name="deer"> <type class="animal" subclass="deer" tileid="animal.png:9"/> <description></description> <attributes> <atk value="5"/> <def value="9"/> <hp value="20"/> <speed value="1.0"/> <size value="1,1"/> </attributes> <level value="0"/> <experience value="0"/> <respawn value="900"/> <corpse name="animal"/> <drops> <item value="meat" quantity="[1,3]" probability="60.0"/> <item value="ham" quantity="[1,2]" probability="30.0"/> <item value="antidote" quantity="[1,1]" probability="5.0"/> </drops> <equips> </equips> <ai> <profile name="non_offensive"/> <profile name="animal"/> <profile name="coward"/> <profile name="patrolling"/> </ai> </creature> </source> It is important to understand how it works. We must give a name to the creature and it is done in the ''creature'' tag. Then we specify the class and the subclass on the ''type'' tag. The class should be a general description suitable for a range of creatures (say, dwarf). The subclass needs to be the name of the image, which must be located at: data/ sprites/ monsters/ class/ subclass.png The next attribute inside ''type'' tag is tileid that points to the file and position ''(starting from 0)'' of this monster sprite in the logic/creature/'''class'''.png file. Inside the ''attributes'' tag you can specify the attributes the entity has: * ATK it is a value proportional to the damage the creature can do. Note also the total attack is also proportional to creature level. * DEF it is a value proportional to how much damage the creature can block. Note also the total defense is also proportional to creature level. * HP is the health measure * Speed it is how fast creature moves. Range from 0 to 1, 1 is speed of player. * Size it is the size of the collision area on the ground of the creature in tiles: usually 1x1 Now the ''level'' and ''experience'' tags. The level is used in the damage calculations for attack and defense, as well as chance of player hitting it or chance of hitting player, and the players to measure a creature . The experience determine the reward the player will get by killing this creature. ''respawn'' is how long it takes to respawn. The actual respawn uses a memoryless distribution so that if you wait for ''respawn'' time you have a better than half chance of finding the creature, but the respawn itself does not depend at all on when the creature was last killed. Now the ''drops'' tag specify what the creature drops when it is killed. Each of the item has a probability of being dropped (''probability attribute'') and the quantity of it that may be dropped (''quantity attribute''). If you only want it to drop one item, we still write the quantity as between 1 and 1, like [1,1]. ==Equipping items to creatures== You can equip items at a creature's slots: * rhand * lhand * armor * head * legs * feet Equipping with defensive items does not change the attack or def so it is not worth doing at the moment. Equipping with weapons makes the creature hit with the rate of the weapon. It does not add to the attack. If a creature is equipped with weapon of rate less than 5, is attacking faster, so it needs a smaller attack than other creatures of similar level. Likewise slower hitting creatures should hit harder to have the same overall effect. Unless you want the creature to attack with a rate other than the default of 5, it is a good idea not to equip creatures ( because they take more memory ). Archers should equip arrows and bows so they have something to shoot with. If a creature equips a weapon the drops are not changed. == Corpses == You can specify what corpse image the creature should use and say how big that corpse is (if bigger than 1x1). The images are in ''data/sprites/corpse''. For a bigger corpse than the example above (deer uses animal) the syntax is: <corpse name="giant_humanoid" width="2" height="2"/> == AI profiles == These are added as in the example above. See also [[StendhalBestiary]] where examples are given of creatures with each profile. * offensive / non offensive A non offensive creature does not select you as an enemy until you attack it, at which point it moves towards you. An offensive creature selects you as an enemy once you are close enough to it. * patrolling / non patrolling A patrolling creature follows a set path. A non patrolling creature never moves even when you attack it. * coward / stupid coward/ brave A coward runs away when you attack it. A brave creature does not. A stupid coward is not so smart at changing directions when it meets a wall and just runs into it. * animal / human These mean nothing at the moment. * archer An archer profiled creature uses a ranged attack where it always tries to stay some tiles away from what it is attacking. The ai profile adds some attack on top of normal creatures so an archer should be given less attack than creatures of a similar level. * lifesteal The lifesteal profile which has a parameter between 0 and 1. Lets explain by example. We have some creature with lifesteal 0.5. He hits a player and causes 20 hp of damage from the player. That means he 'lifesteals' 10 HP of damage back which heals him. The player hurts just as much (like normal) but the creature heals 50% of any damage it makes. * heal Creatures can have a heal profile which has two parameters [regen amount, turns]. For params [5,50] say, then it heals 5 HP each time a certain number of turns has passed. The second number determines the number of turns, the bigger it is the longer the interval. * poison Poisonous creatures with parameters [chance, poison item] have a chance/100 probability of poisoning you every time they hit you. Your defence does not help you defend against a poisonous creature. They poison with a specific poisonous item, so that the total amount poisoned, the frequency and the amount of health lost each time is taken from the poison item itself. * rare Some creatures can be given very low probability of spawning (which gives an average respawn time which is very long, say 6 weeks) and these should not be requested by the Mayor as a kill, nor appear in deathmatch which would ruin the novelty of them. For these use the rare ai profile. They cannot be summoned in raids except in a test server, again to make sure the surprise of them is not spoilt. * hidden Hidden creatures simply do not show on the stendhal website page for [http://stendhal.game-host.org/?id=content/game/creatures creatures].
摘要:
请注意,所有对gamedev的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Gamedev:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
不转换
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息