Universal Spells. Interoperable magical assets for the Metaverse.

In previous articles I talked about how we could make virtual objects truly interoperable throughout the Metaverse, with the creation of a new type of asset, the Universal Asset (UA), check out the previous articles in this series if you haven’t: The Universal Asset framework series.

This framework as described in previous articles, we’ve applied to “physical” virtual objects such as weapons, armor, 3D body avatars, etc. However, we don’t need to stop here. We can go beyond physical assets, this same framework can be extended to magic systems: magic spells, enchantments, etc.

Universal Spells

In the same way the UA framework allows us to have fully interoperable physical assets between virtual worlds, if we extend this to magic systems, we could have Universal Spells (US). USs are still UAs, but we’ll use this new term to differentiate them.

Applying the UA framework to magic means that every magic entity would be its own UA, created with a similar — or the same — piece of software to the Universal Asset Creator (UAC) mentioned in our previous articles. Just as with other UAs, users will hold entire control over how their USs look: colors, textures, particle effects…

The Universal Spell framework

The framework we would use for our USs is very similar to our UAs, namely:

  • Assets live (likely as NFTs) outside of any particular virtual world.
  • Just like with other UAs, we use a public library of spells as standardized templates for what type of spells we can create. Their accompanying universal primitives (UPs) determine a minimum amount of functionality and impose some restrictions on how the spells can behave.
  • Visual assets and visual parameters (data and metadata) for spells are linked to the asset upon creation, and chosen freely by whoever creates them with the UAC.
  • All remaining behavior of the spells inside any virtual world, beyond the minimum dictated by the universal primitive of the spell, is dictated by the creators of such world.

Magic types

These USs could have additional metadata, that virtual worlds can choose to leverage or ignore. Such as the “magic-type” and type of “magical damage” of that spell.

For example, a fire spell labeled as “does heat damage” can be recognized by a virtual world, and be given additional in-game functionality, like applying burn status when being hit by that spell. If the virtual world doesn’t have pre-programmed any functionality for that specific type of magic, it can just apply the functionality it has pre-programmed for a “generic” or “neutral” type of magic.

This way, all spells can be implemented in any virtual world which doesn’t have an already in-place complicated magic system, or doesn’t recognize a particular magic-type.

How can we handle multiple types of magic?

In order to accommodate all possible types of magic that the Metaverse will have, and improve interoperability, it would be recommended to create a taxonomical structure for magic spells, likely in the form of a family tree, with a few “parent” magic-types—those that are the most common—and subsequent sub-families of “children” magic-types.

Let’s imagine for example a spell, that throws a ball of hot magma/lava. This could be a spell of main magic-type “fire”, and sub-type “magma”. If a virtual world has decided to have magma as one of their allowed magic-types, the virtual world would read this from the US, and apply to the spell in-game all the properties and attributes for that type of magic.

However, magma spells are likely a niche type of magic that many virtual worlds won’t implement. In this case, the virtual world would read the main magic-type of the spell, “fire”, and apply instead the properties and attributes it has encoded for that type of magic.

So virtual worlds read this metadata information from the bottom of the family tree upwards, and the first type they recognize, is the one that gets implemented. This allows us to always have a closest-match magic-type to ascribe to our spells, but also have additional granularity.

One important remark, is that the main classification of spells should be done first based on the type of magic damage they do, not their magic type, this favors interoperability and avoids immersion breaking phenomena. One could imagine a spell based on hot-steam doing water damage or ice damage if it were to be classified in the ice/water magic type category, for example. When a better fit would be heat damage, even though steam has nothing to do with fire or fire magic. So tying heat damage or a burning status effect exclusively to fire magic would be problematic. Different magic types should still be able to deal the same type of magic damage and status effect, such as “burning”. This is to say, even if a magic type is not recognized by a given virtual world, the type of damage it’s meant to deal might, and so we can respect that part of the functionality.

Spell Universal Primitives

All possible types of spells we want to be interoperable in the Metaverse, need to have their own category and universal primitive (UP). Each UP will have its own characteristic set of physical constraints (size, volume, etc.) and parameters—such as damage multiplier, duration of the spell, speed...—and likely a fixed relationship compared to other spell UPs. This could be done for example with multipliers. Just like we discussed in the previous article of this series.

