You are browsing as a guest. Sign up (or log in) to start making projects!

NC

@NC

Joined June 1st, 2026

  • 42Devlogs
  • 6Projects
  • 4Ships
  • 33Votes
Ship Pending review

I built Abysmal Echo. This is by far my most comprehensive project I have EVER made using the Godot Engine. I put a lot of effort into it and I hope you enjoy playing it

This game is about recovering some nuclear warheads at the bottom of the sea while navigating fields of sea mines, cavernous tunnels and mutated sharks.

Good Luck!

P.S. Please read the controls on how to play the game. PLEEASE

  • 15 devlogs
  • 81h
Try project → See source code →
Open comments for this post

23m 12s logged

Devlog 15: Exported Game & Ready for Submission!

This is the last devlog until submissions, I was just getting the export templates and etc.

I also finished with the README

No actual progress…

0
0
17
Open comments for this post

7h 32m 22s logged

Devlog 14: Received 2nd Round of Feedback and Implemented it.

What have I accomplished:

I went to my coding club and asked fellow Godot/Unity enthusiasts to test my game!

Here’s basically what they said…

  • They couldn’t find the tunnel entrances
  • The Radio Messages don’t stand out enough
  • Make the Flashlight brighter (again…)
  • Add some sort of Sonar Scan circle thingy on the periscope - make it more useful rather than a wall of text
  • Make the main menu brighter, can’t see the submarine
  • Do not exactly know the initial objective of the game/where to go
  • Make Arrows or hints to show player what to do in Finale sequence
  • When the player escapes through the tunnel, add some decorations make it less boring.

Additionally, I got a 2nd round of feedback from my Dad…

He said the UI is much better, less cluttered and the flashlight is better as well as the other features, but he has some more feedback.

  • He wants a minimap, so he can see where to go because he is lost and does not understand the compass heading.
  • He wants a clearer font for the submarine UI as the current one is too blurry for him
  • He wants me to put radioactive trifoils on the missiles

So onto how I implemented their feedback

  • I made some vines on blender, I did it fairly quicky i didn’t bother putting it on Lapse.

So, I implemented the vines with a glowing green shader, so it is easily visible to the player. I placed them in paths leading to the entrance and tunnels, so player knows where to go.

As for the radio messages I added a yellow flashing border around them to attract player attention.

As for the flashlight, I just cranked the energy up to like 50+, did the job pretty well.

I added a sonar scan because the testers believe that the beacon signal is too generic and not really helpful, thus making the periscope itself not useful. In order to improve this, I added a sonar scan, the circular map that actual submarines use. After looking at some tutorials, checking documentation and reddit posts, I realized that I just have to somehow convert my prior knowledge of polar coordinates and convert them into game code. After a while, I got the red dots (sea mines) to appear on the map when the player presses the scan button (x).

Additionally, using groups, I got the warheads to come up as yellow dots on the sonar map.

The main menu was an easy fix, just had to increase the energy of the light.

As for the initial objective, I made an animation where the camera shows the player where the warheads are located and the journey they have to take, it like shows the whole path so the player has some knowledge of knowing if they are going on the right path. Also just added another hint telling the player of the direction (80-90° East.)

As for the Finale sequence, I just added a spinning arrow that points to the warhead signalling that the player has to ram it with their hull. Additionally, there are radio messages telling the player what to do.

When the player escapes, I added a tall, enclosed tunnel with hanging vines for the player to escape through. Makes the game design much more intentional and doesn’t confuse players into thinking they just broke through the map.

For the minimap, I used a SubViewportContainer with a camera being referenced to the actual SubViewport Node. The camera is in Orthogonal mode, and just facing down on the player 30metres away. The input is being displayed on the SubViewport.

For the submarine font, I changed some of the colors so the font stands out more and becomes more CRISP and changed the font so the player can easily understand what’s on the dashboard.

Another quick and easy fix was the radioactive logos. Just got a MeshInstance3D and slapped the texture on there and stuck it on the side of the warhead.

