Warhammer Dark Omen Forum

Modifications => Tools => Topic started by: aqrit on October 18, 2016, 05:48:30 PM



Title: modding spells
Post by: aqrit on October 18, 2016, 05:48:30 PM
after staring at the "magic_attribute_table" ( file offset 0x000E2FB8 ) for awhile
this is what it looks like to me...

magic_attribute_entry (sizeof=0x28)
00000000 // ID (unused?) // matches name and desc index
00000004 // flags for? 1=spell 2=sword 4=shield 8=banner 0x10=spell_book 0x20=potion/ring 0x40=cash 0xA0(20h+80h)=staff
00000008 // flags?????? (1<<3==enabled icon)
0000000C // MANA_COST
00000010 // SORT_WEIGHT ( for magic panel buttons, -1=not shown?)
00000014 // MAGIC_ID ( 1=item, 2=bright, 3=ice, 4=waaagh, 5=dark )
00000018 // ICON_ID ( from book sprite probably... )
0000001C // MAX_RANGE
00000020 // SPEED ( e.g. how fast a fireball travels towards a target )
00000024 // OVERWORLD_SPRITE 0=banner 8=chest 0x10=amulet 0x18=shield 0x20=book 0x28=sword -1=none [8's? -> starting frame?]

looks like the spell animations are not set by the "magic_attribute_table"

//

0x004E5800 // "soul drain spell" -- in attributes table

0x0046F9C0 // "soul drain" proc
|- 0x0046FB24 // "soul drain" remove one wound spot in disassembly

char* item_name[ 0x40 ]; // table at 0x004E28C0
char* item_desc[ 0x3A ]; // table at 0x004E29C0


Title: Re: modding spells
Post by: olly on October 18, 2016, 09:03:12 PM
Fantastic start deciphering Magic!

:)