For example, the spell UP for a single straight shooting magic projectile, could do 1.0x damage, while a similar parabolic projectile (a different spell UP) would do 1.1x damage.

Some reasoning would have to dictate the values chosen, one simple factor could be “chance of hitting your target”. A parabolic projectile has a lower chance of hitting your target because it spends more time in the air, has likely shorter range, and it’s harder to calculate mentally where exactly it will land. For these reasons, it would make sense for a parabolic projectile to do a bit more damage than its straight forward shooting counterpart. Less hitting-chance means more risk, so in this case more risk equals more reward (more damage).

The two type of spells described above would therefore belong to two different spell UPs, each one with its own damage multiplier and behavior. We create different spell UPs for different types of behaviors. One for two projectiles instead of one, another one for a single projectile but with homing capabilities, another one for a simple AOE, etc.

In this way, all the relevant information of the spell is tied to its behavior, the magic type doesn’t matter at this level, the effects of different magic types are built on top of this universal framework.

Spell ranks

Another helpful addition would be to classify all spell UPs with some sort of power or rarity ranking system. So a simple straight-shooting magic projectile might be a Rank 1 type of spell, while a spell that throws multiple powerful projectiles with homing capabilities would be a rank 10 spell.

Higher ranking spells are likely to have a bigger area of effect, higher damage, higher chances of hitting the target, multiple projectiles, etc. So the type of spell UP is usually indicative itself of how powerful the spell should be.

World-builders can now tie their own leveling systems to our USs. For example, if one virtual world has a pyromancy skill tree, where the user gains experience points and levels up by using fire spells against enemies, some USs of higher rank might only be unlocked after a certain level of proficiency has been acquired by the user at pyromancy: level 20, 50, 100…

Controlling how spells look

One of the problems of giving users the ability to choose the visuals and magic type of their spells, is that it can lead to bizarre results, such as a spell that looks like fireball, being labeled as “ice” magic.

There are a couple of ways in which such problems could be mitigated:

  • USs could be signed by the DIDs of one or more parties, such as their creator, a trusted co-signer, a parent company or brand...

This allows for whitelisting or blocking certain spells in any given world-instance (server) of a virtual world. Each virtual world can have different servers with different rules. For example, official servers could only allow for USs created by that world-creator, or a trusted and public list of creators. And private servers of that virtual world can decide to implement a different set of rules.

  • Some of these “trusted co-signers” might even offer their services to review and co-signing spells made by individuals for a small fee, making sure for example that a fire-looking spell is not labeled as being of the “ice” magic type.

Until we find a way to guarantee that the visuals of a spell match their magic-type (both of which are freely chosen by the user), such systems might be necessary to avoid breaking immersion and not mislead other users on how a particular spell will work.

Enchanting

Simple enchantments, such as applying a magic buff to a weapon, can also be their own US. They could have different looks depending on the state of the weapon, for example, the buff being visually more prominent or having additional particle effects, when it’s being swung.

Of course, each enchantment will have its own magic-type labeled in its metadata, just as the rest of USs.

Final remarks

Universal magic systems are in theory possible, and they could carry many of the same advantages that universal physical assets could. Allowing people to own their magic spells and bring them across different virtual worlds, would be a dream come true for many.

It would certainly be a huge kick for the creator economy and user generated content (UGC), as anyone could create spells, and they’re in principle universally usable in any virtual world.

By creating a universal magic system based on categories of spells, we’ve ideally created a plug-and-play magic system for world-creators, who can modify and tweak it as they see fit.

There are many unexplored possibilities. Who knows? Perhaps these USs could be also represented by something resembling a page from a book, describing the properties and lore of the spell. Meaning, if you create a bundle or pack of spells and put them together, you’re putting together also a bunch of pages, which could become a book. Your own tome of magic spells. Buying and selling magic spell books becomes now possible in the Metaverse.

--

--

Alfonso Spencer
Foundations for a truly interoperable Metaverse

🇺🇸 | 🇪🇸 Architecture Astronaut for the Metaverse. Scientist 🔬 | Cypherpunk 👨‍💻 | Modern Stoic🏺| Cardano ₳rmy 💙.