La-luna

 

La-luna is the final project (demo version) of Group 48 (Haobin Zhang & Xinran Dongfang) for ARTG&CMPM 120 at UCSC 2019.

Link to playtest the demo:

https://haobin-zhang.itch.io/la-luna

Abstract:

    • La-luna is a leisurely Puzzle Game that allows players to relax while playing. It tells a story that a long time ago, it was all dark in the night except those blinking stars until an old man took the job of being the moon keeper, who gathering stars to the moon and making it shinning over the night. In the game, players will act the little boy whose job is to help his grandpa, the moon keeper, shape the moon according to the moon guidebook. In the gameplay, players need to control a broomstick to sweep stars to create different patterns to achieve the goal of each level.

 

My role:

    • Programmer:

      • I wrote the code of the game in JavaScript under the Phaser library. Phaser has a relatively complete framework and documentation which made me easy to get started with. It was my first time being the programmer of a project, but I implemented most of the functions we wanted to have in the game.
      • Link to the git of the demo: https://github.com/JrrrZ/Luna-CMPM120-FinalGame
    • System Designer:

      • As we determined our aesthetic goals and chose ‘moon’ as the theme, I came up with the core mechanics immediately and gradually developed the game system based on it. At the beginning of 2021, after I graduated from UCSC, I revised and improved each part of the system to the final version.
    • Level Designer:

      • I designed the gameplay of each level, including the game scene, UI, players’ actions, the winning condition, etc.

 

Aesthetics:

    • Relaxing

      • Relaxing is the first aesthetic goal we want players to feel while playing the game. By slowly sweeping the stars alone with the relieving music, players are more likely to gain peaceful moods and empty their minds for a rest.
    •  Fun

      • We want players to easily gain pleasure even from just repeatedly doing the core mechanics. That is, despite all other factors, the core mechanics need to be fun.
    • Challenge

      • Players still have a winning condition at each level. They are required to sweep stars into different patterns, which are gradually becoming more and more difficult.
    • Expression

      • We also try to minimize the restrictions assigned to players so that they would have more freedom to do whatever they want with those stars, which could be considered as self-expression.

 

Concepts:

    • Culture Sharing

      • “People all over the world are looking at the same moon.”  —-  Me
      • The moon is a beautiful thing shared by people all over the world, and a link to convey thoughts and happiness. We would like to start with the moon and depict the moon that people from different regions see on the day of the festival that has great significance to them for the purpose of cultural exchange.
    • Focus on mechanics

      • We wanted to focus on the game mechanics, using “sweeping stars” as the core of the gameplay to see what else can we do to make the game more interesting.
    • Time killing but fun to play

      • We position the game as a time-consuming casual game, and we want to allow players to play the game without thinking too much, relaxing, or even releasing themselves aimlessly.

 

Mechanics:

    • Core mechanics:

      • Sweeping stars
    • Core Game Loop:

    • Settings:

      • Background:
        • A long time ago, it was all dark in the night except those blinking stars until an old man took the job of being the moon keeper, who gathering stars to the moon and making it shinning over the night. In the game, players will act the little boy whose job is to help his grandpa, the moon keeper, shape the moon according to the moon guidebook.
      • Stars:
        • There are 600 stars initially spawning in each level (the player can use spells to add/abstract the number of stars with the limitation of 1000 maximum).
        • Stars are born in the middle of the moon as the level begins.
        • Each star has its own circle collider.
        • When stars fall outside the moon area, they will gradually fade out and be reborn in the middle of the moon again.
        • Type:
          • Star:
            • Normal stars that blink all the time.
          • Giant star:
            • Bigger stars that are hard to sweep, can only move slowly.
          • Multicolored star:
            • Stars with different colors, using for forming different patterns.
          • Snowy star:
            • Small stars float around like snowflakes, decoration use only.
      • Brooms:
        • Each broom has its own collider.
        • Brooms move with the player’s mouse.
        • The speed and direction of the movement of a star caused by the broom depend on these attributes of the broom when the collision happens, according to (Vbroom*Mbroom)*k+Vstar-init*Mstar = Vstar-now*Mstar. (k refers to the difficulty factor of sweeping different types of stars).
        • Type (right-click to cast the spell):
          • Wood broom
            • The normal broom, which the boy brought from home, is unexpectedly handy for sweeping stars.
          • Sticky broom
            • The broom that grandpa used at first, was brought from home by him. The broom gradually developed a stickiness to stars after sweeping too many of them.
            • Spell: The broom will stop sweeping stars away while dragging, but adsorb stars, up to 100 maximum, around a certain range next to the broom and moved them with the broom, the movement of adsorbed stars have 0.5 seconds delayed.
            • Duration: 3 seconds.
            • CD: 45 seconds.
          • Black-hole broom
            • Grandpa swept a passing black hole with a broom on a whim during his interstellar trip, and from then on, he got a broom with a black hole on it!
            • Spell: The broom will stop sweeping stars away while dragging, but ‘eat’ stars, up to 60 maximum, around a certain range next to the broom.
            • Duration: 5 seconds.
            • CD: 95 seconds.
          • Star broom
            • One day, Grandpa carved a giant star into a broom. Every time he used it, small pieces of the star would fall down.
            • Spell: The broom will stop sweeping stars away while dragging, but generate stars, up to 60 maximum, from random angles at random times within the duration.
            • Duration: 3 seconds.
            • CD: 60 seconds.
      • Physics
        • Phaser P2 Physics
        • 2D Physics
      • Player’s skills
        • Time bell:
          • Ring the bell to get attention from every star!
          • Press S to stop everything from moving.
        • Gravity trigger:
          • Turn off the gravity trigger so that all the stars will as light as air.
          • Press D to remove colliders of stars, allowing them to overlap with each other.
        • etc.
      • Selected Traditional Festivals (12 festivals in total):
        • Mid-autumn Festival
        • Christmas Day
        • Easter Day
        • St. Patrick’s Day
        • etc.
    • Systems:

      • Level:
      • Evaluate
        • Calculating player’s credits of the past level according to time cost and giving matching rewards.
    • Interface

      • Main Menu
      • Level-selecting Menu
      • Prepare interface
        • Selecting skills and the broom to use.
      • Gameplay interface
        • In-Game Menu
          • Continue
          • Restart
            • Going back to the Prepare interface.
          • Goal
          • Select a level
          • Quit
      • Evaluate interface
    • Rule

      • Winning condition:
        • Sweeping stars into the required patterns of the current level and maintaining 10 seconds.
        • Possible deadlock:
          • If the player uses spells to eliminate all the stars, there is a special ending for the specific level (No moon shows up that evening).
      • Gameplay flow:
      • Control:
        • Mouse:
          • Left-click and drag the broom to sweep stars
          • Left-click the earth icon to open the Menu
          • Right-click the broom to cast its spell
        • Keyboard:
          • Press “Esc” to open the menu
          • Press shortcut keys to casting spells

 

Dynamics:

    • Reactions:

      • Some players just randomly sweep stars for fun.
      • Some players are trying to make their own patterns rather than follow the instruction.
      • Some players forget to use avatars’ skills, which makes them unable to pass the level.
      • Most players spend more than 15 minutes finishing the first level.