I've done all of those things every time I participated in Ludum Dare, and I've used a game engine only once. The time constraints make you pick your battles. You have to pick technology you're fluent in, but there are great input/output libraries for games for literally every language out there. I picked Javascript, and even did one in 3D with a procedural audio track that was affected by the plays.
One time I decided to make a multiplayer game on a hexagonal grid. Just getting the hexagonal grid working took me over half of the time, didnt produce much of a game at all that time, but it was still fun, it's ok to fail.
One time I decided to make a multiplayer game on a hexagonal grid. Just getting the hexagonal grid working took me over half of the time, didnt produce much of a game at all that time, but it was still fun, it's ok to fail.