Crossfire Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CF: Suggestions and bugs



On Apr 24,  9:02pm, Christian Stieber wrote:
> Subject: CF: Suggestions and bugs
> Hi,
> 

 Just as a general note:

 A lot of the ideas included below are good ones, but require a serious
amount of coding.  I certainly won't be able to do all of it - most of my
time is spent just fixing bugs or working on other aspects of the code.

 There are some other coders out there, and many of these things will probably
need to be done from outside sources.  As another general note, new features
tend to introduce new bugs, so some amount of wanting all these features
and wanting a stable server need to be balanced.

> 1a) Skills 
> 
> Right now, reading a scroll of piety or ledgerdermain is actually a
(much about how without skills, it auto switches to a device in your
inventory which may be better)

 This is true enough.  A better thing would be able to some mark which
is the preferred talisman to use, since a player could conceivable have
several, and with the new client, inventory ordering is no longer
preserved in any way, so that can not be relied upon.

> If this problem gets fixed, consider changing the classes that start
> with praying/wizardry: give them one scroll of the skill, marked as
> startequipment, and change the reading code so that reading
> startequipment never fails. Give them the skill items, too --- that
> way they can choose which way to go.

 Having startequip never fail is a good idea.  I started a human character,
and his random starting skill was a scroll of literacy.  Handy thing, but
he was unable to learn it (I think another scroll he started with was
something he already had.

 But what it really amounts to is that I probably should have just killed
that character and started a new one, being failur to learn one skill and
duplication of another was a real waste.

> 1c) marking runes
> 
> Change marking runes --- if casted by a player, make them last until
> the map resets. Add an insult file, and when monsters cast marking
> runes, add something from the insults file. (This is actually a
> temporary fix --- monsters should never cast marking runes).

 Spells need to be redone/extended so that the server (monster) has some
idea of what a spell will do and so then cast it in proper context, or not
at all.  For example, cast healing spells when injured, don't bother casting
information type spells, and otherwise case offensive spells.

> 1e) Doors
> 
> I'm not sure whether this is done on purpose, but it is rather
> difficult to leave a room with many spells on the door (basically you
> have to blindly click into the look window, hoping to finally hit the
> door. The same applies to autopickup: spells or fog will prevent
> you from picking up things, so you have to explicitely 'get all'.

 I haven't run into a problem with spells on exits, but I have seen the
problem you mentioned with fog.  The apply and pickup function should really
just ignore that, and keep going down the stack of objects.

> 
> 1f) Containers
> 
> Crossfire already has containers for gems/money, arrows, bolts and
> keys --- can we have containers that contain only rings, weapons,
> books etc?  In this case the player should be able to specify which
> items should go into the container.

 That is supported - all I believe is needed is for the slaying field of 
the container to match appropriately.  I believe when picking up, it will
try to find the best container match, and then put in a generic container
(it certianly works for quivers and arrows)

> 
> 1g) Polymorphing

 I really wouldn't have much problem to make polymorph useful again (ie,
could get good stuff) - we just need to make wands of polymorph much
rarer and with fewer charges, and rods of polymorph non existant (the later
is where the problem really came from - you could keep polymorphing for ever
until you got what you want.)  Unfortunately, I think when rod code was
added, it was assumed that anything that came as a wand could also come
as a rod.

> 
> 1h) Daylight and Nightfall

 I thought this was in the TODO list, but I didn't see it in a cursory
glance.

 But adding a crossfire time scale makes sense (certain special things
happen at certain times).  I remember some of the ultima series really
did that nicely (gates show up and go away based on moon time, certain
herbs needed for special spells could only be harvested at cetain
times, etc.)

> 1i) Probe spell
> 
> The probe spell seems a good candidate for the top ten list of the
> most useless spells. Now, lets think a little bit about the player/
> monster interactions. Players can transfer mana to monsters; can
> they heal monsters as well? Can they cast fire immunity or holy
> possession onto a monster?

 I believe you can pretty much cast any spell on a monster you want to.
However, some probably won't have any affect.

 As for the probe - I'll have to look at what the spell reveals, but
certainly making it useful makes sense.  the 'problem' is making it so
it doesn't reveal too much information, and is actually printed in fairly
nice english (I recall that some of hte books on monster lore basically
say things like protected: fire, immune: magic, etc)  A good item
description routine based on the monster would be nice (ie, The troll is
a very large monster with high regeneration rate.   It is exceptionally
strong, dislikes fire, and is not particular intelligent).  I remember
the moria actually had a feature that would keep track of how many
monsters you killed, and give you better monster description with the more
you killed.

> 1j) Long operations
> 
> Some things take quite a while:
>   - logins (esp. using xpm)
>   - character logins for characters with quite a few items
>   - entering or leaving apartment maps
>   - dropping or picking up a lot of things
>   - identifying a lot of things
>   - alchemy a lot of things

 Most all of these should pretty much disappear if people are using the
new client.  A lot of these have to do with graphical updates/creation, and
execution is effectively blocked until the update finishes.  The new
client/server should not have a problem (output just gets buffered in
socket output buffer, and server can keep doing stuff.)

> 1k) Gaining exp
> 

 Experience needs to be fixed up some.  The low levels are advanced through
much too quickly (anytime I start a new character, I can go to the newbie
tower, clear it out, and be level 3 within half an hour of play.)

 Experience has been discussed many times.   The problem with experience
at those first 3 levels isn't as much the exp for the monsters I don't think,
but rather I can go there and instantly find 100 or so monsters that I can
kill reasonably safely.

 However, a fix gets tough.  In theory, a 1:1 fight against an orc should
