Archived

This topic is now archived and is closed to further replies.

Magic, and annotated objects revisited

This topic is 5780 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

bishop_pass and that mob over in the other forums on this topic have given me an excellent idea, but also thrown my game design into turmoil. Perhaps some of you can help with, or maybe just lightly flame, my ideas. I started to wonder about that annotated object deal, and what I initially wondered was: What level of detail would the annotation take? Would it be high level actions, which an npc could only interpret as a solution to a specific puzzle, or would it be (more likely) vey low level game properties, ie an object''s annotation may say: "use me to alter target object''s velocity", or perhaps it''s temperature, it''s position, it''s mass, etc. This ties in very well with the magic system I designed for my game (which is why I''ve opened a new thread for this), but there are some practical issues that need to be resolved, and I desperately need your feedback. Every magic system that has been implemented to date in a computer game has been high level, spells that do a specific thing, really acting not as spells but as objects which activate flags. Zork GI is an excellent example of this. My system, on the other hand, was designed for extremely low level manipulation of game objects, such that spells could actually be constructed freely by the player using basic units. The system worked on the transferral and modification of various "energy levels", actually numerical attributes, of a target object. The attributes included world location (ie coordinates), mass, velocity, angular velocity, force, temperature, electrical charge, atomic number(transmutation!), and a couple of others. The idea was that the player would cast a spell designed to raise or lower these values, and the effect would occur as soon as the next iteration of the physics engine loop picked up these new values. Thus an entire environment for the player to freely manipulate objects would be created. First problem: Two of my programmer buddies like the idea, the third (who is actually most likely to be coding the game in the end, and possibly the most experienced) thinks this approach would be far too processor intensive, given the number of world objects and the various other subroutines that will be going on at the same time, and he also thinks this approach doesn''t coexist happily with OOP (sadly I gave up programming before I learnt how to do OOP, so I''ve only the vaguest idea what he''s talking about). As I mentioned in other posts, they wont use anything other than VB, which may have some bearing on your answers. So, how many of you think he''s right? I need experienced designers'' and programmers'' opinions if I''m to have any hope of persuading him to even try and make the system. Moving on to puzzles: The idea of the game was that each defined puzzle would be centered about an object''s properties, such that when the object''s attributes (or only some of them, eg position, velocity, etc) were within certain "trigger" boundaries, a flag would be set that the puzzle was solved and the relevant cutscene or game event would occur. This would allow the player infinite flexibility in his responses, as he could solve the puzzle using absolutely any combination of available objects or spells that would cause the target to reach its trigger state, moreover it would also give the NPCs a reasonable chance of solving it using the "annotated object" system. Of course this approach only covers the more basic puzzles of the game. It would be very dense, for example, to model every tumbler of a lock and have a key that actually fitted (although a lockpicking simulator WOULD be interesting). Thus, in addition to the attribute trigger system, there would be a higher level object puzzle system more like traditional games, where "using" an object specifically designed to solve a puzzle (like the key to a lock), is instantly recognised as the solutiona and triggers a response. Unfortunately the aforementioned programmer, when presented with this proposal, now wants to do everything with the high level "lock and key" system only, which defeats the whole point and makes the gameplay completely formulaic and traditional, something I hoped desperately to avoid. You will also see that this makes the proposed magic system (a crucial plot element) impossible, as that requires the "attribute trigger" system to work. This is the big one, I need as much relevant information and informed opinions as you lot can offer. Please.

Share this post


Link to post
Share on other sites
I don''t think it would be too processor intensive. It might be too programmer-intensive. And I can see it being a lot of work for very little gameplay reward unless you pile a lot more high-level design work into it.

[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost ]

Share this post


Link to post
Share on other sites
You seem to have two different design decisions to make:

-high level vs. low level objects.
High level: casting fire on an object will set a ''hot'' flag on the object.
Low level: casting fire will increase temperature by a certain value.

-using annotated objects or not.
The advantage of using them is that the NPCs can show location related intelligence (think the Sims) and planning abilities. I''m not very sure if this can improve the gameplay, and it will not be an easy system to create by any means, not from the programmer''s point of view and not from the level designers point of view either. RPGs are quite complex as they are, with gameplay based "just" on fighting and puzzles. Besides, why would you want the NPCs to solve the puzzles you worked so hard to create when they were meant for the player? Not mentioning that it takes control away from the player, and unless the NPCs really know what they are doing the player will be very frustrated when the NPCs get themselves killed trying to solve a puzzle.

Also note that the annoted objects system can work a lot better with the high level object system.

Share this post


Link to post
Share on other sites