1. Star Child
  2. News

Star Child News

Star Child Dev Log #40

Janne - the other guy:

We've been working a lot on polishing things for our demo to get it out for people to test a bit before Next Fest still and get some initial feedback that we can hopefully resolve before the showtime.

Some highlights:
- Improved our level preprocessing tooling to detect which rooms have save points, which are secrets, and where the exits are located for automap
- Redesign of automap + some bug fixes
- Replaced placeholder art in demo content with proper ones
- Completely new set of 25 levels for demo content, which we'll still expand on
- Implemented new enemy type
- Added music, updated sfx
- Updated UI theme and fixed consistency issues
- Tweaks based on initial gameplay testing feedback to difficulty of a few levels, knockback, crouch, fire rate, inertia, etc.

Overall lots of progress and we're already very happy with what we've accomplished so far.

Here's some of the challenges that you can expect to see in the demo content:







If you haven't yet wishlisted Star Child, what are you waiting for? Try the free demo too!

https://store.steampowered.com/app/2953070/Star_Child/

Thanks for all the support, see you on the Next Fest.

Star Child Dev Log #39

Jay Ingle - lead developer, designer, and artist:

This week I worked on a lot of enemy and environmental art. With our demo dropping officially in 16 days, I don't want to show all of it to you. You can see it for yourself very soon! How about I show you a few little things, and if you want to see more, head over to Steam and wishlist Star Child. Free demo ready for Steam Next Fest Feb. 23rd!









Janne - the other guy:

I've been trying to help out where I can and some of what I've accomplished recently have been:

- Build system updates and export configurations to build both full release, and demo version with unnecessary assets removed
- Registration, setup, and testing of the demo build on Steamworks
- Fairly heavy reworking of our automap, including some tooling to pregenerate data from our level scenes via a tool script that can be run locally and automatically on our build server
- Refactoring of our scene changer logic that made it a bit more reliable and easier to use the configuration directly for our automap
- A fair bit of main menu, options menu, etc. work - made an updated Godot UI theme, fixed some controls for the options screens,
- Implemented debug keys and other such things in a manner that's a bit cleaner for actual public release, fewer people should accidentally bump into them
- Fixed some weird issues with builds, e.g. an UTF-8 ⬅️ was rendered incorrectly after build and I replaced it with an icon
- Added placeholder controls overlay to the first level until we get control rebindings done
- Updated credits
- Lots and lots of testing, fixing things I could fix myself, and reporting various bugs to Jay

Star Child Dev Log #38

Jay Ingle - lead developer, designer, and artist:

This week I was sick! But I worked a lot on our main menu design, and some enemies.

Here is the enemy i have named Homer. Doh.



This enemy homes in on your location. Could use a little refinement, like only turning a certain number degrees over time, rather than instantly snapping to the player's direction. But just for the direction, and the homing, and facing towards the player, the code is like this:



Nothing too fancy there. Now Homer doesn't just move toward you and then explode in your face, he also spawns Little Homers if you shoot him a couple times!



These Little Homers are smaller, faster, and could use some refinement code to help them not stack up together too much. A little randomness in direction and speed could help too.

There are only 3 weeks left until the Star Child demo will be released on Steam for Next Fest! This coming week is critical. There is art that needs to be done, including creating art for Homer that does not result in any cease or desist letters from anyone. Drop by next week to see what Homer ends up looking like!


Janne - the other guy:

I've been trying to help polish a few things for the demo. I worked on small things like setting the game fullscreen on startup, setting up some behavior for the menu, fixing a few things with saving and loading of settings.

I'll try to help out where I can with the more pure logic things and other things I'm reasonably familiar with, so we get the game in as good a state as we can for the demo.

Star Child Dev Log #37

Jay Ingle - lead developer, designer, and artist:

This week I've been doing menu and UI work. This is my least favorite part of game development, however I have found some satisfaction from solving some coding problems.

Recently, I have improved my coding. I have been using dictionaries and For loops to set properties as needed. The catalyst for this was the realization that I can populate a dictionary with references to nodes, and iterate thru them as needed. It got even better when I learned that I can use scene-unique names (denoted by the %) in my menus, so that if I rearrange the containers, nothing is broken, and I don't have fix broken references.

@onready var menus = {
"Options": %CenterMain,
"Audio": %CenterAudio,
"Video": %CenterVideo,
"Keyboard": %CenterKeyboard,
"Controller": %CenterController,
}


So if I wanted to hide all of these menu nodes, I could do:

func hide_menus():
for menu in menus:
menus[menu].visible = false


In the past, I would have set onready vars for every menu, which would have to be redone if I changed the node structure of the containers.

@onready var options_menu = $OptionsMenu
@onready var audio_menu = $AudioMenu
...etc


Then I would have done this mess:

func hide_menus():
options_menu.visible = false
audio_menu.visible = false
video_menu.visible = false
keyboard_menu.visible = false
controller_menu.visible = false


This is bad, obviously. It wastes so much time, and is highly prone to bugs/typos. It is quite a relief to understand how to write decent code using data structures.

And I must thank my teacher, ChatGPT. Oh no! Are we letting AI write code for Star Child? No. But in absence of an actual human teacher, AI has been extremely helpful to me, in learning how to write better code. Conclusion: AI is great for learning, if you approach it like you are actually trying to learn and be independent, rather than trying to let AI do your homework for you.

I, for one, will never accept our robot overlords. However, thank you, robot, for helping me be a better game developer.

One month and six days until the Star Child demo will be out, in time for Steam Next Fest! I better get back to work.

Star Child Dev Log #36

Jay Ingle - lead developer, designer, and artist:

Recently I have been implementing the G.U.I.D.E. plugin for handling player input. Godot's input system is generally ok, but 3 things are very complicated to do: disable/enable all controls (like you would want to do when you have a cutscene), remapping controls, and switching between different control devices (such as keyboard, controller). The free G.U.I.D.E. plugin can help make these tasks a lot simpler. It also returns vectors for 2d and 3d inputs, which can be used in movement code, but we already have our movement set up, and won't be focusing on that functionality.

Star Child can be played with keyboard, or controller. If you are playing on keyboard, and you pick up a controller, and press a button on that controller, the game automatically switches to controller mode. If you then pressed a button on the keyboard, or moved the mouse (moved a certain distance, not just bumped your desk), the game switches to keyboard mode. This is handled very nicely by the G.U.I.D.E. plugin. This is not an advertisement for a free plugin, but hey, if you are making a game for Godot, you should be using it.

We also now have the ability to show button prompts on the screen. Which now changes based on what device you are using.



I will most likely only show you button prompts in a tutorial, because honestly this game does not have a complicated control scheme, so it should be intuitive for literally everyone, at least on controller. Which buttons players use on their keyboard is less standardized. G.U.I.D.E. also builds the button icons in real time, and thus can automatically produce an icon of any type of controller button, and even international keyboard symbols. Automatic icon localization, very nice.

The Star Child demo needs to be complete and ready to play on Steam in 6 weeks! So for now, control remapping is taking a backseat, and I need to finish the (new) main menu functionality, and work on some gameplay and art. See you soon.

Get the G.U.I.D.E - Godot Unified Input Detection Engine plugin here: https://godotneers.github.io/G.U.I.D.E/