Why this project?
While analysing my previous works for a list of commonly used skills and game engines, I realised there was quite a large gap in experience. This being that I've never developed a multiplayer game, and by extension, a competitive one. I also realised that I have never utilised the Unreal Engine or its Blueprint system to make a proper game. I have used it to construct an environmental concept, but that only involved me placing assets developed in other software.
This gap in experience also became apparent when looking over job listings, where a fair majority required experience in Unreal Engine and even its Blueprint system. Up until now I wasn't aware as to what Unreal's Blueprint system was, but after looking into it, it seems like the perfect skill to learn! I only have a basic understanding of coding, so developing complex systems within Unity is usually out of my scope. However, a node based system should allow me to accomplish the more complex mechanics I wish to implement!
Game Details
A lot of the details surrounding the game are yet to be decided, and will be further fleshed out in the first week of development. Below is essentially the core of the game. Things like the artstyle and setting are yet to be decided (although I am leaning towards mages using spells).
Multiplayer:
Though I say the game is multiplayer, I do not mean online multiplayer. I do not believe I can gurantee a working online multiplayer game by the end of the semester, as I have never touched networking, and my basic understanding of coding would extend the time needed to fully understand it. This being said, the game will instead be local multiplayer, utilising keyboard and controllers to play. This will allow for an easier implementation of multiplayer as I only need to bind character movements to different inputs. Besides, the purpose of this project is not to demonstrate my abilities to create backend systems such as networking, but to showcase my skills as a designer, and show that I am capable of designing fun gameplay mechanics and gameloops for a multiplayer environment.
Gameplay:
The objective of the game is to be the first to reach the end of the level, the amount of levels needed to be won can be decided before the start of the game, meaning the players will hop from level to level until a singular player has won the set number of levels. Players can achieve victory through various ingame means of disruption. This is done via the collection of various pickups throughout the level that give the player special abilities that can hinder other players or boost themselves in various ways. These abilities have not yet been decided.
Levels:
Levels will be linear and straight forward. The plan is for them to be randomly generated, but how they will be randomly generated is yet to be decided. There may be prebuilt sections that are connected together at random, or the obstacles and hazards of the level may be randomly placed. The former option can allow for a more personal touch, and is more likely to produce fair sections, but the latter will be able to produce much more variety at the cost of potential fairness. How levels will be created moving on is yet to be decided.
Within the levels there will be various obstacles that can obstruct the players' paths or abilities, and various hazards that will directly disrupt the player.
End Product
By the end of the semester I expect the game to have:
A solid gameplay loop that is fun and engaging.
The ability to play with up to 4 people locally.
Compatibility with Steam's Remote Play system.
Published to Steam
Randomly generating levels
My end goal is to have a game published to Steam and to continue to maintain it and add new content for at least an additional year. The game will be free, but will have the option to support me through Patreon. I do not expect this game to be financially viable, I simply want to have a fun and engaging game out there with my name on it.
Timeline/Scope
Week 1:
By week one I expect all the planning and design to be complete. I will have a clear understanding of the game's finer details as well as its artstyle, theme, content, and story. By this point I will also have a schedule/Trello board set up that will allow me to better organise my tasks on a week by week basis. If time permits I will update the blog with my confirmed design decisions.
Week 2-3:
By the end of week 3 I will have the player movement working for all 4 players, and have the ability to play all 4 characters at once locally. I will also have begun the implementation of ability/item pickups as well as have at least 1 ready to test.
If time permits I will update the blog with my progress.
Week 4-5:
By the end of week 5 I will have levels randomly generating. How they will be generated will be decided in week 1. I will have enough randomly generating content that players should be able to comfortably play through 2 levels and feel they are different.
If time permits I will update the blog with my progress.
Week 6-7:
Week 6-7 will involve adding content to systems previously built, such as more items/abilities, and more level content. It will essentially serve as adding meat to the bone I've created over the past 5 weeks.
By the end of week 6, I will hope to conduct a playtest to make sure that the experience I've created is enjoyable and to gather feedback. However, this feedback may not be incorporated by the end of week 7, and will instead be incorporated after the base project is released to Steam.
By the end of week 7 I will have released the game to Steam, and verified that it works with their Remote Play feature.
If time permits I will update the blog with my progress and detail any future plans I have.
Comments