Tag Archives: 2D

Demons With Shotguns (Xbox One & PS4 port)

Details

Project: Demons With Shotguns
Studio: Mind Shaft Games (ported by Stage Clear Studios)
Genre: Arcade, Brawler, Platform, Shooter
Platform: XBox One, PS4
Job description: Gameplay Programmer
Technologies: Unity3D, .NET, C#, SVN, Tortoise SVN
WebSite: http://mindshaftgames.com/
Store links: XBox One, PS4 (US), PS4 (EU)

Credits

Programmers
Sergio Alonso Martínez
José Miguel Sánchez Fernández

QA
Guillermo Regueiro Martín-Albo
Andrés Conde Herranz
Maria Ruiz Algar
Alberto Relucio Gallego

Producer
Raquel Sánchez Illescas

Description

The ultimate couch fragger gibfest! Armed with a powerful boomstick and bullet deflecting shield, up to four players wage unholy war against each other as they compete for souls in nine different local multiplayer game modes (wave mode for 1-2 players also included) across four realms and 40 arenas. This is demonic local multiplayer action at its bloodiest!

A really fun game for play with one or three friends in local!

Gameplay programmer for the porting to Xbox One and PS4 during  mi period in Stage Clear Studios on 2018. Working to improve the performance and stability on console of this game, performance in code and in draw calls, and to finish the console services integration in code, also solving critical problems with the multiplayer, UI and input implementation, and bad using of plugins and frameworks.

Dependency Injection and the InControl plugin: the downway to the hell in Unity

One of the critical issues in this project was the over engineering applied by the original developers when using a bad implementation of Dependency Injection (or Inversion of Control) architecture in Unity using a third-party framework. This issue results in a very complicated code to debug using the Unity and Visual Studio debuggers because the code makes random and unexpected traces in execution, and this results in more time to port the game to XBox One and PS4 consoles (this project took more of a year to was completed the port to both platforms and pass the TRCs to be published).

Other problem to solve in this port was the bad use of InControl plugin, a popular multiplatform input manager for Unity (and the source of most of the bugs to fix in the most of projects that I worked during a year in Stage Clear Studios). Most of the problems to fix was the InControl implementation with the multiplayer logic and the user session pairing. In PS4 adding a critical bug when the console return from the suspension mode (turn off the console when the game is running and turn on to return the previous session). In PS4 (almost in this project), InControl stop to working after the console return from the suspension mode. This result in fail the TRC process when try to publish a game to Sony.

Because the InControl source code is a mess to apply custom fixes, my solution was the implementation of an own lightweight input system using the built-in Unity input system (based on the input system implemented in my master degree final project, Argos: CICE MPV Project) and the needed calls to PS4 DualShock functions (mostly for vibration). Basically, my system was a wrapper that catch any InControl call, and remaped to Unity built-in input system, recreating all needed classes and structures from InControl API to ease bypass the plugin without rewrite any line of code of the game.

Soul Gun

Details

Project: Soul Gun
Genre: 2D Platform
Platform: Web (HTML5/WebGL)
Job description: Game Programmer
Technologies: Unity3D, .NET, C#
Links:
- Itch.io
: https://ex3.itch.io/soulgun
- Ludum Dare 39: https://ldjam.com/events/ludum-dare/39/soul-gun/ (510th position of +2500 games)
Source Code: https://bitbucket.org/VisualStudioEX3/malaga-jam-week-vi

Credits

Graphic Designer
Pablo Dapena

Game Designer
Carlos L. Hernando

Game Designer, Level Designer
Alberto Sageras Roman

Game Programmer
José Miguel Sánchez Fernández - [EX3]

Description

A game made for the Malaga Jam Weekend VI & Ludum Dare 39 Game Jams. A game made in 48h!

A 2D platform game with a gravity and energy mechanic. The player only can move on floor and shoot his weapon. Each shoot invert the gravity on entire level, enemies included, and each shoot consume a part of the player soul. If the player consumes his soul, then he will die instantly. The player can restore his soul when not shooting his weapon during a short time.

This game shared the MalagaJam and Ludum Dare themes: Atraction & Running out of Power.

Slot Bonanza for Windows 8 (porting)

Details

