[CF-Devel] [Fwd: Crossfire bugs and suggestions]

Mark Wedel mwedel at scruz.net
Mon Feb 19 03:58:56 CST 2001


Mark Wedel wrote:

>
     
      1. Server crash on map reset
     
     >
     
      Sometimes the server crashes when actively resetting the map as dungeon
     
     >
     
      master. I could not find out, under what circumstances this happens. I
     
     >
     
      always tried with a newly instanciated server, and sometimes it crashes,
     
     >
     
      sometimes it doesn't.
     
     >
     
      It crashes with SIGSEGV (although I'm not a Linux/C/Intel-Crack, I think
     
     >
     
      this is a segmentation fault resulting from a pointer error).
     
     
 This is not very high on my priority list.  One thing which may be a
contributing factor is if a player is on the map you are resetting?  The code to
deal with that is highly suspect from my quick look over.

>
     
     
     >
     
      2. Client crash on 2nd window resize or on window unhide
     
     >
     
      When I resize the client window, it crashes very often (about 95% of resize
     
     >
     
      tries).
     
     >
     
      It also crashes when I first put another window in front of the client and
     
     >
     
      after that the client window back to front (or the other window to the
     
     >
     
      back).
     
     >
     
      Again it's a SIGSEGV.
     
     
 Another person has reported this, yet it works OK on my system.  So there is
something out there, and I think te other user was also using Suse.  So it might
be a bug there, or it could be with options the client is run with - don't know.


>
     
     
     >
     
      3. Bug in permanent death code?
     
     >
     
      I once compiled the server (the previous version) with permanent death code.
     
     >
     
      When a character died and was reincarnated again, he lost all his skills. He
     
     >
     
      even cannot search for traps or fight.
     
     >
     
      I think this is the result of randomly looting items without checking wether
     
     >
     
      the items are skills or spells.
     
     >
     
      Is this a bug or a feature?
     
     
 I would call that a bug.  I don't play with permadeath, but I did notice that
object looting could remove invisible objects, which is probably wrong - I've
put a check in so that invisible objects will not be removed from the players
inventory.

>
     
     
     >
     
      4. Map /city/misc/HallOfQuests
     
     >
     
      I achieved the highest rank, I think it is prince of scorn. After that I
     
     >
     
      could start all the quests from the beginning again. Is this meant to be?
     
     
 Actually, you can restart the quest from the beginning at any time.  At best,
this is a minor bug, as in most cases, the objects probably have limited in
multiple instances (ie, 3 dragonshields doesn't do you much good unless you give
the extras to friends)

>
     
     
     >
     
      5. I think, some NPCs should currently not be oratable.
     
     >
     
      I orated the king of scorn and he followed me, of course he died... :(
     
     
 Probably so.  This is actually easy to fix - looking at the code, any creature
with a message is non oratable.

>
     
     
     >
     
      6. Crossedit crashes when closing info window
     
     >
     
      This bug is not so important to me since I don't use crossedit to create
     
     >
     
      maps, I write my own perl scripts or Java programs to do that. (I will
     
     >
     
      release them as soon as they are okay to be used by others. If you want to
     
     >
     
      have a look at them, just drop me a line.)
     
     
 Any map tools you contribute to the probject would be useful.  Fact is,
crossedit is not all the heavily maintained - I don't think many of the current
developers know it that well, and most new developers probably don't have the Xt
toolkit high on their list of things to learn.

>
     
     
     >
     
      Suggestions
     
     >
     
     
     >
     
      1. Race amulets and rings
     
     >
     
      amulets and rings should be a race. Pouch should be a container for rings
     
     >
     
      and amulets. The race gold and jewels should go in a container called purse.
     
     >
     
      This can be done very quick:
     
     >
     
      1st add "race amulets and rings" to all rings and amulets in
     
     >
     
      share/archetypes.
     
     >
     
      2nd copy the pouch archetype to pouch2
     
     >
     
      3rd give pouch the name purse
     
     >
     
      If you want to, I can send you modified archetypes and treasure files for
     
     >
     
      this.
     
     
 This falls into one of those things that it would be convenient for it to be
done, but should it really be the servers responsibility.  

 My personal thought is that races for containers should only be used to
restrict what can be placed into that container.  That is only really needed in
the sense of the container shape or volume may be odd sized (Realistically,
there is no reason you could not fill your quiver with coins or put rings on
your keyring).

 So in reality, the client should deal with the sorting of objects into
different containers (hopefully made easily selectable by a nice selection
tool).  So you could say that food type items should go into the luggage, and
your gems into large pouch, with your coins in the small pouch, etc.  And
really, from a protocol standpoing, this should be easy to do - the client can
tell the server to move items.  Now to facilitate this, we probably want to make
moving items from inventory to storage containers and vice versa free actions. 
The way this would basically work would be character picks up item (either
manually or via the automatical pick up modes).  Client sees new item for
inventory, and sees if it matches against any container sort roles the player
sets up.  IF not, it does nothing further.  IF so, it sends a message to the
server to put it into container X.

 The only reason the server needs to know is because many containers reduce the
weight.  Realistically, a client could make any number of number of virtual
containers, which are really just convenient ways for the player to arrange
their inventory.


>
     
      3. In client
     
     >
     
      a) A command history similar to a shell.
     
     
 Not sure I would want to go to that effort, but a 'repeat last command' would
