Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

A 3D Game About Minesweeping With A Milk Truck! 💣💥 -SunSweeper

A topic by O_TIRE created Jun 13, 2024 Views: 781 Replies: 27
Viewing posts 1 to 14
(2 edits) (+1)

S U N   S W E E P E R

Checkout its page!: https://o-tire.itch.io/sunsweeper

So a few days ago, I started working on my new project.

I have decided that I want to share more about my ideas and design choices on these devlogs instead of just showing what has been added like my devlogs for Reanimated.


It's a reimagination of the classic game 'Minesweeper' that was shipped with Windows 3.1 - Windows 7!

About the Gameplay:

SunSweeper is a 3D horror game which heavily relies on audio clues. You are stuck in a mine-deactivator truck and you must find your way throughout a mine field. It's impossible to see the outside because all the windows of the truck are blocked with metal rods in order to "stop" any mine debris from entering the cabin.

The only way to find the rotation of your vehicle is via signals which you have to send manually using a button. The response signal doesn't show your rotation but instead, you have to count the duration of it in order to find your rotation in degrees.

Your X and Y position is displayed on two digital monitors.

In Minesweeper if you move on a safe tile, the game hints to the nearby mines by displaying numbers between 1-9. But in SunSweeper when you move on a safe tile, some sounds will play around you. These sounds work just like those numbers but you will use the pitch & pan of these sounds in order to figure out their numbers.

There will also be a shop which sells temporary upgrades.

If all this sounds confusing don't worry, there will be a tutorial in the game which explains things better than me!
(Please keep in mind that gameplay mechanics might change)
About the Story:

"There has been an ongoing war between Auroras and Solars for nearly a 100 years now. You are a soldier from the 'Aurora' army who is forced to participate in this war. The job they gave you is minesweeping. At midnight, they force you to get into a truck named 'MineWiper29' and find a path throughout a minefield before the army sends their tanks. You can clearly tell that this truck is not designed to survive mines because it is a modified version of a famous brand of milk truck!

But you have no other choice. If you don't do whatever they say, you will probably end up six meters under the dirt.

Your only social interactions in the day, are the kind soldiers who wake you up at 2am and kindly throw you into the truck, and your virtual assistant 'Pixelixel' which is as smart as a bread crumb.

Until one day, you meet MineHead. He has a small shop in middle of nowhere. He sells scraps. Most of his trash are useless to you but some of them can be helpful.

Even though he seems friendly, he's a retired mine planter who worked for the 'Solar' army. Even though he's retired, he had to join the army again due to the lack of experienced mine planters. And guess what! He's the one responsible for planting mines on YOUR way..."

The only two characters you meet in the game are Pixelixel and MineHead. I will not explain the rest of the story but trust me, I t ' s  g r e a t.

(Please keep in mind that story might be tweaked)


Current progress:

I am currently designing the characters and the truck. The designs of MineHead and MineWiper29 are done and the only design remaining (for now) is pixelixle.



These are their designs. They are just sketches with solid colors to make them easier for me to model in 3D, I swear I'm not this bad at drawing!


-MineWiper29 (Sketch only)




-MineWiper29 (Color guide)




-MineHead (Colored modeling guide)




-The symbol of Aurora army




-The symbol of Solar army

(+1)

Yooo lets goooo. For some reason I cant find the reply button, but whatever.

Are you using Unity again?

Also will this be another endless game or will there be an ending???

(+1)

Thanks :P

The story mode (that has an ending) and the endless mode can be chosen from the main menu.

First, I was thinking about making this in Unreal but because of performance issues I scrapped that idea. Godot was also a good idea but I'm a bit worried that it might struggle with high poly models and volumetric lighting. So I chose Unity again.

The only thing about Unity that has recently let me down weren't the new fees, it was the lack of good changes in Unity 6. I really want to give them another chance and stay with Unity until version 7 comes out because overall it is a great engine. If version 7 adds nothing interesting again then I will have to look for another option.

