Better Inarius - 7 Skeletons Army

Inarius

Deal damage with Skeletons.

  • Bone Armor damage is increased by 1000% (2 pieces)
  • Bone Armor grants an additional 3% damage reduction per stack (4 pieces)
  • Bone Armor, while active, also creates a swirling tornado of bone, damaging nearby enemies for 1000% damage and increasing the damage they take from the Necromancer by 10,000% (6 pieces)
  • Command Skeletons no longer explodes but instead its damage is increased by 10,000% for 10 seconds (2 pieces)
  • Your damage reduction is increased by 25%. Gain 1% damage reduction for 15 seconds each time one of your Commanded Skeletons deals damage, stacking up to 50 times (4 pieces)
  • A swirling tornado of bone increases by 10,000% the damage of your Commanded Skeletons (6 pieces)

ā€“

Skills examples

  • Command Skeletons / Kill Command
  • Frailty
  • Devour / Voracious (reduce essence costs)
  • Grim Scythe / Cursed Scythe or Bone Spikes / Sudden Impact
  • Blood Rush or any skill

Items synergies

  • Jesseth Arms
  • Bone Ringer
  • Bloodsong Mail (125%)
  • Tasker and Theo (50% faster)

ā€“

Quality of Life

Two optional flavours to auto trigger Corpse Lance / Explosion at 0% weapon damage:

Lancer Bracers

Corpse Lance deal 0% weapon damage, and each corpse consumed fires a Corpse Lance at a nearby enemy.

Explosive Bracers

Corpse Explosion deals 0% weapon damage, and each corpse consumed fires a Corpse Explosion.

By equipping one bracer, and setting the other in the cube, players can combine Dead Cold (Freeze) and Brittle Touch (crit) side effects, without doing any damage !

More build options, and this is console-friendly.

ā€“

Inspiration: Wudijo : https://youtu.be/AdxEtu6mXZM?t=207

ā€“

This is a quick and easy solution to implement.
Ideally, I would prefer the power to be distributed over lots of items, just like this proposal :
https://i.redd.it/3ydyz7aom8371.jpg

1 Like

First, what? Second, why?

ā€œNegatedā€ is a very weird way to describe the effect. Is it completely negated or it doesnā€™t get rid of skeletons when given the command? In case you were aiming for Skeleton sacrificing build you still need Rathmaā€™s faster spawning skeletons to sustain it. If not, there should be an inner cooldown of sorts to it. This means massive range before you burn out otherwise.

Why? For each 4.5 GR tier health of monsters in Greater Rift doubles, according to that knowledge 100x is like (2^6.6) and then from here 6.6*4.5 = 29.7~ 30 GR tier boost from where ever it may land upon with 1000% damage.
Do Skeleton spawning Necros really need 100x buff while Boneringer exists?

Thatā€™s too small and defensive buff is a direct passive ability with no interaction or upkeep. Are you sure your build deserves all those buffs just to be deemed successful?

More server load for taking care of +10 more entities while fighting a group of 50-60 monsters. This can be bad for performance. Cool concept with suicidal skeletons, just numbers are a bit off.

Fixed

It is.
The rune is emptied of its substance.
It is a full replacement.

Thanks for the typo.
Fixed: 10,000% x 10,000% = 101x101 = 10201x

Yes, even with BoneRinger, currently you cannot deal enough weapon damage to seriously injure monsters.

Devouring Aura ensures no corpse is wasted outside 15 yards radius.
All corpses within 15 yards radius will have a chance to generate a Skeleton.

It fits the Inarius gameplay : Infighting at close range.
Enemies will die in that range, thus corpses will be created in that range.

You can also trigger Flesh Golem in that range.

You could argue this range is insufficient for Land of the Dead, but I think it should be fine for the purpose of consuming 10 corpses.

I donā€™t think the 4 pieces power should be exclusively reserved for defensive buffs.
I think it is free and only limited by imagination.

In case of philosophical disagreement, we can imagine to move the additional Skeleton buff into the 6 pieces buff.

But it seems to me that 4 pieces is the best fit because it enables a progressive damage increase, which means the Set is more enjoyable. You feel the power increase at each stage of the Haedrig gift.

