Game Development | Pre-alpha 1.0 Test Build

in OCD4 years ago

prealpha build 1.png

It was a victoryless success but an achievement regardless as it built. Up until this point I had not built a releasable version that could be used outside of running Unreal Engine 4. Along with needing a bunch of other files from quite a few different places. In total over 60 gigs worth of stuff before all this madness went down.

While it’s not something I have listed on my roadmap. Creating a “release” version remains one of an endless number of unnamed tasks that I wanted to get around to learning more about and performing a test in doing so.

Unreal Engine 4 itself has several ways to compile and build the game you are working on for a release version to a bunch of different formats. This is something I’ve yet to do since I started working on creating my game. I knew the first time around it was going to be time-intensive with a lot of issues.

Before anyone asks, no, this is not being released to the public. I know several people have inquired about being able to play something of what I’m creating. I’m still quite far away from that phase. I don’t even have a fully worked out plan for getting large files to someone to even play the game at this moment anyways.

This is just something I wanted to start doing regularly perhaps every couple of months. So if big issues or mistakes are being made on my end I can start to address them and try to avoid causing anymore in the future. Instead of three years from now when I’m closer to some player testing.

Attempt 1: Project Launcher

attempt one settings.png

I felt I might as well see how bad it is. So last night I went through some documentation and other researching regarding performing this step. With there being quite a few different versions of Unreal Engine 4 I expected some differences in material to be found.

What was going be a nice feature of my first attempt was being able to select which maps to include in it. This meant all the example maps and other stuff that comes with different asset packs I could exclude. I could also pick a version number and this method allowed you to deploy patch versions as well.

After going through all the configurable options it was time to let it run and hope for the best. In the worst case, I expect it to fail with hopefully some insight into why. With the very best outcome having something that I could run that also had a nice warning log I could deep dive into later and fix stuff.

Attempt one at creating a release version.png

It failed and the logs did not help what so ever. A big fat “Error_UnknownCookFailure” at the bottom! Great, this might be where someone starts to panic. It would be reasonable since I’m a noob who is still learning a lot and this gave me nothing to go off to move forward.

Thankfully there are other ways to go about building a release version than using the project launcher. It seems to be the more advanced way to go about it. I may have a bunch of settings I got wrong with the version of Unreal Engine 4. Something for me to look into more in the future when I find the many hours to do more research.

Attempt 2

attempt 2 cooked packages.png

I’m going to call this the “give me everything” way to go about things. There are no fancy options. It builds everything and ships everything. I knew this was going to be a far more time-consuming method to go. It, however, has more capacity at handling issues better from my understanding.

The biggest downside here is the massive amount of bloat that would be included by going the easier route. A lot of the asset packs and other downloads I have for creating my game come with overview and preview maps. They are there for documentation purposes to help developers understand how things work. Along with giving them a map that has every single object spawned in it so you can view it.

This is not stuff that will make it into something I would release to a group of testers and beyond. I however still have a use case for keeping them around for the time being as I learn and even attempt more advanced techniques in the future. This adds an extra thirty or so maps of which most have never been opened, need shaders compiling, and might even have version errors that need to be resolved.

So I expected this thing to take quite a few hours. After watching in real time the UI they give you as its progress. I ended up going to bed. There are only so many lines of seeing package X is getting cooked. Along with shaders need to be built that anyone should ever read.

It had something like 15k shaders queued up that needed to be complied. That is quite the feat for my computer to get through. Even more so since many of them had some warnings that required Unreal Engine 4 to attempt to fix on its own. Which know I’m aware of and can deal with myself for the most part.

While I didn’t wake up early into the morning to the blue screen of death per se. It was a black screen. I could tell it was still trying to crunch through things. It hit something that I discovered later on and resolved. At the time I had no idea.

This attempt was, however, a failure. I hard booted my system after giving it a little more time. I went back into Unreal Engine 4 and got a very scary pop-up screen "uh oh” which I shared on Twitter. Thankfully everything was alright in the end and I did not need to do a full file restore from one of my backups.

Attempt 3: I found it

Instead of drifting off to bed at around 1k cooked packages this time around, I watched the logs like a hawk. I wanted to start seeing if I could work out where the issue started to happen and why I got a black screen the last time.

At around 2k cooked packages I noticed it. Compiling of some 4k/8k resolution materials I was playing around with at one point in time. Back when I first started on this journey I had a lot more bloat in my main game project. This included the Unreal Engines 4 kite demo that wrecks my computer hardcore.

It took my computer half a day to build one of the demos maps the Kite demo had in it a few months back when I tried. I get around 4 fps during the good times when running through that demo map. Yep, it was trying to compile the bigger map I could never get to run. I’m just glad my system did not start on fire. I

Another hard boot was in store after failing to cancel out of the building and getting Unreal Engine 4 to stop. It was not responding with much else either.

Attempt 4: A Victoryless Success

This time around I was going to approach things a little differently. I did not want the engine to be creating a waiting line of 15k or more shaders that needed to be complied while also doing everything else that is required to create a release version.

So I went around to all my maps and opened them all up one at a time. It took hours of allowing my system to compile shaders and a bunch of other information. I, however, felt it would reduce my risk of having issues.

I also went in and removed the 4k-8k resolution files and materials I had. A nice little 10 gigs in savings off my main folder for the project. With some cleanup left behind for when I want to get it all later on. I also removed it from my Unreal vault as I no longer have any uses for checking it out. They provide quite a few demos for developers to check out and see how things where done. This is quite cool of them to do!

After all, that was done it was time to run everything again. I knew once I got past the problem area I had last time when I surpassed 2.2k cooked packages. While there was still some compiling of shaders being done they were not stacking up like last time holding everything up.

This process still took quite a few hours. I wanted to sit through it watching it like a hawk the first time around if I could make it to the end. Taking some light notes of anything glaring I noticed as issues where being reported. A lot of the stuff is easy for me to fix and had to deal with outdated reflections on demo maps and lighting in them as well. Once I’ve fully built out my own 25 maps I’ll be doing a massive material, map, mesh, and other asset cleanups.

last few packages to cook.png

For me things starting to get exciting when I was getting down to only a few more packages needing to be cooked. Heck, it was even reducing the total number as well so these last few thousand went past in ablaze.

I also had no idea how many other things where going be required for it to be done. This was also where I was expecting if I’m going get an “unknown error” with it being a total fail it was going to happen. Oh was I wrong about what the issue would be in the end.

build successful.png

Things started checking off and my heart was racing somewhat. I was rather bored watching it all for hours on end. Everything checked out fine and it was done! Build successful!!!!

While all the shaders and other things being build out increase my game files I’m working from to over 50 gigs now. My pre-alpha 1.0 version was showing up as only 15 gigs. That for an indie developer is still quite a lot to deal with at least for me. It’s at least better than I was expecting.

Final Thoughts

message.png

The last thing to do was to click on the executable file and demo test the first map in my game. While I have portals set up to make it into my own 11 maps. I was not going to do a full run today.

Well, FUCK, that is right. I deleted the first starting map they give you in a new project. All these last few months I’ve just thought as my starting jail map to be my first starting map. It’s what triggers the character selection screen and some other stuff for the time being.

Am I going for attempt 5? Heck no. I’ve been working on my game for 12 to 18 hours per day while we all have been cooped up with a stay at home orders. It’s the weekend my brain is so fried it needs something else for a while.

For now, this will have to be a victoryless success. I built a release test version as I wanted. It loads I just don’t have a map it loads into-- doh.

Other Posts:

Information

Screenshots were taken and content was written by @Enjar. Screenshots are from Unreal Engine 4.

Sort:  

You don't give up! while it takes a toll on your life when trying to make it work, sure feels good when you get it :)

It sure did. Seeing “build successful” was great to see pop up.

A #posh a day. . .

A #posh a day. . .