Commit graph

52 commits

Author SHA1 Message Date
Ty Conner
b9b5c23220
Update Event Importing (#4402)
Adjusted code for event to be properly registered in EventManager for hot-loading event without restarting server
2025-11-28 14:21:18 -05:00
OptimShi
53edc5b1c3
Added importsql/exportsql support for events. Added additional weenie info to landblock SQLWriter. (#4333)
Co-authored-by: OptimShi <26606778+OptimShi@users.noreply.github.com>
2025-07-16 00:34:45 -04:00
gmriggs
edcc7cd4cc
add encounter import/export commands for content devs (#4252) 2024-12-08 19:59:18 -05:00
OptimShi
f108bb3cd8
Better handling of export-sql functions (#4235)
* Handle empty landlocks when attempting to export-sql

* Adjusted all sqlFile output in a `using` loop to help prevent locked files on failure.

---------

Co-authored-by: OptimShi <26606778+OptimShi@users.noreply.github.com>
2024-10-24 14:00:42 -04:00
Ty Conner
47f23e2014
Switch to net8 (#4059)
* Switch to net8

* Update appveyor.yml

* Update appveyor.yml

* Update appveyor.yml

* Update appveyor.yml

* Update appveyor.yml

* Create AppVeyorInit.ps1

* Update appveyor.yml

* Delete AppVeyorInit.ps1

* Create AppVeyorInstall.ps1

* Update appveyor.yml

* Update Dockerfile.arm64

* Update Dockerfile

* Update appveyor.yml

* Update ACE.Adapter.csproj

* Update ACE.Common.csproj

* Update ACE.Database.csproj

* Update ACE.DatLoader.csproj

* Update ACE.Server.csproj

* Update copyrights

* Update DeveloperContentCommands.cs

* Update DeveloperFixCommands.cs

* Update ACE.Database.csproj

* Update ACE.Database.csproj

* Update ACE.Common.csproj

* Update ACE.DatLoader.csproj

* Update ACE.Common.csproj

* Update ACE.Server.csproj

* Update ACE.Server.csproj

* Update ACE.DatLoader.csproj

* Update ACE.Server.csproj

* Update ACE.DatLoader.csproj
2024-04-24 13:24:41 -04:00
Ty Conner
12e569652f
Switch to System.Text.Json (#4002)
* Switch to System.Text.Json

Removed Newtonsoft.Json and DouglasCrockford.JsMin

* Update GameConfiguration.cs

* Update MasterConfiguration.cs

* Update ThreadConfiguration.cs

* Update StarterSpell.cs

* Update StarterGearFactory.cs

* Update Program_Setup.cs

* Update LifestonedConverter.cs

* Update Program_Setup.cs

* Update Program_Setup.cs

* Update ACE.Adaptor

Shift JSON weenie [de]serialization to System.Text.Json

* Update LifestonedConverter.cs

* Update StarterGearFactory.cs

* Update ACE.Server.csproj

* Update ACE.Server.Tests.csproj

* Update Program.cs

* Update MySqlConfiguration.cs

* Update DDDConfiguration.cs

* Update ModContainer.cs

* Update ModManager.cs

* Update ModMetadata.cs

* Update ModMetadata.cs
2023-12-21 14:15:38 -05:00
gmriggs
14e3a13c2c
improve documentation for content editor commands (#4020) 2023-07-14 19:03:31 -04:00
gmriggs
cb0d440ecb
prevent index out of range exception for some recipe developer content commands (#3933) 2022-12-06 18:21:00 -05:00
gmriggs
bc09da25df
fixes for previous checkins (#3926)
* Revert "Adjust calculation of Max Range for Spells (#3924)"

This reverts commit d1278dd31a.

* VerifySpellRange

* updating comment
2022-11-28 14:54:42 -05:00
OptimShi
2334c1bfc1
Added spells to import/export sql functions (#3925) 2022-11-24 12:52:57 -05:00
OptimShi
a28831755e
Added import-sql-folders command (#3910)
* Added import-sql-folders, to import weenie SQL including sub-folders within the content folder

* Changed hard-coded directory separator to system defined
2022-10-12 17:04:08 -07:00
gmriggs
f721d5f1b3
add rotate-axis commands for content creators (#3900)
* add rotate-axis commands for content creators

* normalize
2022-09-15 01:44:19 -04:00
OptimShi
bbb5838372
Added export functions with folders (#3811) 2022-02-27 00:39:01 -05:00
Ty Conner
f659efe2d7
Update DeveloperContentCommands.cs 2021-11-29 01:45:55 -05:00
Ty Conner
57087db32c
Wire up vloc2loc command (#3743)
* Squashed commit of the following:

commit fd22196a5e93ef3b1e83696900475f674f6f285b
Merge: 1b6aa6aca b051129b5
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Fri Nov 19 18:56:09 2021 -0500

    Merge branch 'master' into telev2

commit 1b6aa6aca8fff594d380643a3c704d295f1d509c
Merge: d0645c74b 9d915f069
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Wed Aug 11 17:26:54 2021 -0400

    Merge branch 'master' into telev2

commit d0645c74bc6dfc45fd35f720bf758fa2c71c16c9
Merge: d7c31f9eb efef90444
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Tue Mar 2 01:31:50 2021 -0500

    Merge master

commit d7c31f9eb764d64f69140ddc25ee4d687546f68f
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Tue Mar 2 00:27:25 2021 -0500

    ..

commit 0f1ae29b917af3440d7e1512dbb758544b4a1233
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Sat Feb 20 17:15:59 2021 -0500

    .

commit 883a34bef979ec96f52bd4a1534cc33267419ec2
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Fri Sep 18 13:41:08 2020 -0400

    hardcoded vloc.txt output

commit 87915f70ff3bbb826d44e98069be078123083561
Merge: 61f026059 599c865f5
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Sun Sep 13 14:23:26 2020 -0400

    Merge branch 'master' into telev

commit 61f0260594928540b5f3fc73223b71630c63d301
Merge: 854b7fcae 0ec7ddca9
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Thu Sep 10 03:17:06 2020 -0400

    Merge branch 'master' into telev

commit 854b7fcae5d546cae3a0a6b7e6b7ab29803d292c
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Tue Sep 8 18:59:07 2020 -0400

    .

commit 3f9c8f9914879a5c241a0ca256ae9d68fc99f1d7
Author: Ty Conner <tyconner@itcproductions.com>
Date:   Sun Aug 30 17:48:43 2020 -0400

    Add `telev` command

* Wire up vloc2loc command

* Update PositionExtensions.cs

* Update DeveloperContentCommands.cs
2021-11-28 13:11:12 -05:00
Ty Conner
880c031102
Update SQL Writer output (#3694)
* Update SQL Writer output

* Update SQLWriter.cs

* Add PacketOpCodeNames

* Update PropertyInt.cs

* Update PropertyInt.cs
2021-10-18 21:33:27 -04:00
Ty Conner
379218799a
Switch ConfirmationManager over to contextId tracking (#3656)
* Switch ConfirmationManager over to contextId tracking

* match pcap response

* Update ConfirmationManager.cs

* Update Confirmation.cs

* Update ConfirmationManager.cs

* WeenieError.ConfirmationInProgress

* Update ConfirmationManager.cs

* Update confirmation handling

* Update Confirmation.cs

* Update Confirmation.cs

* Update SkillAlterationDevice.cs

* Update ConfirmationManager.cs

* Update Fellowship.cs
2021-08-22 19:41:26 -04:00
gmriggs
b68c07e6d2
fix leading 0s in DeveloperContentCommands (#3609) 2021-07-18 13:47:32 -04:00
gmriggs
f57eaa8216
running /generate-classnames for latest world db (221) (#3552) 2021-05-22 01:58:02 -04:00
gmriggs
82062d99b6
update wielded treasure roll to be closer to retail (#3401)
* update wielded treasure roll to be closer to retail

* .

* rename command to show-wielded-treasure
2020-12-31 17:37:08 -05:00
gmriggs
98cf9f299e
replacing windows eol with unix eol for import-sql books (#3396) 2020-12-24 20:35:53 -05:00
Mag-nus
43c9300b10
.NET Entity Framework Core 3.1 support (attempt #2) (#3356)
* packages updated, fix compiler errors/warnings

* scaffold

* fix ShardDatabaseOfflineTools

* WorldDatabase fix performance

* ShardDatabase fix GetCharacters

* move comment

stuff

* extend UseMySQL statements

* fix character creation linq parsing

* fix exception

* fix references
2020-12-07 20:59:40 -06:00
gmriggs
221407ab93
fix compiler warning (#3332)
* fix compiler warning

* adding unneeded semicolons, just for consistency
2020-10-27 02:45:30 -04:00
gmriggs
b5e5719ce8
improving /addenc, adding /removeenc (#3324)
* improving /addenc, adding /removeenc

* removing test code
2020-10-25 14:22:41 -04:00
gmriggs
c9786d42cb
adding generate-classnames dev command (#3198) 2020-09-05 23:58:52 -04:00
gmriggs
c954ec4ebb
fixing /removeinst for generator children after reload landblock (#3027) 2020-06-17 19:18:36 -04:00
gmriggs
9e045521cb
adding /nudge and /rotate content dev commands for landblock instances (#3024)
* adding /nudge and /rotate content dev commands for landblock instances

* adding optional guid param
2020-06-16 21:03:29 -04:00
Ty Conner
4cebc72645
Fix issue in createinst with non-stuck child object spawns (#3003)
* Fix issue with createinst in creating child objects

* .
2020-06-01 23:56:02 -04:00
gmriggs
a523a27ca8
adding createinst gap finder (#2999) 2020-05-27 02:56:11 -04:00
gmriggs
c3692e787f
ensure object is on landblock for /removeinst (#2996) 2020-05-25 02:01:14 -04:00
Mag-nus
50d070ef5d
Step 4 hybrid weenie biota (#2864)
* Step 1. Add new adapter classes and models

All classes and objects added are in new namespaces.

This add has 0 interraction on existing ACE code.

This sets the groundwork for Step 2. Moving World DB caching to the new models

* first part of the world entity usage

* almost there

* final part

* update WeenieExtensions

* fix

* merge fixes and improvements

* ACE.Database new code

* it compiles

* InitializePropertyDictionaries

* WOrldDatabaseWithEntityCache cleanup

* ShardDatabaseWithCaching

* ShardDatabase Cleanup

* todo

* cache counts reported in serverstatus

* House InitializePropertyDictionaries

* improve ServerStatus

* BiotaModel change HousePermissions to Dictionary<uint, bool>

* PropertiesAllegiance to dictionary

* BiotaUpdater improvements

* Shard Database Cache Reporting

* More code ported from Step 3

* Remove stub CharacterCache

* Update WorldDatabaseWithEntityCache.cs

* build fixes

* code audit

* Remove non-callback functions from SerializedShardDatabase

* BiotaUpdater progress.. only emote left

* Emotes done... now need to test

* fix

* Burden/Value fix for containers

* fat fingered EncumbranceVal

* add some safety

* Don't cache player biotas for initial PlayerManager load

* Step 4. Don't duplicate common properties when copying weenie to biota

This builds on Step 3.

This is a run time optimization. It reduces RAM allocation and in turn also makes less work for the garage collector.

When a biota is instantiated from a weenie (not from a database biota), the biota will point to the weenie for the following collections nstead of duplicating them:
PropertiesCreateList
PropertiesEmote
PropertiesEventFilter
PropertiesGenerator

* Collection capacitys added to ctors (reduce resizing)

* fix override_encounter_spawn_rates

* new Projectile() -> static ProjectileCollisionHelper methods

* disable by default, working out issues...

* Fix for referencing weenie collections directly

* Reduce EnchantmentManager ToList() and clone usage

* fix

* Set ChangesDetected only when a property actually changes

* fix build

* fix

* Fix nullable Order for AnimPart and TextureMap

* FixAnimPartAndTextureMapFromPR2731
2020-04-05 15:38:56 -05:00
Mag-nus
75fc1ce23c
Step 3. Convert ShardDatabase/WorldObjects biota from the ACE.Database model to the new ACE.Entity model (#2731)
* Step 1. Add new adapter classes and models

All classes and objects added are in new namespaces.

This add has 0 interraction on existing ACE code.

This sets the groundwork for Step 2. Moving World DB caching to the new models

* first part of the world entity usage

* almost there

* final part

* update WeenieExtensions

* fix

* merge fixes and improvements

* ACE.Database new code

* it compiles

* InitializePropertyDictionaries

* WOrldDatabaseWithEntityCache cleanup

* ShardDatabaseWithCaching

* ShardDatabase Cleanup

* todo

* cache counts reported in serverstatus

* House InitializePropertyDictionaries

* improve ServerStatus

* BiotaModel change HousePermissions to Dictionary<uint, bool>

* PropertiesAllegiance to dictionary

* BiotaUpdater improvements

* Shard Database Cache Reporting

* More code ported from Step 3

* Remove stub CharacterCache

* Update WorldDatabaseWithEntityCache.cs

* build fixes

* code audit

* Remove non-callback functions from SerializedShardDatabase

* BiotaUpdater progress.. only emote left

* Emotes done... now need to test

* fix

* Burden/Value fix for containers

* fat fingered EncumbranceVal

* add some safety

* Don't cache player biotas for initial PlayerManager load

* fix null spellbook

* Add another null check

This is redundant as the check is also upstream.

This is to prevent an exception in the future if this function is called from another source.
2020-04-02 22:40:27 -05:00
gmriggs
54a759a791
add support for 'crafting chance of success dialog' player option to regular recipes (#2811)
* add support for 'crafting chance of success dialog' player option to regular recipes

* adding logic for drid

* broadcasting icon underlay changes for all recipe mods

* update comment

* updates

* adding server option for 'craft_exact_msg'

* .

* retail server netsend all property updates in recipe mod, including internal

* adding /clearcache recipe

* .

* using pre-existing method

* updating AddSpell

* updating AddSpell imbues - already handled in recipe mods

* updating logic for sendMsg

* further updates

* exclude non-armature imbues on trinkets

* adding shard fix for existing trinkets with invalid imbues

* adding newline

* updating AuditItemSpells for new scenario

* fixing /ciloot tier

* update hotspot cycle variance to use standard formula
2020-03-18 03:11:08 -04:00
Mag-nus
c1d480a01a
Step 2. Convert WorldDatabase Weenie Cache from the ACE.Database model to the new ACE.Entity model (#2702)
* Step 1. Add new adapter classes and models

All classes and objects added are in new namespaces.

This add has 0 interraction on existing ACE code.

This sets the groundwork for Step 2. Moving World DB caching to the new models

* first part of the world entity usage

* almost there

* final part

* update WeenieExtensions

* fix

* merge fixes and improvements

* More code ported from Step 3

* Update WorldDatabaseWithEntityCache.cs

* GetCachedCookbooks(recpieId) -> GetCookbooksByRecipeId(recpieId)

* build fix

* changelog
2020-03-02 08:03:50 -06:00
gmriggs
a917de78a4
minor QoL improvements for content dev commands (#2747) 2020-02-29 00:16:46 -05:00
gmriggs
592a19dd7b
improved json landblock export (#2741)
* improved json landblock export

* .

* .
2020-02-27 15:04:08 -05:00
gmriggs
6a35f6cfd5
adding support for landblock / recipe / quest to export-sql and export-json (#2739) 2020-02-26 23:54:17 -05:00
gmriggs
21ab466967
fixing landblock instances content folder (#2723) 2020-02-19 15:01:52 -05:00
gmriggs
f29a055397
adding landblock instances to /clearcache content developer command (#2720) 2020-02-19 01:14:52 -05:00
gmriggs
da2c3df688
adding quest support to import-json and import-sql (#2694)
* add support for recipes to DeveloperContentCommands

* adding landblock instance support to import-sql and import-json

* fixing spelling

* updating json landblock key

* adding quest support to import-json and import-sql

* fixing bug in original GDLEConverter.TryConvert() for reading landblock json

* adding comment

* removing duplicate code from merge
2020-02-12 12:45:27 -05:00
gmriggs
f662226b62
adding landblock instance support to import-sql and import-json (#2683)
* add support for recipes to DeveloperContentCommands

* adding landblock instance support to import-sql and import-json

* fixing spelling

* updating json landblock key

* fixing bug in original GDLEConverter.TryConvert() for reading landblock json
2020-02-12 04:43:53 -05:00
gmriggs
97ef273a73
add support for recipes to DeveloperContentCommands (#2664) 2020-02-12 03:31:38 -05:00
gmriggs
02505140ad
improving /createinst command for content dev (#2601)
* improving /createinst command for content dev

* .

* ..

* adding option to manually specify a start guid

* adding partial key handling, max static guid checks

* adding range check
2020-01-17 04:39:39 -05:00
gmriggs
61f4dca608
fixing /import-sql filename munging (#2615) 2020-01-15 21:23:26 -05:00
gmriggs
3dae8c285e
improved handling for json weenie metadata (#2572)
* improved handling for json weenie metadata

* adding missing file
2019-12-31 02:01:19 -05:00
gmriggs
2307c00da7
better usage of body part quadrants for physical attacks (#2571)
* adding preliminary support for dual-wielding monsters

* fixing monster special attack fx

* improved monster combat maneuvers table

* adding dual wield speed modifier for mobs

* fixing mobs casting flame wave

* adding support for EmoteManager.CastSpell untargeted spell projectiles

* fixing untargeted Blast spells

* fixing blast spells

* fixing spell z-angle

* re-add Emote.Move* physics position sync w/ valid rotation check

* wip

* latest wip

* cleanup

* small position adjustments

* matching create.Y formula up to retail pcaps

* refactoring spell projectiles

* startPos based on targetPos instead of casterPos for strike spells?

* improved strike spawn position

* add error logging

* add support for peturbation, improve ring positioning for even # of projectiles

* adding /clearcache for content developers

* fixing boost variance

* adding quadrant stuff

* splatter dir

* better usage of body part quadrants for physical attacks

* found CMTs with multiple entries per lookup key, cycle through anims

* fixing portal gems
2019-12-31 01:56:07 -05:00
gmriggs
20087194ed
/addenc command for content creators to create encounters (#2509)
* /addenc command for content creators to create encounters

* adding spawn fx and name to sql

* fixing timestamp

* .

* z madness

* updating comment
2019-12-09 13:05:49 -05:00
gmriggs
cfe89757c1
improved speed for import-json all (#2504) 2019-12-07 19:59:58 -05:00
gmriggs
997450ad72
adding /createinst for content creators to spawn landblock_instances in-game (#2238)
* adding /createinst for content creators to spawn landblock_instances in-game

* preventing objects with PropertyBool.Stuck from being created as landblock instances

* !Stuck
2019-08-20 16:01:46 -04:00
gmriggs
2d7e28fdf9
adding content export commands (#2236) 2019-08-19 04:57:41 -04:00