Panel |
---|
| Expand |
---|
| INTRODUCTION
Billgard is a chaotic fighting game where you embody a billiard ball battling others. Roll across the table, dash to knock opponents into pockets and survive chaotic events like black holes and tilting tables. Your goal? Be the last ball rolling or rack up the most knockouts to win! SHORT DESCRIPTION
Bounce into the thrilling world of Billgard, a fast-paced fighting game where you embody a billiard ball and battle against other players. Roll freely across the table, dashing to knock opponents into the pockets. But be on your guard—this isn't your ordinary billiard table. Chaos reigns supreme with random events like black holes appearing or the table tilting, all designed to throw you off balance. Your objective? Be the last ball rolling or rack up the most knockouts to claim victory. Billgard features simple controls, making it easy for everyone to pick up and play. The game supports up to 14 players, ensuring there's always room for competition. Whether you prefer local, online, or mixed multiplayer, the game has you covered. Experience the excitement and unpredictability of Billgard. Will you conquer the table and reign supreme? UNIQUE SELLING POINTS
You are the ball: Unlike classic billiards where you just use a cue, here you are the ball, battling it out on the table yourself. Chaotic billiard table with crazy events: Experience a chaotic billiard table full of funny events that turn the game on its head. Local and online multiplayer for up to 14 players: Play with up to 14 friends online, locally, or combined, with up to 4 players per PC or console. Simple, accessible controls: Thanks to easy, intuitive controls, the game is quick to pick up and play for everyone.
GENRES
Gameplay:Theme:
PC MULTIPLAYEROptimized for both Controller and Keyboard TARGET GROUP
Our target audience loves to: Compete with others Play with friends Enjoy chaotic action
Billgard is aimed at a broad group of players. Little to no previous experience with computer games is necessary. The option to play it locally on the couch as well as online with up to 14 people makes it suitable for both small and large groups of friends. Even though it is basically possible to play the game alone due to the simple AI opponents, it should be 3+ people for the real fun. The ever-present chaos factor compensates for skill differences to a certain extent. The better players will win more often, but even beginners are not completely without a chance. GAMEPLAY VIDEO
Widget Connector |
---|
width | 640 |
---|
url | https://www.youtube.com/watch?v=wpq8jizSL98 |
---|
|
MoSCoW ANALYSIS
This MoSCoW analysis represents the desired features and overall vision of the game's current state. Must Have | Should Have |
---|
lobby and game map rolling and dashing deathmatch gamemode 3 events (black hole, table tipping, everybody jump) keyboard and controller support online and local multiplayer (combinable) spectator mode
| | Could Have | Wont have Yet | | Items (abilities, effects and more) different maps black ball (concept, WIP) white ball (always active , attacks players) random static enviromentals (bottles, loopings) different ball types (big, medium, small, bouncy) personalized hole in effects SteamDeck optimization tutorial wave gamemode
|
|
|
Panel |
---|
| Expand |
---|
| Golf With Your Friends
Section |
---|
Column |
---|
| Steam Description Excerpt:Why have friends if not to play Golf... With Your Friends! Nothing is out of bounds as you take on courses filled with fast paced, exciting, simultaneous mini golf for up to 12 players! Key Features:12 Player Multiplayer! Make sure your skills are up to scratch as you tee off against 11 other golfers in simultaneous online multiplayer. Themed Courses! Go head to head on courses with unique mechanics and holes. Become a pro in the pirate course, aim for an albatross in the ancient theme or wage all out Worm warfare in the Worms course! Powerups! Drive a wedge between your friends as you trap their ball in honey, freeze it or turn it into a cube. Three Game Modes! Tee off in classic mini golf, shoot for the pars in hoops or swap the hole for a goal in hockey Level Editor! Putt your own spin on the game by creating, sharing and playing your own courses. Customisations! Turn the fairway into the runway, with unlockable hats, skins and trails for your ball. |
Column |
---|
| Image Added
|
|
↑ Back to Top |
|
Panel |
---|
| Expand |
---|
| WORLD
Image Added The billiard room
The world of Billgard is a simple bar with a pool table in the centre. There is no story or anything else. It's a pure focus on gameplay. However, if Billgard had a story, it would look like this: “In a smoky bar, between dim lights and the clinking of glasses, a billiard ball came to life. It was ball number 8, black and impenetrable. The other balls rolled towards it, trying to push it into the pockets of the table. But number 8 wanted more from its newfound existence. With a quick dash, it pushed the other balls aside and leapt into the air, landing on the cold floor of the bar. As soon as it survived the impact, it faced a new danger: drunks trying to pick it up or kick it away. It moved skillfully around swaying legs and dodged clumsy shoes. Every attempt to grab it failed miserably. Finally, it reached the bar's door and charged through, out into the night. But it was not alone on the street. A pack of dogs caught the scent of the small ball and chased it with bared teeth. But number 8 was faster and more maneuverable. It rolled through narrow alleyways, jumped curbs, and left the dogs panting in its wake. Just as the ball thought it was safe, blue lights bathed the street in an eerie glow, and sirens blared. The police had joined the chase. Number 8 raced through the streets, dodging barriers and rolling relentlessly forward. Even when the military arrived, it could not be stopped. But the moment it almost escaped, it was caught by a bright light and pulled into the sky. Aboard a spaceship, number 8 found itself surrounded by aliens. It hovered in the air, encircled by creatures that examined it curiously. But the little ball knew no fear. It shot through the spaceship, ramming into the aliens and fighting with all its might. Finally, it activated a self-destruct sequence and escaped at the last moment. But the adventure did not end there. On the brink of death, number 8 was pulled into a glistening, bright world where a powerful being, God himself, awaited it. The little ball trembled with awe but stood firm. With a final, decisive leap, it rolled towards God. It was a battle beyond imagination, a struggle between creator and creation. And if it hasn’t lost, then it’s still rolling happily ever after.” |
|
Panel |
---|
| Expand |
---|
| GAMEPLAY LOOPS
Section |
---|
Column |
---|
Core Game LoopImage Added |
Column |
---|
Image Added |
|
TABLE DESIGN
The billiard table is modelled after a real billiard table in the default setting. The dimensions all correspond to the original. However the size of the table can be adjusted for different scenarios. The width and length can be adjusted separately. So that the length of the game does not drag on, the table size shrinks over time in the sense of a ballte royal. The pocket size remains constant. MOVEMENT AND COMBAT
The ball can be moved in two ways. The ‘normal’ movement rolls the ball forwards/backwards and left/right. The input only rotates the ball, causing it to move indirectly. The other option is a dash, which gives the ball a strong push in the current direction of view (horizontal). Section |
---|
Column |
---|
| DashThe dash can be used every 2 seconds. Due to the high force of the dash compared to normal movement, you lose control for a brief moment. To avoid putting yourself in a pocket, considered use is of crucial importance. As well as moving quickly, the dash is also used to push other balls. The aim, as in real billiards, is to hit the opponent's ball so that it is pushed into a pocket. The final use of the Dash is to dodge. If an enemy ball comes rushing towards you, you can use the dash to quickly get out of the way at the last second. Since the dash is executed in the direction you're facing, and given that the round billiard ball makes it unclear to other players which direction that actually is, it allows for driving rolling exciting and tactical maneuvers. |
Column |
---|
Image Added Dash: Represented by an orange trail |
|
Section |
---|
Column |
---|
| Pocketing / ScoringKills (points in Free For All mode) are achieved by knocking your opponent's balls into the pockets or off the table. As soon as a ball leaves the playing field in this way, the last ball to make contact is awarded the point. This is reset after 5 seconds so that no undeserved points are generated. Regardless of whether you have been pushed or have selfstroyed yourself, your own death counter goes up. This is decisive in deathmatch mode. |
|
Section |
---|
Column |
---|
| StunAs soon as you have been hit by another ball with a certain force, your own ball is stunned. The length of the stun depends on the strength of the hit, up to a maximum of 3 seconds. In this condition, you cannot move or dash normally. If you bump into another ball while you are stunned, the original bumper that stunned you is counted as the originator of the bump. In this way, as in real billiards, balls can be pocketed over other balls. |
Column |
---|
Image Added Stun: Represented by a purple aura |
|
Section |
---|
Column |
---|
| PhysicsThe majority of the game tries to orientate itself as closely as possible to real physics. The exception to this is hitting other balls. The impact force is significantly increased here, so even on a bustling pool table where all the balls are moving at the same time, you get the feeling that your own shots are having an effect. |
|
CAMERA
A third-person-ball camera follows behind the ball. The camera is not blocked by other balls. However, as soon as you move closer to the side railing, the camera moves closer to the ball. If you get too close, the ball becomes transparent. TABLE EVENTS
To loosen up the gameplay, random events occur at random intervals (between 30 and 60 seconds). Each event has an announcement phase and a execution phase. JumpAnnouncement phaseA circle effect around the ball, which slowly gets smaller. Execution phaseAll the balls are ‘pushed’ upwards at the same time. For a brief moment, air battles ensue. One perfect hit almost certainly knocks the opponent's ball off the field. However, if you miss, you will almost certainly be sent off the field. So it's a high risk/reward situation. In rare cases, the event can save you by giving you a final boost upwards as you fall off the table, allowing you to dash back on. TiltAnnouncement phaseThe table starts to tremble slightly. Execution phaseThe table slowly tilts to about 45° in one direction and then in the other. The table is tilted so much that you move very slowly in one direction, but much faster in the other. As a result, most of the balls gather on one side, creating a wonderfully chaotic and dangerous situation. Black holeAnnouncement phaseThe light dims and a radius marker appears on the table. Execution phaseA black hole appears in the centre of the marking, which attracts all billiard balls in the radius. The strength of the attraction decreases towards the outside. After a few seconds, the black hole ‘explodes’ and throws all the balls away. More and more balls gather in the centre of the black hole, but they can save themselves with a clever dash or push other balls away. The danger of it exploding and the possibility of knocking other balls away provide the decisive kick! LOBBY LEVEL
As soon as a game has been hosted and/or you have joined a game, you are in the lobby. In the lobby, you can already roll around with a ball and give your ball a different look. The lobby itself is a playground for billiard balls, with loops, jumps, parkour, etc.. All the players can use them to pass the time while they wait for the last players. The many possibilities invite you to come up with your own little tasks. For example, a duel in the loop, long jump competitions, races, etc. The first player on the host/server can also customise the game mode and settings here. AI-Enemies
Section |
---|
Column |
---|
| For rounds with few players or for that extra bit of chaos, simple AI balls can be added. These dash towards an opponent every 3-5 seconds. After every third dash, the currently targeted opponent is randomly reselected (this can also be the same opponent again). AI balls have no “life” and always return to the playing field after a short cool-down. They cannot win the game. However, they score points for the human players if they are pushed into a pocket by them. |
Column |
---|
Image Added Ai behavior tree |
|
|
|
Panel |
---|
| Expand |
---|
title | 30 Seconds of gameplay |
---|
| 30 SECONDS OF GAMEPLAY
Context and SetupYou are fighting against seven of your friends. Four have already been eliminated, leaving only you and three others. You still have two of your three lives, as do two of your opponents. One, however, still has all three lives. You are just about to concentrate on this player when the table suddenly starts to shrink.
Player Actions00:00 - 00:05 You roll cautiously across the billiard table, while three other balls zoom around nearby. The tablehas already shrunk a bit, and the pockets seem closer than ever. Your direction is hard to read, allowing for some tactical maneuvers. You spot the ball with three lives and plan a targeted attack. 00:05 - 00:10 Suddenly, a warning indicator appears on the table, and the surface starts to tremble. A Tilt Event is about to happen. The other players panic and begin adjusting their positions, while you quickly back up a few perimeters. 00:10 - 00:15 The table tilts! Balls roll dangerously toward one side of the table, and all players scramble to keep their balance on the slanted surface. You use a quick Dash to get to safety, but the ball with three lives collides with you, knocking you toward the edge. 00:15 - 00:20 You’re stunned for a second, glowing with a purple aura. Before your opponent can strike again, you shake off the daze and turn to escape. 00:20 - 00:25 A marker appears on the table, and the lights dim. A black hole forms in the center! All balls are slowly drawn toward the middle. You resist the pull, rolling away and pushing another player closer to the center. 00:25 - 00:30 The black hole explodes, sending all balls flying! You barely saved by the side rail of the table. But one of the other balls you push into the black hole flies straight into a pocket. One life less for this pork cheek. And one more point for you! With two lives left and an extra point, you roll back into action, ready for the next, possibly final, 30 seconds of chaos. |
|
Panel |
---|
| Expand |
---|
| OVERVIEW
Action | Controller | Keyboard+Mouse |
---|
Roll / Move | Left Stick | W, A, S, D | Control Camera | Right Stick | Move Mouse | Dash | Right Trigger | Shift | Select Skin (Lobby only) | West Button, East Button | Arrow Key Left, Arrow Key Right | Show more Information | Select/Back Button | Tab | Game Settings (Server only) | Select/Back Button | Tab | Add Local Player | Y | E | Remove Local Player | B | R | Start Game (Server only) | Start Button (hold 1 sec) | Enter (hold 1 sec) | Open Menu | Start Button | Esc | Confirm (Menu) | A | Enter / Left Mouse Button | Back (Menu) | B | Esc / Right Mouse Button | Navigate (Menu) | Left Stick, D-Pad | Move Mouse / Arrow Keys | Scroll (Menu) | Left Trigger, Right Trigger | Mouse Wheel | Previous / Next Tab (Menu) | Left Shoulder Button, Right Shoulder Button | Use Mouse | More Information (Menu) | Select/Back Button | Tab | Close Window (Menu) | Start Button | Esc |
CONTROLLER
Section |
---|
Column |
---|
| Image Added Controller layout for gameplay |
Column |
---|
Image Added Controller layout for UI |
|
KEYBOARD
Image Added Keyboard layout for gameplay
Image Added Keyboard layout for UI
|
|
Panel |
---|
| Expand |
---|
|
Image Added Section |
---|
Column |
---|
| From the menu you decide whether you want to host a server or you select one from the list. You can access and adjust the settings at any time both from the main menu and in the game (by pressing Esc/Start). As this is an online game, the game is not paused. |
Column |
---|
Image Added Serverliste Image Added Gamemode menu |
|
HUD
Section |
---|
Column |
---|
| The HUD is kept minimalistic and should not distract from the gameplay. Simple messages, together with small effects and sounds, provide information about events such as the pocketing of other balls or victory. |
Column |
---|
Column |
---|
Image Added Pocketed message |
Column |
---|
Image Added Win message |
|
|
|
|
Panel |
---|
| Expand |
---|
| VFX
Section |
---|
Column |
---|
| The VFX were made with the help of Unreal Engines Niagara Particle System. |
Column |
---|
Image Added Niagara Particle Editor |
|
SKINS
The player can choose between different skins. There are the standard skins from real billiards, as well as a few extra skins. Various techniques have been used here. Texture BasedTextures were edited in external programmes (Krita, Inkscape), imported into Unreal Engine and mapped onto a Sphere.
Section |
---|
Column |
---|
Image Added Exemplary billard skin |
Column |
---|
Image Added LGBTQ skin |
Column |
---|
Image AddedPlanet skin |
|
Procedural BasedPatterns were generated procedurally using customised shaders. This was done with the Unreal Engine Material Editor. Many of these resulting patterns are then also animated with the help of their procedural nature.
Column |
---|
| Image Added Animated pattern skin |
|
|
Panel |
---|
| Expand |
---|
| Overview
Billgard is developed with the Unreal Engine with Windows as the target. Special mention should be made of the integrated Chaos Physics Engine of the Unreal Engine, of which the physics-based movement makes great use. For the local multiplayer you need standard gamepads, which is also the focus of the development. However, it can also be played very well alone with a mouse and keyboard. An adaptation for other platforms fits into the concept, but is not planned. MULTIPLAYER
In Billgard it is possible to play locally, online and a combination of both. This means that up to 4 players can play on each client and the server itself. However, the total number of balls must not exceed 14. This limit is restricted for gameplay reasons (size of the map, etc.) and because of the historical proximity to real billiards (7 fulls + 7 halves). In terms of performance, we were able to support over 30 players in tests. SOFTWARE
Game Engine | Unreal Engine 5.3 | Version Control | Git auf Github | Programming | Jetbrains Rider, C++ | 3D Modelling | Blender | Texturing/2D | Affinity Photo, Krita, Inkscape | Audio Middleware | Audacity, Cubase | Project Management | Codecks | Documentation | Atlassian Confluence | Communiacation | Discord | Unreal Tools | FCTween, Multigard, Utilgard |
|
|
Panel |
---|
| Expand |
---|
| 3D-MODELS
Balls:Environment:Billard Table Corner Pockets Center Pockets Side Rail Plane
Statics Loopings Tubes Ramps Windows Platforms
Bar (Asset Pack)
SOUND
World:Bar atmosphere Bar music Light flickering
Balls:Player-specific:UI:Confirm Option Back/Cancel Start Game
EventsBlack hole Jump Table tilt Eliminated Game Won
VFX
World:Balls:Stunned Dash Dash reloaded Hit Holed
Player-specific:UI:Confirm Option Back/Cancel Start Game
Events: |
|
Panel |
---|
| Expand |
---|
| MANAGMENT
We worked in two-week (to begin with weekly) sprints. We have also set ourselves several milestones. Each milestone was given its own MoSCoW diagram, in which the points were usually ranked higher than before. At the beginning, Jira was used as the management tool. In the course of development, we switched to Codecks. This has served our requirements (a much more streamlined interface and fewer functions) much better. A lot of management overhead has been reduced.
Image Added |
|
Panel |
---|
| Expand |
---|
| TEAM
Section |
---|
| Column |
---|
| Image Added Fred Alfs |
Column |
---|
Student ID | 2622660 |
---|
Responsibility | Network Programming User Interface Game Design |
---|
Strengths | Lots of technical experience |
---|
Weaknesses | Not a person |
---|
frederik.alfs@haw-hamburg.de |
|
Section |
---|
| Column |
---|
| Image Added Lionel Kaplanski |
Column |
---|
Student ID | 2622532 |
---|
Responsibility | Environment Art Textures Visual Effects Sound Design Game Design |
---|
Strengths | Initiative |
---|
Weaknesses | works to hard, no vacation |
---|
lionel.kaplanski@haw-hamburg.de |
|
Section |
---|
| Column |
---|
| Image Added Finn Reimann |
Column |
---|
Student ID | 2619707 |
---|
Responsibility | Gameplay Programming Physics Programming Music Game Design |
---|
Strengths | Idea finding |
---|
Weaknesses | Presentations |
---|
finn.reimann@haw-hamburg.de |
|
|
|
Panel |
---|
| Expand |
---|
| Term | Meaning | Description |
---|
Ballte Royal | Battle Royal | A battle royal with more balls. | UI | User Interface | 2D Elements in front of the game giving important information to the player. |
|
|
|
|
|
|