Epitech Project, RPG
This is a Simple CSFML Game made in my first Year at Epitech school. the PokémonGenerations project goal was to create a mini game in C using CSFML, but he's now replaced by another project, the "my_rpg" where the goal is to make a RPG game.
Compile the makefile (make) !
$> make re $> ./rpg
- The window can be closed using events,
- The game manages the input from the mouse click and keyboard,
- The game contains animated sprites rendered thanks to sprite sheets,
- Animations in your program are frame rate independent,
- Animations and movements in your program are timed by clocks.
- A collision system including moving and static elements with different shapes.
- A simple particle system that can display at least 2 types of particles.
- Particle effects (changing colors, scaling, bouncing, fading) to simulate realistic environment (wind, fire, rain, snow. . .).
- Camera movements (zoom, translation, rotation).
- 3D effects (depth scaling, isometric projection. . .).
- A starting menu with at least two buttons, one to launch a game, and one to quit the game.
- An escape key to pause the game when launched.
- A menu when the game is paused with at least two buttons, one to go to the starting menu and the other to leave the game.
- A basic fighting system.
- An inventory and status menu.
- The starting menu and the game must be two different scenes.
- Your window should stick between 800x600 pixels and 1920x1080 pixels.
- The game should have an “How To play” menu, explaining how to play your game.
- The game should have NPC with whom the player can interact (fight, quest, discuss).
- As much information as possible about the game should be stored in a configuration file.
- The buttons in your game should have at least three visual states: idle, hover, and clicked.
- If your game has cut scenes or an animated intro (and it should) the player should be able to skip it.
- The game should have a beginning and an end.
- The game should have an advanced collision system to manage complex fighting.
- Let the player save and load its own save.
- Let the user customize its character.
- Have different types of enemies.
- Have a skill tree, unlocking different abilities (active and passive).
- Have a “settings” menu that could contain sound options and/or screen size options.
- Have a particle engine.
- Use scripting to describe entities.
- Have a map editor.
- Your program would be a real video game.