be easy enough to do - potentially useful I suppose  for a spell casting that
failed, but something you don't cast often enough such that you bind it to a
key.

>
     
      b) A window history with a scroll bar for the text window
     
     
 Look at the man page.  The -scrollines does what you want unless you are
describing something different.

>
     
     
     >
     
      4. NoWeapon-fields
     
     >
     
      I prefer to play a sorcerer (wizard before class code).
     
     >
     
      No spells is really unfair. A barbarian can run and slash and hack
     
     >
     
      everywhere. And it is quite easy to get a strength of 30 for a barbarian.
     
     >
     
      But a sorcerer might have a strength of 15 or 18. So what about
     
     >
     
      NoWeapon-fields where one must rely on magic or prayers?
     
     
 My personal thought is that unholy ground and non magical areas are used too
often to try and make things tougher.  I really don't like that.  IF you don't
want players to use magic on the monster, easy enough to give it resist_magic
100.

 Now there are cases where those fields are needed (such to protect treasure
rooms).  But really, I would rather see less use of such spaces to make things
difficult. 

 Also, as a note, spell casters can always resort back to brute force without a
tremendous amount of difficulty (put on that armor, use that weapon, and adjust
some other items, and away you go).   The reverse is less true - a fighter who
does not have spells to cast really doesn't have anything else to resort to.

 And from discussions, it generally seems that fighters are already the less
powerful classes anyway,so I don't see a big reason to make them even less
powerful.

>
     
     
     >
     
      5. Partial "No" fields
     
     >
     
      NoSpells and Unholy ground should not be absolute. For a level 107 sorcerer
     
     >
     
      it should be possible to cast spells on several nospells areas. For a level
     
     >
     
      107 priest it should be possible to use prayers on several unholy grounds.
     
     >
     
      So what about a "Partial no code"? Nospells ground might influence the
     
     >
     
      amount of spellpoints required for casting. And it might require a certain
     
     >
     
      level for casting.
     
     
 See comment above about use of these fields.  But also, just how the server
deals with these fields means it isn't an easy fix to do this (ie, adding some
level field to those objects) - casting prohibition is stored in bitmask of
flags on a per space basis on the map, so to go to the above, you would now need
to find (or store) the power of resistance, and update all the code that
currently checks for prohibition to the new system.


>
     
     
     >
     
      6. New spellpoint calculation
     
     >
     
      A power 30 level 5 sorcerer has already something between 150 and 250
     
     >
     
      spellpoints.
     
     >
     
      A power 30 level 107 sorcerer has just >750 spellpoints.
     
     >
     
      I think the relation is wrong.
     
     >
     
      Same applies to grace.
     
     
 First, a character at level 5 to get 30 pow is pretty unusual. I think
realistically through normal play, the amount of grace/sp/hp per level would
probably follow a reasonable line.

 A level 1 player with 30 grace and 30 wis would look even more out of wack.

 I won't explain the formula here, but I haven't seen any real problems with
this.  But for sp/hp/grace, the stat bonus at low levels is really important,
and at higher levels, doesn't really make much difference.  So the real key is
to get the high stats right away.

