Greetings all...Bit-of-a-time lurker, first time poster... I do hope no one minds me clearing my throat and jumping right into the issues at hand, but the topic caught my eye as the rewriting of the magic system is a current project on the MUD which I'm currently working on...Let me disclose in the beginning that I know how to code pretty well (I'm a graduating and soon-to-be-employed CS student/Programmer), but I'm new to the Circle community. I'm not quite sure what proper 'response ettiquete' is on here, so I'm going to hack-and-edit, and hope no one gets to annoyed... Ghost Shaidan once formed the pixels to read: : : > ->Are there any plans to revamp the magic system in circle? : > : > I doubt there are any plans for rewrites or revamps of major systems : > in the code at this stage in development. However, if you come up : > with some good reasons why it should be done, it may (or may not) : > happen (eventually). It's a shame it is the way that it is. I personally looked over DIKU's/Circle's implementation of skills/spells and really wasn't too happy with it. On the MUD I'm coding on, we've removed the original code for both skills and spells, and are rewriting it from the ground up. In the process, we've begun parsing out both skills and spells in the same routine instead of treating skills as ACMD's. As a whole, the act of consolidating the systems allows much more flexibility in the SS (Skill/Spell)code, but it's cropped up as a huge pain in the parsing/interpreting phase of the code. As it stands currently, I've had to make special exceptions for multiple-argument skills (ie, steal) as the old interpreter was set up to parse multiple-word spells fine, but not multiple-word arguments. On the positive note, consolidation does wonders for controlling the code from a central location, allowing for a lot of code reuse in SS assigning pre and post-"lag" and working into a sphere/school/category system (Current design aspect). In addition, we dumped the "learn/practice" system, and are working with a SS-centric acquisition which losing the spell/skill distinction does wonders for simplicity and makes the code much more elegant. :-) As a form of discussion, I was wondering if anyone had input into the parsing issue. I am currently thinking about designs to allow for a very elegant spell parser and executor. My first hurdle is the parser...In particular, how to deal with multiple-word spells and multiple-word arguments. At current, I'm thinking about either tokenizing the input in a fashion similiar to C's argc and argv[] main parsing technique, or possibly hashing the SS list in a manner similiar to the way a UNIX shell does. Is there anything out there on command hashing/alternative parsing in relation to Circle? I've never really set up a hash table in C (PERL's associative arrays does it for you *grin*); anyone have pointers and pitfall warnings in regards to hashing in Circle that they'ld be willing to share? : Categories of spells, Call the schools and spheres if you want, but an : extra bit in the spello to identify the type, healing, protective, : firedamage, acidamage, magicdamage, etc. This will allow eq and mobs to : offer/have resistances against certain affects. Forexample, that nifty : ice shield is probably going to melt very quickly when you get hit by a : fireball spell... This part of the code has a lot of promise, I would throw in unabashedly... *grin* As a side note, I've also found spell 'typing' very useful for flow-control functionality (ie, type="damage"; func = "ss_damage()"). >Further development/rewriting of the spell-component code. Not for all >spells, just for some of the more powerful ones. Also something to do >with different levels of holy symbols perhaps. This would be very interesting. I had also had the thought on specifying 'verbal' vs 'non-verbal' casting. Although the reason for this was the idea of adding in 'silence' room flags which could be effected by spells ('Cone of Silence' or perhaps on characters with a 'Mute' effect). Last (Side) Question: I'm having a problem with gcc ("truncation of literal"s)...What would be the best forum/targeting for the question? -- Clifford Skalaski Last Year Computer Science Undergraduate University of Pennsylvania, School of Engineering http://www.seas.upenn.edu/~skalaski/ +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST