[crossfire] Shop prices overhaul

Mark Wedel mwedel at sonic.net
Tue Dec 2 01:48:31 CST 2014


On 11/30/14 11:00 AM, Kevin Zheng wrote:
> Hi all,
>
> At the moment, Crossfire's shops aren't particularly useful. For
> medium-level players, prices seem unreasonable, while new players can't
> afford to buy from shops at all. Old players with high charisma and
> bargaining, on the other hand, don't notice a huge discrepancy.

  The shops (and economy) in crossfire have many problems, many have been 
discussed before, so I won't restate them, but I think any change is just going 
to be one piece of the puzzle.

>
> The attached patch attempts to fix some of these issues:
>
> Charisma and bargaining now only affect the shop buy price, with
> multipliers ranging from 2x for new players to 0.5x for very advanced
> players. This is consistent with rogue-style shopkeeper greed but still
> better than the existing situation. Bargaining is now significantly less
> useful; the hope is that in the near future it is replaced with
> interactive "haggling".

  If you are going to reduce the importance of bargaining, is there any reason 
to just not remove it all together then?  The passive skills were always a 
little odd (passive skills being those that the player just automatically uses 
without any effort, and likewise, can't really focus much on improving them).

  I'm not quite sure how interactive haggling will work out - it will seem like 
someone would pretty quickly figure out how it works, write a plugin to the 
client to just do the work and get maximum value, at which point, one asks why 
not just skip all those steps and just give the player the best price to start with.

  I do think that having stats & skills affect buy price is a good improvement - 
high level players tend to have more money than they can do anything with and 
never buy anything, so therefor, don't really see the advantage.

>
> The sell price is clamped down to 0.5x base price, subject to additional
> shop specialization and greed. This sell price is mostly better than the
> existing prices, and at the very least prevents high level players from
> buying and selling for a profit.

  One thing to be absolute sure to check is that it is never possible for a 
character to sell something for more than they can buy it (eg, buy for 100, sell 
for 101), because that clearly breaks the game.  In fact, even doing it equal 
would probably break the game.

  For those not looking at the patch, it appears to be that the character will 
get best price if their charisma is 30 or they have maximum bargaining level (or 
some combination in between (level 20 bargaining and 25 charisma would appear to 
do it also)

  I'd personally rather that instad of shop_buy_multiplier() having a hardcoded 
formula that is used, that is instead stored in the stat_bonus file, and if not 
set there, perhaps fill in the array based on that formula.

  I'm not sure how many people actually use the stat_bonus file, but all the 
code is there so it is a pretty simple matter to just keep using it - at also 
lets player admins adjust things more easily (with the formula as is, it is 
pretty much impossible to adjust things - at least with the old compiled in 
arrays, one could change those to get different behavior)

  Otherwise, looks good to me.



More information about the crossfire mailing list