Skip to content

Commit

Permalink
Improve examples descriptions (#735)
Browse files Browse the repository at this point in the history
  • Loading branch information
ClementPasteau authored Nov 22, 2024
1 parent 7a510fc commit 1890e00
Show file tree
Hide file tree
Showing 24 changed files with 187 additions and 163 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`exampleShortHeaders.json post build checks defaultTags 1`] = `
Object {
"authorIds": Array [
"R0F5QGNCzgOY5w2cxGeKJOq2UaD2",
],
"codeSizeLevel": "small",
"description": "Check out [the YouTube video](https://www.youtube.com/watch?v=eU0kkLSdw0Y&list=PL3YlZTdKiS898Wio0tvKjQM0x3zo4V0Mb) explaining how this example was made.",
"difficultyLevel": "simple",
"gdevelopVersion": "",
"id": "d260466ba96262fd00930eb950ae486209a828f851add1c1c5bbc2a2d020f868",
"license": "MIT",
"name": "Platformer",
"previewImageUrls": Array [
"https://resources.gdevelop-app.com/examples/platformer/preview.png",
"https://resources.gdevelop-app.com/examples/platformer/square-icon.png",
],
"shortDescription": "An example of a basic platformer (Mario-like) game. Jump around and collect as many coins as you can!",
"slug": "platformer",
"tags": Array [
"platformer",
"game",
"simple",
"Starter",
"Anchor",
"Animatable capability",
"Event functions",
"Sounds and music",
"Layers and cameras",
"Conversion",
"Events and control flow",
"Mathematical tools",
"Mouse and touch",
"Objects",
"Scene",
"Timers and time",
"Variables",
"Debugger Tools",
"Effect capability",
"Flippable capability",
"Linked objects",
"Opacity capability",
"Panel Sprite (9-patch) Object",
"Particle system",
"Platform behavior",
"Shape painter",
"Resizable capability",
"Scalable capability",
"Sprite",
"System information",
"Text capability",
"Text object",
"Tiled Sprite Object",
"Top-down movement",
"Tweening",
"Parallax for Tiled Sprite",
"Panel sprite button",
"Platformer character animator",
"Rectangular movement",
"Smooth Camera",
"Checkpoints",
"Gamepads (controllers)",
"Multitouch joystick and buttons (sprite)",
"Shake object",
"Volume Falloff",
],
}
`;

