Foon →
Ludum Dare Explorer →
LD40 →
Social Status Simulator 2017
Social Status Simulator 2017
By sgstair
View on ldjam.com
| Category | Rank | Score | Count |
|
|---|
| Overall | | 4.00 | 3 | |
| Fun | | 3.50 | 3 | |
| Innovation | | 3.00 | 3 | |
| Theme | | 3.00 | 3 | |
| Graphics | | 2.50 | 3 | |
| Humor | | 3.00 | 3 | |
Comments
Didn't play the Game (Linux here). I looked at your code. It looks promising for future simulations. Though I'm not sure it will be easy to debug and expand. You probably should look into the Immutable concept, or do a JS version, either with React/Redux or Vue.js . You may even use some sqlite3 for persistence.
sgstair
2017-12-04 21:52
@gistnoesis I agree the code quality suffered with all the features I hacked into it, but the nice thing about C# is that if I decide to develop it further, I'm confident it will be pretty easy to untangle. I'm pretty familiar with immutable data ideas and understand the core ideas behind redux, and most of the game state is already pushed forward in a mostly-atomic way around transactions (game actions); I guess immutability would better enforce that - but are there other reasons to prefer that approach? (I'm curious, maybe I'm missing something)
@sgstair Immutability allows you to save an history quite cheaply to replay when looking for bugs. It's very useful for unit-testing. You can get by with transactions only if they are fully deterministic (save the random seed). If you can make transactions reversible (by storing additional data), you can build AI which explores the simulation and eventually backtracks. Or sample some montecarlo trajectories to get some probability estimations for your actions. I enjoy C# with Resharper a lot, but when it comes to diffusing your code js wins hands down, and you also got UI for free. But I concede that if you need to scale it up C# will be better. Also sooner or later you'll probably want to serialize your actions (and there you'll hit a wall).
sgstair
2017-12-04 23:06
@gistnoesis Ah - You probably didn't notice because I didn't make use of it, but I did produce repeatable unique identifiers for the actions that I was going to serialize and use to replay the sequence (if I were to implement leaderboards) - I'm pretty confident that it would have worked, but it was quite a bit of a hack. Thanks for the discussion, you've brought up some good points I'll consider in the future.
@sgstair Yep I didn't notice but the point about serialization is deeper than just storing an id. Because the id is linked to your build version (if you modify any of your action (when bug fixing) it will mess up with your database replay ability).
kromeboy
2017-12-10 06:33
The game has some good ideas in the progression, but I think it's a little to abstract. It may benefit from a more defined theme (what is a project? A movie? A book? Why you can get involved with criminality?).
Also I think that the news screen should be shown at the end of each turn if there is a possible decision to take.
Other than that this game engaged me for quite a while.
Fun game. I won with $1,400M or something when I retired.
Though it should have been obvious, it took me a while to recognize that I could have multiple projects running in parallel.
I also kind of didn't bother to switch over to the news tab after a while, so it would have been more fun if new news showed on the actions-tab as they happened.
It was a bit annoying that options that you couldn't afford got removed from the list, because that meant what I wanted to click on moved up whenever that happened. So I think it would have been better to show them as deactivated if you didn't have the time for it.