You must be 18+ to visit this website
The content on this website is AGE RESTRICTED
Please confirm you are at least 18 years old of age. Otherwise leave the website.
Halftilt profile
Halftilt
18+
Halftilt
Developing "Light-Space Love" - I'm a Lewd Game Developer that loves SciFi and RPGs. Currently creating "Light-Space Love", an erotic space adventure.
Subscribe
Message

Subscription Tiers

FREE
Citizen of Deep 69

If you're a lurker interested in Light-Space Love!

-Get free email notifications on new posts and release dates!

587 subscribers Citizen
Unlock
$5
USD monthly
Ensign

-All Previous Tier Rewards

-Access to Latest Version after two weeks.

-Access to sketches, drafts, artwork and screenshot posts

100 subscribers Ensign
Unlock
$10
USD monthly
Lieutenant Commander

-All Previous Tier Rewards

-Access to Latest Version after one week.

46 subscribers Lieutenant Commander
Unlock
$20
USD monthly
Captain

-All Previous Tier Rewards

-First Access to Latest Version

-Access to Beta Versions

51 subscribers Captain
Unlock
$50
USD monthly
Fleet Commander

-All Previous Tier Rewards

-Your support is incredibly appreciated!

2 subscribers Fleet Commander
Unlock

Welcome

  • Access to the latest versions of the game.
  • Access to Exclusive Content and Development Progress.
  • Discord Server: https://discord.gg/fHS5dxX9xe

Displaying posts with tag Important.Reset Filter
Halftilt
Public post

Game Engine Troubles

Hey there, Halftilt here with a bit of an emergency announcement -- after this second release, I've learned something about the game engine I'm using, Godot, that's going to add on another 2-3 months of development time onto this project that will be focused solely on re-factoring the code into a new Game Engine.

I'm not making this choice lightly, so I'll give quite a detailed analysis of why this is necessary. I'll throw in a TL;DR at the end, but I figure it's worth going in-depth about this issue for people that are interested.

Debug & Release in Godot

The Debugger in Godot seems to have some quirks that's very concerning to me. In no particular order, here are some of the issues I've faced:

First, you can run the game from within the IDE (Godot) itself which exists to speed up development and to test that functions within your game work as expected.

What isn't made clear is that the runner from within Godot has crash handling built into it, while the release version does not have this crash handling.

According to what I could find on their Github repo is that the reason for not having these "crash handlers" on Release builds is it will make the game run slower.

Which, to me seems strange, the game crashing seems like more of an important issue than the game running fast or slow, but it is an open-source project, so I can't complain about their development choices since it is a free engine -- and there are solutions, but they are very time-consuming and I already fore-see the bloat those "solutions" will introduce into my project isn't worth the headache.

In my opinion, Godot was a great engine for making a very small/simple game. It was even great for prototyping this game.

But I plan on having quite a few moving parts in this game and this issue worries me that there are going to be more "quirks" like this in the future in the game engine.

In fact, in hindsight, during my first release, there were some small quirks I noticed between the Release and Debug version, that I thought I could safely ignore since they were small issues, but this release shows that Godot's minor quirks can create some rather large problems.

Unfortunately their documentation isn't clear about what else is going on under the hood either, so I'm just going to abandon the engine instead and go with a more reliable engine like Unity 2D or Game Maker Studio where I can expect the same behavior from my test and release builds.

It's a shame too, because I love supporting open source projects, but Godot just isn't where it needs to be just yet.

On the other hand, you can play the Debug version of Light-Space Love, and you won't crash as the "crash handler" is packaged with the Debug log.

I could potentially release this game in perpetuity with the debug log, but at some point I'd like to release this game as a real standalone game.

Moving to a New Game Engine

This means that I'll be re-factoring my project into a new engine, which will take a good chunk of time. This has both good news and not-so-good news:

The good news is that this will give our artists time to create new artwork and sounds while I work on re-factoring the game.

This will also force me to re-factor the code once more, and since most of the core systems are finalized, this will lead to cleaner code too.

The not-so-good news is that this will add about 2-3 months of more development time on this project -- which I'll be back from my vacation within the next two weeks, so we're looking at December or January being the next month for a Prototype release/update.

A Learning Experience

I'll fully admit, this has also been a learning experience for me. I've only built web applications professionally -- and game engines have their own entire suite of quirks that have put up interesting problems for me to solve.

I'm glad I'm catching these issues before I decided to fully "release" my game, and this process of iterative releases has been a major help in identifying these quirks and improving this project as it grows.

I'll see if there's a way to either find testers -- which given that I'm developing an adult game, this may not be easy -- or I'll get a new machine to test this game on, in which I have none of the development tools installed to replicate a "fresh install", which may be a more likely decision until I find some testers or a tester resource.

This also shows me why frequent releases are typically done by projects with larger budgets and teams, testing is a huge effort and I may just have to dedicate an entire week or two just to testing the release build without making any changes to my code -- at least until I'm able to get help on the testing front.

TL;DR

  • Godot's debugging tool (which lets you run your game within the IDE) will prevent the game from crashing, even though there may be an issue that will crash your game on release -- instead it will throw a warning without telling you whether this error will cause a crash or if it can be ignored. This, in my opinion, makes the debugging tools almost useless.
  • I'll be moving over to a new game engine, either Unity 2D or Game Maker Studio since their debugging tools seem to function more like their release versions.
  • I'll either look into finding a way to hire testers, or what's more likely is I will get a new machine to run through the release build on in future updates.
  • I have all of the code written, I'll just need to migrate it into a new engine, this will take approximately 2-3 months to translate this code into a new environment -- but this will give our artists more time to work on content while I re-factor.
  • Releases are likely going to be delayed by 2-3 weeks per update until I'm able to find a way to hire testers.

Once again, thanks for all of the support and I'm sorry if this release has been frustrating for you, because believe me, it's been just as frustrating for me too. I want nothing more than to release a game that you'll enjoy playing.

Comments (1) loading...
Like(3)
Sign Up or Log In to comment on this post

The subscription gives you:
  • Access to Creator's profile content.
  • Ability to support your Creator by pledging – one-time or recurring.
  • Means to reaching out to the Creator directly via Instant Messenger.

Goals

$2,187 of $2,500
per month
If we're able to hit this goal, we'll be able to dedicate more resources to adding in animations to our static sprites and CGs -- which includes animating our Game Over Scenes and additional Game Modes! We will also be able to dedicate more time and resources to this project to further speed up development.

Other Creators

Features

The subscription gives you:
  • Access to Creator's profile content.
  • Ability to support your Creator by pledging – one-time or recurring.
  • Means to reaching out to the Creator directly via Instant Messenger.
Subscribe
WE USE COOKIES

SubscribeStar and its trusted third parties collect browsing information as specified in the Privacy Policy and use cookies or similar technologies for analysis and technical purposes and, with your consent, for functionality, experience, and measurement as specified in the Cookies Policy.

Your Privacy Choices

We understand and respect your privacy concerns. However, some cookies are strictly necessary for proper website's functionality and cannon be denied.

Optional cookies are configurable. Disabling some of those may make related features unavailable.

We do NOT sell any information obtained through cookies to third-party marketing services.