Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Enhance the Creature Variation system  (Read 2114 times)

Captain Mayday

  • Bay Watcher
  • A Special Kind of Terrible
    • View Profile
Enhance the Creature Variation system
« on: December 09, 2010, 09:41:58 am »

Hi Toady, and indeed everyone.

We've talked about this before a bit, but I'd like to bring it up again, and perhaps expand the discussion slightly.
As some of you might know, I'm the author of vbase, a modder's set of raws to assist in creating creatures with a whole new degree of ease.

Today, for starters, I'll bring up the old chestnut, nested Creature Variations.
Basically, what I want here is the ability to have the following:
[CREATURE_VARIATION:MASTER_VARIATION]
   [CV_NEW_TAG:APPLY_CREATURE_VARIATION:SUB_VARIATION_ONE]
   [CV_NEW_TAG:APPLY_CREATURE_VARIATION:SUB_VARIATION_TWO]
   [CV_NEW_TAG:APPLY_CREATURE_VARIATION:SUB_VARIATION_THREE]

So I can simply use  [APPLY_CREATURE_VARIATION:MASTER_VARIATION] to apply sub variations one, two and three. Right now I have to put sub variations all in the creature, or to put all the content of the sub variations into the master variation.

Why this is needed: One of the best features of VBASE is that it centralizes certain game elements. For instance, I can quite literally rearrange the faces of every critter using the appropriate facial variation, just by changing the variation. If I put all of the sub variation details into the master, that renders my desire to have centralized sets of values pretty much impossible. If I put the massive list of sub variations into the creature itself, that really only prevents the modding from being simple, which was my aim.
So in short, I can currently have either simplicity or centralization, not both.

Potential problems: Circular references. I imagine that you can code against this, however.


The second item I shall suggest is [REMOVE_CREATURE_VARIATION:VARIATION_NAME]
Now, my idea here is basically a creature variation run in reverse. Added tags are removed. Removed tags are added. Other types of changes are reversed.
Technically, I can already do this, if I make a second set of creature variations with inverted tags. I can't see how doing that is better than a simpler method such as this, however.

Why this is useful: I can already remove particular tokens with [CV_REMOVE_TAG]. That's fine for short removals. But if it's possible to line up a series of variations within a variation, it'd be nice to be able to remove a specific variation in the case of individual creatures.
Logged
Why not join us on IRC? irc.newnet.net #bay12games

orbcontrolled

  • Bay Watcher
    • View Profile
Re: Enhance the Creature Variation system
« Reply #1 on: December 10, 2010, 12:43:14 pm »

(I don't have a firm grasp of modding, so stop me if I say something stupid)

It sounds like this would be a useful feature in general, not just for creature modifications. Maybe the request should be generalized as: The ability to define a collection of lines in the raws as part of a "group", and then be able to apply that group to other groups/objects/entries/whatever using operators like Union, Intersect, Subtract, Multiply, Divide, etc.

(Blue-sky tangent: )
For that matter, I wonder how hard it would be in some future update to completely do away with the current raws syntax, and replace it with a mature data description language like SQL or something. We could certainly use the extra power it would afford us, and no sense reinventing the wheel...
Logged

therahedwig

  • Bay Watcher
    • View Profile
    • wolthera.info
Re: Enhance the Creature Variation system
« Reply #2 on: December 10, 2010, 08:21:25 pm »


(Blue-sky tangent: )
For that matter, I wonder how hard it would be in some future update to completely do away with the current raws syntax, and replace it with a mature data description language like SQL or something. We could certainly use the extra power it would afford us, and no sense reinventing the wheel...
I thought the current raws already used a form XML?

I approve of this suggestion. Even though my modding skills aren't to great either, I can imagine this would be incredibly useful in describing creatures.
Logged
Stonesense Grim Dark 0.2 Alternate detailed and darker tiles for stonesense. Now with all ores!