>
     
     
     >
     
      7. Spells should cost less
     
     >
     
      Although a sorcerer has many possibilities, it is not just harder, but much
     
     >
     
      much harder, to play a sorcerer than a fighter.
     
     >
     
      I think the game is a bit unbalanced regarding this. A fighter needs a break
     
     >
     
      for hp regeneration only. Mages and priests also need to regenerate sp /
     
     >
     
      grace.
     
     
 See note above about spell casters tending to be considered the more powerful
classes.  Priests can regenerate grace very quickly by praying.  I'm not sure if
meditation is generally available, but I believe it gives a similar effect for
sp.

>
     
     
     >
     
      8. Protection and immunity spells
     
     >
     
      I think there should not just be prayers, but also spells to protect (not
     
     >
     
      just armour). Perhaps they should be a bit more "expensive" than the
     
     >
     
      corresponding prayers.
     
     
 Matter of balance.  If the useful priests spells are also available for mages,
it diminishes the usefulness of the priest.  You can always pick up the scrolls
to give you the protections.


>
     
      10. Special alchemy spell
     
     >
     
      I think the alchemist should not only have the skill, but also the spell
     
     >
     
      alchemy as a starting equipment. It should be a special form of the alchemy
     
     >
     
      spell which is castable from level 1, not 3.
     
     
 Realistically, getting level 3 is 15 minutes of work.  But more relevant, is a
first level alchemist likely to have either the ingrediants or recipes to do
anything useful?  My guess is no unless the character has been created for use
by an experienced adventuring party because no one there wants to alchemy
anything.

>
     
     
     >
     
      11. Rethink "Denied"-Code
     
     >
     
      When casting a denied spell, the spell has no effect (ok) but still costs
     
     >
     
      its spellpoints. Is this meant to be?
     
     >
     
      Perhaps this code should be changed to a "partial attuned/denied"-code.
     
     
 It should just prevent you from casting the spell.  But looking at the code, I
notice that it will cost a random amount of sp (1 to full cost).  I have no idea
what it should do that - if you can't cast it, you can't cast it, and I agree
that it shouldn't cost you anything.

>
     
     
     >
     
      12. Special kind of spellbook
     
     >
     
      What about a new kind of spellbook, that doesn't vanish when learning a new
     
     >
     
      spell? It could be much much more expensive...
     
     
 Usefulness of this is for a party to share or to keep retrying if you have a
low chance to memorize?  Reasonable idea I suppose.  Just curious as to what
purpose this is there for.

>
     
     
     >
     
      13. Change comment on "heavy rod of restoration" from the HouseOfHealing
     
     >
     
      In some document it is said that noone can afford to buy a "heavy rod of
     
     >
     
      restoration". This is untrue: Kill dragons regularly, collect *all* uncursed
     
     >
     
      items, if you cannot carry them, alchemy them to gold, then buy diamonds,
     
     >
     
      saphires... of flawless beauty and collect them. It is possible to buy a
     
     >
     
      heavy rod of restoration. And high level characters anyway don't know what
     
     >
     
      to do with their treasure. I think in two weeks I can afford mine.
     
     
 I think someone removed that recently.

>
     
     
     >
     
      14. More quests on spells
     
     >
     
      Perhaps also some lower spells should be only available by solving quests?
     
     >
     
      My candidates for this are:
     
     >
     
      - alchemy (simple shop quest only, no need to kill something, perhaps
     
     >
     
      retreive it from Leonardo Da Vinci...)
     
     >
     
      - destruction
     
     >
     
      - restoration
     
     
 There's pluses and minuses to this.  On the plus side, you can restrict access
to certain spells - or at least means you can't get it on the shop.  On the
downside, going through some dungeon for the 5'th time (player wise) to get the
useful spell can prove annoying.  This may not be so bad if the spellbook is
available in multiple dungeons, so at least the player can get some variety.

>
     
     
     >
     
      15. It is possible to "create" money
     
     >
     
      Take some silver, cast alchemy on it, and the gold will be worth more than
     
     >
     
      the silver coins.
     
     >
     
      I know cheating with this is impossible because there is a chance that
     
     >
     
      alchemy will fail and destroy the silver...
     
     
 Looking at the code, it would appear that if it works on silver, it should also
work with gold, platinum, and gems.  I'll have to look at that further.

>
     
     
     >
     
      16. Alchemy
     
     >
     
      I think the result of invoking alchemy should be independent of wether the
     
     >
     
      item(s) is/are identified or not.
     
     
 agree.

