This repository contains the slides (FR / EN), the PDF (FR / EN) and the demo video games created for the "Make games in Delphi (2024 edition)" talk by Patrick Prémartin during the Dev Days of Summer 2024 organised by Embarcadero.
This session was an opportunity to reiterate the importance for all developers (with or without experience) of getting involved in video game creation (for example, on game jam weekends). It's a good way to get up to speed on features that are rarely used in everyday development, and then apply these skills to "more serious" projects, which also need responsiveness and intuitive user interfaces.
Several code repositories (Delphi Game Engine, Gamolf FMX Game Starter Kit) allow you to work without a game engine, but not from scratch. This leaves the developer in control of what he wants to do, while removing the monotony of basic operation: screens, translations, program and game settings, music support and use of game controllers to manipulate the user interface.
Delphi lets you do it all, even games - enjoy!
This code repository contains a project developed in Object Pascal language under Delphi. You don't know what Delphi is and where to download it ? You'll learn more on this web site.
- Make games in Delphi (2024 edition) (in English)
- Make games in Delphi (2024 edition) (live session replay in English)
- Faites des jeux en Delphi (v2024) (in French)
Follow my development streams of software, video games, mobile applications and websites on my Twitch channel or as replays on Serial Streameur mostly in French.
This program is a simple quiz game with a questions generator.
Source file is available from this folder.
To test this game, download the installer from the project page on itch.io, where you'll also find the other demo video games in the starter kit.
To download this code repository, we recommend using "git", but you can also download a ZIP file directly from its GitHub repository.
This project uses dependencies in the form of sub-modules. They will be absent from the ZIP file. You'll have to download them by hand.
- DeveloppeurPascal/AboutDialog-Delphi-Component must be installed in the ./lib-externes/AboutDialog-Delphi-Component subfolder.
- DeveloppeurPascal/Delphi-Game-Engine must be installed in the ./lib-externes/Delphi-Game-Engine subfolder.
- DeveloppeurPascal/Gamolf-FMX-Game-Starter-Kit must be installed in the ./lib-externes/Gamolf-FMX-Game-Starter-Kit subfolder.
- DeveloppeurPascal/librairies must be installed in the ./lib-externes/librairies subfolder.
As an Embarcadero MVP, I benefit from the latest versions of Delphi and C++ Builder in RAD Studio as soon as they are released. I therefore work with these versions.
Normally, my libraries and components should also run on at least the current version of Delphi Community Edition.
There's no guarantee of compatibility with earlier versions, even though I try to keep my code clean and avoid using too many of the new ways of writing in it (type inference, inline var and multiline strings).
If you detect any anomalies on earlier versions, please don't hesitate to report them so that I can test and try to correct or provide a workaround.
This source code is distributed under the AGPL 3.0 or later license.
You are generally free to use the contents of this code repository anywhere, provided that:
- you mention it in your projects
- distribute the modifications made to the files supplied in this project under the AGPL license (leaving the original copyright notices (author, link to this repository, license) which must be supplemented by your own)
- to distribute the source code of your creations under the AGPL license.
If this license doesn't suit your needs, you can purchase the right to use this project under the Apache License 2.0 or a dedicated commercial license (contact the author to explain your needs).
These source codes are provided as is, without warranty of any kind.
Certain elements included in this repository may be subject to third-party usage rights (images, sounds, etc.). They are not reusable in your projects unless otherwise stated.
If you want an answer from the project owner the best way to ask for a new feature or report a bug is to go to the GitHub repository and open a new issue.
If you found a security issue please don't report it publicly before a patch is available. Explain the case by sending a private message to the author.
You also can fork the repository and contribute by submitting pull requests if you want to help. Please read the CONTRIBUTING.md file.
If you think this project is useful and want to support it, please make a donation to its author. It will help to maintain the code and binaries.
You can use one of those services :
or if you speack french you can subscribe to Zone Abo on a monthly or yearly basis and get a lot of resources as videos and articles.