Commit graph

21 commits

Author SHA1 Message Date
Ty Conner
23f033fd0e
Add teleloc to writers (#1055) 2018-10-09 22:54:25 -04:00
Ty Conner
eac0370646
Fix Generator Ints (#1042)
* Add SQL update scripts

* Update Shard and World base scripts

* Update Shard Scaffolding

* Update World database Scaffolding
2018-10-02 21:34:58 -04:00
gmriggs
43d1373568
Adding Void magic (#1028)
* Adding Void magic

* Mapping BaseRangeConstant to SpellBase

* Fixing DoTs to only use the top layer enchantments

* Added limiter for switching between war and void magic
2018-09-28 03:55:32 -04:00
Ty Conner
c01d39b4bf
Changing Sort Order for Create List and Generators (#948) 2018-08-11 21:40:08 -04:00
Ty Conner
19ab98ac7e
Update SQL Writers for more comment output (#946)
* Update SQL Writers for more comment output

* Update SQL Bases

Used included tools to align output of sql scripts

* Update AppVeyor
2018-08-11 16:12:08 -04:00
Mag-nus
c079bf0fd0 Treasure Death/Wielded column names updated (Thanks GDLE) 2018-08-06 00:16:28 -05:00
Mag-nus
478e891aa3 PropertiesSkill AdjustPP removed
In the cache.bin, this is probably a bool. It is 1 for every instance found.

If/When we understand what this flag might have meant, we can re-add. However, given that it was always true in cache.bin, that is unlikely.

Furthermore, in GDLE, this bit was always set to 1 on write, and always masked off on read.
2018-08-05 23:27:06 -05:00
Mag-nus
e9db9ab530 Defaults removed for native type default values
If an int/float had a default of '0', it was removed.
If a nullable had adefault of NULL, it was removed.

This isn't needed for EF.
This cleans up the SQL.
This also helps make sure our sql writers are generating the full INSERT query to recreate a record.
2018-08-05 12:24:43 -05:00
Mag-nus
7feffeedcc Spell table columns Id and SpellId merged into Id
There are no need for duplicate unique id's. The Spell Id is already gauranteed to be unique
2018-08-05 08:54:42 -05:00
Mag-nus
004d7d4f19 LandblockInstance refactored. DYNAMIC SUPPORT REMOVED
Columns id and guid have been combined into a single guid column.

This requires that every landblock instance be provided with a valid unique guid.

In the old code, you could provide an instance that would have an auto generated id (column) and a guid of 0. ACE would then see the guid is 0 and would use the following:
GuidManager.NewDynamicGuid();

In the cache.bin, every landblock instance has a unique id.

If we need to add the ability to have dynamically guid'd landblockinstances, this is an easy thing to add back.
2018-08-05 07:30:14 -05:00
Mag-nus
33ef2f2e7c Rename landblock_instances to landblock_instance
This follows the singular naming convention we are using for the other tables
2018-08-04 14:24:52 -05:00
Mag-nus
8a642308bc This changes the writers so that angles are written in WXYZ format instead of XYZW
The cache.bin, as well as the client use these data structs in WXYZ order.

However, when you actually construct a Quaternion in ACE (Which uses a System.Numerics native type), the arguments are passed in XYZW.

I prefer XYZW order, but, to keep things in lined with the client, I've univied angles to be WXYZ order in our cache.bin exporter and in ACE.
2018-08-04 10:36:36 -05:00
Mag-nus
005fd2339a EmoteActions are now childeren of Emote 2018-08-04 09:02:41 -05:00
Mag-nus
2c8e2507d4 Recipe_Mod Health/Stamina/Mana cleaned up
There were 3 redundant values which were basically flags indicating if it's associated vital was actually used.

However, in the cache.bin, any time a vital was present, it's associated flag was also set to 1. This is basically redundant.

We can simplify this as follows. If the Vital != 0, it gets applied. If the Vital == 0, it doesn't get applied.

I suspect they may have wanted the flag so they could leave a vital value in the db, but just have it disabled. We don't need this.
2018-08-01 22:54:06 -05:00
Mag-nus
79b07792de Recipe_Mod ExecuteOnSuccess field added
This allows us to not have to add all 8 records found in the cache.bin.

Instead, we only have to add the records that actually modify something. This new bool basically indicates if it was the first 4 or the last 4 or the fixed 8 found in the cache.bin
2018-08-01 22:40:36 -05:00
Mag-nus
88805c14a8 Recipe_Component table removed and merged into Recipe table
We were relying on the order of the recipe_componet records to remain the same, but this isn't gauranteed unless we provide a zIndex.

Instead of adding a zIndex to the Recipe_Component table, we can just put the static values in the base Recipe table.
2018-08-01 22:09:09 -05:00
Mag-nus
7989686440 Recipe.RecipeId removed in favor of Recipe.Id
We basically had 2 id's, one static and one auto generated. We can just remove the auto generated id and use the static id as the primary key.
2018-08-01 21:35:18 -05:00
Mag-nus
cf3979de80 RecipeMod Properties are now recorded per mod, not per recipe 2018-08-01 18:47:05 -05:00
Mag-nus
fb5c1999a4
Rename SkillStatus to SkillAdvancementClass (#911)
* Rename SkillStatus to SkillAdvancementClass

SkillStatus and SkillAdvancementClass are neither the perfect names for what this value represents.

However, the client calls it SkillAdvancementClass. We call it SAC in the database. And GDLE also uses the SAC naming.

I think switching this name helps align ACE with the pdb without adding any additional confusion, meaning, this new name is equally as confusing as the previous, but at last its aligned with the pdb and gdle.

* changelog
2018-07-31 07:16:24 -05:00
Mag-nus
64d6e88f99
TreasureDeath and TreasureWielded SQL Writers added and tested (#906) 2018-07-29 08:56:50 -05:00
Mag-nus
3c46c07ffe
This moves the .sql file generation code that Ripley has been using into ACE.Database (#889)
* This moves the .sql file generation code that Ripley has been using into ACE.Database

This will help us import data from any source into ACE EF objects, and then use these SQLWriters to create a unified output.

* Weenie and LandblockInstances SQL Writers added + Enums

Some styling and comments added to the other SQL Writer classes.

Still need to do the treasure tables, as well as recipe/cook books.

Also need to confirm SQL output is well formed and accurate.

* CookBookSQLWriter and RecipeSQLWriter

Writers that still aren't implemented:
PointsOfInterest
TreasureDeath
TreasureWielded

Also, still need to test the output of these writers to make sure it's correct.

* Formatting tweaked a little bit, much closer to the final product

This creates scripts that import.
Still need to verify a couple of data mismatches.

* This moves the Int/Did property decoder to ACE.Entity.Enum.Properties

This code will likely be used to help UI content editors and database viewers.

* This fixes float output where precision was lost. Woops.

* Fat fingered a variable in the weenie SQL writer

This concludes all the testing for the SQL Writers.

They all test OK and produce the same results as the code Ripley was using to generate the .sql files.
2018-07-28 21:01:19 -05:00