Devlog 8
This will likely be the last devlog before my first ship.
File changes:
- cli_display.rs: Removed hardcoded grid constants and added new input parameters for grid size. Experimented with different grid spacing but settled on a dot and space to one emoji (”. “).
- inputs.rs: Added a new section for grid size selection. There are four choices for selection: Small, Medium, Large, and Custom. I had a little bug with Custom not properly working but that was quickly fixed.
- main.rs: modified to accomodate variable and parameter changes of the 2 files above.
- I checked error handling and the spacing of text as well. Everything should be properly handled
-
cargo-fmt&cargo clippyran. - Fixed the old bug of inverted y cells; the problem was because of the way I collected line renders (I rendered the bottom of the grid up, but my string concatenation pushed the bottom lines to the top). To solve I just reversed the loop for the rows (y-value).
- Plenty of comments
- In the video attached, at 200ms per frame there is no screen stutter. The new way of displaying frames seems to be good.
Future:
- After this I will update my project GitHub ReadMe and add binaries for Windows, Linux, and MacOS. Then I will add the playable link here.
- After shipping, if the project passes, I will clean up the code and make the game replayable after all cell dies.
- Next major modification would to progress to a TUI then a GUI with additional features.
- Lots of ideas for this one!
Other:
- Self contained Rust, no external crates.
- Q: Why not GUI? A: I see lots of people on this platform have a GUI. However they are using an easy to use game engine, web render, and/or easy to use applications. Rust is mainly for backend and using Rust for frontend is a pain in the butt. I would have to learn eframe/egui and how to work with web-assembly and convert my code to be compiled that way. A TUI would be my next step. If the TUI works, I may consider an infinite grid project milestone and/or then proceed to do a Rust-based GUI.
- Attached is the cell pattern known as “diehard”. It contains 7 initial starting cells and goes all the way to generation 129 before dying exacting on generation 130.
Feedback is welcome!
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.