• Register

You are a God! You are master and ruler of a loyal nation. You have unimaginable powers at your disposal. You have claimed this world as yours. But there are others who stand in your way. You must defeat and destroy these pretenders. Only then can you ascend to godhood and become the new Pantokrator. When you start the game you decide what kind of god you are and how your DOMINION affects your lands and followers. It is an expression of your divine might and the faith of your followers. If your dominion dies, so do you. Your dominion also inspires your sacred warriors and gives them powers derived from your dominion. In order to win and become the one true god you have to defeat your enemies one of three different ways: conquer their lands, extinguish their dominion or claim the Thrones of Ascension. Release version and manual is available now. Manual can be downloaded from Illwinter's web page.

Forum Thread
  Posts  
Spells and Their Attributes (Games : Dominions 4: Thrones of Ascension : Forum : The Council of Sages - Strategy Guides : Spells and Their Attributes) Locked
Thread Options
Oct 27 2013 Anchor

Update (2013/01/12): The spell dump for Dominions 4.04 is now available. But, I would recommend that you consult the one for 4.03 if you want spell descriptions. I had to remove the descriptions from the 4.04 dump, because it would have required too much duct tape to keep using the table of description indices that I had been using. A different table, pairing spell records and descriptions, needs to be found. I performed a number of end-to-end scans of the Dominions executable today but could not find any of the patterns that I had hoped to find. Otherwise, very little has changed from 4.03 to 4.04 - Poison Resistance (Spell #776) is now using #effect 524 rather than #effect 599.

Text Dump (4.04)

SQLite3 Database (4.04)

Update (2013/12/31): A complete spell dump for Dominions 4.03 is now available. This incorporates data from Edi, DrPraetor, Wolfs_SA, and Burnsaber. Spell descriptions are included with the spells that have them.

Text Dump (4.03)

SQLite3 Database (4.03)



Update (2013/11/16): Relabeled the "Category 1" attribute to "Sound #", because that is what it really is. Feeling stupid that I didn't realize that earlier. Also, figured out the mysterious lists in the earlier dumps; they are key-value pairs, containing information such as the range of ritual spells, nations to which the casting of spells are restricted, etc.... At this point, the general meaning of every byte in the spell records is reasonably well understood. Some particular values still need to be decoded though.

Update (2013/11/09):Discovered that the #damage value is 64-bit. Nearly all mask values in use by the vanilla game have now been decoded. For example, one should be able to use mask value 4294967296 with #effect 11 to get the diminuition effect used by Army of Rats and Shrink. I will be dumping the effect mask tables fairly soon.

Update (2013/11/03): Many spell effect (#spec) modifiers decoded, thanks to help from Edi, DrPraetor, and Wolfs_SA.

Here is a preliminary dump of spells and their attributes from the Dominions executable. More fields still need to be decoded.

Dl.dropboxusercontent.com

Modders may find the table of effects at the end of the dump to be useful. It lists every effect number encountered in the table of spells and which spells use the effect. Players may find the area of effect and spell argument (damage, monster #, gem type, etc...) attributes to be interesting. Please consult the modding manual for understanding some of the values, such as as 666, 1000, 2000, 5000, etc....

Edited by: _noblesse_oblige_

Oct 28 2013 Anchor

Thanks a lot! Can you get the #spec values? If I saw those I could determine the possible new values for animal only targeting.

Oct 28 2013 Anchor

I can possibly supply some of the bitmask values, but I need to look at that list first.

Oct 29 2013 Anchor

@Burnsaber: You're welcome. I'm still looking for #spec. It might be the Unknown 4 and Unknown 5 fields (as of the updated dump I just posted) taken together, but I am not convinced. There are still another 116 bytes per record to scour, so it may turn up elsewhere.

@Edi: I didn't have time to break out Unknown 4 and Unknown 5 into easily-readable bitmasks tonight. Will probably do that tomorrow night. They clearly seem to be mask values though.

Hmm, actually that value of 128 in Unknown 5 does correspond to 8388608 in the modding manual for underwater spells, if Unknown 4 and 5 are coalesced into a single 32-bit integer, and it is present on Voice of Tiamat, Contact Sea Trolls, Frozen Heart, etc.... I'll coalesce the two 16-bit integers tomorrow and relabel them as #spec. I think this also means that two of the modifier sets for the weapons need to be coalesced as well, since the masks we identified for those seem to match what is in the modding manual for spells. Will clean it all up in the next day or two. We already know that weapons and spells draw from the same set of effects to deliver damage and so it wouldn't surprise me if they share modifier bitmasks as well.

Oct 29 2013 Anchor

The spell numbers in that dump are wrong. Spell numbering starts from 150, with Banishment as the first spell. I've checked against what I had previously compiled and some of the things have been moved around since the last time I looked at spells. I expect the list from 0-149 are hidden effects and spells that are autocast by units or other things, autoeffects from items etc. The only spell or effect below 150 that I was ever able to find out from in-game is Astral Harpoon, the spell/effect from the artifact of the same name, and that was in slot 94 at the time.

It was easy enough to check with a small mod that selected every spell from 1 to 2000 and altered the description of the spell to say "Spell [number]". Using that with even the latest version nets Banishment at 150 and everything else visible after that.

A new version of the spell dump with correct numbers would be quite helpful, since a lot of things have moved around. It looks like the beginning of the list has the common divine and level 0 spells, followed by national spells and then everything else.

Edited by: Edirr

Oct 29 2013 Anchor

It sounds like I may have to add an offset of 150 to the numbers or see if the table actually starts earlier. I just took the first spell that had a name as a starting point. The spell numbers are not actually stored in the tables; I programmed the dumper to increment them, one per record, starting at 0 from the first named spell. Thanks for pointing this out - it is a work in progress - please let me know about any other issues.

Update: Good catch, Edi. Enjoy 150 more spells. I was wondering why the list didn't start with "Nothing" like the weapon and armor lists did. Now it does.

Update 2: Decoding of modifier set #0 (aka, #spec) has begun. Appears to be the same as modifier sets #0 and #1, if coalesced, for weapons.

Update (2013/10/31): Reinterpreted some of the unknowns as 32-bit values instead of two 16-bit values. Seems that Unknown 1 is another mask which identifies buffs, among other things, and Unknown 2 which seems to also be a mask having values which identify damage type (bludgeoning, piercing, slashing, acid, etc...). For example, Rain of Stones does bludgeoning damage.

Nov 1 2013 Anchor

Oh, I didn't even notice someone else had done this already :).

Are the bitmasks from dom3 still in use? I had decoded many of those by creating custom spells of various types, although I recall several of the bitmasks were quite mysterious still (never ocurred to me to check them against the weapon bitmasks.)

Nov 1 2013 Anchor

I saw your impressive list of mask values and it seems to match up with Edi and I have figured out so far. (Edi probably can make many more educated guesses but hasn't had the time to work on it. He did a good job with the weapons list - also in this subforum.)

Feel free to check out the "Unknown [XXX]" masks from Modifier Set #0 (#spec, really) in the data dump to see if they match your list. I'll also look more closely tomorrow night but now I need to get some sleep.

Nov 1 2013 Anchor

Having tested a few with custom spells in the beta (before that functionality got broken), at least some of the old bitmasks still seem to apply, so they would probably be a good starting point.

Nov 1 2013 Anchor

I figured out a couple more of these but I can't find the additional notes - I think they're on my old HD which I still have but not sure.

Affects Body or Mind [4096] - This isn't "Magic Resistance Negates"?
16384 - never seemed to do anything, but a lot of spells do have it; it shows up on damage over time spells which are NOT poison, among other places, so I think this mask may be context sensitive.
524288 - Tested as Not vs. Undead, I think.
131072 - I believe this tested as not vs. mindless.
1048576 - "not vs. flyers/floaters", surely.
2097152 - is-physical. Might be context sensitive, I think some things default to physical.
16777216 - MRN easily?
268435456 - this shows up on rituals that target remote provinces; turning it off did break those rituals, as I recall, but I wasn't able to use it to make spells work remotely either.
536870912 - I thought this was only-vs-living, but I recall in tests didn't seem to do anything. I might've set up the test wrong, though.

Anyway, gotta get back to work unfortunately.

Nov 1 2013 Anchor

This is taken from your old notes:

1 -> Strength adds
2 -> Unused
4 -> Unused
8 -> Works on Demons (only)*
16 -> Works on Magic Beings (only)*
32 -> Fire Based
64 -> Armor Piercing (documented)
128 -> Armor Negating (documented)
256 -> Unused
512 -> Cold Based
1024 -> Unused
2048 -> Shock Based
4096 -> Magic Resistance Negates
8192 -> Not vs. Inanimates? Damage Type = Poison?
16384 -> Thanks to KO I believe that this field means a spell is "grounded" - it always hit something in any hex on which it lands.
32768 -> Only vs. Sacred.
65536 -> Sailors' Death only spell that has this. Not vs. Amphibians would be my guess.
131072 -> Not vs. Mindless?
262144 -> Only vs. Hostile
524288 -> Not vs. Undead.
1048576 -> Earthquake is the only thing that has this. Might be that thing where you get a save using your defense skill.
2097152 -> Physical damage?
4194304 -> Only affects friendly units? Very common among buffs.
8388608 -> Works underwater.
16777216 -> Magic Resistance Negates Easily?
33554432 -> *ONLY* under water.
67108864 -> Works on Undead (only)*.
134217728 -> Unused
268435456 -> Remote province targeting? Long list of spells.
536870912 -> No idea. Strange mix of spells have it.

e: 16384 is wrong, it actually means the spell is not shield blockable
e2: I would guess 536870912 is not vs. lifeless, but I haven't checked thoroughly.
e3: Should be able to look at spells with 268435456 and figure out where the range attribute is stored, with a bit of luck.

Edited by: Wolfs_SA

Nov 1 2013 Anchor

Yeah, some of those notes are wrong, there was an updated/corrected list that I made after doing actual testing, but I can't find it. It is mostly right anyway.

There are also several libraries of bitmasks for various effect numbers, which we should try to figure out:
Effect 10
1 Blessing
2 Luck
4 Aim / Wind Guide
8 Air Shield
16 Barkskin
32 Regeneration
64 Legions of Steel
128 Boost strength
256 Berserk
512 Pain Transfer
1024 Resist Fire
2048 Resist Shock
4096 Resist Cold
8192 Cold Aura (increase)
16384 Heat Radiation (increase)
32768 Restore Morale
65536 Stoneskin
131072 Flight
262144 Quickness
524288 Armor Piercing Weapons
1048576 Astral Weapon
2097152 Life After Death
4194304 Holy Avenger
8388608 Flaming Arrows
16777216 Resist Poison
33554432 Become Prophet***!
67108864 Boosts Magic Resistance
134217728 Etherealness
268435456 Ironskin
536870912 Communion Master
1073741824 Communion Slave


Effect 23
1 Twist Fate
2 Invulnerability
4 Haste (as opposed to Quickness)
8 Mossbody
16 Grant Fear (+0)
32 Water Shield
64 Trample***
128 Power of the Spheres
256 No obvious effect**?
512 No obvious effect**?
1024 Become pretender**?!
2048 Soul Vortex
4096 Earthpower
8192 Storm Power
16384 Charge Body
32768 Fire Shield
65536 Mistform
131072 Hell Power
262144 Phoenix Power
524288 Water Power
1048576 Strength of Gaia
2097152 No obvious effect**?
4194304 Twiceborn!
8388608 Ritual of Returning!
16777216 Mirror Image
33554432 Unholy Power, etc. (probably
work on living targets with different value in #spec).
67108864 Inner Sun!
134217728 Phoenix Pyre
268435456 Astral Shield
536870912 Regrowth (regen that works on
inanimates, I suppose).
1073741824 Dragon Master!


Effect 11
1 Disease
2 Curse
4 Starvation***
8 Plague
16 Something is missing***
32 Curse of Stones
64 Entangle
128 Confusion
256 Decay
512 On fire
1024 Armor Gone
2048 Armor Rusty
4096 Blindness
8192 No obvious effect**?
16384 Earth Grip
32768 No obvious effect**?
65536 Bonds of Fire
131072 False Fetters
262144 Limp
524288 Lost One Eye**?
1048576 Weakened**?
2097152 Battle Fright**?
4194304 Mute**?
8388608 chest wound
16777216 crippled
33554432 feeble minded
67108864 Never Healing Wound**?
134217728 slime
268435456 numbness
536870912 Web**?
1073741824 Lost an Arm**?
*** Hard to get AI to cast. List is not
exhaustive as I have not all effect numbers.
**? -Good chance this is hard get AI to
cast (not sure but not used by a basic game spell).
! Persistent. I didn't check maluses
for persistance – I assume that afflictions are persistent and
others are not.

Nov 2 2013 Anchor

DrPraetor wrote: I figured out a couple more of these but I can't find the additional notes - I think they're on my old HD which I still have but not sure.
Affects Body or Mind [4096] - This isn't "Magic Resistance Negates"?


I think you're right. (Edi also decoded it as such for the weapons and I forgot to transfer it over to the spell effects). Changed in the updated dump.


DrPraetor wrote:
16384 - never seemed to do anything, but a lot of spells do have it; it shows up on damage over time spells which are NOT poison, among other places, so I think this mask may be context sensitive.


Yeah, if there is commonality across this one, it is still eluding me.


DrPraetor wrote:
524288 - Tested as Not vs. Undead, I think.


This seems to be the common theme across the spells which have it and so I've now marked it as such. Thanks.


DrPraetor wrote:
131072 - I believe this tested as not vs. mindless.


Not convinced about this yet. It's not a clear theme across the spells. Might be context-dependent though.


DrPraetor wrote:
1048576 - "not vs. flyers/floaters", surely.


Cave Collapse and Earthquake are the only two with this flag.


DrPraetor wrote:
2097152 - is-physical. Might be context sensitive, I think some things default to physical.


Agree that it is context-sensitive.

From the list of spells, it seems to be earth-associated for effect #002 (Cave Collapse, Blade Wind, etc...) and something that affects legs or battlefield movement for effect #011 (limp, cripple, Entangle, etc...).


DrPraetor wrote:
16777216 - MRN easily?


Thanks for all the lists. I am too tired tonight to go through them all and match up things. I think you are right that some of the values are context-dependent on which effect is being applied.

What was previously being listed as Modifier Set #0 is now being listed as Modifier Set #1. I converted the things, which we listed as unknowns last night, into masks and added a couple of new unknowns to replace the old ones.

Nov 2 2013 Anchor

_noblesse_oblige_ wrote:

DrPraetor wrote:
16384 - never seemed to do anything, but a lot of spells do have it; it shows up on damage over time spells which are NOT poison, among other places, so I think this mask may be context sensitive.


Yeah, if there is commonality across this one, it is still eluding me.

I buried it in the edits at the end of my post, but it's "not blockable by shields". It's on most self-targeted buffs, which suggests that they are shield blockable by default, which is interesting.

Nov 3 2013 Anchor

Wolfs_SA wrote:

_noblesse_oblige_ wrote:
DrPraetor wrote:
16384 - never seemed to do anything, but a lot of spells do have it; it shows up on damage over time spells which are NOT poison, among other places, so I think this mask may be context sensitive.


Yeah, if there is commonality across this one, it is still eluding me.

I buried it in the edits at the end of my post, but it's "not blockable by shields". It's on most self-targeted buffs, which suggests that they are shield blockable by default, which is interesting.


Thanks, Wolfs_SA. No slight was intended - I just hadn't processed your list yet. Will probably get through the rest of what you and DrPraetor posted tomorrow. I need to restructure the dumper code a little first to accommodate the possibility that different spell effects have different interpretations for their masks. Haven't had much time to work on things the last couple of days due to a software product release deadline at work....

Wolfs_SA wrote:
536870912 -> No idea. Strange mix of spells have it.

Looks like this one is related to bodily health on all of the spells that I've found it on.

Possibly interesting find: mindless beings cannot be horror marked according to decoded values. Need to verify this with testing. Thematically, it somewhat makes sense.

Edited by: _noblesse_oblige_

Nov 11 2013 Anchor

Thanks for all the hard work with the masks and everything else! I'll take another look when I've got a bit more time.

Nov 17 2013 Anchor

You're welcome, Edi. Thanks for making the new DB available; it helped me figure out the last two sets of mysterious bytes today. At this point, every part of the spell records is understood. A few unknown values still need to be decoded here and there, but the meanings of their parts of the records are known.

A couple notes:

  • The mask values that I decoded for the #onlygeosrc fields in the spell records do not correspond to the ones listed in Table 25 of the modding manual. For example, Forest is 128 rather than 2 and Mountain is 16 rather than 4. (Need to check if the mask values used for modding are different than the ones used internally by Dom 4.)
  • Many of the spells, listed in the Dom 4 DB as being restricted to Bogarus, are also available to Vanarus, according to the data dump.
  • Edited by: _noblesse_oblige_

    Nov 17 2013 Anchor

    Have you checked the table in the mapmaking manual? The magic site locmasks used in modding are very different from the ones used to actually assign terrain to a map file and 128 is the map file mask for forests.

    As far as the national listing etc in the Dom4 DB spell page, those are, like everything else on that DB page, basically shotgunned in the general direction without worrying too much about accuracy. So yes, an oversight on my part, that. I was in a kind of a hurry to get the DB presentable for public consumption and to bring the spell page up to date for 4.03, I'd need your spell data dumps anyway. :)

    Dec 31 2013 Anchor

    New spells dump, as both plain text and as tables in a relational database. Includes flight and explosion sprite information from Burnsaber. Also incorporates information, provided by DrPraetor and Wolfs_SA, which was not completely absorbed in previous dumps. And, it contains descriptions... including for the "Hall of Statues" spell. ;)

    See OP of this thread for links.

    Enjoy.

    Edited by: _noblesse_oblige_

    Jan 1 2014 Anchor

    Thank you for the hard work! :D

    Jan 12 2014 Anchor

    You're welcome, Edi.

    Bump. See OP for update.

    Jan 14 2014 Anchor

    How do I open the database? I have no clue what Sqlite is

    Jan 14 2014 Anchor

    Burnsaber wrote: How do I open the database? I have no clue what Sqlite is


    The database contains all of the various data dumps in one place. If you're not familiar with SQL, then either using the text dumps or else using Larzm42's inspector are your best bets. I am providing the database primarily as a service to those, such as Larzm42, who want to create apps to enrich the Dominions ecosystem.

    But, to answer your question, there are a number of ways to open the Sqlite database. I believe there is a matrix on the Sqlite web site listing a ton of GUI tools for accessing these databases - some free, some not. I personally prefer the command line tool which comes with the database software itself. Sqlite is very popular because it provides a SQL-queryable database without the need for a dedicated database server.

    Jan 14 2014 Anchor

    Ok I'll look into it. I just want to copy-paste the bitmasks (buffs, debuffs and the spec values) into a small spreadsheet for quick reference. They don't seem to be in the datadump

    Edited by: Burnsaber

    Jan 14 2014 Anchor

    Burnsaber wrote: Ok I'll look into it. I just want to copy-paste the bitmasks (buffs, debuffs and the spec values) into a small spreadsheet for quick reference. They don't seem to be in the datadump


    There are text dumps of all of those in the Effects and Their Attributes thread. Please let me know if any of them seem wrong.

    Reply to thread
    click to sign in and post

    Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.