I’ve been pretty quiet these last few months since my last AAA assignment ended. There has been good reason for that. During that time, I was expending huge amounts of energy on searching for my next role, and any energy I was not devoting to that, I was devoting to upskilling, training myself on Unreal Engine.
I have two significant announcements in regard to those activities. Today I want to focus on one, this new thing that I have wrought that should really help some Unreal game developers out.
I am pleased to announce the creation and release of Duke’s Big Numbers, a plugin for Unreal Engine 5.1+ that adds the ability to handle integer numbers larger than what can be represented in Unreal natively.
Duke’s Big Numbers is a C++ library whose functionality can also be accessed by blueprints. Its only real limitations as far as how large of a number it will handle are the speed of the machine that it is running on, and the hard limit of the number of elements that can be packed into an array of 32-bit values. I have been successfully using it for quite some time while (re)creating my next-gen pachinko/incremental/logistics game prototype in Unreal Engine.
I checked the offerings that were available in the Unreal Marketplace for such a multiprecision integer math library, and was surprised to find the selection to be minimal given the popularity of incremental games. For the one product I did find, I honestly could not tell from the product page if it had true multiprecision integer support, or was just exposing a double-precision floating point (from the time before Unreal supported double-precision). So I felt that there was a need that I could fill, and fill very well. I understand the code behind most of the operations involved very deeply, so I felt I could be a good steward of this kind of component for the Unreal ecosystem.
Building this plugin, the trailer for it, and the game and test app that consumes it was a great way to get to learn some of the details of working in Unreal Engine, and these efforts contributed significantly to landing my new role. But again, that part of the story is its own excitement that deserves its own post.
This isn’t just some junior programming project, either. A lot of thought has gone into this API, much of which has been captured in the API’s extensive documentation. I’m especially happy with the amount of automated testing I was able to create for the component, ensuring 100% code coverage (tests included). I’m also very excited about the number formatting capabilities I have built into the library. They should be sufficient out-of-the-box for many needs, and can easily be extended to fill other needs.
So, if you are making an incremental game or other game that needs very large numbers in Unreal, check out Duke’s Big Numbers at the Unreal Marketplace.