Trattoria by Rongo Matane
Manage your italian restaurant and maximize profits, while dealing with the eternally small nature of your establishment.
I kind of messed up the resolution, please use the zoom function of your browser if the game scree is too big.

Made with * Libgdx and artemis odb * Aseprite
I'd like to do a post mortem, especially on some technical details like the behaviour trees used for the little guys! A lot of stuff is missing or lacking, but it couldn't be helped since the scope was already too big.
Postjam: The version currently up contains 3 separate bugfixes that were delivered after the jam ended. As indicated by the comments below, the game kept freezing and crashing. I'm not happy about it, but i hope this is ok for you.
Music from Kevin MacLeod, opted out. Bossa Antigua and Backbay Lounge Kevin MacLeod (incompetech.com) Licensed under Creative Commons: By Attribution 3.0 License http://creativecommons.org/licenses/by/3.0/
| HTML5 (web) | https://bippinbits.itch.io/trattoria |
| Original URL | https://ldjam.com/events/ludum-dare/42/trattoria |
Ratings
| Overall | 618th | 3.368⭐ | 36🧑⚖️ |
| Fun | 635th | 3.182⭐ | 35🧑⚖️ |
| Innovation | 1063th | 2.652⭐ | 35🧑⚖️ |
| Theme | 949th | 3.015⭐ | 35🧑⚖️ |
| Graphics | 562th | 3.485⭐ | 35🧑⚖️ |
| Humor | 704th | 2.379⭐ | 31🧑⚖️ |
| Mood | 687th | 3.031⭐ | 34🧑⚖️ |
| Given | 33🗳️ | 25🗨️ |
However graphics seem beautiful and the game itself is fun.
@jiri-hysek @darefus Actually, i have no more known bugs so it would be fantastic if you could provide a little description. It runs stable for me, but i know that a new player always does other things than i do. What opens a lot of potential for errors is, that the AI wants to interact with stuff that was just moved or destroyed - but i don't know any remaining bugs for this.
@jiri-hysek Was this on day 1 or anoher day? Are the seats placed towards the table?