This is probably the last devlog until submission.

0
0
13
Open comments for this post

2h 0m 26s logged

Devlog 13 : Recieved Tester Feedback and implemented it

What have I accomplished:

I have asked a tester (Dad) to test my game. He started playing the game and gave me a sheet of feedback. Upon deciphering the handwriting I made a list of main list of what needs to be improved.

Here is the list

  • Give more screen-space for player to see ocean
  • Do something about the radio messages being sent as they are very annoying when the player is exploring and they just appear and block the player’s screen
  • Also the radio messages go away too quickly
  • The flashlight isn’t crisp. It like bleeds into the ocean and doesn’t look nice
  • The ocean environment is too dark, make it brigher

What/How did I implement the feedback?

As a result, I merged the top panel into the bottom panel while replacing the top section with the radio messages. This time the player has much more screen-space to play in while the radio messages just briefly appear on the screen, not blocking the player’s view.

As for the flashlight, I used a MeshInstance3D equipped with an emission Material so the flashlight looks much “crisper”.

I also increased the show time for the radio messages from 3 seconds to 5 seconds so player will realise that a message has popped and has sufficient time to read it.

As for the ocean environment, I just boosted the emission of the volumetric fog while make the background color slightly lighter rather than leaving it pitch black (Made it like a really dark navy blue).

Bonus bug patch!

While testing the game, I also found a bug with the Restart button in the pause screen.

The bug was that when the player pressed restart, the scene tree was still paused, so the intro animation wouldn’t start until you unpaused it.

So in order to fix this I just added another single line of code.

func _on_restart_button_pressed():
	get_tree().paused = false#This was the line of code needed
	get_tree().reload_current_scene()

That is it so far, definitely getting more people to test it (Family, friends etc…) and implementing more feedback!

0
0
61
Open comments for this post

1h 25m 51s logged

Devlog 12 : Finished Death screen as well as added help features

What have I accomplished:

  • Added a death screen
  • Added a ‘help’ feature and hints in the submarine

Made a death screen

The death screen was fairly easy, I just repurposed the pause screen to become the death screen when the player dies.

Added a help feature

Put a help option on the home screen. If you hover your mouse over the help button, the hints will appear on the side, similar to FNAF.

Additionally, I added a scrolling bar that goes from right to left on the submarine UI. I didn’t want to add another button to the pause menu because it would look too cluttered. This new addition looks pretty neat.

What’s Next?

  • Making the README document
  • Getting people to test my game
  • Implement some of their feedback
0
0
9
Open comments for this post

10h 20m 51s logged

Devlog 11: Working on UI as well as Prologue/Epilogue animations

What have I accomplished:

  • Made a main menu
  • Made a mission de/briefing scene
  • Made a pause menu
  • Finished with the Prologue/Epilogue animations
  • Added a bonus cutscene during the retrieval of the warheads

Made a main menu

I went for an extreme horror vibe, dark environment, low light, eerie background noises and single sonar ping. I also animated the camera so that it ‘floats’ around as well as a nearly invisible figure moving in the background to give that eerie feeling that you are not safe and something is watching you. This was done in response to my research on what makes a horror game so scary from the menu only.

Mission de/briefing scene

Using the visible characters setting in the Label node, I made this niche typewriter/coding briefing scene. With a single ‘ACCEPT’ button. Upon clicking it, player gets sent to the play scene.

Pause screen

I made a fairly simple pause screen. Nothing fancy, but vital at the same time. Press ‘Escape’, game paused. I am considering reusing the pause menu, change the text with code to use it as a death screen

The intro/outro animations

The animations are just the player being transported on the tugboat. The same one I modelled in the previous devlog. Intro takes the player to the site. Outro has 5/6 warheads on it and taking the player away from the site. This is to add cohesion so the player doesn’t get confused between scene transitions. However, I realised during the animations, the sky in the environment goes MAD. It starts rapidly flashing between white and blue, similar to lightning, but I am not a fan of it, must remove.

BONUS scene!

