Log #29: Feb/27/2025
- A Resolution
- More Talk of AI
- Couch Collision
I say this with some caution when I say my team is going to have the entire game's mechanics layed out and playable by the end of the month. Recently, I've personally been in a slump, but after a short talk with Him, it was made clear to me that the first step is filling out a sketch of our game, and then adding detail from there.
I gathered everyone on the team for a meeting to make this announcement. The talk was short and informal, but I think it really motivated the team. We have built a lot of our game already, and trying to put an unpolished version of it all together gives us a clear goal to aim to.
I picked March 31 as our deadline, and said I wanted to be able to play the entire game by then (but not necessarily in a neat form). From there my design work has been easy to plan: I need to communicate what the final stages of our game actually are. I spent time filling these things out, and I have made good progress. Additionally, this planning has helped me lay out an emotional "arc" to guide the game's feel as we progress through it.
This week we also spent time in discussion with everyone about trendy subjects like generative AI. The general sentiment seems to be that AI creations will lack that extra umphf that humans add, and AI coding will be too mindless for its "prompt engineers" to actually understand what their code is doing. But of course, I agree with my colleauge in speculation that businesses will continue using AI anyways, at least until human stuff becomes trendy again.
This week I also worked on getting some smaller tasks out of the way. I got to fix the collisions on our "file box", so now you can actually put stuff inside of it.
MATH SEGMENT: Algebra and Functions
You may have noticed a new arrow button on the top navigation bar of my website. If you don't see a button with an arrow on it, that's okay, I expect I'll remove that button sometime in the future, so I'll put it below too:
You know you're curious about the button. Also whew, that took me a minute to add...
The button is supposed to rotate this webpage upside down! I'm just starting to learn JavaScript, so playing with these things is pretty fun.
Anyway, if you remember from my post way back when, I made a class that let me display things upside down. I had some good fun with that, but then I realized... with this magical stuff called JavaScript, I can reuse my old class...
When I give elements on this webpage a class, I can use CSS to say how
that class should look. In this case, I have a class called
"upsidedown"
that makes things look like they've been rotated 180° on their
heads. With JavaScript, there is a simple way to add classes to
elements. This lets that element (in this case, the
<div>
containing this page) inherit all of the class'
fun style.
When doing web development, keeping track what is inheriting a style from what can be confusing, and manipulating classes with JavaScript adds an additional layer of complexity.
Understanding the heirarchy of my classes, and how my code changes that heirarchy, are important if I want to keep myself right-side-up.
MATH SEGMENT: Geometry
This week I continued doing level design, this time focusing on whiteboxing. Whiteboxing means "sketching" out the layout of a level, just in a basic form. Apparently, people tend to build levels out of generic boxes without any decorated textures or anything, hence the name.

A basic level layout that will allow for testing until we refine it.
Whiteboxing isn't very deep. The whole point is doing something fast just for the time being, so nothing needs to be perfect.
However, I did do something a little more interesting. I mentioned above how I fixed the collisions on our file box. To do that, I scaled box colliders into about the shape of the file box. The intersting thing here is that because the collision boxes are invisible, they don't need to be shaped like anything at all. They only need to be exactly where the file box must collide with other objects.

The green lines outline the file box's collision. There's no green on the inside of the box's handle, because we simply don't need to make the collision that precise.
The original file box just had a simple cube collision. The problem was that the cube collision meant that nothing could actually go inside the file box. When I updated the collisions, I had to make sure other actors could go inside our file box without touching any collisions.
The fact that the visuals and collision of an actor don't have to align can be confusing, but it can also be useful. In an old project I worked on a while ago, I created a hidden area by removing the collision from some trees so you could walk through them. There's lot's of possibilities. And if you find you can't put anything inside of your box, make sure that the collision doesn't stop your endeavors!
Thank you for reading this post! Have a good one.
-Luke Knotts
