Skip to content
@project-lynx-coding-game

Project Lynx

Coding game based on microservices and asynchronous communication with a game server
  • Poland

Abstract

Video games are a widespread form of electronic entertainment. However, the educational programming game genre lacks recognition among gamers, and faces various issues. As a consequence, there exists an unfulfilled educational niche.

The aim of this project was to create a programming game for individuals unfamiliar with programming, where they can learn Python interactively. The game utilises asynchronous communication with a server and consists of a competition that helps to shape the participants' code writing skills and problem-solving abilities.

Existing solutions were reviewed for inspiration during product development. Conclusions drawn from the review were then used to define system requirements specification. The abstraction of the game was planned next, which involved defining the basic elements of the world. Finally, the solution was broken down into an asynchronous scene server, a game client and a shared library. The required components necessitated the use of suitable technologies, which were carefully picked following a thorough review. The solution's development involved focused attention on specific implementation aspects. Post-project completion, different development choices were proffered, and the outcomes were summarised.

The outcome of this effort is a programmatic multiplayer game based on an HTTP server. Its gameplay objective is to gather resources in the game world. The player controls agents whose intelligence is defined by hand-written Python code. The game's primary educational aims are to teach language syntax and problem-solving. The game world's architecture facilitates simple integration of new features.

Keywords: Programming game, Educational game, Browser game, Competition game, Python, Godot, Learning programming, Game development, Multiprocessing, Componentisation

Field of science and technology in accordance with OECD requirements: Computer science and information technology

img/1.png img/2.png

Popular repositories Loading

  1. lynx-python-common lynx-python-common Public

    Common utilities for microservices written in `python`

    Python 4

  2. lynx-scene-host-go lynx-scene-host-go Public archive

    Microservice responsible for hosting `scene` object and managing its state

    Go 1

  3. lynx-frontend-godot lynx-frontend-godot Public

    GDScript 1 1

  4. lynx-runner lynx-runner Public archive

    Forked from blazej-smorawski/code-fiddle-backend

    Rust

  5. lynx-runtime lynx-runtime Public archive

    Runtime running user's code in randomly generated environment.

    Python

  6. lynx-frontend-unity lynx-frontend-unity Public archive

    ShaderLab

Repositories

Showing 10 of 11 repositories
  • .github Public
    project-lynx-coding-game/.github’s past year of commit activity
    0 0 0 0 Updated Jan 10, 2024
  • project-lynx-coding-game/lynx-frontend-godot’s past year of commit activity
    GDScript 1 1 0 0 Updated Nov 21, 2023
  • lynx-balancer Public
    project-lynx-coding-game/lynx-balancer’s past year of commit activity
    Rust 0 0 0 1 Updated Nov 16, 2023
  • lynx-scene-host-python Public

    Python implementation of scene-host microservice

    project-lynx-coding-game/lynx-scene-host-python’s past year of commit activity
    Python 0 0 0 0 Updated Oct 24, 2023
  • lynx-python-common Public

    Common utilities for microservices written in `python`

    project-lynx-coding-game/lynx-python-common’s past year of commit activity
    Python 4 0 0 0 Updated Oct 24, 2023
  • lynx-scene-generator Public

    Microservice responsible for generating and serializing scenes.

    project-lynx-coding-game/lynx-scene-generator’s past year of commit activity
    Rust 0 0 0 0 Updated Sep 24, 2023
  • lynx-balancer-docs Public

    Documentation of load balancer designed for containerised stateful workflows

    project-lynx-coding-game/lynx-balancer-docs’s past year of commit activity
    0 0 0 0 Updated Jul 6, 2023
  • lynx-scene-host-go Public archive

    Microservice responsible for hosting `scene` object and managing its state

    project-lynx-coding-game/lynx-scene-host-go’s past year of commit activity
    Go 1 0 0 0 Updated Mar 26, 2023
  • lynx-frontend-unity Public archive
    project-lynx-coding-game/lynx-frontend-unity’s past year of commit activity
    ShaderLab 0 0 0 0 Updated Mar 10, 2023
  • lynx-runtime Public archive

    Runtime running user's code in randomly generated environment.

    project-lynx-coding-game/lynx-runtime’s past year of commit activity
    Python 0 0 0 4 Updated Feb 9, 2023

Top languages

Loading…

Most used topics

Loading…