I decided to spice things up by adding a little bit of drama at the end. The player will collect the 6th warhead, uh-oh it’s jammed AND at the SAME time, the ceiling’s going to collapse! The player ram their hull with the warhead to trigger the ignition. The warhead will launch itself at the wall creating a huge hole for the player to escape through, they rise up to the surface and the epilogue cutscene plays.

What’s Next?

  • Making a death screen (Should be easy)
  • Making a tutorial on the submarine functionality.
  • Doing the README document
0
0
29
Open comments for this post

10h 18m 59s logged

Devlog 10: Finished map layout and small tweaks to submarine started working on story and UI

What have I accomplished:

  • Finished making the environment
  • Coded the sharks to move around the map
  • Added clues for the player
  • Started the story, the lore, the introduction

Finished the environment:

Making the environment definitely took the longest but it wasn’t the hardest task, just a lot of copy and paste of walls. However finding any gaps or holes in which the player can creep down into was annoying. After a few hours of looking around, banging into walls, I did find and patch up a few but am not sure if that is all of them. Hopefully, to discourage/guide the player away from the corners and edges, I put huge sharks guarding the walls as well as rows of sea mines to tell the player to look somewhere else, not here.

Also, I added a couple of underwater ruins, like a wrecked ship and a submarine.

The actual warhead retrieval process is working now, when the submarine touches it, a parachute will come up and lift the warhead to the surface, where hopefully the boat will collect.

Coding the sharks!

Coding the sharks was fairly easy (Literally 2 lines of code) as I used a Path3D and a PathFollow3D node to just map out the path in the inspector.

func _process(delta):
	progress += 20*delta

That is all the code, the progress, is how far the shark is along the track and the integer determines how fast the shark moves.

I could’ve used an AnimationTree node but with my prior experience to that, just thinking of the whole coding part, setting the animations up, the chase player code made me cringe a lot, also there’s not enough time.

Giving the player clues

So in addition to the current features of the MMS scanner, it can also track the ‘SOS beacon’ of the abandoned target submarine by taking its position and comparing it to the player’s and using ranges of signal strength with distance to see how ‘strong’ the signal is.
Additionally, it does the exact same for angle, so the scanner can tell player which direction the submarine was found.

Started the introduction

The plan in mind is like some cool visual graphics telling you, your objective, a brief map layout telling you of hazards, some lore, like ‘Secret weapon’s mission gone wrong, must retrieve warheads before enemies do so’ the submarine is on a tugboat sailing on the sea, the crane will pick it up and dump it in the water

Full lapse of tugboat here : https://lapse.hackclub.com/timelapse/lsYzC1wA-xLH

What’s next?

  • Adding UI to the game, pause menu, main menu, death screen
  • Finishing lore of game, animations, mission objective, win scene.
0
0
38
Open comments for this post

9h 51m logged

Devlog 9: Major Change of Plans and Coded Assets

What have I accomplished:

  • Started Making the environment
  • Made a scanner for the periscope to detect objects
  • Coded the sea mine
  • Added explosion Particles

The part that took the longest was the environment, taking in the lengths, finding hidden collision gaps, setting each zone up and placing obstacles.

The sea mine code was fairly simple, I also added some explosion particles when it exploded. That was really fun.

Additionally, I made a periscope scanner that can scan the ocean for any relics/mines/sharks in sight. The most aesthetic addition to the submarine and it gives the periscope a proper purpose rather than just a fun extra. I was heavily inspired by Call of Duty with their MMS (Milimeter scanner). This scanner can see through walls and highlight enemies!

Major change in plans :

Before we would have relics being the prized possession to retrieve.

However, after realising how vast the map was and the extreme likelihood of players not being able to find all relics was too high to ignore.

So instead of the player collecting relics, I have decided that they will go on an extremely difficult mission to retrieve some nuclear warheads/missiles on a U.S. nuclear submarine. The abandoned submarine will lie at the very bottom of 300m. The player must dodge sea mines, explore the other shipwrecks/submarines all before some rivals get their hands on it. Something like that for the briefing screen

