diff --git a/README.mkd b/README.mkd --- a/README.mkd +++ b/README.mkd @@ -3,9 +3,9 @@ # isometric-park-fna -As the director of a small state park, your job is to balance conservation, leisure, and fiscal sustainability. At the moment, there's minimal gameplay. +As the director of a small state park, your job is to balance conservation, leisure, and fiscal sustainability. Gameplay is still being added. -This is inspired by Maxis' Sim series of games, particularly SimSafari, and Chris Sawyer's Tycoon games. Its Premise more closely resembles SimPark, but I never played it except for a demo. (Alternatively, watch [1990's Sim Games. SO GOOD!]()) +This is inspired by Maxis' Sim series of games, particularly SimSafari, and Chris Sawyer's Tycoon games. Its premise more closely resembles SimPark, but I never played it except for a demo. (Alternatively, watch [1990's Sim Games. SO GOOD!]()) ## Controls ## @@ -29,6 +29,86 @@ You can build and run the project using VSCode actions. +### File Structure ### + +``` +. +├── *encompass-cs* ECS library (vendored) +├── **FNA** Graphics and media library +├── **ImGui.NET** GUI library +├── **isometric-park-fna** +│   ├── **bin** +│   │   ├── **Debug** Debug version +│   │   └── **Release** Release version +│   ├── *Camera.cs* +│   ├── *CellMap.cs* +│   ├── **Components** Components that store data on entities. +│   ├── **Content** +│   │   ├── **DejaVuSerif-BoldItalic.ttf** +│   │   ├── **DejaVuSerif-Bold.ttf** +│   │   ├── **DroidSans.ttf** +│   │   ├── **grammar.json** +│   │   ├── **images** images +│   │   ├── **iosevka-medium.ttf** +│   │   ├── **iosevka-term-extendedmediumitalic.ttf** +│   │   ├── **iosevka-term-extendedmedium.ttf** +│   │   ├── **iosevka-term-medium.ttf** +│   │   ├── **news_items_pregenerated.yaml** +│   │   ├── **news_items.yaml** +│   │   ├── **part4_tileset_alt.png** +│   │   ├── **part4_tileset.png** +│   │   ├── **part4_tileset.xcf** +│   │   ├── **photos_converted3.png** +│   │   ├── **photos_converted.png** +│   │   ├── **solid_tileset.png** +│   │   └── **typicons.ttf** +│   ├── *DllMap.cs* (vendored) +│   ├── *DrawVertDeclaration.cs* +│   ├── **Engines** Engines +│   ├── *FilledRectangle.cs* Helper class for drawing a rectangle. +│   ├── *FNAGame.cs* Primary game class. +│   ├── **fnalibs** Compiled native libraries. +│   │   ├── **lib64** +│   │   ├── **osx** +│   │   ├── **x64** +│   │   └── **x86** +│   ├── *ImageMap.cs* Map of images. +│   ├── *ImGuiRenderer.cs* Renderer backend for ImGui. (vendored) +│   ├── **isometric-park-fna-core.csproj** +│   ├── *isometric-park-fna-core.sln* +│   ├── **isometric-park-fna.csproj** +│   ├── *Line.cs* Class for drawing a line. +│   ├── *Logging.cs* Logging class. +│   ├── **Messages** Message classes. +│   ├── *Quad.cs* Draw a quadrilateral. +│   ├── **Renderers** Renderer classes. +│   │   ├── *AreaRenderer.cs* Renders areas on the map. +│   │   ├── *BudgetWindowRenderer.cs* Renders the budget window. +│   │   └── *ImGuiWindowRenderer.cs* Renders ImGUI windows. +│   ├── *Simulation.cs* Primary simulation class. +│   ├── **Sources.md** List of sources. +│   ├── *Tile.cs* Draws tiles. +│   ├── **UI** User interface code,, one for each window. +│   │   ├── *StyleSet.cs* Utility class for setting multiple style variables and colors at once. +│ │ ├── . +│ │ ├── . +│   │   └── . +│   └── **Utils** +│   ├── *Extensions.cs* Extension methods. +│   ├── *MathUtils.cs* Math utility mentions. +│   └── *Node.cs* Simple tree. +├── *isometric-park-fna-core.sln* .NET Core solution. +├── *isometric-park-fna.sln* .NET Framework solution. +├── **README_future.mkd** +├── **README.mkd** +├── **scripts** Helper scripts. +│   └── *package.py* Creates packaages. +├── **SpriteFontPlus ** Font library. (Vendored) +└── **TODO.taskpaper** Tasks, feature requests, and bugs. +``` + + + ## Acknowledgements ## Art: [Isometric 64x64 Outside Tileset by Yar](https://opengameart.org/content/isometric-64x64-outside-tileset), various images from the Library of Congress and USDA Forest Service @@ -37,7 +117,7 @@ Sources for the procedural generation are documented in Sources.md. -Watching Thin Matrix's [video devlogs](https://www.youtube.com/watch?v=90CZ7Q17sls&list=PLRIWtICgwaX1gcSZ8qj8Q473tz7PsNmpR) for Equilinox inspired me to press on. :) Despite some similarities, the design of this game wasn't really inspired by Equilinox. (I've also enjoyed Thoughtquake's [video devlogs](https://www.youtube.com/user/Thoughtquake/videos) for Cargo Defense and Cliff Harris's Democracy 4 [video devlogs](https://www.youtube.com/user/cliffski2/videos)) +Watching Thin Matrix's [video devlogs](https://www.youtube.com/watch?v=90CZ7Q17sls&list=PLRIWtICgwaX1gcSZ8qj8Q473tz7PsNmpR) for Equilinox inspired me to press on. :) Despite some similarities, the design of this game wasn't really inspired by Equilinox. (I've also enjoyed Thoughtquake's [video devlogs](https://www.youtube.com/user/Thoughtquake/videos) for Cargo Defense and Cliff Harris' Democracy 4 [video devlogs](https://www.youtube.com/user/cliffski2/videos)) The original versions used art from the [Low Poly Forest Pack](https://devilsworkshop.itch.io/lowpoly-forest-pack) by [Devil's Work.Shop](https://devilsworkshop.itch.io/). (I had converted the models into isometric 2D images, using [this process.](https://www.youtube.com/watch?v=bk0PXMgZgQg))