Home

Slider #1 - The birth of an idea

Development, Miscellaneous

In this post

Having a good project idea is not an easy task, turning this idea into a concrete output is even harder. Through the Slider series, you will accompany me in my thought process and advancements in order to create something, that was not started yet.

The idea

When used as verbs, glide means to move softly, smoothly, or effortlessly, whereas slide means to (cause to) move in continuous contact with a surface. diffsense.com

I have always been fond of strategy games or puzzles; as a kid, I could not stop myself from solving enigmas or complex problems. One puzzle in particular, has never entirely left my mind since I've played it the first time: the Ice Path in Pokemon 2nd generation.

This well-known puzzle is quite straightforward: given an ice ground where it is impossible to stop once a direction is chosen, the player needs to use boulders and walls in order to reach the goal.

Here's a simple example, use the arrow keys or swipe on your phone to try and reach the end !

Too easy for you ? You can try this one then:

As you can see, it can get harder really fast with bigger maps, and unique solutions. Chances are if you did not randomly try all possible ways, you had to backtrack to solve the last one; which makes sense: in this kind of puzzles where you're coming from is more important than where you're going to (ie. in a maze you would try to find the shortest path getting you to the end, while here, it is sometimes necessary taking a longer route in order to get the right stop / direction)

The Goal

I've thought about making this game for a while now, and I believe the nature of the puzzles make it the most suitable for mobile. We all from time to time enjoy the small grey matter consuming problems that can take shape in a morning Sudoku, a subway Chess game or a lunch-break Candy Crush level (I'm not one to judge).

It is obvious that a mobile game requires a lot of work, making it even more challenging for me, as I have never really touched a game engine in his life and used to do graphic mini-games in C. Having said that, I'm all the more prepared and ready to take the challenge head-on. Of course, I would not be writing a post about it, if I was planning on releasing a simple prototype like the one above.

Features

I have a lot of ideas for a lot of features that could be put in the game. Some will be added, others removed, but development has not started yet, so this is a brainstorming place.

Blocks

Blocks are the core components of the game, a level or map is made out of a 2D block layout, in which every block has a unique mechanism depending on its nature. As simple as it looks, the above maps where declared as follows in my config file:

export const mapDemo = {
  mapTxt: `
    ____
    _*__
    ___*
    *___
  `,
  startPos: [0, 0],
  endPos: [3, 3],
};
Basics
  • Ice: forces the player to move forward until an obstacle is encountered
  • Obstacle: only thing stopping the player once he starts moving
  • Water: a hole, I would avoid it if I were you
  • End: the goal block
Advanced
  • Railroad switch: switches your direction mid-run, without stopping. Going right while encountering an up switch will redirect you instantly.
  • Broken ice: going back and forth on the same block might weaken it! If it breaks and you fall through the water, it is back to the start
  • Portal: will teleport you to its matching wormhole, while letting you keep your momentum and direction
  • One way road: lets you cross them vertically but not horizontally and vice versa, it might annoy you, it might help you, who knows
  • Button: triggers an action when walking over them; opening a door, breaking a block, rotating a one way road, and so much more
  • Pillar: an obstacle appearing or disappearing each time you move
World rules

Each game obeys to simple rules, in this case: you move on ice, in a 2D map, constrained by the borders of it. What if we took the soul of the game, but tweaked its rules ?

Level design
  • Multi-story level: while playing on a 2D map, buttons and goals could be scattered accros multiple floors, in which you would navigate thanks to holes, bumpers, portals and so on, adding difficulty and new strategic thinking
  • Sliding panels: where the block on which a player exits part 1 of a map, defines the block on which he enters part 2 of said map. Multiple roads are available, but one should find the quickest!
  • Different environments: sliding on ice is fun, but what about surfing on lava? However, impossible to stop on lava without burning, walkable ground could become a new block then
Characters

Adding too many new mechanism, and too many content can be a bad way to add difficulty; characters are a way to re-discover puzzles. Each one could have one special power-up, such as:

  • Removing one obstacle
  • Sliding a portal to the right or the left
  • Being able to walk on water
  • Freezing pillars for one move (modifying their cycle at the same time)

Power-ups would be usable only once per level, whenever the players chooses to. Changing the required thinking process, and adding possibilities at the same time, characters would be a way to force logical thinking instead of brute-forcing / back-tracking the whole level.

More

Games also require music, sound effects, sprites, app design, menu, tutorials, account management, web communication and last but vital: fun, a game should be fun!

On top of all this, could be attached online play, map creation, a scoring system, co-op maps (in which characters choice could prove interesting), puzzles rush (complete as many puzzles as possible in a given time) or puzzle of the day... possibilities are, once again, endless.

Conclusion

While the coding experience required is not immense, countless hours are needed in order to create something really interesting. Lot of technical parts have been skipped in this post, but might appear in future ones, in which I plan to detail the progress of Slider. I might give up, I might succeed, but whatever happens, I plan to take up skills along the way.

© 2024 by Anatole. All rights reserved.
Theme inspired by LekoArts' work