exports[`exampleShortHeaders.json post build checks defaultTags 2`] = `
Object {
"authorIds": Array [
"jy7FXnGX0ZZcWfrAI9YuQaeIphi1",
"9MGDlUQAh8QUilno4JPycekjRCJ3",
"R0F5QGNCzgOY5w2cxGeKJOq2UaD2",
],
"codeSizeLevel": "small",
"description": "",
"difficultyLevel": "simple",
"gdevelopVersion": "",
"id": "3cfc75d79ece13652857e8f9c20931f275916ca88f89940ca81b91734da4ac5d",
"license": "MIT",
"name": "Tappy plane",
"previewImageUrls": Array [
"https://resources.gdevelop-app.com/examples/tappy-plane/thumbnail.png",
],
"quickCustomizationImageUrl": "https://resources.gdevelop-app.com/examples/tappy-plane/thumbnail-quick-customization.png",
"shortDescription": "Tappy Plane is a Flappy Bird-like game. Tap to keep your plane in the air and make your way through the cave system.
Get as far as you can before you crash in to a wall, submit your score, and try again.",
"slug": "tappy-plane",
"tags": Array [
"tappy-plane",
"game",
"simple",
"Starter",
"Anchor",
"Animatable capability",
"Event functions",
"Sounds and music",
"Layers and cameras",
"Events and control flow",
"External layouts",
"Storage",
"Keyboard",
"Mathematical tools",
"Mouse and touch",
"Network",
"Objects",
"Scene",
"Timers and time",
"Variables",
"Destroy Outside Screen Behavior",
"Effect capability",
"Flippable capability",
"Leaderboards",
"Opacity capability",
"Panel Sprite (9-patch) Object",
"Platform behavior",
"Player Authentication",
"Resizable capability",
"Scalable capability",
"Sprite",
"Text capability",
"Text Input",
"Text object",
"Tiled Sprite Object",
"Tweening",
"Ellipse movement",
"Panel sprite button",
"Shake object",
"Flash object",
],
}
`;
125 changes: 2 additions & 123 deletions __tests__/post-build/exampleShortHeaders.json.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,135 +26,14 @@ describe('exampleShortHeaders.json post build checks', () => {
if (!platformer)
throw new Error('Platformer not found in the example short headers');

expect(platformer).toEqual(
expect.objectContaining({
id: 'd260466ba96262fd00930eb950ae486209a828f851add1c1c5bbc2a2d020f868',
slug: 'platformer',
name: 'Platformer',
authorIds: ['R0F5QGNCzgOY5w2cxGeKJOq2UaD2'],
shortDescription:
'An example of a basic platformer (Mario-like) game. Jump around and collect as many coins as you can!',
description:
'Check out [the YouTube video](https://www.youtube.com/watch?v=eU0kkLSdw0Y&list=PL3YlZTdKiS898Wio0tvKjQM0x3zo4V0Mb) explaining how this example was made.',
license: 'MIT',
previewImageUrls: [
'https://resources.gdevelop-app.com/examples/platformer/preview.png',
'https://resources.gdevelop-app.com/examples/platformer/square-icon.png',
],
tags: expect.arrayContaining([
'platformer',
'game',
'simple',
'Starter',
'Anchor',
'Event functions',
'Sounds and music',
'Layers and cameras',
'Conversion',
'Events and control flow',
'Mathematical tools',
'Mouse and touch',
'Objects',
'Scene',
'Timers and time',
'Variables',
'Debugger Tools',
'Linked objects',
'Panel Sprite (9-patch) Object',
'Particle system',
'Platform behavior',
'Shape painter',
'Sprite',
'System information',
'Text object',
'Tiled Sprite Object',
'Top-down movement',
'Tweening',
'Panel sprite button',
'Platformer character animator',
'Rectangular movement',
'Smooth Camera',
'Checkpoints',
'Gamepads (controllers)',
'Multitouch joystick and buttons (sprite)',
'Shake object',
'Volume Falloff',
]),
codeSizeLevel: 'small',
difficultyLevel: 'simple',
gdevelopVersion: '',
})
);
expect(platformer).toMatchSnapshot();

const tappyPlane = exampleShortHeaders.find(
({ name }) => name === 'Tappy plane'
);
if (!tappyPlane)
throw new Error('Tappy Plane not found in the example short headers');

expect(tappyPlane).toEqual(
expect.objectContaining({
id: '3cfc75d79ece13652857e8f9c20931f275916ca88f89940ca81b91734da4ac5d',
name: 'Tappy plane',
slug: 'tappy-plane',
shortDescription:
'Tappy Plane is a Flappy Bird-like game. Tap to keep your plane in the air and make your way through the cave system.\nGet as far as you can before you crash in to a wall, submit your score, and try again.',
license: 'MIT',
previewImageUrls: [
'https://resources.gdevelop-app.com/examples/tappy-plane/thumbnail.png',
],
quickCustomizationImageUrl:
'https://resources.gdevelop-app.com/examples/tappy-plane/thumbnail-quick-customization.png',
authorIds: [
'jy7FXnGX0ZZcWfrAI9YuQaeIphi1',
'9MGDlUQAh8QUilno4JPycekjRCJ3',
'R0F5QGNCzgOY5w2cxGeKJOq2UaD2',
],
tags: expect.arrayContaining([
'tappy-plane',
'game',
'simple',
'Starter',
'Animatable capability',
'Event functions',
'Sounds and music',
'Layers and cameras',
'Events and control flow',
'External layouts',
'Storage',
'Keyboard',
'Mathematical tools',
'Mouse and touch',
'Network',
'Objects',
'Scene',
'Timers and time',
'Variables',
'Destroy Outside Screen Behavior',
'Effect capability',
'Flippable capability',
'Leaderboards',
'Opacity capability',
'Panel Sprite (9-patch) Object',
'Platform behavior',
'Player Authentication',
'Resizable capability',
'Scalable capability',
'Sprite',
'Text capability',
'Text Input',
'Text object',
'Tiled Sprite Object',
'Tweening',
'Ellipse movement',
'Panel sprite button',
'Shake object',
'Flash object',
]),
codeSizeLevel: 'small',
difficultyLevel: 'simple',
gdevelopVersion: '',
})
);
expect(tappyPlane).toMatchSnapshot();
});
});
4 changes: 2 additions & 2 deletions examples/button-effects/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Change the way a button looks based on the state of the button