Project: Slot Bonanza for Windows 8
Client: Infi Apps (contracted by Plunge Interactive (Starloop Studios), studio responsible of the porting)
Genre: Slot Machine, Free to Play
Platform: Windows 8/Windows RT
Job description: Programmer, Technical Artist
Technologies: .NET 4.5, C#, MonoGame 3.0 Beta, Facebook C# SDK, Json.NET, BugSense, Sprite Sheet Packer, Visual Studio Express 2012 For Windows, Visual Studio Express 2012 For Windows Phone (as tool to compile assets for MonoGame project, with help of XNA 4.0)
Link: Slot Bonanza on the Microsoft Store

Description

Gameplay programmer for the porting to Windows 8 (Metro/WinRT app game).

For this job I worked as a remote freelance to the studio responsible to the porting project.

This project is a port of the original game from iOS to Windows 8 (Windows RT). I had to rewritten from scracth the original Objective-C code, based on Cocos2D framework, to .NET, C# and MonoGame 3.0 framework, and also had to adapt the game to the requirements of Windows RT platform and variable screen resolutions.

Escape from Hell

Details

Project: Escape From Hell
Studio: Undead Code Studios
Genre: 2D Platformer Adventure
Platform: Web/Flash
Job description: Game Programmer, Technical Artist & VFX Artist
Technologies: Flash, Action Script 3, Flixel, Flash Develop, MochiAds
Source code: https://github.com/VisualStudioEX3/EscapeFromHell
Play:
    - Play for free on Newgrounds (Flash plugin not required)
    - Play for free on BlueMaxima's Flashpoint project

Credits

Producer
Eduardo Millan - SiPoX

Game Programmer, Technical Artist & VFX
José Miguel Sánchez Fernández - [EX3]

English Localization
Cristina Pinilla Fernandez

Game Designer, Graphic Designer, Level Designer
Ruben Barroso Heredia (*)

(*) Disclaimer: The rest of the team and I, after the publication of the project and in the future, we are no longer related, supported or associated with this person, Ruben Barroso Heredia, and we are not responsible for their legal or illegal activities related directly or indirectly, with the video game industry or related business, including false professional experience accreditation or related training jobs in this area as teacher.

Description

Game Programmer, Technical Artist & VFX Artist for the development of Escape From Hell. An old school 2D platformer adventure, with fixed scenes, without scroll, with a basic mechanic of jump and run, and the special ability to buried underground in some places, for avoiding enemies or pass through some obstacles.

In addition to programming the game, other tasks where I been involved was VFX enhancement in the final art in scene, simulate some post-process effects with the Flash render limitations, like vignetting or dinamic brightness for backgrounds, and guide the artist in how to prepare and optimized the final assets to use in the game.

Aquanoid

Details

Project: Aquanoid
Studio: Undead Code Studios
Genre: Arcade
Platform: Web/Flash
Job description: Game Designer, Game Programmer
Technologies: Flash, Action Script 3, Flixel, Flash Develop, as3sfxr, MochiAds
Source code: https://github.com/VisualStudioEX3/Aquanoid
Play:
    - Play for free on Newgrounds (Flash plugin not required)
    - Play for free on BlueMaxima's Flashpoint project

Credits

Producer
Eduardo Millan - SiPoX

Game Designer, Game Programmer
José Miguel Sánchez Fernández - [EX3]

English Localization
Cristina Pinilla Fernandez

Graphic Designer, Level Designer
Ruben Barroso Heredia (*)

(*) Disclaimer: The rest of the team and I, after the publication of the project and in the future, we are no longer related, supported or associated with this person, Ruben Barroso Heredia, and we are not responsible for their legal or illegal activities related directly or indirectly, with the video game industry or related business, including false professional experience accreditation or related training jobs in this area as teacher.

Description

Game Designer and Game Programmer for the development of Aquanoid. An Arkanoid based game with altered mechanics: the pad/player float on water. The water level goes up every few seconds. The player dies if reach the block level or the ball touch the water.

This game is based on my version of Aquanoid (2K8) for the Game Jam of Campus Party Spain 2008.

Grey Infection

The original flavour of Grey Infection

Before the arrival of the Graphic Designer profile, we have already decided and closed the visual style of the game, a pixel-art style with clean aesthetics, using plain colors (black & white palette for the non-passed levels, and basic color palette for cleared levels). The original art was created by me, based on previous works for TLSA Project and used in White & World project.