Diablo 2 Resurrected can handle 30 Skeletons and Diablo 3 could not ? :stuck_out_tongue:

In addition, with the new Rathma, there was a time on the PTR where you had 7 Skeletons + 1 Golem + 10 Revived Creatures + 10 Mages = 28 pets, to maximize the bonus, and it was running smoothly.

You can still to that nowadays, but there is just no interest at all for the damage bonus which has been capped.

I donā€™t think 10 more Skeletons is a problem.
Diablo 3 can perfectly handle that small load.

Donā€™t quit your day jobā€¦

I donā€™t think we need 17 skeletons here. I rather have a 7 quality skeleton than a quantity skeleton.

Not a fan of you revamp Inarius but I do agree and like the idea of making Inarius a melee pet fighter.

Just imagine melee Necromancer slashing his enemies in the swirling tornado of bone with his scythe together with his 7 skeletons and golem.

2 Likes

Heā€™s obsessed with a Necro revamp, keeps making threads like this, and none of them are popular. He shouldā€™ve taken a hint months agoā€¦

The 17 Skeletons was originally though for the army effect.

The main advantage of having more pet is that each pet can stand in front of an ennemy, thus effectively increase your protection.

But it does not matters much since Inarius 6 pieces makes damage at close range

So I agree for 7 powerful Skeletons.

In addition, no more work will be required for animation / positionning.

I also removed the 15 yards for devour to make Land of the Dead builds more attractive.

Fixed:

  • Your damage reduction is increased by 50%, and each corpse you consume increases your Skeletons damage by 10% for 5 seconds. Max 100 stacks. (4 pieces)

This is going out of hand. Iā€™m not saying a single 10000% damage multiplier would be enough but youā€™re talking about increasing the Necroā€™s potential damage to (10000%)^3 = 1000000x, one million times? Is this some kind of sarcasm towards people wanting Necro buffs or are you really that desperate?
By technicalities Diablo 3 runs on 64 bit numbers system, which at most can handle 20 digit numbers. Increasing damage output by 1 million, adding seven digits where no other single Set build were capable, wonā€™t do any good unless you really want to one shot everything in GR150. If thatā€™s what you seek, you can still play Inarius 6-piece at GR1 or Normal difficulty.
Do some more math or just leave it altogether.

ps. People use Kill Command because they want to activate Stand Alone passive for increasing their effective health. You may not like it, but skillrune has its use.

Itā€™s just so fun to play right xD

1 Like

10,000% = 100 = 101x
10% x 100 = 1000% = 10 = 11x
10,000% = 100 = 101x

101 x 11 x 101 = 112,211x

Numbers can be adjusted.
What do you propose ?

Totally wrong.

BigInt is available in all major languages:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt

With BigInt you can compute numbers with arbitrary length.
(Internally numbers are just represented in the form of a string)

Have you checked what sort of damage the Frailty curse hits when target finally hits threshold? Thatā€™s the highest 64 bit number available. If that wasnā€™t the case I believe they would increase the GR150 limit already.

If thatā€™s a thing you should teach Blizzard on how to code with bigint instead of long long unsigned. On the first look your bigInt looks like it only has 16 digits with 2^53 though, not 20 digits with 2^64. Also Diablo 3 coded with Assembly, C++ and some C#, not Java.

Numbers adjust with interaction required, youā€™re talking about bolting in passive benefits with minimal interaction yet give the Set 100000x-1000000x whatever multiplier. To add, available multipliers for the build is pretty abundant as well; Boneringer alone would carry the burden as much as Set but you prefer completely laid back gameplay. Thatā€™s not really how things work in game; build you suggest has no long wind ups or reflex checks at all.
For sure, developers know better than me, but demanding hundred thousand damage multiplier with completely passive benefits sounds weird for me at least.

Indeed.
For the record, I discovered this while coding an interest rate calculator over 30 years.
At some point numbers are so huge that you reach the limit of Integer, and you have to go with BigInt. BigDecimal isnā€™t implemented in all languages but you can work around with BigInt by multipling by lots of zeros so your float number is stored as a BigInt.

