Jump to content

zombi

Members
  • Content Count

    50
  • Joined

  • Last visited

  • Days Won

    6

Reputation Activity

  1. Like
    zombi reacted to Rusk for an article, Effect and Cause - Titanfall 2 Level Breakdown   
    Intro
    Titanfall 2 was one of the best FPS titles of 2016, featuring a very strong single-player campaign with interesting combat and puzzle gameplay for both players and their Titan. Additionally, each level featured its own special twist: "Effect and Cause", for example, presents players with a memorable time-traveling mechanic.
    The time-travel mechanics of "Effects and Cause" serve couple of purposes, influencing not only the way players traverse the environment and its associated obstacles, but also how they fight through the level's combat scenarios. Two different time periods are a threat to the player, so the designers decided to allow players to see where the enemies from the past are located.
    Once you move from past to the present, enemies leave a small blue particle in the place where they had been standing. Although the effect lasts no longer than two seconds, it’s enough to help players plan their next move. This twist on encounters makes them much more interesting and dynamic.
     

     
    For "Effect and Cause", the developers created distinct enemies archetypes with different engagement distances and attacks for each time period. In the present (a destroyed version of the map) the player deals with robots and wildlife. In the past, players face armed guards in the facility. Eliminating the danger in one reality does not make it disappear in the other, forcing players to think constantly about their position versus the enemies in the different time frames.
    Let’s discuss three selected encounters from "Effects and Cause" in-depth to see how they work in action!
     
    Encounter 01
    The first encounter where players freely use the time-shift mechanic starts shortly after players exit a lab area. Here, enemies are located only in the past, when the facility is operating and functional. This prevents players from becoming overwhelmed with two types of enemies in two different realities within the first big encounter of the level.
     
    Layout

     
    Combat space
    This encounter is set up in two distinct spaces. The first space is a big room with a single entry point in the form of a double door opened by a panel, with combat focused at the far end of the room. The second space is a large corridor with a pocket in the middle and a security room at the end. A panel in the security room must be used in order for the player to progress.
    Both encounter spaces are divided by a time-shift puzzle, the only way to continue onto the next arena. This time-shift puzzle serves as combat gating and also adds variety to encounters that are otherwise only about shooting. The gating also teaches the player that some spaces cannot be traversed in any time period, and that the only solution to the obstacle is to find alternative routes.
     

     
    Enemies
    There are eleven enemies in this encounter: four located in the first room, and seven in the second room. Once you eliminate the two enemies in the first room, the remaining two enemies get into position. The second space has a fixed number of soldiers, with no additional waves. All the soldiers are using guns or rifles. The advantage/challenge to the player in this encounter comes from the number of the enemies, not their abilities.
     

     
    Encounter design
    Once the player enters the first space, they see two soldiers talking to each other. It’s up to player to start the fight and pick their preferred attack method. Once the first two enemies are eliminated, players enter an area with clearly defined architecture and a no-man’s-land inbetween. Players should also see a weapon lying on the desk, a gameplay "carrot" which helps to draw players into the fight. The enemies will hold their positions and try to shoot the player from behind the safety of cover.
    The second area gives players more options, and also allows them to scan the area earlier (both from the first room through the lasers, and also from a vent). The designers ramp up the difficulty here, introducing more enemies into a tighter space.
    With the time-switching mechanics at hand, players can prioritize threats in order to set up their own tactics. It’s clearly up to player how to plan and play this encounter. As there is no threat in the past timeline, players can experiment with going back in time without punishment, ‘escaping’ the combat at any given moment in order to reload, reposition and jump back to the action. This encounter is memorable as it is the first time that players fully use their time switching mechanic, functioning as a safe environment to learn. In other words, it's a skill check and a preparation for what lies ahead...
     
    Encounter 02
    The second encounter worth analysis is much more varied with how it positions enemies throughout the level. It also places enemies in both time periods, serving as a playground for prioritization strategies and other interesting player tactics. This encounter also features more verticality, which helps prevent players from feeling too overwhelmed with enemy forces, while also allowing players to use more of their Titan-piloting skills.
     
    Layout

     
    Combat space
    This encounter is located in a fairly large room with ample verticality. Players enter the space on the upper floor through a single entry point and continue their way onto a balcony, letting players familiarize themselves with the space from above. At the far end of the room, players will spot a staircase going down to the lower level where elevators are located. This area has two big areas of standing cover, accessible on both heights, and a variety of crouch-height cover such as railings, desks and potted plants. This space also has a small side-room allowing further tactical options. This whole area is gated with an elevator door which does not open until the combat encounter is over.
     

     
    Enemies
    This encounter is quite varied in terms of the enemies players face. In the past timeline, players face eleven soldiers: nine regular soldiers and two heavy soldiers with shields. These soldiers come in four groups of two or three each. The solders come with short intervals inbetween each wave, so that the player has time to react and make more intellectual choices.
    In the present, players face three robots appearing almost at once when they walk along the balcony at the top of the space. Once the player goes down, they have to fight four prowlers which appear one after another with a couple of seconds delay between each new spawn.
     

     
    Encounter design
    We start the encounter in the present timeline, with the gate blocked in the past timeline. On the way to the staircase, three enemy robots spawn but do not pose a big threat to players. Once players move down, their attention is drawn to a desk with guns. This helps players to immediately position into a location in front of the elevators.
    Once players shift to the past, enemies start to appear from the elevators. There is not enough cover to fight off all of the attackers, forcing players to prioritize and switch in time to better position themselves for attack. Once players go back into the present, prowler enemies will start to appear, forcing players to continue constant movement.
    This encounter may feel a bit hectic, but it is a good test of both pilot skills and thoughtful time switching. It's the first encounter which forces players to prioritize which enemies they want to deal with first in different time periods. Due to the designer's smart use of the elevators, vents, and robot storage, enemies are brought into the field in an interesting way. But at the same time, enemies are introduced to the player with clear sound and visual cues, so they remain alert to upcoming surprises.
     
    Encounter 03
    The third encounter I want to breakdown is by far the most robust yet. It features different height levels, space divided into two areas, and flanking paths which can be accessed only through certain time periods. It serves as the "final skill check" for all of the pilot abilities and time-shifting gathered thus far in "Effect and Cause".
     
    Layout

     
    Combat space
    This encounter is spread across two areas of vertical space, connected by multiple paths that create nice loops for players to use to their advantage. There is one clear entry point with a wide view of the whole combat space and one exit located in the second area, but the space inbetween offers a great deal of choice in terms of how players can tackle the encounter.
    Playing through the encounter, players will learn that there is a geometry difference between the two different time frames that can be overcome with some of the pilot skills at their disposal. A big catwalk goes around the whole room with additional rooms with guns and ammo on the bottom level, for example. The amount of space available is needed, because the combat space is packed with enemies.
     

     
    Enemies
    In the past, players have to fight twelve soldiers: nine regular soldiers and three heavies with shields, as well as three robots. The enemies are spread out across the whole space of the encounter, but because the areas are connected with each other through multiple paths, the enemies will try to chase and eliminate the player. This means that the encounter feels very dynamic and tense.
    In the present, players face robots: eight prowlers inside, and even more of them outside fighting with BT (the player's Titan). The enemies in the present are hostile to each other, showing players an example of how the enemy AI can actually fighting eachother: information which players can then use to their advantage.
     

     
    Encounter design
    Players enter this area in the past, where they witness a single back-facing enemy, instantly inviting them to perform a takedown. From this point, the encounter is very open to experimentation: the player can either continue in the past and fight a big wave of soldiers coming through the main path (a staircase in the middle), or they can switch to the present, where they will find open flanking paths on both sides of the level. Going with the latter option offers a moment to breathe before prowlers are spawned, but it will also disable an ammo dispenser in the first area, adding consequence to player choices.
    Staying in one place will result in a massive pile-up of enemies in the area, so players are motivated to move around a lot, time shifting when needed. The second area of this encounter is one of the level's biggest in-door combat spaces. If players choose to go into this second area in the past, the encounter will be quite vertical with soldiers located both on the ground and on the upper catwalk. Switching to the present will cause a bigger concentration of enemies on the ground floor.
    Players are given enough space to fully use pilot’s zip-line ability to create shortcuts across the room, accessing the various loops and ammo dispensers needed to create a fair fight despite overwhelming enemy forces. There are very few conditions placed upon this encounter, so players can leave the area and jump into his Titan to deal with different threats at any time. Overall, this encounter serves as a test of everything learned previously, with players having the option to ‘lower’ the difficulty of the encounter using their titan.
     

     
    Conclusion
    The above examples are just a slice of Titanfall 2 gameplay contained within the excellent level "Effects and Cause", but in my opinion clearly shows how this great game was enhanced by its time shifting mechanic. The idea is fairly simple: time-shifting is nothing more than teleportation between two different levels, one layered on top of another, but the strong execution makes for a memorable experience that really stands out in comparison with other shooters. I highly recommend playing "Effects and Cause" as it is both challenging and fun, a level where Titanfall 2's time-shift mechanics comes into focus, providing additional depth to the whole game.
     
    Thanks for reading!
  2. Like
    zombi reacted to Puddy for an article, Dynamic levels - in Payday 2 and beyond   
    Payday 2 is a cooperative first person shooter where players band together to commit various crimes in the endless pursuit of wealth, infamy and cool masks to cover their criminal faces with. The game recently celebrated it’s third birthday, yet it still retains a steady player base. How then has the game kept players engaged throughout the years? The many and regular content updates are surely a big part of it. Another draw must be the fleshed out progression systems that offer tons of customization. I would argue that the lifeblood of the game is its dynamic level design; it is what keeps the game replayable and fun. In this article I will discuss what dynamic level design is and how it was used to build “Hoxton Breakout”, one of the game’s most popular missions.
     

    Payday 2, Left 4 Dead 2 and even XCOM2 all use some form of dynamic level design.
     
    What is dynamic level design?
    Dynamic level design is all about creating levels that are as replayable as possible; it is about retaining the challenge and keeping players on their toes. This is achieved by introducing elements that change between playthroughs, things that make the level a bit different each time you play. Dynamic levels are still designed and built by hand, so to speak, which makes them different from procedural levels which are created from automated algorithms.
      Dynamic levels are useful in games where the developer wants the levels to provide more gameplay than a single playthrough would. This approach has the added benefit of allowing different players to come together and enjoy the same level, irrespective of whether they have played it many times before or not at all. This can make dynamic level design ideal for co-op games and it can be essential for retaining players over longer periods of time, just like Payday 2 has done.
    Building a dynamic level
    The process of building a dynamic level certainly differs from more traditional single player level design. Instead of crafting a linear experience in meticulous detail, a designer must seek to create a broader structure of what will happen in the level and then design dynamic elements, things that change between playthroughs, within that structure. These dynamic elements need to be designed with care, so that the level actually changes in meaningful ways between playthroughs. The process of making a dynamic level will vary from game to game; it all depends on the game's mechanics, setting and other details. By sharing the design of a Payday 2 level I hope to illustrate what a dynamic level can look like and also showcase the overall possibilities of dynamic level design.
     
     

    Hoxton in all his glory, featured here in this promotional art. Shortly after his breakout, he leads a daring break-in at the FBI to uncover who ratted him out.
    Hoxton Breakout
    In the Payday 2 mission “Hoxton Breakout” players are tasked with breaking their old heisting comrade Hoxton out of custody. During the breakout Hoxton shares his suspicion that his capture was caused by an unknown snitch. To uncover the truth, the PAYDAY gang set their sights on the headquarters of the Federal Bureau of Intervention (not to be confused with any real life organization...). This sets the stage for the mission’s second level and the one I will be discussing here.
     
    Level Structure
    In this level, the players will enter the FBI headquarters together with Hoxton (an NPC). They will fight their way to the “Operations Room”; the place where the FBI servers are kept and where the Payday gang is hoping to find the information which reveals the identity of the snitch. Hoxton will search through the servers and when he has found what they need, the gang will escape. No matter how many times you play the level, the overall structure will stay the same. Instead, it’s the dynamic elements within this structure that change and make it replayable. What are those, you ask? Let’s take a look!
     

    Clockwise from top right: The FBI HQ lobby, a central area in the level. The FBI director hides behind his desk. Hoxton and the Payday gang enter the lobby.
    The Operations Room
    Players will spend a lot of time in the FBI Operations Room. Hoxton will be hard at work searching through the servers, leaving players to defend him from relentless police assaults. The combat space will change in a number of ways between playthroughs.
      Entrances - Most of the entrances to the Operations room are selected dynamically in various combinations, which changes which choke points the player must defend.
    Windows - The ‘Operations’ room is two floors in height and the second-floor windows overlooking the room are placed in different positions. Players must watch them for enemy fire.
    Fuse box - The fuse box, which enemies use to cut the power to the servers and pause your progress, can be placed in a few different positions. Players must defend it.
    Ceiling breaches - SWAT troops can breach the ceiling of the ‘Operations’ room and rappel down right into the thick of it! There are a few places where this can happen (it doesn't always).
      These dynamic elements will vary and change independently. This can be very desirable, as it will give you a large set of different combinations and improve the replayability of the level. For example, even if the fuse box is in the same location in two separate playthroughs, the positioning of the entrances and windows will change how the players approach the situation, which will help reduce level fatigue.
     

    The Operations Room. The Servers are kept in the room under the illuminated FBI logo. 
    The Quests
    There are four servers Hoxton must search through in the Operations Room. Between the searching of each server, Hoxton will need the player's assistance and send them on a “quest”. There are five different quests, though only three are selected and used in each playthrough. They can be selected in any order and combination. Each quest and its gameplay have been designed to have a slightly different flavor.
      Security Office - The next server happens to be heavily encrypted. You need to break into the Security Office, download the encryption keys and get them back to Hoxton.
    IT Department - The next server is missing and the log states it was taken to the IT Department for maintenance. You must locate the IT Department, find the missing server and bring it back to Hoxton.
    Archives - Hoxton finds a reference to some physical files kept in the archives. You need to go down to the basement, search through the archives and bring the paper files to Hoxton.
    Forensics - Hoxton learns that the FBI has evidence related to the traitor. Players need to break into the evidence locker, find the right piece of evidence and then scan it in the nearby laboratory for clues before returning to Hoxton.
    Director’s Office - Hoxton encounters some files on the next server that can only be accessed by gaining direct approval from the FBI Director. You must head to the director’s office and use his computer to approve all of Hoxton’s security clearance requests.
      What this means is that players won’t know exactly which “quests” they will tackle each time they play the mission, or in which order they will face them. As the difficulty slowly ramps up during the mission and the players’ supplies generally are lower towards the end, completing the same quest as either your first or last one can become quite a different experience, even though the quest itself doesn’t change that much. Allowing the quests to be arranged in any order and combination simply gives the mission a slightly different flow each time.
     

    The five quests, clockwise from top right: IT Department, Security Office, Archives, Forensics. Center: Director's Office
    The Combat Now, it’s about time we talked about the combat. It is essential for the replayability of a level that the combat isn’t static and that encounters vary between playthroughs. To solve this, Payday 2 has a spawning system that serves up dynamic enemy encounters. The system unburdens individual level designers and creates a consistent and tweakable way for the game to spawn enemies in all levels. For those of you who have played the Left 4 Dead games this may sound very familiar. The system isn’t completely automated and the level designer can control a few variables.
      Difficulty - The player selects the overall difficulty of a level before starting, but a designer can tweak the difficulty to a factor between 0 and 1. This can be adjusted at any point during the mission and can be tied to certain events.
    Spawn locations - A designer designates spawn locations manually. The designer can toggle spawn locations on and off, change how often they can be used to spawn enemies and which kind of enemies are allowed to spawn from them.
    Enemy Wave Mode - Police assaults occur regularly and this is generally handled by the system, but a designer can force a police assault or a complete break from them.
    Snipers/Harassers - The placement of snipers and so called harassers, regular SWAT troops who harass players from vantage points, is done manually. It is up to the designer to place them in challenging, but fair, positions and script logic which decides when and if they appear.
      What this all means is that while the spawning system does the heavy lifting and creates varied combat encounters, a designer can fine-tune the experience and still direct the combat somewhat. For example, in Hoxton Breakout the difficulty is slowly ramped up after each completed server, the spawn locations are continuously tweaked throughout the mission to make fights fair and when it is time to escape an endless police assault is forcefully triggered to increase the stakes!


    A dynamically spawned enemy squad moves towards the Payday gang.
    The keycard economy
    In Payday 2, keycards are single-use items that are occasionally used to open certain doors. In order to add depth and strategy to the level, I added something to this level which I like to call “the keycard economy”. In every playthrough, players can find 3-4 keycards which can be used, i.e. “spent”, on a variety of options like overriding doors to seal them off from enemies, unlocking rooms that contain precious resources or opening doors that lead to objectives. The value of the different options can change between playthroughs, depending on dynamic variables and which loadouts the players have. Since players can’t have all the options, they must choose wisely. This allows players to refine their strategy over the course of multiple playthroughs, adding to the level’s replayability.
      The little things We’ve discussed all the major dynamic elements of the level at this point, but it is worth mentioning that replayability also arises from smaller dynamic elements too. These smaller surprises can throw players off and force them to adapt accordingly. A good example can be found in the Security Office, where the police sometimes pumps in tear gas when players are trying to complete the objective inside. This forces players to leave the relative safety of the room and charge head first into the police forces which are surely waiting outside. Part of making a dynamic level should be to identify and implement these little game changers!
     

    Clockwise from top right: The Security Room fills with gas. A keycard has been used to seal a security door. An innocent keycard. A SWAT team rushing to thwart the payday gang.
    Discussion
    To summarize, the level we’ve looked at is about defending a location and completing short “quests”, with both activities changing in different ways between playthroughs. In addition to this variety, enemies are dynamically spawned, occasional surprises appear and players are able to learn and master the keycard economy over the course of multiple playthroughs. These dynamic elements, this variety between playthroughs, is what turns the level into a dynamic one.
      This level was made for Payday 2 and, as mentioned, dynamic levels will look a bit different depending on the game and its needs. The Left 4 Dead games have less emphasis on objectives and focus more on linear progression through a level, with dynamic enemies, items and minor path changes along the way. The Killing Floor games have arena levels that suit the game’s wave-based horde mode and these levels feature fairly simple dynamic elements: enemy and item spawning as well as the location of the weapon and item shop. The revived XCOM franchise uses levels which have designated areas or “slots” where different buildings and structures can fit in and shift the layout accordingly. The XCOM games also allow different missions to be played on the same level, enabling levels to provide even more gameplay mileage.
      The dynamic level design approach may fit these games, and others like them, but it is not suitable for all kinds of games and it definitely comes at a price. Since dynamic levels are designed to be replayable, heavily scripted story moments and set pieces may have to be deemphasized or removed outright. Playing through such sections may be thrilling once or twice, but they generally lose their appeal very quickly. Furthermore, some degree of polish is generally lost in the process of making dynamic levels. The fact that you are making an experience that can’t just happen “in one way” means you can’t necessarily polish, and control, every moment of gameplay to an insane standard, like you would expect in an Uncharted game for example. Additionally, an incredibly strong core gameplay loop is almost a requirement for a game with dynamic level design. Since the levels can’t be overly scripted, directed and set-piece heavy, the levels can’t compensate and “lift up” a slightly weaker core gameplay. Finally, one must also consider that creating dynamic elements in a level takes time, time which could be spent polishing or making more non-dynamic levels.
      These drawbacks must be weighed against the potential benefits. After all, the value of replayability should not be underestimated. As I mentioned in the beginning of the article, dynamic levels seem to be almost ideal for co-op games. Playing games together definitely adds something to the experience and this can help to compensate for some of the potential drawbacks like the lack of set-pieces. Adversarial multiplayer games, i.e. player vs player, don’t necessarily stand much to gain with the dynamic level design approach as the element of human unpredictability and challenge is usually enough to keep players engaged and entertained. By looking at XCOM, we can see that dynamic levels can be used to great effect in a game that isn't a shooter nor a cooperative one. And if we compare them to procedural levels, dynamic levels requires less sophisticated technology to create, but more human labor, and can offer something that feels a bit more handcrafted and unique. Ultimately, game makers need to look at the dynamic level design approach, its pros and cons, and ask themselves: is it the right approach for us?
  3. Like
    zombi reacted to MapCore for an article, Day of Infamy Mapping Contest   
    Participants have from the 15th of September 2016 until Midnight (GMT) on the 22nd of December 2016 to create, test and upload an original or Day of Defeat inspired map for Day of Infamy (www.dayofinfamy.com)
     
     
     

     
    Prize Structure
     
    1st place
     
    $3,000 cash
    Map included officially in game
    Corsair Hardware
    Void Surround Sound Headphones
    Strafe Keyboard
    Katar Mouse
    M330 Mouse Pad
    All Wall Worm Source Modelling Tools
     
     
     
    2nd place
     
    $1,500 cash
    Corsair Hardware
    Strafe Keyboard
    Katar Mouse
    M330 Mouse Pad
    All Wall Worm Source Modelling Tools
     
    3rd place
     
    $1,000 cash
    Corsair Hardware
    Katar Mouse
    M330 Mouse Pad
    All Wall Worm Source Modelling Tools
     
    4th place
     
    $500 cash
    Corsair Hardware
    Katar Mouse
    M330 Mouse Pad
    All Wall Worm Source Modelling Tools
     
    (*All prizes are subject to participant eligibility. No cash value. The contest Organizers and Sponsors reserve the right to change or remove the prize structure at any point with or without reason.)
     
     
     

     
    Sub-Prizes
    In addition to the prizes stated above, GameBanana will also be offering a sub-prize for the best development blog, work in progress or tutorial created throughout the process. 
    This is an entirely optional part of the contest and is open to members of all communities.
    To enter simply create either a development blog / work in progress page OR a level design tutorial / guide for Day of Infamy on either GameBanana, MapCore or the Insurgency Forums.
    Entries must be uploaded on or before Midnight (GMT) on the 22nd of December 2016, and include “[DoI Contest]” in the title. Entries will be judged by members of the GameBanana team, as they appeared at the deadline.. No changes or updates are permitted during the judging phase.
     
    Rules and Frequently asks Questions
     
    The submission must be a playable map for the PC version of Day of Infamy.
    Remakes of existing maps are not allowed, however maps inspired by classic DoD maps are encouraged.
    Entries must be submitted to the Day of Infamy mapping contest section of BOTH GameBanana.com and the Steam Workshop before the deadline.
    Multiple entries are permitted, however submissions will be judged on individual quality rather than quantity.
    Team based entries are permitted, however the entrants will have to agree how to split any prizes awarded, prior to prize claim and dispatch.
    It is essential to thoroughly test your submission before the deadline as entries cannot be modified during the judging phase.
    Exceptions: Changes to the submission profile are permitted after the deadline, provided they are purely aesthetic and that the map file does not change. (E.g. Editing the description / screenshots)
    Maps that were under creation prior to the announcement of this contest can be entered, provided a completed version has not been released for public Download.
    All custom textures, models or code must be contained within the download file or embedded into the .bsp.
    Authors are free to share their content on any other websites or services they wish, however the file must remain free to download and play, without requiring membership or payment.
    If the submission is distributed on an external website or service, it must clearly state that the submission was created for the "GameBanana / MapCore Day of Infamy Mapping Contest 2016”.
    Authors must be able to accept cash payments via paypal and will be required to fill in a prize claim form prior to payment. Winners of hardware and physical products will also be required to provide a valid shipping address.
    Judges and individuals associated with organising this contest cannot enter or assist entrants.
    Entries must clearly state which game mode the level is designed for.

     
    Eligibility
     
    Participant eligibility: The “GameBanana / MapCore Day of Infamy Mapping Contest 2016” is open to any individual, or teams of individuals, provided they comply with the following:
    Participants may not be an employee of the “Organiser” or “Sponsors”.
    Participants may not have taken part in the preparation or announcement of this
    Contest.
    Participants may not be a direct relative, spouse, direct employee, or long term
    partner of any of the above definitions (a - c).
    Legal Age: This contest is open to any individual who meet the above “participant eligibility” criteria. In the event of participant who has not reached the legal age in his/her state winning one or more prizes defined below, he/she must provide contact details for the legal guardian who will claim the prize(s).
     
     
    Submitting
     
    TWO (2) copies of the map are required for this contest, and must be uploaded on or before the deadline. The primary version (used for judging) must be submitted to GameBanana.com and placed in the “Day of Infamy > Mapping Contest 2016” category.
     
    http://gamebanana.com/maps/cats/8989
     
    The second version must be uploaded to the Day of Infamy Steam Workshop
     
    http://steamcommunity.com/app/447820/workshop/
     
    No changes to the downloadable file can be made during the judging phase. Please remember to ensure that all relevant custom content is included, and that your map is thoroughly tested.
     
     
     

     
    Judging Criteria
     
    Maps will be judged by the developers at New World along with the staff at MapCore and GameBanana. Each map will be scored on the following categories, and given a total score out of 100.
    Gameplay (40 marks)
    Visuals (30 marks)
    Originality (15 marks)
    Performance / Optimization (15 marks)
×
×
  • Create New...