This is a simple yet powerful method for changing the appearance of objects that using the "Button effects" behavior.
This is a simple yet powerful method for changing the appearance of objects that using the "Button effects" behavior.
The states of a button include: idle, hover, pressed, held outside, and focused.

Multiple behaviors are provided and they can be combined to make a juicy button with animated responses to user input.
Expand All @@ -11,4 +11,4 @@ Multiple behaviors are provided and they can be combined to make a juicy button
- Button size (scale) tween
- Button color (tint) tween
- Button opacity tween
- Button angle tween
- Button angle tween
4 changes: 3 additions & 1 deletion examples/downhill-bike-physics-demo/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
Try to cross the finish line as fast as possible without falling over! And remember to pedal safe!

Starting with this template, use the Physics Engine to build an advanced simulation of a bike with a person pedaling on it! You will discover how to join objects, apply basic physics behaviors to your scene and change your camera settings to adapt to what's happening during the game.
Starting with this template, use the Physics Engine to build an advanced simulation of a bike with a person pedaling on it!

You will discover how to join objects, apply basic physics behaviors to your scene and change your camera settings to adapt to what's happening during the game.
2 changes: 1 addition & 1 deletion examples/game-feel-demo/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
A demo showing how to enhance the "game feel" of your project: VFX, shot trail, ambient sounds and SFX, screenshake, wobble...

Have you ever felt like you were actually inside a video game when playing it? Discover GDevelop's capabilities and immerse future players in your next game!
Have you ever felt like you were actually inside a video game when playing it? Discover GDevelop's capabilities and immerse future players in your next game!
2 changes: 1 addition & 1 deletion examples/geometry-monster/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
A hyper casual endless game where you have to collect shapes and avoid bombs, with a progressively increasing difficulty.

Start from this example to create your own catch game! You will learn about collisions, particle emitters, and how to set up a menu.
Start from this example to create your own catch game! You will learn about collisions, particle emitters, and how to set up a menu.
15 changes: 8 additions & 7 deletions examples/multiplayer-jump-game/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
An online multiplayer physics game where try to collect all of the apples in the game without throwing your keyboard through your monitor.
An online multiplayer physics game where you try to collect all of the apples in the game without throwing your keyboard through your monitor.

This game example includes:
-Multiplayer lobby
-Multiplayer chat
-Physics behavior
-Tween behavior
-Sound effects
-Text objects

- Multiplayer lobby
- Multiplayer chat
- Physics behavior
- Tween behavior
- Sound effects
- Text objects
4 changes: 2 additions & 2 deletions examples/not-a-vania/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
This project is meant as a game example or template for a more advanced platformer. This is in the style of older castlevania entries, such as Castlevania 1 or 3.

There are numerous advanced GDevelop concepts in this project, such as finite state machines (FSMs), tweens, bitmap fonts and bitmap text objects, tilemaps, external event sheets, declaring variables via events, and object variables.
There are numerous advanced GDevelop concepts in this project, such as finite state machines (FSMs), tweens, bitmap fonts and bitmap text objects, tilemaps, external event sheets, declaring variables via events, and object variables.

Before working with this project, it is STRONGLY recommended that you review the following:

At least the first four tutorials on the GDevelop Wiki: http://wiki.compilgames.net/doku.php/gdevelop5/tutorials This example uses concepts from EACH of those tutorials and it is important to understand those concepts before trying to adapt these ideas.

