I do think that it is worth working on just to improve the options/capabilities for mapmakers making quests... This is a often requested feature actually - a quest system. I really like the idea of the Job/quest object - although I think it would be something that would be part of a map set (a .qst file?) being that it would have to be map dependent. I really enjoy stressing that the arches and the maps and the server packages should operate as modularly as possible. I realize this complicates things a bit - but with two map sets and the possibility of custom mapsets, these mini quests should go with the maps rather than the arches. If you consider the lore field in the map header as requiring some sort of 'load process' to generate book content from the maps - perhaps this could be extended to read in these 'jobs' as well. - trivial but worth mentioning I thinkthat you should not be too specific on the usage commands so that any object could serve as a 'board' (a talking dog or a shop keeper for example) - especially when developing the commands for the interface. > > Another idea.. but this one I've actually got partially working in code.. > > Basically, jobs. Similar to quests, but of a less sweeping nature. > > In a nutshell.. the game will have a collection of little jobs for the player > to perform. There will be a board in town, where players read the board, and > accept a job. A job can be something simple, like "bring me a gold dagger". > The player reads the job description, and accepts the job. The board marks that > job as [ACCEPTED], so nobody else can take it. The player can only take one > job at a time. Now the player finds a gold dagger, and comes back to the > board. He "completes" the job, with a command, and the board acknowledges that > he has completed the job, and marks it [OPEN] again for other players. If the > player cannot complete the job, he can give up. > > Jobs will have an exp stat, and a value, so a reward can be exp, or monetary in > nature. Perhaps if you fail to complete a job, it will give you a penalty of > 1/10th the exp of the job. A job could have a timelimit, after which, it will > expire, charge the player the exp penalty, and return to an open status. Jobs > can only be performed by a player once each. > > Implementation details: > > A new object type, JOB. This object contains data on the job, such as reward, > object required, name of creature you have to kill, or whatever. > > These jobs are placed inside a "board" object. The board object is a simple > object that can be used for other things than just the job system. When a > player applies the board, he sees the contents of the board, or in the case of > jobs, the individual jobs that are available. > > A player can get details of a job by typeing "checkboard 1" Which will give him > the details on job number 1 on the board. > > A player can accept a job with "accept_job 1". This will mark the job as > accepted on the board, and give the player a copy of the job object. > > A player can complete the job with "complete_job 1". This doles out the reward, > marks the job open on the board, and complete in his inventory. > > A player can giveup a job with "abort_job 1". Same deal. > > A player can look at his job status, with "jobs". This will tell him about the > job he is currently tasked to complete. It might also tell him about jobs he > has allready completed. > > A sample job object: > > Object job1 > name Retrive a mithril dagger > type 101 > msg > I am in need of a mithril dagger, > without one, I cannot hope to regain > my family honor. > endmsg > level 3 <- suggested level for job > food 1 <- unique identifier, or jobnumber. > exp 500 <- Exp reward > value 1000 <- monetary reward > other_arch dagger <- what the job expects > materialtype mithril <- it wants the dagger to be mithril > end > > A "kill this person" job could be done with: > > other_arch man <- the archtype of the target > slaying Bob <- the op->name of the target > title The Dork <- the title of the target. > > A simple check can be placed in the kill routine, so when a monster is killed, > it checks the player's job inventory, and looks for a job matching that monster. _______________________________________________ crossfire-devel mailing list crossfire-devel at lists.real-time.com https://mailman.real-time.com/mailman/listinfo/crossfire-devel