Reflective Journal

General Production Issues:

To begin my reflective journal I would like to discuss the first problem I encountered upon finishing my pre-production and entering the production stage, this problem being equipment.

The main source of this problem would be the lack of equipment at both college and home, firstly the college computers are very helpful in anything online related, but lack the necessary software on a large amount of the computers, especially the macs, I need Unreal Engine for the continuation of my project and the only rooms I know of that have them are Jakes games room and some of the IT computers in Hockney building, the Macs have an outdated version of Unreal that very rarely loads and when it does it asks for an update that never finishes, I have brought up this complaint numerous times to no avail, I will have to begin working over the college end time to finish my project, which I am willing to do.

As for the lack of recourses at home, this extends further than Unreal Engine, whilst originally I had access to Unreal from home, my original computer suffered unrepairable damage, rendering it useless for the continuation of my project, to substitute for this I have been adding massively to my Digitialspace at home, as proof that I have indeed being continuing my project in other ways, rather than just coding and development, such as the experimentation of sound design and creation of assets and new ideas/concepts which can be used to aid development at College, when I have access to said computers.

Overall I have been able to negate the negative impact that lack of equipment has had on my project by prioritizing written work at home, and developmental work at college, I have also switched rooms during lesson more often now, allowing me to work on the games computers for as long as possible, whilst I brief my partner Salman on what needs to be done on his end.

Another problem I have run into was difficulties with my partner Salman producing the required work, It has been difficult getting him to produce the needed assets for our project, and this has been detrimental to the progress of our project, as I haven’t had the required in-game assets to properly decorate the game, making it look fairly barren with a lack of color or purpose, this would be less harmful to the project if we didn’t have the theme ‘Pocket Planet’ this theme has incentivized us to have a theme for the game, of which we chose to be time travel, allowing the player to explore various different cultures at different points in time, and fight different types of enemies in different types of areas, with different flaura and backgrounds, this cannot be achieved if I do not have the assets/sprites.

To rectify this issue I have consulted with my partner Salman, and have spoken with him at length about what needs to be done for the completion of the project, we have discussed everything that is required and have discussed alternatives if he cannot produce said work, such as less environments and enemies so we have more time to do written work and so on, ontop of this I have tried to keep him motivated and driven throughout the project to ensure he is producing the work he’s meant to be, I do this by regularly checking in on his progress and giving him any pointers or help when needed.

Another problem that soon came after finishing pre-production was lack of time, this is a major issue as the game we initially pitched and thought of was later worked upon and suitably downsized so it cold fit into the 2 month timeframe we have been given, this means numerous things have been removed from it and will not be added in during development, these things include active cutscenes and starting animations, less random enemies and environments, no NPC dialogue or speaking options and no venders or merchants, all of this was done in an effort to ensure that a competent and functional product is created at the end of the project, ensuring that we have an actual playable game, instead of a jumbled mess of half-baked ideas.

Whilst the issue of time-management was a larger issue at the start of our project, as things have smoothed out and I have completed large chunks of my written work, it has become easier to complete the development of our game, as I have more time to spare at college to do so, this has freed up much more time, even enabling me to assist my co-developer Salman in any graphical or sound design he may be doing, the cutting down of our project has also assisted us in other aspects, such as a lesser workload which helps us relieve the stress it put on the two of us, as pumping out a fully functional and working game in such a short timeframe has proven both stressful and difficult.

Another problem I found I ran into was the lack of time at college, I only have 3 days In a week and only 1 of those days Is spent with Jake+the software required to continue the game, meaning that I have to prioritize written work on all days other than Thursday, and I have to prioritize game production on said Thursday, as it is the only day I can do so, this is worrisome as games tend to take a long time to create, especially when the software is only available once a week.

Game (Unreal Engine) Related Bugs:

Along with the general project development issues and problems I have had to deal with, I have also had a variety of game development related problems, these being bugs within the game or things that needed adjusting or patching to make the game run more smoothly, or in a specific way, in no particular order, here are the bugs and how I fixed them;

One of the first major bugs I ran into was the movement of the main character not being seamless, meaning that the swapping of sprites when moving wasn’t working properly, as in the player character would swap sprites when stood still but barely ever do it when moving, this was a visual problem and didn’t effect gameplay much, but nevertheless had to be fixed for the longevity of the game, to fix this me and Jake had to adjust the time it takes for the player character to be considered moving, as in if the player taps the A or D key once the model will not change, but anything beyond that the model changes into a moving animation, it is a small fix but an effective one.

