There is a distinct lack of random functions for vectors, so I decided to add some to the Mouse Potato Utils Plugin.
However, I’m not sure whether I should make the right end of the range inclusive (make it a maximum) or exclusive (like the range() function) when it comes to integer vectors.
I’ll make it inclusive for now, but what do you think?


Realistically, whichever one is the most commonly used in your project/framework/language/whatever, so it doesn’t stick out as an inconsistency. If you’re wondering about this now, it’s a potential point of confusion for anyone who needs to read the code, including future you.
If you want to be really picky about engineering: are you sure you do need to write the function at all? How does the new function save time/effort or make code easier to read and write? Do you write a lot of code where you need random vectors, and does “random vector” mean the same thing in all cases? Would the function itself just make more code that needs maintaining, possibly indefinitely?
I already named the variables minimum and maximum, so inclusive should make more sense. The code generates a vector within a square/cube defined by 2 other vectors.
Those are all good questions, and yes.