not be a sure thing at first level, and certainly a 2:1 or 3:1 should
really mean the player will be in serious trouble and likely end up dead.

 The problem here is that if the maps are designed for multiple players,
the passages will be 2 or 3 spaces wide, so 2:1 or 3:1 fights are the norm.
So you can't make the monsters that much tougher and still expect the player
to survive.

 We could reduce the number of monsters, so that you just can't easily find
that many to kill, but that would require updating a lot of maps.  The
easiest solution would be to reduce the exp for those monsters quite a bit.

 (As a side note, such gain is also made easier by the fact that the player
will gain HP and SP while fighting and moving around.  A slower regain of
hp (or maybe only regain if sleeping/resting) coudl be more appropriate.  I
guess it depends on how much of the gauntlet feel of the game to retain.)

 I think mid levels are pretty good.

 High levels are problematic.  I still say one problem is that there is
no real endpoint.  If a player completed most all of the maps and is level
50, he still wants new challenges simply because he can.  Most all other
adventure games I am familiar with (nethack, moria, rogue, wizardy, bards
tale, ultima, etc) have a finishing point sooner or later, and that 
effectively limits how power the monsters need to be designed for.

 I still think some idea like that could be nice.  The current free form
maps don't really have that, but it could be done.  Maybe have numerous
different paths (quest of light or darkness), base them on the players
god or race, or whatever.  But at some point, i think it needs to be
acknowledge that crossfire was just not designed for players beyond some
level.  My personal opinion might be that should be level 30->50 - certainly
will before 110.

 As a note, a friend of mine has the opinion that AD&D was not designed for
high levels (above 30 or so).  So what he did for his players is give them
special properties as they complete stuff beyond that point.  Doing something
like that for crossfire could be interesting.  Certainly, more interaction
with the gods or randomly generated unique stuff could be interesting and
add more replayability.

 Has anyone played ultima online extensively?  How do they deal with
the issue of long term players?


> 
> 1l) We need some funny messages in the game.

 Certainly not a bad idea.  An even nicer touch would be to remove all
compiled in messages, and get the proper set using the locale, so a 
german or norwegian or whatever set of messages could be used depending
on the local.  At the same time, extend to have more messages available
for some messages (however, having multiple messages still gets redundant
after a little bit of play.)

> 
> 2h) Map reset
> 
> 
> Theory: since nobody was playing during the night, the map didn't get
> swapped to disk. I deleted all the temp maps, and when I shutdown the
> server, the wizard tower map was written to disk, and reloaded when
> the player came back. Apparently the server didn't notice that the
> map was idle (no player in it) for more than 10 hours!

 Map will still get swapped to disk.  I see that happen all the time
if there are no players.  My only thought on it might be because of
the way the player exited, the server still thought there was a player on
the map.

 However, even with the new client, there is still the issue of what to
do with a player when the exit the game via non standard means.  Options
I see are:

 1) Save them were they were when they lost the section.  This opens up
cheating (kill session while in treasure chamber, log back in after the
map resets, grab new treasure, repeat if necessary)
 2) Save them back in town.  This effectively gives them a free word of
recall.
 3) Make a prison map, and save the players in a cell there.  The player
can then pay some fine to get out, cast word of recall, or hope the dm
recovers him.


> 
> 2l) 0 Hitpoints
> 
> When you reach 0(?) hitpoints, the kill message will be sent, but you don't
> die yet.

 I thought I fixed this.  Will look at it again.

> 
> 2m) Reincarnation etc.
> 
> Why do you get these spells (reincarnation and raise dead... might be
> a third one I don't remember right now)? It seems like an leftover
> from older days... can't even raise zombie corpses or anything like
> that, so I guess they are used to raise dead players...

 Yeah - if you are playing with NOT_PERMADEATH enabled, they have no effect.

> 
> 2q) "Apartment" lock files
> 
> The server doesn't compile with those stupid lock files turned off.
> Hit that trap every time a new version shows up... "oh, cf has an
> option to turn the lockfiles off... great, why didn't I notice that
> before?....<compile>... ah, now I remember" :-(

 I need to look at the unique item code, and probably clean it up some.
I believe the lock files were really meant if multiple servers were being
run using the same set of files - I don't really ever consider that all that
well supported, and with the client/server stuff, where you really need
a centralized server, it would be even less relevant.

> 2u) Random encounters
> 

 I'll add a much more server warning not to use it.  I really don't like
hiding options like that - people should be able to select whatever the
want, no matter how wrong they might be to do it.

> 
> 2v) The infamous strange ring

 The new artifact code really messes up/changes the idea of special artifacts.
I believe the the random artifact space will only go from the special artifact
treasure lists, and not stuff from the artifacts file.  However, some stuff 
in the artifacts file is rarer and is the stuff you really want to find more
often.

 I think for such things and most of the armor, and gems, the occasional
special version adds some interest.  But for best balance, it may make sense
to remove the super special/great random artifacts from the artifacts file
and make 'hard coded' archtype artifacts for them.  This way, they
will show up in the random artifact spaces, which is probalby a better
place than finding some awesome ring on a skeleton someplace. Opinions?  


> Also, eyeshields and dragon mail used to be good items to have for a
> few levels; this probably has to be reconsidered since they are now
> rather expensive --- they might no longer be worth getting at all,
> depending on the price.

 I always considered this a bug - bringing in the necessary items to have
dragon armor made was no cheaper than if it occured randomly in the shop
(the later just happens very infrequently).  The armorer really should 
add a good discount since you supplied the materials.




-- 

-- Mark Wedel
mark@pyramid.com
[to unsubscribe etc., send mail to crossfire-request@ifi.uio.no]


References: