[Crossfire-wiki] [Crossfire DokuWiki] page changed: dev_toto:quest_management_system
no-reply_wiki at metalforge.org
no-reply_wiki at metalforge.org
Sun Jun 11 14:42:20 CDT 2006
A page in your DokuWiki was added or changed. Here are the details:
Date : 2006/06/11 19:42
User :
Edit Summary: moved content to "dev_todo" not "dev_toto"
@@ -1,59 +1,3 @@
- (copy of a mail sent to CF --- //[[nicolas.weeger at laposte.net|Ryo Saeba
]] 2006/06/10 07:58//)
-
- Quests should be finite state automates. Meaning different states, with
- transitions between states, with conditions for those transitions, etc.
- Each state would specify special behaviour for NPCs, texts so the player
knows
- the quest status and what to do (or at least some hints). Also there wou
ld be
- the rewards for completing that state, everything needed.
-
- Transitions should describe what the player should do to actually change
- states.
-
- My idea is to have quest files. Each quest would be one file, describing
all
- states, transitions, including all information on what NPC's behaviour t
o
- change, rewards, and so on.
-
- If required, a quest file could be accompanied by some special maps,
- archetypes, anything specific.
-
- The quest engine would, at start time, read those files, and process the
m. It
- would then, at map loading time, add revelant hooks to NPCs, or track gl
obal
- events (for instance follow player movement to know if they do what is
- required to complete a task).
- It would also keep, for each player, quest status, and such.
-
- Advantages I see:\\
- * quest's information is in one file, it's easy to see globally how it w
orks,
- versus today's dispatched in maps, making it hard to look at, and check
- whether it's broken or not\\
- * as a correlary, adding/turning off a quest means moving one file (or a
- directory)\\
- * it wouldn't not rely on the hacks i did for the first basic quest syst
em. I
- don't really like'em anyway :) \\
- * we can think of DM commands to look at quests, know what quest a playe
r did,
- reset quest status. Maybe even dynamically alter quests! *g* \\
- * we can add a quest editor, probably included in the map one :) \\
-
- Drawbacks, opened questions:\\
- * one could change a map without updating a quest, thus it could be beco
me
- broken - server should try to handle that graciously, and report it in a
ny
- case \\
- * to have a really powerful quest system, and fun transitions (from bash
ing a
- specific monster to having 3 players do a special dance at a certain tim
e),
- the conditions / transitions will require a full scripting language. So
- either reuse an existing one (Python, maybe? Or LUA? Or anything else?),
or
- make our own - I'd favor reuing existing one, to avoid making Yet Anothe
r
- Script Language. Though of course if we use Python the Python plugin wou
ld
- become mandatory.\\
- * this quest system could be done either at server's core level, or as a
- plugin. Last option would require some changes in plugin architecture
- (basically move plugin handling from server part to common lib part, to
add
- hooks at a basic level. Also add interplugin communication).\\
- * tracking player behaviour could be resource intensive - that will need
- testing and addressing if required :) \\
-
- ----
- === Comments ===
- Umm the path for this page should probably be "dev_to**d**o:quest_manage
ment_system" not "dev_to**t**o:quest_management_system"
-
+ ====== Page Moved ======
+ Because of a spelling error in the title, this page has been moved to [[
dev_todo:quest_management_system|dev_todo:quest_management_system]].
IP-Address : 24.55.181.141
Old Revision: http://wiki.metalforge.net/doku.php/dev_toto:quest_managemen
t_system?rev=1150054567
New Revision: http://wiki.metalforge.net/doku.php/dev_toto:quest_managemen
t_system
--
This mail was generated by DokuWiki at
http://wiki.metalforge.net/
More information about the crossfire-wiki
mailing list