Cadre du projet : Projet étudiant en groupe. Création d'un Sokoban autour d'un feature principale
Temps de réalisation : 3 mois (Mars -Mai 2019)
Langage de programmation : HTML, CSS, Javascript
Présentation du projet
Premier projet web, Sokolaser est le travail de trois Gameplay Programmers durant 3 mois et avait pour but, non seulement de suivre et accompagner un apprentissage du web et du Javascript dans un contexte de jeu, mais également de suivre un processus créatif autour d'un concept de jeu.
La seule contrainte étant de garder l'idée d'éléments poussés pour résoudre un puzzle, le sujet restait assez vague pour ouvrir sur de nombreuses créations.
Dans Sokolaser, le but est de relier un rayon laser mortellement dangereux, du lieu de son émission, à son cristal de réception. Pour ce faire, le joueur a à sa disposition des caisses reflétant ce dernier. Certaines peuvent être tournés et déplacés, quand d'autres non.
Développement
Le projet fut d'abord abordé comme la création d'un sokoban sans contrainte de programmation. C'est donc bien la créativité qui fut avant tout mis en avant au début de ce concept.
J'ai donc participé à l'imagination et la conceptualisation d'une idée, passant par de nombreuses discussions et brainstorming avec les autres membres du groupe, ainsi que des tests entre nous de petits prototypes rapidement réalisables avec quelques morceaux de papier.
Le thème et le gameplay finalement choisis et verrouillés, j'ai réalisé des prototype plus poussés afin de procéder à des tests à plus grande échelle lors d'une Milestone avec le reste des étudiants. Ces derniers ont permis de mettre a l'épreuve la solidité du concept avant de se lancer dans une production plus importante.
Une fois le concept validé, le développement Javascript a commencé.
Lors de ce dernier, je me suis principalement occupé du gameplay en lui même (déplacement des caisses, gestion du laser, du comportement des caisses en fonction de ce dernier, etc).
Mais également de tout ce qui peut l'altérer, comme les fonction de reset, ou les boutons REDO et UNDO. J'ai également travaillé sur les feedback et la juiciness de ces derniers (son du laser, scintillement des miroirs, vibration des murs, etc).
Afin de simplifier l'action, et principalement sur mobile, un pathfinding a été mis en place, j'ai participé à ses réglages et son adaptation avec le laser bloquant une partie des déplacements.
J'ai également réalisé sous Adobe Illustrator puis animé sous Adobe Animate l'ensemble des éléments composant le niveau, à l'exception du personnage pour lequel je n'ai créé que ses animations de marche et idle.
Plusieurs variations de murs et sol ont été réalisées, afin de réduire la monotonie des paternes.