abunai10 / CaffeineIssues

0 stars 0 forks source link

restrict the amount of data sent to the user/error handling #14

Open Laksmack opened 11 months ago

Laksmack commented 11 months ago

Restrict streaming to files needed only.

Especially since the entire project is in every Lua error message

abunai10 commented 11 months ago

Only the product files are sent to the user - if you indicate that a specific file should be sent in a product, it will be sent.

Project files are never sent directly to the user.

Perhaps we could create "Product Bundles" (On the marketplace, not a file bundle), and when they purchase the "Full Suite" bundle, they gain access to enable/disable all of those products in-game, as if they just purchased each product individually.

I believe this would solve the issue of loading the entire full suite, let me know if you have any concerns.

Laksmack commented 11 months ago

Maybe I am misunderstanding the definitions.

When a user who has Demon Hunter Havoc only encounters a Lua error. The LUA error is ~8MB of text, including all spec rotations, all spec spellbooks, all supporting functions (even if not used in that rotation), lists, raid logic, raid healing etc etc ...

abunai10 commented 11 months ago

I don't believe you understand correctly - your full suite bundled and obfuscated is 15.6MB. The entire bundle is not being sent to errors, but likely a good portion of it is. I was mistaken in our DMs the other day. Also, that BugSack file size includes all previous times that BugSack has errored. You must "clear the sack" to reset that size.

As a separate topic, your ~files~ products are bundled, meaning it is all one file that is served to the user when they load your ~script~ product. You are not able to only load specific files from your project on demand.

If, in your "AP Core" module, you include logic for raid healing, and then put that module in your Havoc Demon Hunter product, yes, your havoc DH product will load raid healing. You have complete control over which files are put in your product's bundle. The only instance where your users would be downloading extra files would be for Full Suite users - which is a problem solved by my initial suggestion - as they are loading the files for all classes.

Laksmack commented 11 months ago

it was a clear sack - this was one entry.

ok, maybe its not the entire project - but its a lot of ..stuff..that really does not need to be there

[381214]=\"Frigid Hochenblume\",[381960]=\"Lush Hochenblume\",[381210]=\"Titan-Touched Hochenblume\",[381213]=\"Windswept Hochenblume\",[381211]=\"infurious Hochenblume\",[375241]=\"Bubble Poppy\",[375246]=\"Decayed Bubble Poppy\",[375244]=\"Frigid Bubble Poppy\",[381957]=\"Lush bubble Poppy\",[375242]=\"Titan-Touched Bubble Poppy\",[375245]=\"Windswept Bubble Poppy\",[375243]=\"Infurious Bubble Poppy\",[381207]=\"Saxifrage\",[381203]=\"Decayed Saxifrage\",[381201]=\"Frigid Saxifrage\",[381959]=\"Lush Saxifrage\",[381205]=\"Titan-Touched Saxifrage\",[381202]=\"Windswept Saxifrage\",[381204]=\"Infurious Saxifrage\",[381154]=\"Writhebark\",[381198]=\"Decayed Writhebark\",[381200]=\"Frigid Writhebark\",[381958]=\"Lush Writhebark\",[381196]=\"Titan-Touched Writhebark\",[381199]=\"Windswept Writhebark\",[381197]=\"Infurious Writhebark\",[382287]=\"Blooming Fangtooth\",[381674]=\"Mature White Bell\",[382286]=\"Singing River Bell\",[382296]=\"Mature Vine Flower\",[384295]=\"Self-Grown Saxifrage\",[384294]=\"Self-Grown Bubble Poppy\",[384291]=\"Self-Grown Hochenblume\"};l.Scanner.DF.Ore={[381102]=\"Serevite Deposit\",[381103]=\"Serevite Deposit\",[379248]=\"Draconium Deposit\",[381252]=\"Draconium Deposit??\",[381105]=\"Rich Serevite Deposit\",[381104]=\"Rich Serevite Deposit\",[379263]=\"Rich Draconium Deposit\",[381257]=\"Rich Draconium Deposit\",[375239]=\"Primal Draconium Deposit\",[381518]=\"Primal Serevite Deposit\",[375235]=\"Molten Draconium Deposit\",[381516]=\"Molten Serevite Deposit\",[381517]=\"Titan-Touched Serevite Deposit\",[375238]=\"Titan-Touched Draconium Deposit\",[381515]=\"Hardened Serevite Deposit\",[375234]=\"Hardened Draconium Deposit\",[381519]=\"Infurious Serevite Deposit\",[375240]=\"Infurious Draconium Deposit\"};l.Scanner.DF.Treasures={[382029]=\"Disturbed Dirt\",[376386]=\"Disturbed Dirt\",[383734]=\"Disturbed Dirt\",[383735]=\"Disturbed Dirt\",[383733]=\"Disturbed Dirt\",[376587]=\"Expedition Scout's Pack\",[376582]=\"Tuskarr Chest\",[376585]=\"Icemaw Storage Cache\",[376583]=\"Decay Covered Chest\",[376579]=\"Reed Chest\",[376426]=\"Magic-Bound Chest\",[385074]=\"Magic-Bound Chest\",[385075]=\"Magic-Bound Chest\",[376584]=\"Dracthyr Supply Chest\",[377587]=\"Molten Chest\",[376580]=\"Djaradin Cache\",[381043]=\"Lightning Bound Chest\",[381041]=\"Frostbound Chest\",[381042]=\"Simmering Chest\",[376578]=\"Titan Chest\",[376581]=\"Clan Chest\",[376036]=\"Nomad Cache\",[382300]=\"Maruukai Supplies\",[382293]=\"Ripe Cuppressa\",[382292]=\"Ripe Cuppressa\",[383732]=\"Tuskarr Tacklebox\",[290129]=\"War Supply Crate\",[385217]=\"War Supply Chest\",[385216]=\"War Supply Chest\"};l.Scanner.DF.Pools={[382090]=\"Shimmering Treasure Pool\",[381101]=\"Islefin Dorado Pool\",[381100]=\"Temporal Dragonhead Pool\",[381097]=\"Thousandbite Piranha Swarm\",[381098]=\"Aileron Seamoth School\",

^^^ none of this in AP ...and that makes up a fair chunk of the 8mb. There is also a lot of unreadable stuff, which I can only imagine is the closed-source part of caffeine - does that have to be included in every error message? ..is there not way to truncate/exclude stuff?