A siege engine is a device that is designed to break or circumvent heavy castle doors, thick city walls and other fortifications in siege warfare. Some are immobile, constructed in place to attack enemy fortifications from a distance, while others have wheels to enable advancing up to the enemy fortification. There are many distinct types, such as siege towers that allow foot soldiers to scale walls and attack the defenders, battering rams that damage walls or gates, and large ranged weapons (such as ballistae, catapults/trebuchets and other similar constructions) that attack from a distance by launching projectiles. Some complex siege engines were combinations of these types.