The final visual style of the game is an imposed decision by the Graphic Designer because he was unable to work with the original style. The decision was not voted with the original creators of the project, Eduardo Millan and me. And also because we are running-out of the schedule (the Graphic Designer arrival in the last stage of the development, he wasted near of a month trying to adapt with the original style and we needed to be ready to publish the game in less of 2 months after this), we finally desist to use the original style in favor the current used, and finish the rest of development in time.

These is a some captures of the original prototype visual style of the game, the same style used for the Microsoft Dream Build Play 2011 entry:

Pre-Production video and Dream Build Play 2011

A couple of videos from the pre-production stage, mentioning a Grey Infection as succesor of White & World, and early preview of the submited version to Microsoft Dream Build Play 2011 contest, both before the Graphic Designer entered to the team:

Details

Project: Grey Infection
Studio: Undead Code Studios
Genre: 2D Puzzle-Platformer Adventure
Platform: XBox360 (XBox Live Indie Games)
Job description: Game Engine Programmer, Game Programmer, Technical Artist & VFX Artist
Technologies: .NET 4.0, C#, XNA 4.0, TLSA.Engine (own XNA Game Engine), Visual Studio Express 2010
Source code:
https://github.com/VisualStudioEX3/Grey-Infection
https://github.com/VisualStudioEX3/TLSA.Engine

Credits

Producer, Game Designer, Level Designer
Eduardo Millan - SiPoX

Game Engine Programmer, Game Programmer, Technical Artist & VFX
José Miguel Sánchez Fernández - [EX3]

Music Composer
Pablo Delgado - Guybrush Threepwood

English Localization
Cristina Pinilla Fernandez

Graphic Designer
Ruben Barroso Heredia (*)

(*) Disclaimer: The rest of the team and I, after the publication of the project and in the future, we are no longer related, supported or associated with this person, Ruben Barroso Heredia, and we are not responsible for their legal or illegal activities related directly or indirectly, with the video game industry or related business, including false professional experience accreditation or related training jobs in this area as teacher.

Description

Game Engine Programmer, Game ProgrammerTechnical Artist & VFX Artist for the development of Grey Infection for Xbox360 (XBLIG).

My first professional game developed in a game studio, and my first console game. A 2D Puzzle-Platformer Adventure, based on White & World, a Game Jam project in which some members of the team worked, and that you can found in this portfolio.

The game mechanic basically is destroy the enemies, in the correct order, to create or destroy parts of the level, to reach the exit point. The exit point can only be enable when the all enemies are eliminated.

The game was developed using an own XNA based game engine, TLSA.Engine, a newer version of my old game engine TLSA Engine (based on Visual Basic 6.0 and dx_lib32, an own game framework).

In addition to programming the game and the engine, other tasks where I been involved was VFX enhancement in the final art in scene, simulate some post-process effects, like the glitch effect, UI visual design of the main menu and their elements, several background live visual elements and effects in most of the levels, and guide the artist in how to prepare and optimized the final assets to use in the game.

Reviews

A few reviews in specialized spanish game blogs:

Pulpetes Forever

Details

Project: Pulpetes Forever
Genre: 2D Puzzle-Realtime strategy
Platform: Windows
Job description: Game Programmer
Technologies: .NET 4.0, C#, XNA 4.0, TLSA.Engine (own XNA Game Engine), Visual Studio Express 2010
Dev blog: http://ex3perience.wordpress.com/category/compo-cpes15/ (ES)

Credits

Producer, Game Designer, Level Designer
Eduardo Millan - SiPoX

Graphic Designer
José Zanni - Josepzin

Game Programmer
José Miguel Sánchez Fernández - [EX3]

Description

A project for the Game Jam in GameDev area of Campus Party España 2011. A game inspired in the classic Lemmings. The game was programmed with TLSA.Engine, a new version of my old game engine in Visual Basic 6.0 and dx_lib32 (an own game framework). This version is based in .NET, C# and XNA 4.0.

The restrictions of the Game Jam were: octopus, teleports and randomness.

White & World

Campus Party 2010: "DesarrolladorES Game Jam" Videogame Showcase

Campus Party 2010: "DesarrolladorES Game Jam" First Prize Presentation

Details

Project: White & World
Genre: 2D Platform-Puzzle Adventure
Platform: Web/Flash
Job description: Graphics Designer Support
Technologies: Flash, Action Script 2
Dev blog: https://ex3perience.wordpress.com/category/compo-rapida-cp2k10/ (ES)
Download: white_and_world_cp2010_flash_player_windows.zip