(+1)

Hello everyone!

I have done a lot!

Welcome back to the second devlog for SunSwiper!


In summary, I have finished designing Pixelixel and modeling the MineWiper29! (the main vehicle which player uses)


My design choices!:

I'm not trying to achieve complete realism with SunSwiper, instead I want it to be a mix of realistic & stylized.
I want the atmosphere of the game is very dark, so I colored everything with gray scale (white, gray, black and everything between them) to give it a sad and hopeless feeling. But there are still some things that are not colored with the gray scale, for example the steer & acceleration lever handles and the TV which Pixelixel is in.
I did this to make those elements stand out a bit more than the non-interactable objects.


Gallery:


-Pixelixel!


The reason its design took so long is because I knew that I will have to animate it in the future. So the design had to be simple enough to animate but not too simple to be boring.
I tried animating it in Krita but that turned out to be very difficult so I did the animation in Blender.
*Its face will appear sometimes on the TV (located in the MineWiper29).



-MineWiper29 final model (Front view)



-MineWiper29 final model (Rear view)



-MineWiper29 final model (Interior view)




-Colt


-MineWiper29 exterior design (With materials)



-MineWiper29 interior design (With materials)




I Wish You a Great Day!

(1 edit) (+1)

EEEEE PIXELIXEL IS ALREADY MY FAVE!!! for some reason the car gives me Iron Lung vibes lol :3

(+2)

THAT CAT ANIMATION IS SO FARKING CUTE    :0

Thank you!

My Future

Hello everyone, believe it or not, it's me again!


A Ramble About My Future

