For Budapest, there's a wonderful all you can eat buffet place, Trofea Grill Etterem. I learned about it from Fodor's Budapest, and here's their page about it: http://www.frommers.com/destinations/budapest/restaurants/231783#sthash.7dFdL0pO.dpbs
At the end of the listing, they say "Note that there are four locations with the same name, but they are owned by different companies. This location is the only one we recommend." So, here's how to get there: Take the metro line 1 (the yellow line) to the last stop, Mexikoi Ut. When you reach the top of the stairs of the metro station, turn right. You will see tram tracks: cross them, and turn left. At the end of the block you will see the restaurant (I believe you have to cross the tracks again).
You can sample little bits of everything, then go back for more of what you liked. And if you like grilled squid, be sure to have it here. If you still have room for dessert, note that they have unlimited chocolate sauce and unlimited whipped cream. Thus, this place ticks several of your boxes - don't miss it!
A further bonus is that I was the only non-Hungarian there, and many families patronize the place, so it had a very nice local atmosphere. Note that the price is much lower for weekdays than for weekends, and much lower for lunch than for dinner.