Another in-game issue that was encountered during development was the rooms the player was in were too small for proper exploration, making the general gameplay feel very cramped and claustrophobic, not allowing the player much movement and constraining them, I saw this would be a very large issue once the AI were introduced, so to remedy this I simply adjusted the size of the rooms to an acceptable margin, allowing the character much more freedom to move around, potentially helping with late-game AI projectile dodging.

One other issue that needed fixing was the fact that occasionally the starter room (the room the original character was made in) would appear when going through the door, this room was blank and had nothing on it, no walls or door or environment, this meant that if the character happened to roll on this room when entering the door, they would be stuck here eternally and could do nothing, to fix this we had to find the original room and remove it from the RNG based room deciding script (essentially deleting it from the possible rooms that could be entered from the door) this fixed it and was effective.

One other issue that appeared when the randomized environmental objects were introduced was the fact that occasionally these objects would bunch up in one spot, spawning ontop of each other and creating a mess of randomized rocks and trees, I saw this as an annoyance but I had little time remaining and didn’t want to waste potentially hours on a visual bug that didn’t actually effect gameplay much, so I resigned to fix the issue when and if I had spare time, this was the first time I put a bug on the backburner and focused on more important issues (just to stress this effected gameplay very little.)

As mentioned previously in production documentation, a bug that appeared later in development once the player characters projectiles had been implemented was the fact that they often didn’t collide with the walls, essentially going straight through them and ignoring any collision parameters that had been set, much like the environmental objects spawning ontop of each other, this was a visual glitch that had very little effect in gameplay, and had proven very difficult to patch, even going so far as to spend nothing short of an hour attempting to fix this one bug, which ultimately proved frivolous, after such attempts I decided it was best left until I had very little to do in the actual game before I fixed it.

An AI related bug that appeared after the randomized locations and numbers of the AI was implemented would be the fact that occasionally these AI would clump up around the player and prevent them from moving, I had one of two ways to fix this bug, number 1 would be to make the AI non-collideable with the player, meaning that the player could walk straight through them, or I could make the AI non-collideable with each other, meaning that they could walk through one another and wouldn’t be clumped up as often, both of these solutions came with their own variety of bugs which made gameplay difficult, I decided that the current way they worked was good enough as it incentivized the player to continuously move around, which was initially something that I wanted the game to be about anyways.

A very minor bug that appeared after this was the door not being positioned with the newly expanded room, to fix this I simply moved the door to match the walls position, and adjusted the environmental objects spawning parameters accordingly.

A material based bug appeared when I applied the background Salman had made to the floors, the engine stretched the created background beyond belief and made it look very morphed and overblown, to fix this I had to use BSP brush, adjusting the UV’s and making the floors repeat themselves several times, which was helpful as it now no longer resembled a stretched out image, instead a series of the created image which I had asked Salman to make seamless (an image that can connect with itself lots of times without seeming different,) I then had to make this newly made material into a static mesh, and apply it onto the floor, after serious trial and error I found the correct size and proportions to make the floor look best, then applied it and did the same process with the walls, until the level looked presentable.

External Software Problems:

One of the first problems I had with external software was when I was helping Salman create some sprites on the website Pixilart, I Ran into the problem that we were often saving the asset as .pixil files instead of saving them as .PNG files, this meant that I had to load each asset back into the software everytime to convert them, this wasted alot of time and was something we quickly adjusted once we noticed it, this was mainly a problem due to Unreal being unable to use .pixil files in the game.

An example of the separation from PNG-.pixil files, we also kept the pixil files incase we needed to adjust them and reconvert them back into PNG, this was a safety-net incase we somehow lost the PNG’s or decided a large change needed to be made to the sprites.

Another problem I ran into which involved external software was when I was referencing all of the sites I had used to help my projects development, once I was referencing the sites Harvard reference generate suddenly stopped producing the references, this was a problem due to no matter how many times I tried to adjust the way I typed them it wouldn’t generate, to fix this I added each (blank) reference to “My References” which made them all appear, I am unsure as to why the site was doing this but managed to counteract it regardless.