The ZIP file include the Adobe Flash Player 32 bits for Windows and the SWF game file. Run the CMD file to launch the game.

Credits

Producer, Game Designer
Eduardo Millan - SiPoX

Game Programmer, Graphic Designer
José Zanni -Josepzin

Graphic Designer Support
José Miguel Sánchez Fernández - [EX3]

Description

1st place in the Game Jam of Campus Party Spain 2010!

A project for the Game Jam in GameDev area of Campus Party Spain 2010. A 2D platformer-puzzle adventure with the mechanic of create and destroy by the action of eliminate the enemies in the correct order.

The restrictions of the Game Jam were: black & white theme, puzzles, create & destroy.

P.D.: At the beginning, the idea was a I will program the game, in Visual Basic 6.0 with the TLSA Engine, an unfinished own game engine based on dx_lib32 (an own game framework) that can be found in this portfolio. The early prototype was made with it, but at last hour, we decided to use Flash and Action Script 2 for the final development.

This slideshow requires JavaScript.

TLSA Engine

Details

Project: TLSA Engine
Genre: 2D Game Engine +SDK
Platform: Windows
Job description: Programmer
Technologies: Visual Basic 6.0, dx_lib32 (own game framework), XInput
Languages supported: Visual Basic 6.0
Sources: https://github.com/VisualStudioEX3/TLSA_Engine_VB6

Description

A 2D Game Engine based on dx_lib32 Project, with the purpose of develop a 2D platform game like Flashback or Another World.

A little resume of their features in latest versions:

  • Component Oriented Engine, trying to simulate the XNA architecture.
  • 2D Graphic Engine, multilayer sprite based, with simple effect system based on Directx 8.1 fixed pipeline, applicable to individual sprites or to entire scene (the final scene are a transformable canvas with support for all sprite effects, position, rotation and scale transformations), implementing a sprite control point map system (similar as how DIV Games Studio implementing in his sprite system) to manage easily multiple textures and transformations in a nested object group (to create complex animations, based in multiple pieces, with independent sprite animations), simple camera system (with support to define multiple scene cameras, to switch between them easily using paths or animations with scales and rotations).
  • 2D Audio Engine, with support for basic realtime standard effects (non parametrizables), and spatial system to simulate distances and position listeners changing the stereo volume level of the sound effects, and a basic mutichannel mixer.
  • Basic Input System, based on actions, which can define multiple input (keyboard, mouse and joysticks or gamepads), and complete support for joysticks and gamepads, via DirectInput 8 and XInput 1.3 (for fully support XBox 360 Gamepads), with basic Force Feedback support (to simulate the XInput rumble system in compatible joysticks using constant force effect).
  • Basic Physics Collision engine, with multiple layer collision system, world partition areas, raycaster and force emitters (to simulate explosions or black holes forces).
  • WYSIWYG Level Editor with flow controls (play, pause and restart scene during the debug), scene physics designer, an audio areas designer (for applying effects and emitters) that uses the physics defined in the scene, and visual debugger.
  • Some tools in the SDK like the Input Editor to create profiles input files, with define actions and her input controls, to import in the game engine easily, and the Tile Studio, a simple but complete editor to define tile sheets and sprite sheets with irregular sizes, control point definitions, and animation sequences, with animation previsualizer.

The first versions of the engine development are from 2005 and 2006. The last version, reprogrammed from scratch, started development during the summer of 2009, and during until the last built, in summer of 2010.

This game engine is not finished, because the complexity to develop a project as this in Visual Basic 6.0. The game engine was used in few projects,  mostly a prototypes and gamejams.

Aquanoid (CP2K8)

Details

Project: Aquanoid (CP2K8)
Genre: Arcade
Platform: Windows
Job description: Game Programmer, Graphic Designer, Level Designer
Technologies: .NET 3.5, Visual Basic .NET, C#, dx_lib32 (own game framework), Visual Studio Express 2008, MS Paint (as level editor)

Description

A project for the Game Jam in GameDev area of Campus Party España 2008. This an Arkanoid game with altered mechanic: the pad/player float on water. The water level goes up every few seconds. The player dies if reach the block level or the ball touch the water.

The game defines her levels with small bitmaps images of 12x12 pixels, where the color pixel defines the type of block.

The restrictions in this Game Jam were: water, puzzles and comic style.