Devlog #1 the Birth of Odyssey
(disclaimer: frenchman talking...please excuse my english!)
HELLO WORLD or how i learned to print the bomb
After about 37 years of playing video games (starting as a 6 year old boy with my father's Amstrad!) i woke up a few weeks ago and thought "geez, wake up boy, you ain't getting any younger...what about having a bit of fun with all the birds and the bits?" here's the challenge: learn from scratch, and create a short video game during your spare time. And of course, at the same time, talk about it in a devlog, because, huh, that's what you're supposed to do, innit? The sky's the limit but the Ego is a superf***ingmassive black hole. And maybe if there's some fellow lost soul lurking around, reading that stuff, maybe that could serve as a nice cautionary tale : the ways of the noob, the do's and don'ts. (the don't might have a higher ration, though) See that guy? Don't be like him!! Anyway, i enjoy reading how others are learning the ropes , so maybe someone will enjoy this too.....are you all sitting comfortably? Then i'll begin!
When i said i challenged myself into making a video game, i lied. Truth be told, i'm not sure i'm creating a game. All i really want to do is toy around with visuals and sensations, experiment a bit. Ultimately it might prove boring and pointless to everyone but me. But as a musician I love to play with tones, colors, sounds and meanings/feelings. Creating a "impressionist" game is not that different from writing a song, is it? I'm really into DIY, Lo-fi and auto-production and i found on itch.io some of that spirit so i suppose there's a bit of connection between what i've been doing for the past 20 years and this little fun-inbetween-two-songs. I said i was a complete noob regarding how to develop a game, and that's true, but i have read a few lessons on C++ language. Not that i could code in C++ if my life depending on it, but it gave me the basic understanding of a few essential concepts: variables, functions, data types, boolean, classes, pointers, arrays etc.....even without being able to properly code, there was a "before" and a "after". Suddenly programs were not just magical artefacts summoned by the dark will of powerful sorcerers, but a logical machinery of clear instructions (although still typed via the dark will of powerful sorcerers). So if a noob like myself had any right to give advice to some other noob reading these lines, i'd say: familiarize yourself with all that coding vernacular, try to understand the fundamentals, how it works, even if you don't want to master it or become a proper programmer. But it sures help when you're confronted to creating your own game, even if you are using visual programming or not doing the coding yourself and just "designing".
BRO CODE
By the way, regarding coding, i'll be honest: i'm not a programmer and will never be. So i use any source for inspiration: that means online tutorials, reddit threads, game engine manuals...and also ChatGPT. Many of the more complex stuff i've been trying to do started as a discussion with the AI. I say "discussion" because it never really gives me a direct "good" answer. it's an ongoing discussion about what is working or what is not. and why it is working and why it is not. And i think that somehow, this exchange allows me to learn a few stuff on the way. There's always a problem, and the LLM won't find the solution on its own. So despite relying on the artificial intelligence, i really try to understand every line of script i write, and modify it until it gives me the outcome i was looking for. And then i may have learned a new thing or two. Feel free to disagree! But despite ChatGPT being involved in the scripting process, i feel that what i see in the end is very much my own thing (for better or for worse!!). I believe that if you're curious enough, and willing to understand what you are doing, then it does not matter where you take your knowledge from. (and since this is not a professional game, there was no hiring a professional coder on the table to begin with). Well, again, that's the DIY/LO-fi ethics to me: do with what you're been given.
THE BIRTH OF ODYSSEY
I actually toyed around a bit before with Gamemaker and Godot. But it never went past animating/controlling sprites, collisions with the platforms and ennemies, maybe a parallax scrollingor other kind of very basic features. They never really turned into something really playable. It was just me trying to understand how a game works. But i was never motivated to take it further. Until now...thank you Itch.io, there's a certain "underground scene" feel to this community which is very inspiring, and -as i said- very close somehow to that outsider/independent music culture i've been a part of. For some reason i chose 3D. Low-poly. There's a lo-fi charm to it. I'm not gonna do a horror game though. I liked them a lot -i played no one lives under the lighthouse and i thought it was great!!!- but that wasn't the idea. As someone who's passionate about physics, the origin of of our universe, the meaning of life (spoiler alert: there's none, ask Camus) and the nature of reality i had this idea of a succession of dream-like, Jungian scenes, each playing differently and symbolizing diverse ideas and meanings (yes, i told you before, this might end up a boring, dull, pretentious walking sim, i was not kidding, you've been warned!!!). What's also great about it, for me at least, is that since each scene can be so different from the next, i have total freedom to experiment and test ideas as they come. If i suceed in this, it means next games can be more focused on a specfic gameplay (and hopefully, quicker to be made?). Odyssey is supposed to be 15-30 minutes long to complete and will feature 6 or 7 scenes (+ prologue/epilogue). I spend 5-7 hours a week on it, it's not much but i can't allow more. I started in early may 2025 and i estimate it's gonna take me 1 year to finish. Maybe. Possibly. Definitely...Not?
WAITING FOR GODOT 4
WEEK 1 (early May)
Nodes and Scenes....i don't know much about game engines, but Godot (v4) is really intuitive and user-friendly. And it's free and open source, what's not to love? I'm not sure you could make Cyberpunk 2077 on it, but 90s-style lo-fi 3D should be alright. In order to create 3D models i wil use Blender, which is also free. I think i could use Godot for the simple 3D i'm trying to make BUT in the long term learning Blender will prove more useful so i'd better start right now. Basic shapes: a plane mesh for the ground and tall rectangles that i call monoliths. For textures, i don't know how to do it so it's gonna be simple plain colours via the material property. I read somewhere that i could export all this as .glb and add the suffix -coll to every object's name so that Godot will recognize them an automatically create fitting collision masks (which will let my Player character interact with). Export as .glb....import in Godot. It works. Alright. In Godot i have this terrain as my main scene , saved as a .tscn. I create another Godot scene (another .tscn file) and this one is gonna be my Player Character. To do this i create a root node CharacterBody3D to handle physics and movement and i add two child nodes: a CollisionShape3D for collision/detection of other objects, and a Camera3D for the 1st person view. A script attached to the CharacterBody3D node will handle the rudimentary movements of my character (forward/backward/left/right with the arrows, look around with the mouse. Then change the project settings so it handles console gamepad too). Add some basic ligthning to the scene... et voilà!
WEEK 2
Now i can move my player around the imported terrain. It's time for me to play with the atmosphere, the mood. So far i've been using a Godot-generated sky, but i want to make my own. I read about "HDRI", "skybox"...i must say i've had a hard time figuring how to manage that. After many tries i've settled for something that looks quite crude, and there's room for improvement , but that's the best i can do for the moment: two spheres around my scene. The bigger one has a low-res sky PNG. The smaller one has a shader....hello shaders!! This is the first time i use them and it seems to be a powerful tool for creating more complex visual effects. This is where ChatGPT comes in handy. It gave me the basic shader i wanted, and i tweaked it until it looked fine to me. Basiscally this shader affects the alpha (transparency) of the sphere as well as the colours -the colours, they are a-chaaaaanging- and it makes it look like a modulating psychedelic sky, with the "real sky" beyond it appearing and disappearing again and again. It's a basic and rough and crude effect, but to me it's a nice trick! Godot has also its own "fog system" with many options and that's another nice thing you can add to your scene. You can even choose the distance from which each object can be seen, and it helps a lot to give a more retro vibe if you choose a shorter length than usual. This week is also about learning what UV mapping is and how you use is to apply your textures correctly. So far my early feelings about making all this is that texturing is the hardest to grasp and to handle. Maybe that's just me but i just don't seem to get it right. I need to work harder on this but for now i'll settle for very crude pixelated noisy textures. What else? Put a moon PNG in the sky. check. Add some walls, a longer terrain, more monoliths...check and check and check....a hovering sphere...the week ends as i record an ambient track -this is sooooo fun to do- and add footsteps sounds.

WEEK 3
The idea of the prologue is that it happens before the proper "start screen" of the game. But it's gonna be too abrupt if starts straight away like this. So i'm thinking about adding an opening: black screen with logo and texts appearing then disappearing....then it has to smoothly fades into the playable scene. Using Godot's animation syste,m it's quite easy to do and the result gives some cinematic vibes, no matter how basic it looks like. Now i've learned about the AnimationPlayer node i can use it on my sphere, make it move a bit, it works the same way than for the opening except that on the animation timeline the position of the object is used instead of its transparency. Then i'm spending most of the rest of the week trying work out a way to implement an idea i just had: mirrors that reflect other worlds. Since my own landscape is very lo-fi and low-poly i'm looking for free HDRI images or something, very detailed, and realistic, for constrast, as if they came from different dimensions. Or maybe from our world, i don't know...i spent a fews days on it but never managed to find how to do that properly. It didn't work out in the end. Maybe i'll try that again when i'm more accustomed to how Godot works.
WEEK 4
I have not totally abandoned the idea of a mirror reflecting another world, but now it's not a landscape anymore: instead it's a film that is projected onto a invisible surface (you'll see it in the demo). Without entering into too much details, it's been a bit of a pain to have the instanced frame in the right size and resolution. The film itself is a 4 second black and white short film from the early XXth century. I'm glad i found a way to make it work but i'm not too sure about the result. I tried to copy and paste it many times but i need to change the script if i want to do that, and right now i don't know if it's worth the trouble. So i leave it there and i'll come back to it later and decide what can be done with it. // TIME for MUSIC: it's not really what i need to do right now but i really really want to compose a main theme for the game. It's not gonna be featured in the demo prologue but i just couldn't resist the urge. Here it is, if you want to listen. It will probably end up at the end of the game, when the credit rolls! fun fact: i used a bitcrusher plugin to lower the resolution and bit depth to get a dirtier sound. I used to play these PC games in the 90s like Cryo's Dune, Another World , Speedball (at the time my father had an Atari ST).. Funny how the limits of yesterday are tomorrow's cool factor:
TO BE CONTINUED.....
Files
Get Odyssey
Odyssey
Atmospheric, surreal journey through reality and consciousness
Status | In development |
Author | Duke Stanza |
Genre | Interactive Fiction |
Tags | Atmospheric, Experimental, First-Person, Godot, Lo-fi, Low-poly, Short |
Leave a comment
Log in with itch.io to leave a comment.