.com.unity Forums

.com.unity Forums (http://forum.shrapnelgames.com/index.php)
-   Scenarios, Maps and Mods (http://forum.shrapnelgames.com/forumdisplay.php?f=146)
-   -   Utility: Code diving - 3.10 list of sites and spells (http://forum.shrapnelgames.com/showthread.php?t=36344)

DrPraetorious October 9th, 2007 10:46 AM

Code diving - 3.10 list of sites and spells
 
EDIT: Made a slight error in my code-diving, had the wrong field width for names. Fixed now.

See the posts below for individual files in the archive.

One love,
TNDP

lch October 9th, 2007 11:17 AM

Re: Code diving
 
Nice stuff. I think you should just change the title to reflect more what this is about.

Edi October 9th, 2007 11:50 AM

Re: Code diving
 
Thanks! Saves me from making a separate request. http://forum.shrapnelgames.com/images/smilies/happy.gif

I've got most things done, but the specials can now be added, as well as terrain masks.

Gandalf Parker October 9th, 2007 11:57 AM

Re: Code diving
 
I need to pull new text lists. Nation numbers, items, monsters, etc.

Plus the All View map for monsters and the All View map for sites should be updated.

And the auto-programs for adding to maps such as the chaotica themes.

Edi October 9th, 2007 12:25 PM

Re: Code diving
 
I can do the monsters, weapons, armor, sites and items for you as soon as I finish updating the DB. The string dumps of weapon lists and armor you have done in the pasts have been missing things. It's literally a matter of minutes to do them once the DB is up to snuff.

Does anyone remember where the old Code Diving thread is? Because it has all the explanations for the raw dump columns, which I don't quite remember.

Edi October 9th, 2007 12:56 PM

Re: Code diving
 
Never mind, I found the old thread. It's here.

DrPraetorious, can you do the same kind of summary as you did the last time, or give me column names for the various things in the new .csv file? Try as I might, without some sort of informative column headers, I can't do anything with that data since I won't know what's what.

Zylithan October 9th, 2007 01:54 PM

Re: Code diving
 
you guys rock!

DrPraetorious October 9th, 2007 04:41 PM

Re: Code diving
 
I'm going to fix it this evening when I get back from rehearsal.

Edi October 9th, 2007 04:49 PM

Re: Code diving
 
Thanks! Take your time, it's nearly 11 pm here and I've got morning shift tomorrow from 8 to 4 pm, so you have no hurry. http://forum.shrapnelgames.com/images/smilies/happy.gif

DrPraetorious October 9th, 2007 10:23 PM

Re: Code diving
 
1 Attachment(s)
Here's a nearly-readable version in .xls format. Here are the fields explained:

How to read it:
The Path and Rarity columns are pretty self-explanatory, and match to the number values used in the modding manual.

Each site has up to 5 powers, each of which has an argument.

Power1 corresponds to Argument1, Power2 corresponds to Argument2, and so forth.

The codes for powers and their arguments are (unused powers are not noted, but may do things - for example, I bet there's a power that generates temples):
Powers 1-8 are *gem income* - these are off by 1 from the ordinary path numbers (so fire is 1 instead of 0, etc.). Argument is the number of gems.

Power 10 was probably once extra-resources in capital. May not do anything now?

Power 11 is a recruitable troop. Argument is unit #.

Power 12 is a recruitable commander. Argument is unit #.

Power 13 is gold income. Argument is amount of gold.

Power 14 is resource income. Argument is number of resources.

Power 15 generates labs when found. Argument is just 1.

Power 16 generates temples when found, but is not used. Argument would presumably be 1 if it existed.

Power 17 makes fortresses when found. Argument is fort #.

Power 18 is enter-to-summon - it's repeated for each unit that appears. The type of mage automatically matches the type of site. Argument is unit #.

Power 19 is unrest adjustment - argument gives amount. Negative numbers increase unrest. Note that negative numbers are represented as very bug numbers in the spreadsheet (sorry).

Power 20 is supplies adjustment. Argument gives amount.

Power 21 is spreads disease. Argument is percent chance of disease per turn in the province.

Power 22 is enter for (argument) experience points.

Power 24 is horrormarking. Argument is percent chance of horrormark per turn in the province.

Power 29 is capital-only-unit. Argument is unit #.

Power 30 is capital-only-commander. Argument is unit #.

Power 31 is increase scales:
Argument 0 -> Order
Argument 1 -> Productivity
Argument 2 -> Heat
Argument 3 -> Growth
Argument 4 -> Fortune
Argument 5 -> Magic

Power 32 is *decrease scales*. Same arguments.

Power 57 is enter to summon void monsters. Argument is always 20 - might be base chance of success.

Power 60+X is a bonus for a given school of magic. Argument is %.

Power 67 is holy power. Argument is % chance of each undead being hit by AN10. "Your undead units in <province name> are being killed by a holy force native to this province."

Power 68 is holy fire. Argument is % chance of each undead or demon being hit by AN10. "Your undead and demonic troops in <province name> are being hit by holy fire".

Power 70 is probably remove battle afflictions. Argument would presumably be % chance.

Power 71 is curse. Once again, argument is % chance per unit per turn.

Power 72 is enter-to-scry.

Power 192 is enter for adventure. Edi speculates that the argument is % chance of getting anything useful.

D'oh! I had two field lengths wrong!

Replaced with a new attachment.

DrPraetorious October 9th, 2007 10:45 PM

Re: Code diving
 
1 Attachment(s)
And here, god help us, is the new spell dump. The zip file contains my best guess about how to interpret the various fields.

Edi - this really should be part of the database. Let me know what you need in order to interpret it.

Updates:
I have added the new effect (Internal Alchemy) and the new enchantment (Dance of the Morrigans) from the 310 spells.

I have cleaned up the #spec field notes slightly, including figuring out that the extra-field in lightning makes the attack "grounded" - it always hit something in the target square.

DrPraetorious October 10th, 2007 12:43 AM

Re: Code diving
 

The following sites do cool stuff (so not just money, labs, gems, etc.)

Site 566, the Temple of the Solar Bull
Fire 2, Rarity 2, any regular land
2 Fire Gems, commander Heliodramus

Site 567, Temple of the Sacred River
Water 2, Rarity 2, any regular land
1 Water Gem, 1 Death Gem, commanders Renata and Renatus

Site 568, Telesterion
Nature 2, Rarity 2, Forest
1 Nature Gem, 1 Earth Gem, commanders Mystes and Epoptes

Site 569, Grove of Revelry
Nature 2, Rarity 2, Forest
1 Nature Gem, commander Reveler

Site 617, Valley of the Dead
Death 1, Rarity 2, Plains/Forest/Wasteland
1 Death Gem, 1 Earth Gem, Enter to Summon Mummy

Site 619, Carrion Thicket
Death 1, Rarity 2, Forest
1 Death Gem, 1 Nature Gem, Enter to Summon Carrion Beast (715)

Site 633, Torture Tower
Blood 1, Rarity 1, Farmlands
Makes a simple hillfort, 3% horrormark

Site 634, Bloodshade Glen
Blood 2, Rarity 2, Unique (anywhere?)
Blood Magic Bonus 20, Conjuration Bonus 15, 1 Blood Slave

Site 635, The Slaughterhouse
Blood 2, Rarity 2, Unique (anywhere?)
Enter to summon Foul Spawn (460), Maenad (435) and Ghoul (198).

Ew.

Site 636, The Lodge
Blood 2, Rarity 2, Unique (anywhere?)
1 Blood Slave, Commanders Conjurer, Circle Master, Assassin

Site 637, Pool of Unhealthy Rites
Blood 2, Rarity 2, Any Land
Alteration 20, 1 Water Gem, 1 Death Gem, 3% Disease

Site 638, Bloodstone Mirror
Blood 2, Rarity 2, Any Land
Scrying, Thaum Bonus 20

Site 639, Tower of the Devil's Bride
Blood 1, Rarity 1, Unique/Any Land
+5 Unrest/turn, Enter to summon a lousy imp

Site 644, City of Dates
Nature 2, Rarity 0, Wasteland Unique
Makes 75 supplies, 50 gold, 1 water gem, 1 nature gem and a Motte-and-bailey*

*I'm begining to suspect that I have the fort #s wrong here....

Site 688, Nest of Bats
Blood 2, Rarity 1, Cave
1 Death Gem, Enter to summon Beast Bat

Site 689, The Lesser Abyss
Blood 2, Rarity 1, Cave Unique
+40 Unrest, Enter to summon Fiend of Darkness

Site 690, Splattermaid Gorge
Blood 2, Rarity 2, Cave Unique
1 Air Gem, Enter to summon Beast Bat

Site 691, Kelp Sea
Nature 2, Rarity 0, Shallows
2 Nature Gem, 1 Water Gem, Enter to summon Sea Stag

Site 692, Forest of Amber Kelp
Nature 2, Rarity 2, Shallows Unique
NFW Gem, Commander Air Elemental (572?)
NOTE: I bet this is a typo because the amber clan units are 573-576.

Site 693, Sentinent Current
Water 2, Rarity 2, Shallows
Conjuration 20, 1 WG
NOTE: Mis-spelled? Should be "Sentient"?

Site 694, The Darkness
Water 2, Rarity 2, Deeps Unique
Thaumaturgy 20, 1 WE Gem

Site 695, The Gate in the Deep
Water 2, Rarity 2, Deeps Unique
Conjuration 20, 2 W Gem

Site 696, The Basalt Forge
Earth 2, Rarity 2, Deeps Unique
Construction 20, 1 E Gem

Site 697, Tomb of Seven Oracles
Death 2, Rarity 3, Cave Unique
Enter-to-summon Cavern Wight, 2D1E Gem

Site 698, Infinite Cavern
Earth 2, Rarity 3, Cave Unique
Conjuration 20, 2 EG

Site 700, The Umbral Conclave
Death 2, Rarity 3, Cave Unique
Conjuration 20, 3 DG

Edi October 10th, 2007 02:23 AM

Re: Code diving
 
Thanks, I'll get to work on those specials and terrain masks as soon as I get home. They should be in the DB by tonight. You are right about the air elemental being a bug, it should be Amber Clan Guard (573) and the site misspellings as well (Sentinent/Sentient and Chaft/Shaft). I've got those shortlisted in the beta forum, but having the level of detail from your code diving efforts is invaluable.

I'll look at the spell issue, but if it gets added, it gets added in a separate document, because the current DB file is starting to get REALLY unwieldy and that's on my state-of-the-art-as-of-this-time-last-year system. The spell system has too much stuff and requires too many pages, so it must be separate.

DrPraetorious October 10th, 2007 09:22 AM

Re: Code diving
 
I noticed another (minor, this time) mistake in the output file for the sites. It's been fixed.

The accompanying text file has been slightly updated to include:

effect 10111 (internal alchemy)
enchantment #86 (dance of the morrigans)

Edi October 10th, 2007 02:25 PM

Re: Code diving
 
The sites output file attached to the explanation post still has some errors:
  • Path column is actually site level column
  • # and name column headers should be one column to the left
  • C column is a complete mystery
  • arg2 seems to have random offsets that cause shifting everything in it and the following argument columns one column to the right, probably due to the negative numbers that overflow to 65k+
  • arg4 suffers from the same thing
  • Mystery column 1 & 2 are the column-shifted arguments
All of that means that everything regarding what the sites do must be decoded based on what we already know of them. Fortunately, that's not a problem. I've got all the visible stuff on the sites already and I know the units, so I can use the remaining data to fill in all the rest of the blanks with the help of your decoding guide above.

DrPraetorious October 10th, 2007 02:38 PM

Re: Code diving
 
Redownload the attachment, I think I fixed all that http://forum.shrapnelgames.com/images/smilies/happy.gif

Edi October 10th, 2007 02:45 PM

Re: Code diving
 
Actually, you didn't. Doesn't matter, I can easily work with this since I've got most of the things down, the things I don't wil stick out like a sore thumb.

Edi October 10th, 2007 03:12 PM

Re: Code diving
 
Aaaaand it's done! Sites have been fully updated with terrain masks, levels and specials! Thank you, DrPraetorious! http://forum.shrapnelgames.com/images/smilies/happy.gif

DrPraetorious October 10th, 2007 04:27 PM

Re: Code diving
 
I must've uploaded the wrong attachment or failed to overwrite it or something, but if it's not a problem it's not a problem.

I'm perfectly happy to make the spell-list nice myself, but do not know how to do it. Can you suggest a tutorial on how to make dependent sheets and list lookups as is done in the main guidebook? It's a useful thing for me to know anyway.

Edi October 10th, 2007 05:01 PM

Re: Code diving
 
The spell list as such seems just fine, I can actually read most of it fairly well. In order to make the thing more readable, to create the kind of display pages the Dom3 DB has for units, you actually need to have the whole main page roughly as it is right now. Basically, that's your BaseS page.

Then you need a separate page which lists Effects, which would be BaseE, a list of Powers, which would be BaseP and possibly also a list of Arguments, which would be BaseA, but that depends on whether the argument values are fixed. I know there are some effect lists lying around, which could help in this.

Once you have all of that together, all you need for the display page is list the spell numbers in the ID column and everything else is retrieved from the Base tables by VLOOKUP functions. Some of those might even need to be conditional, but I don't think so, not in the same way they are in the unit DB. This project would be big enough that it'd need to be a separate document, so it could be called Dom3 Spell DB, I guess. If anyone can get me a half-decent list of the basic effects, just copying the id# and name columns from the BaseU, BaseW and BaseA tables of Dom3DB would give me enough to work with to get a rudimentary legible spell DB ready at a pretty short notice.


All times are GMT -4. The time now is 07:32 PM.

Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2025, Shrapnel Games, Inc. - All Rights Reserved.