>
     
     
     >
     
      17. Alchemy (again)
     
     >
     
      It should be possible to create rings and better potions using alchemy and
     
     >
     
      the appropriate ingredients.
     
     >
     
      3 potions of strength, a ring of adornment, 10 large gold nuggets and 2
     
     >
     
      ogre's arms might create a ring (Str+1).
     
     >
     
      For a ring (Str+2) the square amount of items should be required:
     
     >
     
      9 potions of strength, a ring (Str+1), 100 large gold nuggets and 4 ogre's
     
     >
     
      arms might create a ring (Str+1).
     
     >
     
      For a ring (Str+3) the square amount of items again should be required:
     
     >
     
      81 potions of strength, a ring (Str+2), 10000 large gold nuggets and 16
     
     >
     
      ogre's arms might create a ring (Str+1).
     
     >
     
      Perhaps a new spell would be required for this.
     
     >
     
      Or the improvement scrolls.
     
     >
     
      And diamonds of flawless beauty.
     
     >
     
      The value of the item resulting from alchemy should be more valuable than
     
     >
     
      the sum of it's ingredients' values, otherwise this would not be logical.
     
     >
     
      There also should be the possibility for players to create artifacts
     
     >
     
      themselves.
     
     >
     
      I cannot see a reason why a level 100 character should not be able to create
     
     >
     
      artifacts when collecting the neccessary amount of special items.
     
     
 Adding recipes can be done.  Allowing characters to create artifacts is still
probably a bad idea.  Note that crossfire is not a human adjudicated game. 
While a GM would not have a problem with high level characters creating all
sorts of stuff, its quite a bit different because teh GM can control many
aspects (for example, make sure that some ingrediants are in very limited supply
or virtually impossible to get, and if the party wants even more, that becomes
harder.)

 It doesn't really work that way in crossfire.  If a player can do a map and get
1 of item X, he can do it again later and get another, and another, and so on. 
So given that, could then realistically create as many objects as he may want. 
I don't think thats a good idea in general.

>
     
     
     >
     
      18. Alchemy (again)
     
     >
     
      It should be possible to create ... "of Holding" for a player himself.
     
     >
     
      Ogre arms or potions of strength could be required.
     
     >
     
      "of Holding" items then should be more seldom and valuable, since a potion
     
     >
     
      of strength is quite expensive...
     
     
 See above.

>
     
     
     >
     
      19. Players / Characters
     
     >
     
      It is possible for a player, not to choose a class. It is a very poor
     
     >
     
      starting character, then, but I like the idea.
     
     
 The hall of selection map will have a way for someone not to choose a class
(this was mostly added to prevent players who accidentally get warped back there
from having 2 classes).

 Realistically, tuning classes that players take at the start is very
difficult.  Trying to balance not having a class (which basically means no
skills, so you can't do anything), and adjusting the balance on that, and the
balance of abandoning one class and picking up another, and so on, would be a
real nightmare.

 Really, all classes get you as I recall is starting equipment, your skills, and
some minor adjustment to stats.  I can't remember if there are any private
skills (ie, you need to be that class to have it) or not.  If not, then you can
basically be any class you want to be simply by learning the right skills and
wearing the right equipment.

 As for changing faces - that could be added.  Problem is that a list of
legitimate faces would be needed - ie, youcan't change yourselfto look like a
sword, but could choose to look like a woman for example.

 Easiest way to do this would probably be something similar to the hall of
selection but for faces only - ie, a dressing room/house, which has spaces that
change the appearance.


>
     
      20. Unique artifacts
     
     >
     
      What about artifacts that are really unique? Which only one character could
     
     >
     
      have?
     
     
 This gets discussed periodically, and the old discussions are probably still on
the archive.  The basic answer is 'no.  Reasons are:
1) non trivial to deal with the object (or player possesing it) getting
destroyed.
2) What to do if other players want it (ie, do they have to kill the person that
owns it?  Suppose the two players are in physically opposite sides of the world,
so are seldom on line at the same time, and even if they are, they still need to
meet)
3) If used as the reward of the quest, could get very frustrated players who
solve the quest only to find out the reward isn't there.  That may be realistic,
but crossfire is not about realism.

    
    


More information about the crossfire mailing list