Space Galaxa: Lorenzo Livrieri creates his own video game!

During the two years of the course, JAC students are called upon to develop projectwork, which aims to bring out the skills they have acquired during the course and create a project of their own.

This is the case of Lorenzo Livrieri Talented JAC from the Web Development course who developed his own videogame called “Space Galaxa,” a videogame set in space born from a creative idea that encompasses his wealth of skills acquired in JAC.

Space Galaxa: the video game

The goal of Lorenzo’s projectwork was to create a videogame using java.swing as the base library, without any other programming code.

“Eclipse” and “Adobe Photoshop” strips were then used in the development of the project.

The game consists of a reimagining of the classic space shuttle “shooter” game, where the “enemy” descends in a vertical line and the player must destroy it.

Once you eliminate all the enemies, you move on to the next level, until you reach level 10 where the player encounters the “final boss”.

Image management

Images are created from sprite sheets, which are image files that contain several smaller graphic elements in a tiled grid arrangement, translating the image with each “tick” to make sure that animation is created.

The result is that even if you change the image, it will always remain at the same level.

Various spreadsheets

How collisions are handled

The method Lorenzo devised for handling the video game collisions is based on a set of rules:

Yes, it starts by taking all the points on the perimeter of a sprite that can explode (previously entered) and checking if they belong to the area of another sprite.

If the answer is positive, then the explosion is generated, game points are increased or lives are decreased.

The game cycle

Like the development of all video games, a cycle of events must be established to give life and form to the game.

In the case of Space Galaxa, the cycle followed in creating the video game involves:

  • Initialization of content
  • Creation of a loop where:
    • Values are updated
    • Collisions are checked
    • Images are updated
    • Drawing

All this until the player either wins or loses.

The whole thing is summarized in this diagram:

Class Hierarchy

For video game enthusiasts and technicians, this is the class hierarchy used by Lorenzo in the creation of his video game.

  • Program: class containing the main, extended by a jFrame
  • Game: class containing the loop, extended from a jpanel
  • Sprite: class with basic methods for drawing the image, updating it, and for collision polygons
  • Sprite_auto: class, extended from Sprite, which allows to modify the methods of automatic sprites
  • Sprite_cont: class, extended from Sprite, that allows you to modify the methods of Player Controlled sprites
  • Audio: class with methods for the game’s music
  • Plus various classes for connecting to the database

Web Development: a hands-on, lab-based course

The Space Galaxa video game is an example of how JAC puts a hands-on lab experience at the heart of training.

JobsAcademy’s Web Development course is built precisely to enable you to acquire concrete skills that are immediately spendable in the world of work.

Through this course, in fact, you will be able to learn:

  • Software Development
  • Web Development
  • backend web development (including api and databases)
  • frontend web development.

In this way, you will be able, after two years of the course, to present yourself in the world of work with a wealth of knowledge and technical skills that you can immediately put into practice, not forgetting that during the course you will have the opportunity to carry out two internship experiences in companies in the sector.

Do you also want to create your own video game? Sign up for the Web Development course.