I have made a decent amount of progress on SunSweeper. But not too much, because lately I have been thinking about my future, specifically the tools I will be using to make my dream games.
I have recently made some changes to my workflow. For example I have switched from VS to VS Code (don't get me wrong, I still love VS).
But most importantly I've been thinking about what game engine I will be using to make my dreams come true.
Currently I'm using Unity. I know that engine has gotten a lot of bad reputation over the past few months, but I still love it because it was the reason I got into game development in the first place. Besides that, some of my first projects (that I haven't published) were made in Unity. I ADORE those first projects (& I'm planning to finish them one day). So Unity still has my respect(not Unity Technologies tho)
With all that being said, I'm not sure if Unity can handle my dream games. These games will have high GPU usage and will fill up a lot of memory.
Let me explain one of these games for example:


One Of My Dream Games

I'm not going to spoil any of it, but I will still try my best to explain it.
So basically, it's a Micro-Voxel, Sandbox, Survival, Adventure & Mystery game which is inspired by Terraria (And a unfinished project which I will not name here).
I'm sure you have heard about Voxels before. Games like Minecraft & Teardown use a custom Voxel engine. A Voxel engine's job is to render millions of cubes while using the least amount of memory as possible.
Here is a comparison:


As you can see, Micro Voxels are just tinier Voxels. This means in order to render a scene with these tiny friends, we need a lot more of them and that is not possible without optimization tricks.

These engines are usually written with C++ and OpenGL, but I know none of those :P

I'm willing to do anything to achieve my dreams but it's best for me to take my time and choose the best decision instead of rushing this important step.

For now, I see three choices:
1. Learn C++ and OpenGL
2. Learn C++ and Unreal Engine
3. Master C# and optimize the shit out of Unity

First option is viable, but I have to forget about college in order to pursue that due to the difficulty of C++ & OpenGL combined.
Second option is much easier, but unfortunately every time I try to compiler a C++ script in Unreal, my computer goes on a stroke.
The third option is by far the easiest, but it's not guaranteed to work at all.

These three options are really hard to choose from, that's why lately I've been a bit busy.


Anyways...

This was originally supposed to be another devlog but I chose to work one more day on SunSwiper, and then make the devlog because I didn't have anything appealing to show.
Also I'm thinking about using my YouTube channel more frequently and uploading devlogs there! Though, it's still just an idea...


So expect a Devlog for tomorrow

B    Y    E

My Twitter: https://x.com/O_TireStudio

My YouTube: https://www.youtube.com/channel/UCN0iYgX0-d_cIgUeHAR9LOg
(+1)

With Unreal, I've seen a lot of high-class games made with it, but the PC requirements seem to be the hill that makes or breaks it for a lot of people. I've heard of people with larger projects needing a high-class high-end desktop with 32-64GB RAM.

I'd look at how things are running for you on Unity first. If there's computer slowdown, I wouldn't switch to Unreal. If it runs fast, well, maybe think about it - though I've heard the Unreal engine is more demanding in that regard. 🤔 

(+2)

I currently have 8GB of ram which is laughably bad. Though I will be upgrading it to 16 or 24 GB very soon. 8GB just doesn't do the job when you have YouTube, Visual Studio & Unreal open at the same time. But I think with 16GB of ram and VS Code, I should be able to at least compile scripts. So it is a viable option.

Though I feel like I should do a lot more research about Voxels before deciding. I mainly have to decide if I want to make the Voxel engine in C# or C++ or with the mix of both.

(1 edit) (+1)

35% Of The Gameplay is Done

Hello everyone, It's me  a g a i n .

As you (probably) saw, I have finished making many gameplay elements.



Here is a list of Finished Gameplay Elements:

-Controlling the truck!

-Spawning mine field (WIP)

-Mines and death animation

-Many sounds + dynamic engine sounds

-Custom HDRI!



My Design Choices:

So, I don't think that I have ever said this. But the main idea of the game is a bit EVIL!
As you probably know, this game heavily relies on audio and in short, beating the game without audio is impossible.


From the day one, my idea was that I will lower the game's volume to something like 5%, to force players to increase their computer's volume by a huge amount.
But... there is one audio which is not capped at 5%, and that is the explosion sound!!
So When You're Moving Your Truck In A Tile And Closely Listening For Audio Clues, Your Speakers Might Kindly Say:

B O O M!

The other design choice that I have made is to make the game a bit more video gamey instead of making everything ultra realistic.

There will be enough realism to make the game immersive and enough game elements to make it fun.






Gallery:

-The custom environment texture (HDRI) I made in Blender! It really captures the theme I wanted for this game. I Love it >3<



-MineWiper29 (In Engine Footage Before Adding The HDRI)



- MineWiper29 Interior (In Engine)



Good Bye.

(1 edit) (+1)

Aye!

It's me again. (I know, mind blowing)


Gameplay is about 70% finished.

and

Prototype is 100% finished! (I think)


The store page is now up!: https://o-tire.itch.io/sunsweeper



I don't have much time so I will make this Devlog a bit shorter.

Things I added/improved:

  1. Added the clone system (will talk more about it in the gallery section)
  2. Fixed start tile being mine
  3. A lot more audio + Ambient audio
  4. Pixelixel's monitor is finished
  5. Made the first OST of the game!
  6. Improved the death screen
  7. Now player can exit the truck
  8. Mines now make 3D audio hints to help players locate them easier
  9. Added a 3D display because the game was too difficult
  10. Made a simple bumper system (I will explain this in the upcoming devlogs)
  11. Made the logo and banner!
  12. The store page is up!

My Recent Design Choices:

I remember that I have mentioned in my older devlogs that the player would lose 1 level worth of progress if they die. But I have decided that it isn't a good idea.
You see, the game is already pretty difficult and with that cherry on top, it would become near impossible.
So I will probably scrap that idea!

The reason I made a music so early on, is because I was having a hard time coming up with a theme and story.
Because my games are usually story and visual driven, I make the art stuff while making the prototype.
So for example, if I want to make a level, I will first make the models and then code the logic of the level.
I know a lot of devs are against making the art before the prototype. But I like it this way!
This is because I can have artistic freedom while making the game. I don't like to lock all my creativity while making games.



Gallery


-Clone System
The truck is made of two parts, the part which moves around (& is not visible) and the static cabin which the player walks in.
Think of it as if you are sitting in a stationary cabin and controlling a RC car.
In this GIF, the upper camera shows the static cabin while the lower camera shows the kinetic vehicle.
The Clone System tracks the movement of player's head relative to the cabin and transports it into the vehicle.
The AudioListener is glued to the transported clone of the head, not the head itself.
This system is a bit complicated so I will not confuse you any further!


-Working displays (this footage is from a buggy version of the displays)



-A new monitor I modeled
As I said, because the game was too hard, I decided to add a 3D display which shows the location and rotation of the player, visually.
And this monitor displays it.
From now on, I will refer to this as the 'GuideCam'.



-Updated interior
*You can see the GuideCam in action.




Sorry if this Devlog was a bit shorter than usual,

b Y e !

My Twitter: https://x.com/O_TireStudio

My YouTube: https://www.youtube.com/channel/UCN0iYgX0-d_cIgUeHAR9LOg

My Itch: https://o-tire.itch.io/

D  E  V  e l o p m e n t  L  O  G

OF

SunSweeper ☀️

Hello everyone. It. Is. Me. Again.

A g a i n.

A  g  a  i  n.

A   g   a   i   n.



Today, I want to take a new approach for this devlog.
By that, I mean explaining new features on a table to save more space for my precious ✨design choicegibberish ramble.



New Features:

*yay*

FeatureIs implemented?epic empty column
WORKING LADDER
Yes

Reference Center script (game architecture)Yea
Tied the gameplay togetherthis is not a yes/no question
The Gameplay100% finished!
Performance boostyippee
Separate ambient manager + FogYeah
Dynamic footstep sound systemye
Quality of life improvementskinda
Wrote the story to a decent amountYES!



My ✨Design Choices✨:

Scraped the idea of the infinite mode because I want to put all of my focus on the story mode.

It's 11 pm and I'm tired. I wanted to make this section longer but I will save what I have to say for another devlog!
So I will be explaining the story (which I'm really excited about!) on another day.



Gallery?:

-The said fog



What next?

For the next devlog I will be making some more models.

I can't wait to work on MineHead's model! He's the face of the game and until now, his only appearance is in my sketches.

Anyways, as I said, I require an emergency pillow immediately. So...

Z z z

tZZwittZZer: https://x.com/O_TireStudio

YouZzzz...: https://www.youtube.com/channel/UCN0iYgX0-d_cIgUeHAR9LOg

(+1)

Helo :)

It's me

A
g
a
i
n

Welcome back to another Devlog!
Tonight is going to be special. (because I'm not dying from a lack of sleep)

Without wasting anymore time, lettuce begin.


List of Completed Stuff:

FeatureExplanation
Shop scenarioI finished making the scenario for the store which, player can buy upgrades from. The upgrades are not yet implemented.
Death screenI may add some more effects to it in the future, but for now It is complete.
Dialogue systemI haven't imported the dialogues but the system is done.
Story + DialoguesFINALLY! After hours of work, all dialogues are written and done. This was holding me back from starting level design.
New Models!I finished most of the models for the game! This models include: [MineHead, Shop, MinePlanter, Radio, Nitroglycerin Capsule]





-MineHead & His Store


-Nitroglycerin Capsules




✨Design Choices✨

MineHead has branching dialogues, this means player can choose between 1-3 dialogue options when talking to him.
If you are wondering, I used Twine to write these branches, but for linear conversation (for example the conversations between Player & Pixelixel), I used a simple text editor.


About My Voxel Engine:

I'm thinking about writing it using both C++ & C#. I found out that using .dll files, I can call C++ functions from C# applications which is very nice.

I recently upgraded to 16GB of ram, this means that now I can run Unreal Engine with a decent frame rate.
Unfortunately from what I know, it's not easy to write C++ code in UE.
Not because the programming language itself is difficult, but because by just creating C++ scripts, the compiler throws a lot of errors which I'm not sure how to fix.
The Blueprints work fine. Even though I'm not a fan of visual scripting but I will still try them sometime in the future.



Anyways, I wish you a great day and

BYe

(2 edits) (+1)

When do you think you'll create your voxel engine. I'm sorry, I know you have only 2 games out, but do you have a set goal for when you make it? For example, when you finish this game, will you work on your voxel engine?

Also good luck on making an engine, I'm not that smart to make one for myself at the moment. I'm rooting for you! :3

Edit: WHOOPS, I ACCIDETALLY PUT A POST ON YOUR DEVLOG. It's gone now haha X3

(+1)

I will probably start developing the engine after I have team of at least five people and a decent YouTube career... and when I'm less stupid :P

For now, I have to create small projects and make at least one of them, successful. After I finish SunSweeper, I will probably start working on my YouTube channel & 3D skills \( >-<)/

(+1)

Welcome!

Hello everyone. It's me,

a                               g                               a                               i                               n

Today, I decided not to put all images in the gallery section and instead spread them across the entire Devlog!


Let's first start with the things that were implemented:

1. Pause screen with working options


2. Designed the shop items

3. Modeled the shop items


3. Wrote the logic for shop items

4. Implemented economy and purchase system



I really enjoyed designing the shop items and making the economy system!
I'm not 100% sure, but I may add some more items if I feel like it!

✨Design Choices✨

In the past Devlogs, I said that the items will give player temporary buffs. I have decided to increase their price but make them permanent! (some items like bumpers can still run out of health and be destroyed)



What can we expect for the next Devlogs?

For the next Devlogs, I will probably be fine-tuning mechanics, implementing the story, making 1-2 more models and writing the save system.
We are slowly getting close to the release of SunSweeper!


But for now,

Bye!

(+1)

When you said 

"In the past Devlogs, I said that the items will give player temporary buffs. I have decided to increase their price but make them permanent! (some items like bumpers can still run out of health and be destroyed)"

Have you thought about using both approaches????

For example, maybe have two pieces of the same item, one is temporary and cheap while the other is costly and better? Unless this will break the game.

(+1)

That's a pretty cool idea. However the story mode currently has a little flaw, and that flaw is:
Not having enough levels.

And because player is paid after completing each level, having too many items can get a little problematic...

However, if I decided to make the infinite mode, I will 1000% do that!

I'm not sure what to do about the story. Currently it's short (30-50 min), but if I put some white space in between (levels that don't have dialogue or story progression), I feel like the game would get uninteresting.
What do you think?

(1 edit) (+1)

Erm, I mean you should always focus on quality over quantity. I mean I don't think having a little more levels is bad, nor do I think having a short game is bad. 

I guess if I had to pick, I would say just do what Buckshot Roulette did and focus on a nice short experience and having an endless mode. (Although I doubt people would really bother with a few levels)

EDIT: Also i'm not sure what kind of story you're making, but maybe this video could be helpful:

it's made my Masahiro Sakurai (yes the guy who made Kirby and smash bros.)

However much like he said, "You have the option to disregard these theories and do what feels right." I just thought you might want more help with your story.
(+1)

Very Quick Update...

Hello everyone, It's me again.

Well... I didn't make much progress on the game because I was on vacation and also because recently, I have started learning a new programming language.


The things I did (warning: it's not a lot...)

  1. Completed some placeholder stuff
  2. Made the intro tutorial for the story mode!
  3. Made an original track for the said tutorial!
  4. Uhh ehh, nothing else


Voxel Engine Update:

I'm thinking about Rust + Bevy combo for my voxel engine.
If you don't know, Rust is a low level programming language and Bevy is an API (or a game engine, I'm not sure)
I have seen ALOT of people make voxel engines with this combination, so I decided to give it a shot.


Keep your chins up!

-Learning Rust will help me develop more performance-friendly games in the future. This mean, it makes me one step closer to developing my dream games!
-The most difficult and confusing parts of SunSweeper are done anyway, so from now on, I will be putting all my focus towards finishing the game!

(1 edit) (+1)

Yooo i heard of Bevy before on the "Games from Scratch" channel. I love hearing about rust engines as I think they might have a future for game development. I've been thinking of using Fyrox if I learn Rust.

(+1)

I agree with you. Though, Rust is missing some stuff like classes and nullable values. These two, both have alternatives in Rust, but the alternatives are difficult to work with.
I have heard that they decided not to add nullable values because that makes the code unsafe, but that is just not true.
I really hope the Rust team adds them, one day.

(+1)

l-l e | | 0

everyone, it's me again!

Welcome back to another Devlog!

This is a small one! The reason I'm posting this, is because I haven't posted in a while...

But don't worry, because we are back on the track!


1. New item: The Replacement Bulb

When you have a bumper and you crash into a mine, you survive it. Pretty simple stuff, right? But there are some side effects to surviving a crash. For example, the light inside the cabin will start flickering.
I added The Replacement Bulb to make it fixable.
***I have both modeled it and programmed its logic, so it's finished. But I will probably rewrite the logic since the current code doesn't work well with the inventory system.


2. Finally fixed the stupid error!:

There was an error that was bothering me for a very long time and I have been ignoring it. But I finally managed to fix it!
The error would happen when pausing the game. It was a NaN (Not a Number) error.
NaN error are usually a headache to deal with because they don't occur too often and they are hard to track.
The error was caused because when the game is paused, Time.deltaTime is set to 0.
I was using deltaTime to calculate velocity but that was a huge mistake!
Because when the game is paused, the script will try to forcefully divide the velocity by 0!


Velocity = Distance / Time.deltaTime


aaand, we all know how that goes...


3. Added a flasher to the ejection door:

Uhhh, I don't want to explain this too much because I can't.
It's simple!:
-When the door is open, flash green.
-When the door is locked, flash red.




4. An update to Pixelixel!:

Pixel got some new features!:
-The replay button
-The continue button

These buttons are used for interacting with the tutorial videos!



4. Added some environment noises to the shop scenario:

"hmm, some strange sounds are coming from the distance. It sounds like... some sort of machine. Its cogs are spinning loudly, as if they are right in front of me. but I can't see it! am I blind? or have I been blinded?"

(1 edit) (+1)

I like how the "Hello" gets more F***ed up as you make more of the updates. At first it was "Hello everyone" then "Helo :)", and now its just...

"l-le||0"

(+1)

Bad news...

Since the first day I started this project, I unfortunately didn't really like it.
The reason I started it, was to test my game development skills and... that was the first mistake!
Instead of developing a game I was passionate about, I just made it for the sake of making another game.
Over the past few months, I have grown to like it but, it still isn't my passion project.
When I think of a game idea, I want it to be revolutionary! I want to push boundaries!
But SunSweeper, was none of them.
For example, in Reanimated (my past game), each run would be unique due to something called 'Controlled Randomness'.

I don't know if I have said this before but my passion is creating environments.
SunSweeper didn't have many environments (only 4 small scenes), so I couldn't really put my creativity in it.
Even though Reanimated only had 1 scene, but it was more complex than those 4 scenes combined.

In short,
I'm abandoning SunSweeper.
I might finish it one day,
but not now.

I'm excited for my next project because it will need a lot of environment art!
I have been learning a lot of modeling recently to prepare myself for that game!
I still don't have a name for it but I will think of one.
This will be the last project that I will ever abandon, because I have learnt my lesson:
"Don't Make Something You Don't Like!"

Even though I didn't finish SunSweeper but I still love it!
I love the story, I love the characters... and one day, I will finish it!


But for now,

B         y         e       :3

(+1)

Awww damn, a sad end, but hey I'm at least excited for what you're gonna do in the future.

Hopefully this game will get some love another day :(