Gray Model Works

Press “Play” to try Project Alameda on a new tab

Updates

I’ve been updating the simulator but I’ve been delinquent on posting here. Feature-wise I added a company line of credit to borrow against, which can be done on the finance tab. In the future I’m planning to add bond issuance, which I think is how more substantial debt financing is done, but I need to do more research. I added a mechanic to make concepts persist for a certain number of turns, rather than getting a new set of concepts each turn. You still get new concepts each turn (two for now) but they’ll stay for a few months and then expire. I also added a discard button to remove concepts from the pipeline.

I’ve made a bunch of formatting and interface changes too. Most recently I rotated the pipeline so that projects proceed downwards rather than left to right, in other words, each stage is a row rather than a column. I think this makes better use of the space. I’ve also been reformatting the income statements and balance sheets.

Just a Home Page

Rather than having separate pages, I reworked the app to contain only one page. The navigation is still mostly the same, but the context menu/navigation pane changes the context shown on the home page rather than redirecting to another page. I think this will make it easier to change between different context views while keeping the same action pane open.

I also locked the elapse turn button when there are pending tasks, which for now are just reviewing plans. This should make it easier to speed through turns when nothing needs to be done, without fear of missing an action item.

Interface Updates

I made a few updates today to better format the MudBlazor interface components, making more use of the Stack component and the Class style options. I also found the Dispose component lifecycle method on Microsoft’s documentation, which seems similar to the OnDestroy method in Unity. I reworked the event subscriptions using this Dispose method, so the Razor pages subscribe to the model updates when they’re initialized, and then unsubscribe when they’re disposed of. Anyway these changes should make it easier to add more interactivity to the model, which is what I’m planning to work on next. Here are the two Microsoft Learn pages on state management and component disposal that I found very helpful today.