The player will deploy buoys/parachutes on the missiles, and they will float to the surface. A boat will come and collect them. Mission Complete!

What’s Next?

I will be using a similar layout but with a different set of decorations, more submarines/shipwrecks, signs of naval warfare, mines and the warhead finally.

0
0
14
Open comments for this post

10h 27m 15s logged

Devlog 8: Imported Environmental Assets and Hazards

What I have accomplished:

Using Blender 5.0 I hand modelled all the 3D assets.

RUINS

For some ruins where the relic might be, I have added some crumbled pillars, ruined archways, cracked stone slabs and an altar for the relic to rest on. I did some basic extruding to get the original shape down, then just pulled and twitched with the vertexes to give it the run down effect

Sea mines!

Additionally, the sea mine was fairly easy to make, a sphere, cylinders and a chain. Making the chain to the base was by far was the most satisfying part of the build as you just copy, paste, rotate and within seconds you get a neat, professional looking chain.

Relics

The relics were pretty easy, a glowing orb with unique patterns drawn across it and a shield. The plan is to just change the colour of the hues so the player has a common sense of what an orb looks like. Colours can be blue, violet, pink, red, yellow, gold, orange, and vice versa for the shield.

Underwater Predator

Now, the main event, the shark. I spent 6 hours and 32 minutes, modelling, texturing, rigging and animating this thing. This is by far the most complex project I have ever done (maybe even the most successful in terms of rigging!)

Below is the link of all my lapses for the shark only

https://lapse.hackclub.com/user/@NCGAMEMAKING

I’ve set the basic environment up, just a big square with rocks as barriers.

What’s next?

  • Using all of these assets to make the environment. I have to layout the relics, ruins, sea mines, sharks.

  • I have to code out the sea mine so it explodes with explosion graphics (not that hard)

  • Code the shark so it like swims in its patrol area and so if the player’s flashlight is shining on the shark it will start chasing the player, hurt the player and move on with its basic patrol.

0
0
6
Open comments for this post

8h 23m 7s logged

Devlog 7: Finished Adding Submarine Polish and started working on building an environment

Submarine Controls: Fixed and Polished

During further testing of the submarine on new features, I felt like steering the submarine felt awkward as it was locked on a flat horizontal plane. Pitching up and down required extra key binds.
So I decided to change/improve the physics and input methods of the submarine so driving it feels much more smoother.

  • From Third person Camera to Periscope:

I decided to change my third person camera into a periscope to give my game a more ‘claustrophobic’ feel hoping to get the element to show how small you are in such a big ocean.

Well, the periscope has a open and shut animation and well as audio polish. The player can see through a small circle and see their surroundings. (Also for visual polish when the submarine is at low health the glass will even appear cracked!)

  • Full Axis mouse control:

Moving the mouse left and right handles the Yaw (left and right) but now I made it so that it can handle the pitch (up and down) so the player can point the sub’s nose up when ascending.

  • Keyboard Axis controls:

The player does have the direct keys for vertical changes like diving and climbing still giving players all the options when using the submarine.

  • Full Audio Response:

I have added dynamics pitch scaling so the background engine hum will go change when in different states. Quiet for idle. Loud for moving. I added hiss and bubble effects just like how real submarine use their ballasts to rise and fall, hull breach alarms, collision thuds, warning sounds as well deep pressure creaking of the hull.

  • Death Animation and Warning Collision:

When the player reaches 0(Zero) health, the sub will like spin out of control and ‘crash land’ in the water. The screens will show errors and soon fade away. The scene then reloads.

Also using a Shapecast3D, I managed to make a collisions system. The bottom left text will say ‘COLLISION : FINE’ if there are no objects in the enlarged ShapeCast but if there are objects in that shape the text will go red and say ‘COLLISION : WARNING’

Responsive Steering Controls:

I also added a script to the steering wheel so it would turn as the player is moving the mouse to give it more responsiveness. Much better than a static wheel in the front.

Marine Particles:

