A lot of discussion has happened over the last week or so on how to deal with overlapping buffs.
At present, there aren’t very many objects that give stat buffs - and there aren’t any that give skill buffs. Aside from my strong desire to avoid unbalanced +con buffs floating all over the place, the biggest reason for this sort of thing is probably just how horribly difficult it is to implement reliably.
The current method for giving someone a temporary stat buff is by giving an object a query_str_bonus() method (or con, dex, spd, int, etc…) and dropping it in the player’s inventory. You then wait until recalc() is called on the living - it is called very frequently. The result of all query_str_bonus() calls on the player’s entire inventory is added together in a stat_bonus[] hash that’s stored on all living objects and the contents of stat_bonus[] are then added to all stat queries…
there is a better way
In stead of requiring individual objects to track every buff and in stead of requiring frequent iteration over a player’s inventory and calling 10 methods on every object they’re holding… I think a single buff manager is in order.
Read more…
allaryin idea buff, hunger, magic, stats
(This is another repost. This article was dredged up from my original notes on the idea of a ‘favor’ system for handling a player’s standing with the gods. It was originally imported into my personal blog in December of ‘06, but was probably written well before that. It is being preserved here for historical reasons.)
Favor starts at zero, is capped at 100, and is allowed to go arbitrarily negative.
Messages
96.. presence
76..95 very close
10..75
-1..9 brief rumble
-14..-2 loud rumble, displeased
-29..-15 bolt
..-30 death
Read more…
allaryin repost faith, gods, magic, prayers, priests, skills
(Wow. Of all of the old reposted posts… this is the only one to actually contain a disclaimer that it was already obsolete at the time it was originally posted. There are still a few shreds of ideas that I’d like to extract from here, but the whole notion that players would have to use “cook” and “chop” type verbs to prepare potions one step at a time has been completely replaced by the longstanding recipe system.)
Note: This document is old. The ideas herein have not yet been updated to bring them in sync with current plans for the game world.
The SIMud alchemy system will hopefully wind up being very interesting. It should allow players to experiment with a tremendous number of different ingredients and methods of preparing and combining the ingredients. There should probably be multiple combinations that result in similar potions.
Read more…
allaryin repost alchemy, crafting, magic, obsolete
(This is a repost of an article I originally wrote on my personal blog back in December of ‘06. It is being appropriately back-dated.)
I’ve recently given a lot of thought to the magic system in
Walraven. It is a mess of kludges and bandaids upon bandaids upon gaping wounds. Lots of systems in the game were written as temporary type measures just to get a feature into testing. Unfortunately, with the kind of time people tend to have for working on the mud these days, those temporary measures have just sort of stuck around and become permanent.
I therefore propose a list of new features and rewrites that will become version 2 of the game’s magic system.
Read more…
allaryin idea, repost interruption, magic, meditation, resistance
(Yet another repost from notes archived elsewhere. I originally put this on my personal blog in August of ‘05.)
The following is a continual survey that I am conducting of all magical effects that I have seen implemented in pen and paper rpg’s. The point here is to condense them into their barest forms and thus be able to categorize specific spells into individual categories - and to use the list as a sort of checklist when designing other magic systems.
Read more…
allaryin repost buff, magic, plans, skills