The finite state machine tutorial at: http://wiki.compilgames.net/doku.php/gdevelop5/tutorials/finite_state_machine
The finite state machine tutorial at: http://wiki.compilgames.net/doku.php/gdevelop5/tutorials/finite_state_machine
5 changes: 3 additions & 2 deletions examples/object-slicer/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
Test the Object Slicer extension, which can slice an object into smaller pieces that match the color of original object.
Test the Object Slicer extension, which can slice an object into smaller pieces that match the color of original object.

Useful for creating death animations such as explosions, crumbling, dissolve, or teleportation effects.
Pieces should be a solid white color or the color of the piece not match the original color.

Tips:
- Pieces are linked to the original object which can be used in other events (i.e. explode away from the original object)

- Pieces are linked to the original object which can be used in other events (i.e. explode away from the original object)
2 changes: 1 addition & 1 deletion examples/old-platformer/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
An example of a basic platformer (Mario-like) game. Jump around and collect as many coins as you can!

Platformer games are widely popular, largely because of classics like Sonic, Megaman, or even Teenage Mutant Ninja Turtles. Create your own starting from this template! You will learn about collisions, enemy movements, playing sounds and GDevelop Behaviors.
Platformer games are widely popular, largely because of classics like Sonic, Megaman, or even Teenage Mutant Ninja Turtles. Create your own starting from this template! You will learn about collisions, enemy movements, playing sounds and GDevelop Behaviors.
2 changes: 1 addition & 1 deletion examples/papa-is-you/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
Building upon the sokoban example, it adds mechanics similar to Baba is You, a hit indie puzzle game made by Arvi Teikari in 2019.

In this example, you play using typical Sokoban controls, but there is a twist: you'll also push text blocks that change the game rules to solve puzzles.
In this example, you play using typical Sokoban controls, but there is a twist: you'll also push text blocks that change the game rules to solve puzzles.
2 changes: 1 addition & 1 deletion examples/particle-effects-demo/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
A demo of various high quality particle effects (fire, magic, snow, rune spell...) that you can try and use in your game.

The devil is in the details and this little detail is often found in particles! Explore the possibilities GDevelop offers to make a visually stunning game with the Particle Emitter object.
The devil is in the details and this little detail is often found in particles! Explore the possibilities GDevelop offers to make a visually stunning game with the Particle Emitter object.
4 changes: 3 additions & 1 deletion examples/platformer-room-camera/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
This example shows hows to move camera in between rooms using tweens.

In this example, the camera will smoothly move into the next room when the player leaves it in any of the cardinal directions. The examples also has the additions that the player will get an additional jump when jumping up into a transition and will be kept within the current frame when the transition is in progress.
In this example, the camera will smoothly move into the next room when the player leaves it in any of the cardinal directions.

The example also has the additions that the player will get an additional jump when jumping up into a transition and will be kept within the current frame when the transition is in progress.
2 changes: 1 addition & 1 deletion examples/platformer/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
An example of a basic platformer (Mario-like) game. Jump around and collect as many coins as you can!

Check out [the YouTube video](https://www.youtube.com/watch?v=eU0kkLSdw0Y&list=PL3YlZTdKiS898Wio0tvKjQM0x3zo4V0Mb) explaining how this example was made.
Check out [the YouTube video](https://www.youtube.com/watch?v=eU0kkLSdw0Y&list=PL3YlZTdKiS898Wio0tvKjQM0x3zo4V0Mb) explaining how this example was made.
1 change: 1 addition & 0 deletions examples/plinko/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ In this game the player drops their pachinko ball in an effort to hit as many pe
The Plinko example showcases the physics behavior and how it along with other tools, like the object shake extension, can create a fun and juicy game.

The example features:

- Physics engine 2.0
- Object shake
- Particles
Expand Down
1 change: 1 addition & 0 deletions examples/rhythm/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ Basic example of how to create a music game like Dance Dance Revolution or Frida

When the song ends, the game calculates the scores and decides who wins.
Controls are:

- AWSD for player 1
- LEFT,RIGHT,UP,DOWN for player 2
- Enter for start the game
Expand Down
Loading

0 comments on commit 1890e00

Please sign in to comment.