Project Introduction

Hi, I'm ragnarockerbunny, and I really want to make a Sonic fan game.

Like, doesn't every Sonic fan have a dream of making a Sonic game just for them? It's such a difficult thing but from childhood to adulthood it's a dream that does not die.

So, to hell with it, I'm making my own Sonic game.

I'm bad at keeping track of projects. I'm bad at finishing things. I'm okay at programming but even though I've finished some games, I've never done anything quite this scale.

 But time is running out and life is running out and you only learn the limits once you take some big swings, so here's my big swing.

 First swing, it needs a name. Let's call it RGBSonic2026 for now. Why? I want to complete this game come December of 2026. I'm doing this in my free time so it can't be too big in scope. I really want to learn more about Godot so that's what I'll be using to make the game.

In brief, the elevator pitch;

RGBSonic2026 is an speedy action platformer modelled after the boost formula Sonic The Hedgehog games. The game will have four stages, with two acts per stage and one boss act. The stages will be connected with a small hub world. For now, the story will be about Sonic going to a mysterious island inhabited by cute little critters whose home is being destroyed by Dr Eggman.

So what is this? This is part devlog, part blog, part place to hold me accountable. I'm putting this out onto the internet but it's not like there's much to share yet.

But I am serious. Look, here's my project file in Godot.


Screenshot of project file

 

Today is all about the bare basics. I'm looking through tutorials and all I want is to get a character moving in space, and also maybe jumping. So for starters, I'm going to follow Godot's First 3D Game tutorial.

It wasn't a great start. I'm a bit of an old school programmer, I like a good set of top to bottom sequential instructions and Godot... Godot really likes nodes.

So we start with the basics. Get a Main node and scene going, then make a scene for the player. Add a regular 3D node and call it Pivot, put the character mesh as a child of Pivot. Add a CollisionShape3D node under player, then attach a script to the main player Node.

Add a StaticBody3D for the ground, add a player instance as a child of the main scene and then add a camera pivot and a camera.

After figuring out some hiccups, we got to where the player can move around and jump. Felt a little clever using an old game maker trick for variable jump height taught to me by Sara Spalding, felt cool to implement that, and the jump feels really good.

Not super happy about being locked to 8 directions of movement, but that's a next time problem, no camera controls, obviously, but that's definitely a future problem. I met all my goals for this part of the project. I think next I'll complete the first 3D game tutorial and then figure out where to go from there.

  Thank you so much if you read this all the way to the end and I hope to see you again sometime soon.

Comments