I rewrote and cleaned up this code and made it fully customizable.
This default size is a very good compromise between amount of filament, print time, and accommodating a wide variety of dice (including Dungeons and Dragons dice).
This is a fantastic dice tower for any game with an attack-defense mechanic (Imperial Assault, Star Wars X-Wing, Risk, etc).
WARNING: I've never printed this in-place with both the tower and trays together since I print using ABS.
In theory you could print it as one unit, but I mostly just lay out a tower and 2 trays and use supports on the trays.
The tower does not require any supports.
The primary variables to customize are:
ramp_width: This defines everything. The overall size of the dice tower is derived from this, and this directly represents the width of the dice channels.
level_spacer: When using small ramp_widths (below 30mm), this adds a vertical offset between ramp layers (a drop-off of sorts) so that dice do not get stuck when changing direction.
funnel_height: This is the height of the drop funnel.
slope: If you want the tower to be taller.
number_turns: This lets you add more turns to the tower.