Let me explain:

Max safe number is 2^53.
Rather than using this limit as a number, you can create an array of that size.
2^53 is the length of the array.
2^53 is the length of the string.

2^53 is a lot longer than 20.

This is BigInt.

https://dev.mysql.com/doc/refman/8.0/en/integer-types.html

Big int is same as long long unsigned from values and as I said, D3 coded in C++, C# and Assembly, not in Java or MySQL. You can check from google. Coders of Blizzard know their job, at least give them this much credit. Currently they have no plans to change the core code of how game is coded or increase GR150 limit.

MySQL BIGINT is not the same as BigInt for programing languages.

According to the documentation
Maximum Value Unsigned (ā€¦) 2^64 - 1
It means MySQL BIGINT represent a 2^64 - 1 value

The word value is super important here.

Iā€™m speaking of BigInt of programing languages, which is a a 2^53 length

The word length is super important here.

Because for 1-length string I can represent 10 values (10 numbers from zero to nine)

Do you see the difference ?

Let do a quick example.

Max 3 value : 3
Max 3 length : 999

Max 30 value : 30
Max 30 length : 999999999999999999999999999999

Iā€™m not big into programming neither I have any idea what are you reading. The document you shown has nothing to do with the valueā€™s length. 2^64 is still bigger than 2^53, so I have no idea.

also called a BigInt value , or sometimes just a BigInt ā€” to represent whole numbers larger than 2^53 - 1

Itā€™s still a value. This is taken from your Mozilla Java page you shown as resource. Entire page has nothing about length explanations but function length. Are you reading it right or thereā€™s something Iā€™m missing?

Then itā€™s kind of irrelevant. No? Are you tired? MySQL is a programming language by the way. Are you reading things right?

Of course, for the simplicity of use, it behaves like a value.
But a special value since its length limit is 2^53.

Please note that there is a ā€˜nā€™ at the end of the BigInt values.

-> 9007199254740993
<- 9007199254740992      // Mantis limit has been hit, trailing 3 transformed to 2
-> 9007199254740993n
<- 9007199254740993n     // With BigInt it's okay because internally represented as a string

Which means it is a constructed type.

As stated by the documentation

BigInt is a built-in object (ā€¦)
(ā€¦) values greater than 2^53 (ā€¦)

Basically it is a string, ie an array of 2^53 length.
2^53 is the maximum safe number, ie the maximum array size that you can construct.

As stated by the documentation

BigInt values can be used for arbitrarily large integers

arbitrarily might be exagerated, but 2^53 length should be enough for most applications.

It is super important to understand the difference between a max value and a max length. These are totally different. Refer the end of my previous post for examples highlighting these differences.

I searched for word ā€œlengthā€ in that page; nothing but a link of ā€œfunction . lengthā€ returned at the left tab. It simply states that itā€™s a value as you quoted multiple times already. Length of a number doesnā€™t mean its digit size directly but difference between min max values. Signed numbers can be minus too unlike unsigned, hence why you might see the term ā€œlengthā€ thrown around. Thatā€™s my suspicion.

Article says nothing about length or digit size, the examples you gave have 16 digits at most followed by a string to potentially allow numbers up to 2^64 value. Most common use of 64 bit numbers stop at 20 digits and itā€™s convenient for operation systems too. If you can find a way to increase GR150 scale, be my guest and send them a letter for offering your knowledge in Java. Until then, Iā€™ll consider that youā€™re reading into things wrong.

Still 100000x damage multiplier arenā€™t that justified for all that passive benefits. Even Shadow Set has some counter measures for diminishing its effects by limiting the 6-piece damage bonus on the initial Impale shot. Youā€™re balancing this thing on Skeleton Army, but I can clearly see itā€™s being used by Corpse Lance builds with overall damage boost.

Because Iā€™m generous Iā€™ll give you 30 digits.

Type the ā†’ lines in your Chrome Dev Tools console:

ā†’ 999999999999999999999999999999
ā† 1e+30
ā†’ 999999999999999999999999999999n
ā† 999999999999999999999999999999n

See ?
Itā€™s possible to represent 30 digits internally in a 30 chars length string.
What an incredible discovery you made there ! :wink:

