Add generate mechanic