A 🧡 about my πŸŽΎπŸ¦€ game rewrite!

Context: I started off with ggez + specs and a very basic understanding of #rustlang and the game I wanted to make. I decided to investigate macroquad+hecs as an alternative and ended up attempting a re-write. This is a thread about my attempt!
✍️ How much did you actually rewrite vs reuse?

I started with an empty main. I asked myself how each thing was implemented before and if it still made sense. I reused some of the components I had from before but I also changed a lot. Some core ideas stayed and some changed.
⏱️ How long did it take?

Judging from the commits and dates, I think it took about 12-14 hours of development. One thing to note is that a rewrite was only possible in this time because my understanding of both rust and the task have significantly improved since I first started.
πŸŽ† Why macroquad+hecs?

They have very clean and simple APIs with minimal boilerplate. Been a joy to work with, I have not yet found something I needed but wasn't there. Also, I really wanted a web build and ggez doesn't support wasm, but mq does (I have yet to try it though!).
πŸ“Ÿ How has the code changed?

The code is much simpler now for two big reasons: better design and less boilerplate.

5,348 ➑️ 1,879 lines of code - that's a 65% reduction in code, it's pretty significant given it's roughly the same functionality.
🧰 ⏰ Compile times & dependencies

Number of dependencies: 323 ➑️ 69
Clean build time: 2.2 minutes ➑️ 35 seconds
Incremental build time: 34 seconds ➑️ 5 seconds

wild!
🏁 That's it, you made it to the end!

PS: The code is not open source, still hoping to make that happen one day!
I forgot to mention the best part! πŸ˜‰

β€’ β€’ β€’

Missing some Tweet in this thread? You can try to force a refresh
γ€€

Keep Current with Olivia Ifrim πŸ¦€

Olivia Ifrim πŸ¦€ Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!