Leaving Earth in style: Bye.

Posted by
December 13th, 2016 8:31 am

Bye. is a simulation game in which you hire workers, assign them tasks, research tech and try to finish your modular colony ship, Beware, accidents are common!

colonyshipgif

You can play it here

Wooh! I almost didn’t make it… but it was a ton of fun and very exciting! This was a really interesting second LD experience for me and one I started a bit late, since I was still playing MHO in the night (3AM for me) when LD37 started, delaying myself to about 9 hours before I got going.

Simple
My idea was simple at first. A genius scientist in his basement is sick of Earth and doesn’t give a damn about anybody. Climate change is breaking down the planet and he has 30 days to build a big spaceship to flee with the most competent people he can find. I wanted it to be very Rick & Morty-ish, but I didn’t actually have time to do anything in that direction.

How to even go about this genre?
Since I’ve never done a simulation game before and not many different genres in general I didn’t know how to start. That means I started with the 3D model. It had to be a colony ship, so I found inspiration from Star Citizen’s Endeavor and colony ships from Macross Frontier and adding my own tweaks. While doing that the idea sprung me to make the ship modular, so that the player can built it piece for piece.

The final colony ship in UE4

The final colony ship in UE4

After putting the model into UE4 and setting up the camera I didn’t actually touch it for most of the project. I started with the menus and background systems, mostly the NPCs. All my player does is store the Gold and Score as well as move the camera. Everything else is stored in different actors: Workers, Jobs, WorldEvents, some small stuff like spawning and moving Workers around in the scene (which got implemented an hour before I finished) and all the menus.

Over time... so many menus...

Over time… so many menus…

By saturday night/sunday morning I had already redesigned the main menus once and still hadn’t actual gameplay. You could get to the next day which would refresh the workers, hire them and let them be assigned to a task. The dropdown menu for assigning tasks had a bug that cost me 1 hour to find. Naturally the solution was in theory simple. For some reason I stored all workers in the “Workers” actor and hired workers in the player. Then I realized it would be much easier to manage if I just put them in “Workers” where all the stuff happens and set a boolean in their Struct if they’re currently hired. Changing that lead to an old reference to the player that I didn’t even think had something to do with it.

And then… there was feature creep…

Saturday. At 17:30 all I had was the 3D model of the ship, some basic basic setups for some mechanics and a couple concepts in my mind. At 23:00 I had the NPC logic finished and was working on finishing up the menus that I would change a couple hours later. This is where I lost one hour due to the aforementioned bug.

Sunday, 01:00 and no gameplay. https://www.youtube.com/watch?v=VaOvHW6Gjmc At 14:30 I thought up the tech tree. thinking it would be a great idea to have the Tech Tree graphically shown.  Ship from the side, parts of the ship covered in black or not, depending on what your research status is, 30 minutes later I started actually building the menu inside of UE4. At 8:00 in the morning I slept for 30 minutes, then continued on till midday and slept two hours from 12:00 to 14:00, feeling extremely done. Luckily I was able to focus for the rest of the journey after that, finishing all gameplay critical tasks from here on.

A worker is born: From World Event to Global Bonus to Create Worker to the menu

A worker is born: Influecnes from World Event to Global Bonus to Create Worker to the menu

Then feature creep tho, and from 16:00 on I still had a big list to finish:

  • Planned:
  • Contracts (Get money by assigning workers and starting a project)
  • Being able to fire a worker
  • World Events (changes stats/cost of workers to hire) + Announcements
    • TV that shows World Events in a news show (didn’t make it)
  • Music
  • Make basement somewhat pretty (In the end surrounding cube, containers, gate)
  • Variation for worker avatars
  • Intro (reduced from story to splashscreen)
  • Hacking (didn’t make it)
    • Caused me more work by disabling or greying it out everywhere
  • Sounds (didn’t make it)
  • Outro (didn’t make it, would have been a cinematic of the ship flying away if you finished it)
  • Feature creep:
  • Workers can die or cause a project to fail
    • For failed projects I needed explosions
    • Announcements (Finished project parts, deaths, failed projects)
    • Come up with a way to determine failing (when a worker with too low stats works with workers too high the low worker gets a red stat and can fail) or dying (random chance to die, reduced by Speed stat)
  • A WiP state for ship parts (Ended up being blue material and sparks. Those and explosions use the same sockets in UE4 to save time)
  • Show expected daily output in the “Manage Workers” table
  • Tutorial (“Help” button with how to play and tips)
  • Calculate and show score at the end. I made a Score variable at the beginning, but never thought of using it.
  • Workers as 3D models in the scene that walk around and spawn when you hire workers/despawn when you fie workers or somebody dies
Workers in the scene came to life just about an hour before submission end

Workers in the scene came to life just about an hour before submission end

After all that, minus the “didn’t make it” parts, it was 02:45 on Monday morning. I just had problems with the music, VLC trying to crash my explorer multiple times after converting. I hacked the description for the submission in my keyboard and shot 4 screenshots very fast while uploading my files and was done at 02:57. Then I remembered… submission hour is 03:00 to 04:00. So I didn’t need to rush the way I did. But whatever. It was done.

The only thing I wish I could have done is taking a calm look over it, balancing stats/cost/money/RNG and fixing some obvious bugs that I would have noticed quickly (and have after upload). But I didn’t even had the time to play through the game once myself. A very exciting Ludum Dare… and I’m looking forward to the next one! Till then I’ll check out some games myself! I’ve already played some amazing ones.

Thanks for reading!

Tags: , , ,


Leave a Reply

You must be logged in to post a comment.

[cache: storing page]