Jokes aside, I love management sims so I was looking forward to playing your game since you started uploading to itch. But it was crashing at the time, so I couldn't try it out until now.
To be honest with you, the current implementation didn't have any thing "new" comparing with other management sims. The feeling/sense of the genre is there, and it's greatly done, and without the performance issue I can see myself playing until the end (the game froze halfway through day 3). But it's lacking an identity for me to remember it by.
Sorry if I sound harsh, I consider myself a fan of your previous games, so when this game that I looked forward to doesn't have the same originality/fun as it predecessors I feel sad :cry:
About sw bugs - it's freezing once in a while.. now it freezed at the day during fadeout, before it freezed in a middle of a day. Music is playing but game is not moving and the last error message in console is "Uncaught Error: java.lang.RuntimeException: java.lang.IllegalStateException". And I need to reload the page.
Anyway those are details, it's a great work for jam game!
I really like management sims and i really like it. I would appreciate have more feedbacks on what was happening with clients to know if i was performing well or not. It's a really impressive work in so little time. good work :)
Regarding the crashes: I uploaded a jar, which should not freeze at all. I was able to reproduce a freeze with a lot of customers - the performance in the browser is pretty bad anyway (should be stable at 60fps), so i'll look into it. Porting to the browser with gwt is always making trouble for me with each LD.
I'm checking on the freezes. It's a bit disheartening, desktop runs with 1200fps, browser with 30fps moving towards freeze... O.O
No guest is waiting to order food.
No guest is waiting to order food.
No guest is waiting to order food.
No guest is waiting to order food.
No guest is waiting to order food.
No guest is waiting to order food.
There is no meal that I can bring any guest.
There is no meal that I can bring any guest.
There is no meal that I can bring any guest.
*Waiter Marcus lives for the job!*
Impressive complexity for a jam, foolishly so. Tried a similar stunt once and had the same issues as you did: crashing and bugs.
Talking of crashing... Managed to get one at the start of day three, running the desktop jar on Linux. I was already in the hole by 300:money_with_wings:, so not a big loss. Seems to have something to do with multiple preparation tables, bought a few just before the crash.
> at java.util.HashMap$HashIterator.remove(HashMap.java:1454)
at com.bippinbits.trattoria.economy.restaurant.RestaurantSystem.workStationsSufficient(RestaurantSystem.java:278)
at com.bippinbits.trattoria.agent.tasks.cook.ShouldPrepareMeal.start(ShouldPrepareMeal.java:31)
The basis for a compelling restaurant management simulation is here. Setting up the floor layout and buying more ingredients every once in a while isn't very interesting on its own. Proper chaos is needed. Here are a few ideas:
- Ingredients are ordered between days, they can run out.
- Food can be prepared before hand (and heated up) to reduce wait times (decreased quality)
- Prepared, unused food needs to be thrown away (waste management cost), sold the day after (further decreased quality) and can cause food poisoning (eventual spoilage).
- Food critics. Prioritise them (lose money from other customers) or take your chances (bad reviews) if service not smooth enough.
- Incidents: fires, medical emergencies, brawls... Respective emergency services can be called in (slow, expensive) or dealt by the workers (fast, risky due to them worker unions and lawsuits)
I can see what you tried to do theme-wise, but it doesn't matter; there is way too much space in the restaurant. What if workers and customers couldn't directly walk through each other? Now, that would cause some planning headaches both in the kitchen and the main hall.
Solid work, do keep at it!
Overall: *Above average (3.5)*
Fun: *Above average (3.5)*
Innovation: *Average (3.0)*
Theme: *Bad (2.0)*
Graphics: *Good (4.0)*
Humor: *Nah! (n/a)*
Mood: *Above average (3.5)*
But, the game is also very buggy. It crashes for me each time after 2 - 3 minutes of playing (I tried both versions - HTML and .zip). Speaking about .jar version - the game may close instantly after the pressing ESC. It most cases its ok, but the game uses an exact same button to close in-game windows/pop-ups. So its very easy to close the whole game by accident in the middle of playing.
Nevertheless, I think that the game is very good and have a great potential. I guess, you simply need some time to catch these crashes and debug it fully.
I hadn't updated the desktop version with pooling, which i did now. Also, thanks to @huvaakoodia i was able to fix something with the table (it was added twice to the restaurant, but only removed once).
@bbaf Hadn't thought about that ESC thing yet, i'll add a popup that asks to confirms the quit for post-jam. Thank you!
@huvaakoodia Thank you so much for the in depth feedback and suggestions. I wanted to implement something you mention with ingredients, also unrefridgerated ingredients...but the scope is as you rightly say already foolish. I think a "quick fix" would be that you can only buy ingredients before the restaurant opens, which also gives the incentive for more fridges. Making people impassable by other people would be interesting, but add sooo much more complexity. To prevent deadlocks they'd need to be aware of stuck situations and together devise a plan to resolve it. The together part is what bothers me most ;)
edit: this change should fix the workstations issues... :D

I think i have found a bug where the second fridge doesn't work
@kromeboy Thank you for the feedback! Fridge issue noted, you are correct (and you might be the first one to ever buy another fridge :D)
Over the jams i got a good understanding how to approach most aspects, as well as a codebase for common stuff like scene handling, pathfinding or loading/handling/drawing sprites (basically stuff that engines like unity have out of the box, but now i have it too in a environment i know and like). Now i can be really productive and spend like 90% of my time on actual progress, instead of tinkering or bug fixing. But still it was overscoped, we haven't got around to adding any sounds. So i'm really happy about the scope of games we can do now in the jam, but on the other hand there are much better engine options like godot - but switching would also mean a downsizing in scope again :flushed:
Regarding paths, i agree, it's sometimes difficult to see. This is something i have not managed to squeeze in, just like the upgrades i had in mind. I'm also not sure about a good solution, because when moving a new object, i'd have to check the reachability of this object, but also the reachability of every other object, as i might block the other object with the new one.
Btw. saw you game on randomize user, looks great! :)