I decided that the camera will, for the most part, use the basic transform.interpolate() function instead (Tweening worked, but it did not work easily for smooth transitions to a completely different angle). What that means is that there is now a basic system to prevent the camera from clipping walls in some cases.

It does not mean tweens did not have a use among other effects and polish, look at what happens to the yellow point object for instance (a bonus, the gem has an effect as well). This was made using a simple .gif recording program, so the apparent FPS is entirely because of the encoding.

More short clips will be coming now that I know how to make a basic one (as I do not need a fancy video software to showcase in a way that is an upgrade from screenshots). Also getting done is some UI stuff (Gem number bar, HP Bar, ect...), the player getting hurt with spikes, sound & music, ect...

Getting checkpoints started. They also have a secondary feature, which takes into account the fact it would probably be frustrating to take a long roll to the end of the level only to find there's still a gem to find near the start. The checkpoint will still save your position though and it won't stop you from ignoring the text.

This works by separating the gems throughout the level into groups, which will also become a factor in how the gem finder widget will now work (that little gem polygon in the top right). The Gem polygon in the checkpoint structure will turn green when all so far have been found.


In addition, it is now possible to get hurt, the new tweens mean I can easily create the sequence of the player flashing red without adding timer variables and what not (allowing the use of yields instead in a function that runs for just one tic). Simpler and less likely to break or lose track of.

One final thing, I may need to add a simple blackboard behind the text to make it easier to read (since for one thing this is one case where such will not get too much in the way, as the text will no longer display when all gems so far are collected).

5 days later

Basic Bugbot movement.

For enemies to work well in general, the design is that each enemy's script will extend another script that holds all of the common functions (which is not exactly new in this latest go-around except there's a common script for collectables as well). This time though, the bugs have a simple yet clear state system going, and also new is a virtual tether (centered at their starting location) to ensure they do not go every place except areas where they would challenge the player (if they go outside their tether, they turn around and keep moving until they are back where they should be).

The movement other than that is the same, for these first enemies the movement is just a slow, straight walk until they hit a wall or the floor drops out (in which they turn for a random length of time). You will also notice via the shot that I started work on more advanced debugging logic, in this case a debug camera so I do not have to bring the player over to see if things are working.

There's also new bushes as you can see, just to increase the choice of assets other than rocks or trees.

2 months later

I have been busy with art and other things, but I have completed certain mechanics like the one where you collect a set of green point objects to unlock some red point objects (which are the special ones that will unlock things like bonus levels).

For the green point collection challenge, I have it now contained within a single scene added to the main level with overrides applied to the positions (in which the green objects are arranged in a simple grid by default). That means ensuring a working challenge is now just a single step, meaning it should not be possible to break it theoretically.

I was also somewhat thrown for a loop when team Godot started giving us Godot 4 beta releases. At first it looked like my project's scenes were somewhat broken when it tried to convert. Now I do not know if it is because of this month's Nvidia driver update removing the LHR handicap to combat crypto or Godot just needed to start up again, but everything 'appears' to work save for the fact that materials do not convert as of now (which can easily be rebuilt). It is admittedly quite tempting to give Godot 4 a go again since the API is nailed down and breaking changes has (largely) stopped, since some of the new stuff makes even version 3.5 feel outdated in comparison.

Now some things may have to be fixed on my end, but I am not terribly far in this yet (since level 1 is not even done).

    7 days later

    The player is moving again, and just about everything in the hub is working. Also notice the nice fog barriers I can make now to hide the edges of the terrain mesh.

    The only thing to note is that since the 6DOF joints actually work properly now, the bot needed a little additional code to ensure he can be controlled and turned easily, but otherwise he works like a physics object as expected. The ability to set a custom center of mass and custom inertia also means I no longer need any code that helps with stability.

    There also was a minor issue in the form of the project converter converting text box text as if it were code, but I do have a ton of that yet and it is a onetime change, so it was not a big deal.

    2 months later

    You might be wondering what is taking so long, like usual I have been busy with other passions (for instance, modding for a rather nice FOSS game known as Sonic Robo Blast 2, which I would recommend if you want a good quality experience without having to spend money). There is also Blender like usual, especially with the recent upgrades to Cycles.

    However, I am still tooling around with Collect the Gems, it has finally gotten to the point where the gameplay at least is right where I left off when starting the remake in Godot 3.x (abilities are working on a basic level and you can smash the bugbots as they twirl around and disappear in a puff of smoke, the green object collection challenge is also working). Now it is no longer about catching up to what I had earlier in the thread and all about getting the first level nailed down.

    23 days later

    Again, other hobbies and interests took over, but with Godot 4 actually feeling somewhat solid now, things are starting to get interesting.

    So far, everything on a basic level is working, with the bugbots even being able to navigate slopes in the terrain to an extent. There is still a ways to go yet before I figure out game progression (with multiple levels), but Blender (at least the dev builds) now being able to write to mesh UV's procedurally (with the Geometry Nodes) means a faster workflow and a reduced need to create procedural coordinates on Godot's side (which should save a few GPU cycles).

    3 months later

    Again, Godot is not the only thing I work with, but I do have more progress to share.

    What was worked on includes the battery indicator, the exit and exit sequence, additions to the first level, the directional arrow that helps you find gems, extra lives and other goodies, and player death with reset. The game is almost to the point where you can now complete the first level and be sent back to the hub (with the next level then unlocked). Yes, the game now has up to three indicators to make sure you are not all the way at the other end only to have missed one at the beginning (one in the UI, one over the player, and one at the checkpoints).

    However, I had an issue where the command to change scenes in Colossal Courtyards did not have any recognition of the Hub level as a valid resource (because while the scene was not corrupt, it could not be parsed). This was fixed by recreating it from scratch with the other elements copied and pasted from the broken version (which saved a bit of time from that, at least it was still in a very early state).