April 19, 2024, 07:56:30 AM

Username
Password

Pages: [1]   Go Down
Print
Author Topic: modding spells  (Read 3309 times)
0 Members and 1 Guest are viewing this topic.
aqrit
Developer
*
Offline Offline

Posts: 85



View Profile WWW
« 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?Huh??? (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
Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2272



View Profile
« Reply #1 on: October 18, 2016, 09:03:12 PM »

Fantastic start deciphering Magic!

Smiley
Logged

and back in Nuln, the ageing Graf Berhardt smiled his secret smile of pride whenever he heard the latest tales of his eldest son's ever growing chain of glorious victories -(sothr manual)
Pages: [1]   Go Up
Print
Jump to: