Posts

Unreal C++ Course - Update #5 - From Text-based to 3D! (Don't talk to me about pointers)

Image
 Did I mention I'm trying to learn about pointers... Theory over practical The instructor is really glossing over the technical aspects, so of the 12 tasks completed since last post, most are related to the UE Editor / AActor class. However, I am anxious to ensure I don't just learn how to create the 5 projects they show us how to create, but can also apply what I have learned to my own project. I am not struggling for ideas, just the tool-set to materialise them. Pointers, so far, do look   very powerful and simple to use. They also look really simple to destroy the (virtual) world with. The game concept I have in mind will have many entities, each with a lot of properties, so performance will be a factor. Not constantly crashing or random values changing unexpectedly are also factors. The point is (I'm sorry) I need to know how to use them. My learning process Thanks to comments on this blog (I knew it would be useful somehow!), I have a better understanding of pointer...

Website Update #1 - Must delay learning about pointers by any means necessary!

Image
I worked on the website! Now is a good time to mention that web scripting was my first venture into ComSci, so this website will probably look quite different as I start new projects and learn new skills. I am not even hosting it at the moment (thanks Google)! I wanted to start small this time and focus on learning C++ for now, however I felt it necessary to make some quality-of-life improvements (read:badly executed hacks) to the WYSIWYG blog experience. Replaced the static profile section with a nicer, more functional one: Removed link to Blogger profile I am not going to use. Clickable profile image that takes you home. Snazzy subscribe button that takes you to an antiquated (but very nicely functional) email signup form: Up to once a day, if I posted anything, you will receive a digest of all posts made that day. Contact form that was cluttering the page and looked bad on mobile replaced with a link to a dedicated page containing the exact same form but better behaving. Despite Blo...

Unreal C++ Course - Update #4 - Project 1 Complete!

Image
 Last night I was able to complete the second of five projects in the course!  This project was of middling duration in terms of lecture time. This puts me at about 10 hours completed out of 31 hours, or 32% complete by lecture time. As the work to lecture ratio is likely going to increase, I predict that puts me at no more than 25% complete.

Unreal C++ Course - Update #3 - Referring to "the words"

Image
My first handwritten post on this blog! I managed to study for a couple of hours after work today: I wanted to add a little more context to what this meter means. Truthfully, the tasks are not proportional to the lecture length. The lecture material gets much longer for the later projects, and I can only assume that the exercises will swell in tandem. I think this is a good sign, as at this stage I am being given the building blocks to execute more complex ideas with more of my own interpretation later on. But it does mean that we have a long way to go yet. The meter would imply that I am 36% through the course. If I had to guess, I would say that is more like 20%.

Unreal C++ Course - Update #2

Image
 This post is included for posterity. It was originally posted in my now-defunct Discord server. The tasks get longer and they'll keep getting longer: [Later that day] After that paltry difference in tasks completed I felt the need to slap a more reasonable update in as there was a section that focussed heavily on something I had prior knowledge about so I've been watching the last few lectures at 2x speed (did find a tip to make my code way more efficient):

Unreal C++ Course - Update #1

Image
This post is included for posterity. It was originally posted in my now-defunct Discord server. I want to slap these in as frequently as possible to show some progress, even if it isn't much:

Stop Trying to Develop & Start Learning How - A case study

Image
This post is included for posterity. It was originally posted in my now-defunct Discord server. In the last month, I have not worked on the game concept I talked about here. It was not an idea I am passionate about. I have been playing Magic the Gathering Arena recently, and really enjoyed the interactions between cards. This reminded me of my all-time favourite game, Anarchy Online, which could almost be considered a real-time card trading game, as unlike most other MMOs, that lean on levels and class limitations, AO did things differently. Although it had level and class limitations, level limitations were usually used as a last resort, and class limitations more implemented to encourage teamwork in an MMO, after all. There were also breeds, that very rarely acted as a limitation, but did act as an overall bias on the skills- if you wanted to min max a particular build. The key here is the structured, logical freedom this provides.  The two pillars AO leaned on were buffs and equ...

Not Thinking With Portals - What are my game design principals?

This post is included for posterity. It was originally posted in my now-defunct Discord server. I have learned that as much as physics-driven / single mechanic-driven games sound fun and elegant to make, the game mechanic alone is not interesting for me to grind out a game. In the case of the Portal series, for example, the compelling narrative carried me through. In the spirit of making a game I want to play, I am taking the time to reflect on principles that make a game fun for me. Time is valuable 2 steps forward, 1 step back; Short term gains can be lost, long term progress / impact should be everlasting in some form. Short term loss can make the gains more meaningful by ensuring that they were not gained by chance. Doing something right consistently is rewarding instead of just relieving to get through the first time. For this reason, checkpoints should not be too often or insuring. Your strengths influence what you can do, but what you do should also influence your strengths. Cha...

Crawling Is Fun! - Fixing bodged logic

This post is included for posterity. It was originally posted in my now-defunct Discord server. Refactored everything to make sense. I am such a troglodyte, this is full of facepalms. Print UI every frame for the duration of the frame, instead of once per completed second since the game began (Tock). This means, for example, that if the player moves into danger, they don't need to wait for the next second to find out. This also allowed me to take out the initial instance I printed the time so that something was on screen when the game starts before the first Tock. I did discover that I only messed up the display/outcome of these checks, not the timing of the checks themselves, but correcting this was a good principle to learn for when more meaningful things happen, such as playing a death animation. Use Truncate instead of Round to display the Clock. This was causing my time to display half a second off. Don't add a second to the current Time of Day to try to account for the fa...

Learning to Crawl - Understanding update ticks

This post is included for posterity. It was originally posted in my now-defunct Discord server. I managed to get a rudimentary day/night cycle set up along with a "safe zone" and therefore a lose/survive condition. Only trouble is, it was incredibly unreliable due to fluctuations in frame time meaning my messages were missing the 1-per-second cutoff. It wasn't until days later I realized I should only be using the rounded output for the display - all my other checks should be done every frame. Next time I work on it I'll take all of the game state checks out of the rounded clock and if it all works as intended I can develop the idea further: Going from binary death to a gradient of danger. I would also like to set up the lighting to the Time of Day and I want to simulate the spherical nature of the planet by introducing a new scalar that tracks where on the "globe" they are- expediting or delaying the dawn. 

It Finally Clicked- Why prototyping is important

This post is included for posterity. It was originally posted in my now-defunct Discord server. I'm finally trying to go about things sensibly and not expect so much from myself that I drain all fun from everything I do. Been prototyping a game concept I have in Unreal Engine. Made some good progress learning from existing C++ classes from the demo content yesterday and managed to get the camera to behave how I wanted. The concept was to be running away from the dawn (microplanets). A perma-death survival game, of sorts. The sun, and the hubbub that is brought with it, is scary. The character prefers (can only live in) the serene solitude of night. Perhaps the goal could be to have some "near misses" that help character to come to eventually terms with daylight. How arty and original. My idea turned out to be **** on a fundamental level really. Locking the camera to one direction gave nothing for the mouse to do apart from click. The game loop itself was basically an auto...