One more idea.. You've worked across great companies and great games. If you were going back now to your former self striking out to ship your first commercial game, what are the 3-4 pieces of wisdom you wish you'd internalized back then?
For me.. the most interesting part of the whole Warcraft saga would be more discussions around the arguments/design decisions of.. "we should include ___."
For example... War2 stuck with two races (and introduced alliances w/ other races like elves) instead of adding new races. How did you get to that decision? did you do any prototypes? Was it just a pure argument? What did you find in the process?
That kind of behind the scenes design discussion is rarely surfaced (and often messy) but is as interesting (to me) as the technical decisions.
I'm glad it was helpful! Sorry you're going through some tough times :( Hope you can find a way through and find the support you need from friends and family. Share your creations would love to have a look!!!
I just found your blog yesterday reading up on the stories of how Warcraft and Starcraft were made!! Have been hacking on small games and a tool to build 3d environments for a while and get very inspired by hearing stories from back in the day. Thanks for making everything public. I really enjoy your writing.
I started my project without cargo at first and tried to start writing code without a cargo.toml. I was surprised that cairo didn't default to 2021 until I specified it in the .toml file. Good point that cargo init/new would have solved this!
I guess my point about the compiler was that it seems to rely on cargo.toml for many 'optimizations' that I would expect to be defaults. (Examples include the two i mentioned above).
But I'm new to the language and understand that most people will just use `cargo init` and google a few other common cargo.toml settings to improve compile times.
I recently spun up a project in Rust (a small game using Bevy) and the main issues I ran into were around smart defaults for the compiler. I was surprised how many lines I had to add to my cargo.toml to just complete a simple game example.
Some examples:
It defaulted to the fully backwards compatible version (vs 2021) which threw errors as I went through some recent example code.
(I think) I had to add a few lines to my cargo.toml so the compiler would not rebuild bevy every time I recompiled (when I only changed 1 line in my program).
I've been using Godot off and on for the past month prototyping a mobile game. The editor loads/refreshes very quickly on a macbook air m1 (which hasn't been the case w/ Unity of late). The workflow is intuitive and for reasonably scoped games, it's a great fit.
I was surprised to not feel limited by gdscript (having no python background and doing most work in JS for the past decade). I picked it up quickly and it's well documented and integrated into vscode.
Not sure if it would be my choice for a large game with millions of entities (e.g. an online RPG that needs an ECS system) but for small 2d games it is a delight to work with.
I may be the minority here, but I hope Godot doesn't try to cater to AA/AAA devs and keeps small indies front and center as the focus.
This is very cool. I love the focus on builders and do think there's a gap in easy to use 2d web-friendly game engines currently.
Phaser still requires a ton of boilerplate code compared to the example games here.
Both Godot and Unity are very similar to each other and aren't great for say.. hacking together a quick js prototype and sharing it with your friends on the web (or with a lil' device).
As someone who previously found art very inaccessible, I loved diving in with p5 and feeling like I finally found a medium (gen art) that I can freely create and experiment within.
This was a really popular project. For those who haven’t poked around generative art recently, check out artblocks.io. You buy a piece of art (limited edition) and it creates a unique (randomized) piece for you on the spot. Pretty rad.