But wait, thereā€™s more !
I can do operations !

ā†’ 999999999999999999999999999999n + 1n
ā† 1000000000000000000000000000000n
ā†’ 1000000000000000000000000000000n * 1000000000000000000000000000000n
ā† 1000000000000000000000000000000000000000000000000000000000000n
ā†’ 1000000000000000000000000000000000000000000000000000000000000n.toString().length
ā† 61

Thatā€™s the power of BigInt :stuck_out_tongue:

ā€“

So what values would be reasonable ?

I see your point but game has to send data back and forth between server and client all the while encrypting and decrypting assets, signal or cue for animations of monster and players, keep records of how much damage you inflicted while position checking everything in combat. All these data means larger bandwidth and traffic which I canā€™t see it being suitable for practicality of all things.

Also since random number generator is embed into the client software, this calls for changing it just for one gameā€™s impact. For a calculator it can be nice but, random number generators arenā€™t calculators exactly; thatā€™s server also it works on a limited bandwidth. When you wear Set items, client RNG (pseudo random number generator, potentially a Mersenneā€™s Twister) raises a few flags for expected modifiers and communicate with the server to calculate the outcome of interaction. Thatā€™s not the same as holding a calculator or asking your computer to multiply numbers you entered.

To be honest I still failed to read or grasp 2^53 as digit size when everywhere in the article clearly said itā€™s a ā€œvalueā€. I can type numbers in google as well and it shows me large integers as a result, that doesnā€™t mean Google can handle dynamic calculations in a game without slowdown.
I believe if thereā€™s a conveniently fast random number generator written somewhere, theyā€™d implement it into the game already. Otherwise I wouldnā€™t know. Currently they have no plan to change this because things are currently based on 64 bit architecture.

Also yeah, you donā€™t have to show me source from Mozilla pages:

I wouldnā€™t exactly know but looking at a tier list would be a start.

https://maxroll.gg/tierlists/solo-tierlist

In here it says, Inarius Corpse Explosion and Inarius Poison Scythe is at B-tier, 10 GR behind from the top builds. An additional 100x multiplier above Inariusā€™ expected values (1000% and 10000% damage multipliers) already carries it beyond GR150; for a rough guesstimate, itā€™s 30 GR leap. While all you ever need is a 4-9x more multiplier above those builds to cover that gap and fit around GR148-150.

Thatā€™s developers job to figure out an enticing gameplay route, if you really interested you take one of those builds, calculate average up time of stacks and offer comparable changes.
If you want Inarius Skeleton Army then you wear Jesseth and cube Bone Ringer for testing, note down your performance in Greater Rifts and ask developers to incorporate this in the game for the build at this forums. If they deem the build idea worthy of attention or it fits their standards for upkeep to scale for player skill, next season you might see the changes.

Compression algorithms (gzip, Brotli, ā€¦etc.) can handle large data, especially strings.

It would need to adapt the RNG.
Luckily, itā€™s possible to transform a Number in BigInt with the BigInt constructor:

const n = Math.floor(Math.random() * 10);
console.log(n);
console.log(BigInt(n));

6
6n

But I concede my examples are written in JS instead of C.

The fastest way to deal with computation would be to perform 100% of the computations on client side (no communication between client and server, excepted for vital information like entities positions, life, statuses, etc), and only check game files hashes at game start or regularly while gaming so you ensure no one is cheating.

I cannot.

Jesseth Arms buffs all damage so there would be lots of impacts if I were proposing to buff Jesseth Arms (example : Skeletons + Jesseth + Pestilence actually boost Corpse Lance builds)

Bone Ringer has a nice multiplier at term (1800% = 18 = 19x), but it takes too long for trash mobs. This item is designed for Rift Gardians.

Thatā€™s why I wanted to modify the base Skeleton damage.

So 10x, so 1,000%, instead of 10,000% for the 2 pieces ?

That said the difference between Singularity Mages and Skeletons is huge :
https://i.ibb.co/kmDnDNx/Sans-titre-10.jpg

Singularity Mages : Total DPS : 1885
Skeletons : DPS : 47