Additionally, to give that immersive feel I made simple marine particles. These are like your pieces of plankton or dust in the ocean. They just float around the screen and even rush by appropriate to the sub’s velocity.

Upgrading the Ocean: Boujie Water Shader

After the player features and movement was locked in. It was time for environmental visuals. I realised that my basic volumetric fog wasn’t quite cutting it for an immersive ocean.

After some research, I stumbled upon the fantastic Boujie Water Shader created by Cory Petkovsek (GodotNite / Boujie)

I love this addon. It really brings the ocean to life using Gerstner waves this is really good for optimization in the future!

What’s Next?

With Submarine movement, UI and audio out of the way, the focus is now entirely towards Level Design and Gameplay loops.

Here is my todo list:

  1. Mapping out ocean zones:

I will have 3 zones and each zone has 4 artifacts. Each zone will get darker, and more scarier.

  1. Relic Retrieval:

Now that I am changing my placeholder of ‘RINGS : 0/12’ to Relics I am thinking of making 12 ancient, artifacts scattered across the map waiting for the player to collect them.

  1. Potential Underwater Hazards:

By placing environmental obstacles, tight squeeze caverns, minefields or even patrolling enemies this will make the gameplay much more exciting!

See you in the next devlog where we explore level design!

0
0
8
Open comments for this post

11h 4m 42s logged

Devlog 3: Polished up Reload system and added new sceneries

Another update with the game, things are really starting to come together with the game feel and world design

Here’s what I made so far:

Polished UI and Reload animations:

  • Reorganised weapon inventory. Made it into a clean, compact panel so it doesn’t block gameplay view
  • Animated a reload bar underneath the weapons that fill up according to the reload time set in the dictionary. (See previous devlog on how) using a simple tween function
  • Weapon swapping. Updated the knife so the character whips out the knife and slashes the zombies before swapping back to their equipped gun. Similar to Call of Duty.

World Design Landmarks

  • Expanded the map with new sceneries, chunks, buildings to make the map/game more exciting. I aim to do something like where I make a make several chunks, 16 by 16 using tilemaps and Sprite2Ds to make different zones.

I am yet to figure out how to stitch the chunks together.

Enemy and Wave system

  • I just made fairly basic enemy AI that follows the player and added an Avoidance area so the zombies don’t pile up or follow the player in a line.
  • Made a wave system that increases in difficulty as you survive longer and longer.

This is the difficulty logic

enemies_left_to_spawn = 5 + (current_wave + 2)
spawn_cooldown = max(0.4, 1.5-(current_wave * 0.1))

We have a base amount of 5 plus the extra enemies + 2 and the extended time it take to spawn zombies making each wave slightly longer than the previous one.

Possible Issues

#Imperfect spawning of zombies
One thing I am noticing, is that some of the zombies are spawning inside of the bushes and are just stuck there, the player can’t shoot the zombie because of collision layers and the game is ‘hardstuck’ I am yet to work on how to fix it

Bullets not firing?

Something also that I’ve have noticed consistently is that the bullets sometimes not fire that well, it appears that they might be hitting the player and not spawning? I have been scratching my head on this bug for a while, any suggestions will be GREAT!

What’s next?

  • Making Player health system
  • Loot System
  • Making many more chunks and stitching them together
  • Upgrades???

Have a look at the screenshots and comment down below what you think the following structures look like! (This feedback will be very helpful! I’ll tell the answers in the next devlog!)

0
0
4
Open comments for this post

6h 18m 45s logged

Devlog 6 Finished Making the Interactive UI

Took a little while but in the end, totally worth it!

What have I accomplished:

Real-Time Telemetry Arrays:

Dynamic Navigation Tools:

Integrated a fully functional Compass Heading indicator, alongside precise Speed (m/s) and Depth trackers linked directly to the sub’s 3D transform and linear physics state.

Not to mention there is also a compass, a progress tracker and a warning system

Vital Resource Gauges:

The console now cleanly maps out real-time Stamina and Exhaustion meters to handle high-speed maneuvering and sprint cooldowns smoothly.

