Projects Jams Discord News
Resources
Unwind Fishbowls Forums
About
Manifesto Our values About
Log In

April 2017 Update

William Bundy May 6, 2017

I've finally removed SDL2 and the CRT (on windows) from my personal codebase! I've been furiously hacking away at a platform layer + needed libs for most of April, and while it wasn't ready for Ludum Dare, it's coming along now; I can get a window + OpenGL graphics + input working with no issues.

Removing the CRT proved to be an issue for a lot of the free/public domain libraries I was using. After correctly mapping intrinsics and other library functions to my own code, adding my own special-case sort functions to replace instances of qsort, and commenting out #includes when things didn't work, this is how things ended up: [ul]

  • stb_vorbis didn't make it. I couldn't stop it from generating a __chkstk in one of its procedures.
  • [li]stb_image works, but has trouble. I ended up spending a lot of time tracing its allocations, only to find that it expects realloc to behave like malloc if it passes a null pointer, which differs from the behavior of Microsoft's HeapReAlloc. Right

    Read more

    March 2017 Update

    William Bundy April 5, 2017

    Rituals isn't going to get much development attention from me for at least another month. I've been working on some of the design elements behind it, and I feel like I've got a better idea of what will actually be in the game and how all the parts interact. However, until I'm ready to start testing them, I'd rather not go into detail; everything is liable to change until it's proven to work.

    So what happened in March?

    Well, I joined Handmade Network's education initiative! You can read Abner's post about that. Over the last couple weeks, I found some inspiration to make a map editor for Source games VMFSketch ("vmf" stands for "Valve Map Format"). I have a fair amount to talk about from making this, but it's getting late and I said I'd finish this article today.

    Also: I'll be streaming my work on the Ludum Dare this month; it's the weekend of the 21st. This is also the 15 year anniversary of LD, which is pretty exciting.

    Read more

    February 2017 Update

    William Bundy March 2, 2017

    ...or not as the case may be. I got to streaming a few times this month, but overall there isn't much to show.

    See you all in March.

    Read more

    January 2017 Update

    William Bundy February 2, 2017

    I've been having a difficult time trying to sum up January 2017. My best attempt has been "it's been a month, certainly," which isn't particularly descriptive. This post also spans a lot of December, too, which doesn't help.

    Let's see... For the Ludum Dare I rewrote a lot of my personal library code, giving me more concrete ideas for how to clean up Rituals, and required me to make some tweaks to my metaprogramming/header tool. In terms of new features, I only added a few things: variadic args procedures to make text handling easier, an easy to use memory pool, and switching to double pointers for types that use it; but they make a lot of messy code disappear.

    Miblo brought up the topic of code cleanliness in a wider sense in last month's post, so I thought I'd explain more of my thoughts on it. The short version: read Casey's post on semantic compression. 90% or so of the code cleanliness problems I whine about come from me not being very good at noticing opportunities to do t

    Read more

    Where did November go?

    William Bundy December 8, 2016

    Originally titled "Where did October go?"

    Due to some upsets back in October, I've had a messy time streaming Rituals. Throw in HandmadeCon, the horrible cold I brought to it (which has lingered since), and life in general, and I'm pretty far behind, both with development and writing about the project. However, development continues!

    Rituals' code has gotten pretty messy, or, at least, has some messy parts that the important code interacts with, and I find this a pain to work on. As such, most of my development has been outside the Rituals project, essentially forking the ideas, borrowing code, and cleaning it up. It feels like I've grown as a programmer too, and even if not, my style has changed slightly, which means that a lot of the next part of Rituals' development will be changing how I use the technology available to me to suit that. I'm planning on moving to dynamically loaded game code, removing the CRT on Windows, possibly abandoning SDL, and generally tweaking an

    Read more

    Stream Review for Sept 20-26

    William Bundy September 27, 2016

    Marking the first week Rituals has been on HMN (...a day late since it's taken me so long to write), I'd like to start this series to record what I've worked on and track how much I've streamed (approx 11h30m this week). From last Tuesday, I've added a basic spacial partitioning and a simple animation system, while working on particle effects and tweaks to entity rendering.

    Funnily enough, these all end up being interrelated, but I'll go through them one-by-one, anyway.

    Spacial Partitioning is the general term for what I've added in the form of a grid. It's a fixed size array of singly-linked lists of static bodies. This is probably the simplest kind of grid you can implement, and while I'm certainly looking at other options (hierarchical hashed grids, quadtrees, k-d trees), it isn't vastly inefficient for the current terrain I have. (Right now the generator throws out a largely uniform random pattern, so I'm not losing too much efficiency to empty cells in the dense arra

    Read more

    Welcome To Rituals!

    William Bundy September 20, 2016

    I'm very excited that my project has (finally) made it on to Handmade Network! Rituals kind of started on stream, subbing for the Handmade Dev show, so to have it on handmade.network feels natural.

    At this point, the game itself is very much in development, with almost no gameplay to speak of. The plan is to build a game much like a procedurally-generated The Legend of Zelda, but with survival and production/automation aspects to vary and expand gameplay while giving longevity to individual sessions. I don't like discussing design specifics yet because much of the game's planned design is likely to change as development continues. Too, I don't like trying to provide a complete roadmap because immediate decisions influence subsequent ones; however, I can say for sure the finished project will feature at least these things:

    - Extensive procedural generation
    - Gameplay (as described above)
    - Robust modding support
    - Some metaprogramming and scripting features
    

    I'm s

    Read more