I dodatkowo nie używaj modulo przy randzie, szczególnie używając systemu zgodnego ze standardem POSIX. Nie da się zrobić dobrego generatora wszystkich bitów o 231 możliwych wartościach używając 32 bitowego stanu, więc używa się generatorów dających dobry rozrzut od 0 do 231, ale mających bardziej losowe wysokie bity (bo są ważniejsze). Szczególnie źle przy modulo się sprawdza rand() z mingw.
Przy grze możesz także nagiąć losowość, żeby gra była fajniejsza, np. gdy dostaniesz pod rząd 3 legendarne kije dla maga i grasz wojownikiem, to potem się pojawi coś dla twojej klasy, albo po 4 pudłach przy szansie 80% na trafienie trafiasz zawsze.
Ogólnie problem liczb pseudolosowych jest bardzo dobrze opisany w Sztuce programowania Knutha, radzę poświęcić parę dni na zapoznanie się z tym. Ogólnie cały cykl jest bardzo dobry, choć trochę ciężki, podejście może się wydawać trochę przestarzałe ("po co mi assembler jak programuje w Ruby"), ale tematy w nim poruszane są podstawą informatyki i nie wydaje mi się, że się zdezaktualizują. Na przykład nie musisz wiedzieć jak napisać dobry generator liczb pseudolosowych, ale powinieneś wiedzieć jak one działają, żeby dobrze z nich korzystać.