1. Introduction
"Lost with Frost'' is an innovative 2D Python-based RPG game meticulously crafted by a dedicated team of three developers. Plunging players into a relentless survival ordeal set amidst a harsh, wintry landscape, the game demands shrewd resource acquisition and strategic navigation through hostile encounters. The focus of the gameplay is on keeping the character alive by scavenging for sticks to feed an essential firepit at the center of the game map. The core mechanics of the game are revealed in this essay, such as the gaming elements involving resource management, survival, and escaping from the enemies. Moreover, it provides a glimpse into the iterative development journey, exposing the team's triumphs over challenges and spotlighting what it is like to refine and optimize the game experience.
2. Game design concept
Our team has mainly concentrated on the idea of the game design. Choosing a topic and main theme for a game is not an easy task. After reading Sandbox Worlds [1], our team has learned that one of the most popular types of games, sandbox games such as Minecraft, allow players to choose exactly how they want to play without being limited in any way, as opposed to providing them with a linear pattern to follow. Playing in a harsh, unforgiving world is part of the adventure offered by sandbox games, and due to the attractiveness of this aspect, our team took inspiration from these games. The next step was to narrow down the topic. According to GameDeveloper [2], in video games, the concept is made up of a few words that describe the game's tone, overall setting, and occasionally the primary storyline motivation in addition to the different kinds of characters and interactions they entail. Although game concepts are typically brief, they serve as the final description of the game, something that creators should keep in mind at all times. So following this rule, ultimately, the game's design is decided to be focused on the following concepts: extreme survival, resource collection, the threat of enemies, and exploration. The team started with several broad concepts for these concept keywords, such as a zombie apocalypse in a deserted metropolis or a prohibited island, and then we whittled them down along the way to the final form of our game: 2D python survival game in a frozen land. The reason why this particular idea landed is that every team member enjoyed the design of a temperature bar that the player has to constantly keep up with resources, and this introduces us to the content and core gameplay of our game which will be further discussed in the future sections.
3. Core gameplay & mechanics
At the heart of "Lost with Frost" lie its core mechanics, finely designed to immerse players in a challenging survival experience. The game tasks players with navigating a frigid, dynamically generated 2D map, with the central objective being the collection of wooden sticks scattered across the landscape. These sticks are vital for fueling a central firepit, and crucial for maintaining the character's temperature and overall health. A delicate balance is required as players must frequently venture away from the firepit to gather resources while managing their proximity to prevent freezing. However, this exposes them to dangers in the form of relentless yetis, necessitating strategic movements and adding an element of risk. The game's mechanics engage players through a careful blend of resource management, strategic decision-making, and tactical maneuvering in a perilous, icy terrain.
3.1. Pickup system
It's important to go into detail about how each component functions after describing the overall gameplay. The player will initially spawn close to the firepit that is in the exact middle of the map. The main objective for the player is to go around the bordered map with the “WASD” keys, pick up the wooden sticks that are spread out on the ground on the map with the “q” key, and bring them back to the fire pit for its health restoration. The way the algorithm for the pickup system works is that as a player proceeds to pick up a branch, that branch is added to a list. The number of items in that list is displayed in the form of how many sticks the player has in the inventory, which is at the top right corner of the screen. The player can also press the “e” key to drop the sticks or in other words, clear the branch list.
3.2. Fire pit system
The fire pit has its health, which the player can check using the cursor controlled by the mouse. The fire pit health bar will progressively drop faster and faster throughout the game, forcing the player to react to the change. It is only when the player is close to the firepit can the player restore the character’s temperature bar. Meanwhile, if the player has taken damage, being next to the firepit can also slowly heal the character’s health bar. Of course, the player cannot always be around the firepit as they will have to constantly gather the sticks required for the fire to not die, but being further and further away from the firepit means a quicker drop in the temperature bar.
3.3. Hostility system
According to tecfa [3], video games should feature gameplay components of some sort of creature attempting to obstruct players' objectives. These enemies have the ability to actively counteract players' intentions through their behaviors or act as an explanation for difficulties or impediments in the game. Our team has taken into consideration this and introduced yetis to our game. The players might not always be able to take the shortest route due to the presence of the yetis. Every 30 seconds, a regular yeti will spawn at any position around the map, and as soon as it spawns, it will head after the player in an attempt to kill the character. These regular yetis have a much slower movement speed than the character but when the player is within their hitbox, the character’s health bar will start to decrease. The yetis spawn with a random movement speed and a random size, and the larger it is, the larger its hitbox. It would not be much of a concerning problem. Still, as their number increases, it will be a bit of a challenge for the player’s ability to maneuver with the keyboard movement keys because sometimes the character will have to squeeze very tightly in between the yetis to pick up a stick or to restore the character’s temperature bar. A boss yeti will spawn every 120 seconds directly after the player’s feet, and the boss yeti has a movement speed just under character, a larger size, and the ability to slow down the character for 2 seconds every 30 seconds (the debuff will stack when there exist multiple boss yetis). The yetis’ mechanic keeps the players on their toes and encourages strategic movement.
Figure 1. The character has been killed by the yeti. The game is over and the survival time is 96 seconds.
3.4. Strategic considerations
Both are having the yetis attack you and having the character’s temperature bar below 1/3 can make the character start to lose health very rapidly, and as the player dies, taking a look at Figure 1, the screen will freeze, and the time survived will be shown on the bottom right of the screen. The game gets very challenging as time progresses. But challenges aren’t always bad things. Reading the article by Gideon’s Gaming our team concluded that when implemented properly [4], challenge raises the game mechanisms in a way that encourages players to exploit them on all difficulty settings. Due to the players being able to see how many sticks they have in their inventory in the top right corner of the screen and to drop the sticks, a carefully considered approach must be taken to survive longer. Players can store the collected sticks around the firepit in the early stage of the game so that as the firepit’s health bar starts to drop quicker, these backups can be used for additional survival time. Managing warmth by considering the distance to the firepit and when to use the wooden sticks introduces a strategic element, while including enemies like the yetis provides a dynamic challenge.
4. Game features
Game features are crucial components that significantly influence a player's experience and enjoyment of a game. According to Dicebreaker [5], to make the players more engaged with the game, we must ensure that the delivery of the game is exciting and presented appealingly. That is to say, these features play a pivotal role in attracting players, engaging them, and keeping them immersed in the gaming world.
Figure 2. The character with 9 branches is running away from the yeti. The screen is getting lighter signifying that the morning is coming.
4.1. Lightings
As said in the article by Game Developer [6], lighting in video games serves a dual purpose: ensuring visibility within the game environment and evoking emotions in players. Similar to how lighting design impacts emotions in theater, film, and architecture, it plays a vital role in game aesthetics and the overall gaming experience. This is why our team has spent an enormous amount of time on the lighting of our game. We thought that a day-night cycle adds realism and affects gameplay by influencing visibility. Upon spawning, it is nighttime and the player will only be able to see some dim lights emitted by the firepit. As the player sets off to explore, only the small white circle directly below the character’s feet is able to provide some visibility allowing the player to see where the wooden sticks are located. As time progresses, the screen will slowly brighten up, making the entire map visible, as shown in Figure 2, but eventually falls back down to pitch dark. Visibility is key in this game because the player can never expect where the next yeti will come from to attack. As previously mentioned, the light from the firepit also changes its brightness. The firepit’s health is directly correlated with how bright the light is. As its health goes down, the orange light will dim gradually. Often enough, the player can directly estimate how much health the firepit has left without scrolling the cursor. It is overall a nice touch that adds immersion and ties into the gameplay mechanics.
Figure 3. The character is almost dead with almost no health left. The screen bloody border effect activates.
Figure 4. The character has lost all temperature and starts to rapidly lose health. The screen border freezing effect activates.
4.2. Visuals & commands
According to an article by Medium [7], good visuals in a game are crucial for player immersion and initial engagement. While gameplay is paramount for a game's quality, visuals play a significant role in drawing players into the game world. They create the first impression and influence a player's experience. Without appealing visuals, players may not give a game a chance, and poor visuals can act as a barrier to immersion, even if the gameplay is excellent. When designing our game, we tried our best to make the visuals of the game as attractive as it could be. There are randomly generated objects such as lakes, stones, and trees spread out around the map making the game world more appealing. Both the character and the yetis are unable to walk over the landscape objects, and this feature allows the player to have the opportunity to distance the enemies. Finally, details are added to the UI and the game settings to enhance the player’s interpretation of the current status and facilitate the game experience. For instance, if the character’s temperature bar drops below 1/3, the bar's color fades from red-orange to pink and eventually to dark purple. Also, when the character’s temperature bar almost drops down to zero, a blue ice border will appear around the screen, and a red blood border will appear as the character’s health bar drops down, which can be seen in Figures 3 and 4. These touches to the UI can not only make the game more good-looking but also effectively notify the player that the character’s life is in danger. On the other hand, if the player does not want the background music to be playing, a simple click of the “m” key can stop the music, not to mention the very useful “p” key to pause the game for any reason whether it is a break or to analysis the current circumstance of the surrounding.
5. Challenges
Facing game design challenges in the development process is inevitable, but how you approach and overcome these hurdles is crucial to the success of your game. While designing and creating Lost in Frost, our team encountered countless challenges, including some major ones that made this project very difficult.
Figure 5. Branches generating at too high density.
5.1. Map generation issues
The map generation is the first thing we have to face as everything else will be building upon it. Initially, all the objects, including the branches, the stones, the trees, and the lake, are all generated with random x and y coordinates a random number of times around the map. However, it didn’t take us long to experience issues with this method. As demonstrated in Figure 5, objects overlapping, objects being out of the border, objects being too concentrated in one area and scarce in another, and, in general, too much uncertainty were all things that had to be fixed. In the later versions of the map generation system, these issues have all been fixed one by one, and the final version of the system is something we are very satisfied with. The map is separated into many tiny regions, and the code will go through every region to place a maximum of 2 objects, in this way, our group can ensure that no specific zone has too many objects compared to the others. The algorithm can kill all the objects that are “failed,” meaning either an overlap or an out-of-bound, and the killed object will be moved to a new location to be tested again for failure. If a certain object’s failed number reaches 50, then this object will be given up. It isn’t hard to tell that the method required a high run time. To optimize the map generation performance, we have altered mainly the order the objects are generated, as each object has a different percentage of generation on the map, so that there wouldn’t be any unnecessary killing of the objects.
5.2. Pickup system bug
Along with the constant adjustments made to the map generation system, there are many other issues. The two main ones are the pickup system and the stick regeneration system. When picking up a stick, as long as the character collides with the sticks, pressing “q” will be able to pick it up and store it in the inventory. In the earlier generations of the map generation system, there exists a very concerning bug, which is that the sticks’ actual location isn’t necessarily where their PNG is located on the map. Similarly, when the sticks are regenerated upon pickup, the newly generated sticks have a very different location than their coordinates. Luckily, with the later versions of the algorithm as it matures, these issues were majorly resolved independently.
5.3. Balancing the game
It is commonly known that balancing gameplay for an RPG game isn’t always the easiest thing. According to an article from the mythcreants [8], game balance refers to the idea that each element in a game should have an appropriate power level to their role. For instance, an enemy cannot both deal a lot of damage and have a lot of health at the same time. In our case, due to our game having so many variables such as the character’s temperature bar decreased speed, firepit’s health bar decreased speed, yetis’ damage, and most importantly, how much health recovery each stick can provide, it is very difficult to manage the balance. After learning from two different articles that both talk about the steps game designers must follow to balance a role-playing game, our team has come up with what we believe is the most suitable balancing method for our game [9,10]. The first step was identifying the critical parameters affecting gameplay—character temperature drop rate, firepit health decrease rate, yetis' damage, and movement speed, and stick effectiveness in health recovery. Our group started with educated assumptions about what would make the game challenging but enjoyable. For instance, a certain temperature drop rate was assumed that provide the right level of urgency without making the game overwhelmingly difficult. Then, our group set up a baseline game version with initial parameter values. This acted as our control or starting point for all subsequent trials. A group of playtesters was found to experience the game and give feedback on their gameplay experiences. Their insights were invaluable in understanding which aspects needed adjustment. The data from these playtests were then analyzed to identify patterns and pain points. Did players frequently die due to cold or yeti attacks? Did they run out of sticks too quickly? Ultimately, What our team now possesses is what every member collaboratively thinks best matches the degree of difficulty first anticipated for the game.
Figure 6. Two of the same lines due to being unorganized.
5.4. Debugging & code messiness
At last, our team has experienced a very long and frustrating debugging process. It is the first time that we have collaborated. However, even with the help of GitHub as our medium for sharing our work, we are still very unfamiliar with each other’s coding style and organization. Due to this, there have been many unexpected problems that arose during the development, namely having a very messy code. As a consequence of having a messy code, there are these tiny, unfindable lines that were written twice, and they took us a lot of time to discover. For instance, the game always had an issue with the running of time, and it was only until the later stages of the development phase that we realized that the same line was written twice, causing an issue, as shown in Figure 6.
6. General Discussion
Starting up the game takes the latest version of the map generation algorithm on average 3.8 seconds, significantly faster than the 7 seconds required by the first version of the algorithm. This drastic drop in generation time is due to fixes that the team has made about generation order, code bugs, unnecessary code lines, etc. The game now has a smoother gameplay as the new algorithm also reduces the lag brought by the objects. On the other hand, from a visual point of view, we are able to see directly the visual effects of the light emitted by the firepit. The orange color has brought this frozen land some warmth and security. The frozen and bloody borders are just such a nice immersive touch to have been included, as they not only look fantastic but also are very functional, as not all players will always have an eye on the character’s health and temperature bar.
7. Conclusion
"Lost with Frost" is not merely a game; it is a testimony to our team's dedication, creativity, collaboration and resilience in game development. Merging survival mechanics, resource gathering, and strategic challenges, it offers players an immersive and rewarding RPG adventure. Through multiple iterations, rigorous playtesting, and relentless optimization, we crafted a final version that delivers an engaging experience while showcasing vibrant graphics, unique lighting effects, and clear visual indicators for critical aspects like temperature and health. Our game has faced and conquered numerous challenges, from perfecting the map generation algorithm to fine-tuning gameplay balance, demonstrating our commitment to delivering a satisfying and challenging gaming experience. This journey has provided invaluable insights into the intricacies and gratifications of game creation. We firmly believe that "Lost with Frost" has the power to enthrall players, offering them an unforgettable and compelling survival journey on a perilous, frozen landscape.
References
[1]. Sandbox Games. “The Characteristics of a Sandbox Game Article -” www.sandboxworlds.com/articles/the_characteristics_of_sandbox_games.
[2]. Rafael Kuhnen Blogger. (2007). Game Developer, “Game Design Cognition: The Bottom-up and Top-down Approaches.” www.gamedeveloper.com/design/game-design-cognition-the-bottom-up-and-top-down-approaches#close-modal.
[3]. Kuittinen, Jussi. Enemies, tecfa.unige.ch/tecfa/maltt/VIP/Ressources/Articles/Game%20Design%20Patterns/collection/Alphabetical_Patterns/Enemies.htm#:~:text=Many%20games%20have%20game%20elements,puzzles%2C%20most%20games%20include%20enemies.
[4]. Gideon, Gideon’s Gaming. (2023) Gaming. “The Importance of Challenge in Gaming.” gideonsgaming.com/the-importance-of-challenge-in-gaming/#:~:text=When%20done%20right%2C%20challenge%20elevates,of%20challenges%20for%20different%20individuals.
[5]. Tam, Kyle. Dicebreaker, Dicebreaker, (2022) “How to Make a Roleplaying Game.” www.dicebreaker.com/categories/roleplaying-game/how-to/how-to-make-rpg.
[6]. Ronan Houze Blogger. (2019) Game Developer, “What Is the Effect of the Lighting Design Process on Game Aesthetics a.” www.gamedeveloper.com/design/what-is-the-effect-of-the-lighting-design-process-on-game-aesthetics-and-its-influence-on-the-gaming-experience-.
[7]. Addo, Anderson. Medium, Medium, (2017), “Pretty Pixels - the Importance of Visuals in Game Design.” medium.com/@AndersonAddo/pretty-pixel-the-importance-of-visuals-in-game-design-5f3ae148a41e.
[8]. AshkenaziAuthor, Oren, et al. Mythcreants, (2021), “Four Reasons Balance Matters in Roleplaying Games.” mythcreants.com/blog/four-reasons-balance-matters-in-roleplaying-games/#:~:text=Mistakes%20will%20happen%2C%20and%20players,be%20fun%2C%20but%20it’s%20critical.
[9]. DellaFave, Robert. Game Development Envato Tuts+, Envato Tuts, (2013), “Balancing Turn-Based Rpgs: The Big Picture: Envato Tuts+.” gamedevelopment.tutsplus.com/balancing-turn-based-rpgs-the-big-picture--gamedev-8286a.
[10]. Adam Carpenter Blogger. (2003). Game Developer, “Applying Risk Analysis to Play-Balance Rpgs.” www.gamedeveloper.com/design/applying-risk-analysis-to-play-balance-rpgs.
Cite this article
Qiao,Z. (2024). Cryogenic survival: Analysis and development of 'lost with frost' a 2D Python-based RPG game. Applied and Computational Engineering,41,251-258.
Data availability
The datasets used and/or analyzed during the current study will be available from the authors upon reasonable request.
Disclaimer/Publisher's Note
The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of EWA Publishing and/or the editor(s). EWA Publishing and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.
About volume
Volume title: Proceedings of the 2023 International Conference on Machine Learning and Automation
© 2024 by the author(s). Licensee EWA Publishing, Oxford, UK. This article is an open access article distributed under the terms and
conditions of the Creative Commons Attribution (CC BY) license. Authors who
publish this series agree to the following terms:
1. Authors retain copyright and grant the series right of first publication with the work simultaneously licensed under a Creative Commons
Attribution License that allows others to share the work with an acknowledgment of the work's authorship and initial publication in this
series.
2. Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the series's published
version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgment of its initial
publication in this series.
3. Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and
during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work (See
Open access policy for details).
References
[1]. Sandbox Games. “The Characteristics of a Sandbox Game Article -” www.sandboxworlds.com/articles/the_characteristics_of_sandbox_games.
[2]. Rafael Kuhnen Blogger. (2007). Game Developer, “Game Design Cognition: The Bottom-up and Top-down Approaches.” www.gamedeveloper.com/design/game-design-cognition-the-bottom-up-and-top-down-approaches#close-modal.
[3]. Kuittinen, Jussi. Enemies, tecfa.unige.ch/tecfa/maltt/VIP/Ressources/Articles/Game%20Design%20Patterns/collection/Alphabetical_Patterns/Enemies.htm#:~:text=Many%20games%20have%20game%20elements,puzzles%2C%20most%20games%20include%20enemies.
[4]. Gideon, Gideon’s Gaming. (2023) Gaming. “The Importance of Challenge in Gaming.” gideonsgaming.com/the-importance-of-challenge-in-gaming/#:~:text=When%20done%20right%2C%20challenge%20elevates,of%20challenges%20for%20different%20individuals.
[5]. Tam, Kyle. Dicebreaker, Dicebreaker, (2022) “How to Make a Roleplaying Game.” www.dicebreaker.com/categories/roleplaying-game/how-to/how-to-make-rpg.
[6]. Ronan Houze Blogger. (2019) Game Developer, “What Is the Effect of the Lighting Design Process on Game Aesthetics a.” www.gamedeveloper.com/design/what-is-the-effect-of-the-lighting-design-process-on-game-aesthetics-and-its-influence-on-the-gaming-experience-.
[7]. Addo, Anderson. Medium, Medium, (2017), “Pretty Pixels - the Importance of Visuals in Game Design.” medium.com/@AndersonAddo/pretty-pixel-the-importance-of-visuals-in-game-design-5f3ae148a41e.
[8]. AshkenaziAuthor, Oren, et al. Mythcreants, (2021), “Four Reasons Balance Matters in Roleplaying Games.” mythcreants.com/blog/four-reasons-balance-matters-in-roleplaying-games/#:~:text=Mistakes%20will%20happen%2C%20and%20players,be%20fun%2C%20but%20it’s%20critical.
[9]. DellaFave, Robert. Game Development Envato Tuts+, Envato Tuts, (2013), “Balancing Turn-Based Rpgs: The Big Picture: Envato Tuts+.” gamedevelopment.tutsplus.com/balancing-turn-based-rpgs-the-big-picture--gamedev-8286a.
[10]. Adam Carpenter Blogger. (2003). Game Developer, “Applying Risk Analysis to Play-Balance Rpgs.” www.gamedeveloper.com/design/applying-risk-analysis-to-play-balance-rpgs.