Smart Health & “Frame-Before” Velocity Systems:

Implemented a custom predictive physics calculation that catches the sub’s exact velocity right before a collision occurs. This completely bypasses physics-engine quirks (like velocity instantly dropping to zero on impact frames), ensuring blunt collisions register perfectly every time.

Dynamic Hull Integrity Status:

The hull damage bar dynamically recalculates color states and screen readouts:

Above 66%: Status reads STABLE with green theme aesthetics.25% to 66%: Automatically shifts to a warning state (DAMAGED) with an orange alert profile.

Emergency Visual Alert System (Dynamic Warning Lights):

When structural health drops below the 25% Critical Zone, a time-accumulating sine wave engine takes over the console mesh arrays. This triggers an aggressive, high-speed visual flashing sequence across the interior status plates to warn the player of if its gonna die.

Terminal Polish & Hacking Decorations:

To capture that retro, high-tech submarine atmosphere, the dashboard now features a multi-layered background Parallax Hacking Screen that slides continuously behind the telemetry values.

Combined with sudden flickering screen effects, the terminal reacts heavily to impact forces, making the player feel every heavy rattle when diving too fast into rocky corridors.


What’s next?

  • I want to make my 3rd person camera a periscope with the cute little spyglass on top of the submarine and allow to have a 360 degree of motion

  • Adding a death screen and animation, not so sure of seeing myself still being able to run

  • Also doing something about this Collision Warning alert in the bottom left corner.

  • Definitely add some visual juice (screen shake, glass crack) but that’s low priority

  • Also some audio!

See you guys later!

0
0
27
Open comments for this post

5h 33m 5s logged

DEVLOG 2: Added New weapons and reload system

Just made a new shotgun and a machine gun and a melee weapon to go with the original pistol.

However, this was not the smoothest journey…


Fixing the 360-Degree Aim Bug

The biggest headache was a bug where the shooting worked perfectly in the bottom-left quadrant of the screen but went completely wild in the other three. It turned out to be an issue with local versus global coordinates when mixing the player node’s position and the muzzle position. I fixed it by bypassing the muzzle’s relative math entirely and calculating the trajectory straight from the player’s core global position. Now aiming and shooting are perfectly consistent all 360 degrees around the player.


Reloading States and Auto-Reload

I wired up the static reload sprites so they actually show up visually. The issue before was that the sprite swap was happening after the timer finished, so it never showed up. Now it swaps to the reload frame instantly when you press R, and then swaps back to the normal shooting frame when the timer finishes. I also made it so that the second your mag drops to zero, it calls the reload function automatically without making you click an extra time.

here is how I made the different gun types

enum GunType { PISTOL, SHOTGUN, MACHINE_GUN, KNIFE}


var gun_stats = {
	GunType.PISTOL: {"current_ammo": 7, "ammo_max": 7, "reload_time": 1.0, "spread": 0, "projectiles": 1, "is_automatic": false, "is_melee": false},
	GunType.SHOTGUN: {"current_ammo": 2, "ammo_max": 2, "reload_time": 2.0, "spread": 0.22, "projectiles": 5, "is_automatic": false, "is_melee": false},
	GunType.KNIFE: {"current_ammo": 1, "ammo_max": 1, "reload_time": 0.4, "spread": 0, "projectiles": 0, "is_automatic": false, "is_melee": true},
	GunType.MACHINE_GUN: {"current_ammo": 30, "ammo_max": 30, "reload_time": 2.2, "spread": 0.08, "projectiles": 1, "is_automatic": true, "is_melee": false}
}

Mobile-Friendly Drag and Release Controls

I completely changed how aiming and firing work to make the game ready for a mobile layout. Instead of just clicking to shoot, you now hold down the mouse button (or your finger on a screen) to bring up the trajectory line and aim. For semi-auto weapons like the pistol and shotgun, you rotate around as much as you want to frame the shot, and the gun fires the exact moment you release the button. For the machine gun, it continuously fires while you hold it down but limits the rate of fire with a quick cooldown loop so it doesn’t empty all 30 rounds in one frame. The player also keeps turning smoothly even when they aren’t actively clicking.


What’s Next?

  • Making the zombies
  • The ‘waves’ mechanic
  • Player and Zombie damage system
  • Loot System
  • Polish up the reload UI
  • Add collision rules for house

I also made a test level to get an idea of how the level will be layered out. Check out the video! (if it loads…)

0
0
2
Open comments for this post

1h 39m 57s logged

Did some last minute tweaks to the UI, made it look all festive and Christmassy.

Once I was happy with it, I tried updating it, but the Nest deployment thingy wouldn’t work/update. It sucked the life out of me!

Then I went on Vercel and put it on there (that’s the only other 1 Stardance accepts, because Github pages doesn’t support backend coding like python)

After some more head banging, it works! It is live, working and can send emails!

This is prolly my last devlog to shipping

PS. also updated README to include relevant, upto date information after recent changes

I worked really hard on it than any other 1, cuz the mission said i needed a good README, YIKES!

0
0
4
Open comments for this post

1h 3m 20s logged

Just working on the basic player movement as well as shooting mechanic. Looks basic (I know) BUT.

If there’s anything you should know, it’s that you should always, make sure that the mechanics actually work rather than making the game look pretty.

This is going to be a top-down mobile game and hopefully with joysticks. But for now I am using WASD and mouse.

I am trying to go for a Brawl Stars kind of UI, but that will be seen in the future.

Next I will be working on a reloading and magazine system!

See you then!

0
0
4
Open comments for this post

2h 47m 31s logged

Devlog 5 : Actual progress coming in about UI!

By carefully placing each and every word, section, icon and evaluating every single number… the top screen of the submarine is officially done!

What’s on the screen right now:

  • Hull Integrity: A functioning system variable.
  • Custom Healthbar: A sick-looking visual health layout.
  • Rings / Checkpoint tracking: Keeps tabs on your current objectives.
  • Status Alarms: Two red dots on the wings (which will flash for critical signs or dangers once I code the triggers).

I got so excited that I even found a cool hacking matrix background and threw a Parallax2D on it so it looks like the sub is constantly processing code in the background

On top of that, I added a custom shader flicker effect so it feels like a real, raw electronic monitor. As you can see in the screenshot, I just slapped a ColorRect2D added some code (with the help of AI as shader code is way beyond my coding capabilities.

The big game-changer: I just switched the viewport texture configuration from the default Albedo slot over to the Emission channel so the cockpit doesn’t look so dull. Because the display now literally emits its own light into the dark, I was able to delete the temporary OmniLight3D from the scene entirely. The cockpit lighting looks way more natural now.

Next Up:
Now that the formula is down, I’m moving on to complete the other two viewports: the primary speedometer display right on the steering wheel, and the auxiliary bottom viewport sitting behind it.

0
0
4
Ship

I made a cloud-deployed Secret Santa generator using a Python Flask backend and an HTML/CSS frontend. It shuffles participants and emails custom HTML holiday assignment cards directly to their inboxes.

Something that was a challenge was building a defensive validation loop to stop players from accidentally drawing their own names, and fixing case-sensitivity folder issues (Templates vs templates) when deploying onto the Linux cloud server (Render).

Something that I am proud of is making custom HTML cards directly to user inboxes instead of boring plain text, and keeping the mail server totally secure by hiding app passwords using Environment Variables (.env).

It is 100% live on the web! Just open the Render link, add a few email addresses you own, set a budget/date, and hit send. Give it a few seconds to process and then check your inboxes for your assignments (it actually works!)

Try project → See source code →
Open comments for this post

1h 11m 9s logged

Ok guys just finished on the custom email, it looks SO MUCH better than before. I genuinely did not know you could put html code inside of an email body and using MIMETEXT, you can put it in the email and it will actually work!! I am very proud of this, I think now, I will finally make the README.

0
0
2
Loading more…

Followers

Loading…