Got an interesting project? Send me a message at [email protected]
Hello, I'm Liam Wisniewski, a passionate indie game developer from Poland however currently located in the UK. I am a student studying a games development course with hopes of further progression. I have over 5 years of prior experience under my belt. I love creating video games and have been doing so for a while, with the goal to inspire and innovate.My work spans both creative and technical areas; including knowledge in various software, engines and operating systems. I have too much hobbies and love trying new things; I am currently developing my knowledge with Linux and have been daily driving it for a while now. I hope to inspire, which is also why I've created an online presence known as 'catinthebox', where I upload videos of tutorials, prototypes and my development journey. I also engage in freelance work (3D & Video Editing) and have worked for many different clients. I am available for freelance work, so if you're interested, leave me a message at [email protected].
SOFTWARE
- Blender
- 3dsMax
- Substance Painter
- Substance Designer
- Photoshop
- Aseprite
- Davinci Resolve
- Audacity
FOCUS TECHNIQUES
- Troubleshooting & Debugging, Game Development, Game Design, Prop Modelling, Shader Graphics, Asset Creation, UV
SOFTWARE
- Unity Engine
- Unreal Engine
- Godot Engine
- Blender
OPERATING SYSTEMS
- Linux (Advanced)
- Windows (Advanced)
- Mac (Basic)
Some of my work that I am most proud of. You can view all of my 3D art on my artstation account.
An untitled top-down dungeon roguelike with unique 8-bit monochrome graphics. The visuals are not finalised and I am unsure if colour choices are final. Graphical elements heavily inspired by other simplistic 2D games. This has been my current project that I have been prototyping for a while, and I've developed many systems to understand what direction I want to pursue creating this game.I've developed systems such as smart enemy AI, semi-procedural dungeon generation with possibilities of expansion and other basic game-play mechanics (movement, basic combat & health).



How did I create smart enemy AI?Enemy AI is a difficult system to create. My approach consisted of creating a 'breadcrumb system' that the enemy uses. The player drops invisible location indicators periodically (every 0.5s) which mark the last known location of the player. The enemy detects the player using raycasts (once entering the enemies cone field of view); invisible lines traced from the enemy to the player. If they aren't obstructed, the player is visible to the enemy. It has been programmed to chase the player. I plan to create many different types of attacks and ways that the enemy chases the player (lunging, etc). Once the player exits the LOS (line of sight) of the enemy, it uses the invisible 'breadcrumbs' (location indicators) that the player drops to walk towards the last known location of the player.

How does my procedural generation system work?I've created semi-procedural level generation from scratch without much knowledge of how to approach a procedural generation system.The dungeon levels are not procedurally generated and instead are already premade (semi-procedural) which allows for more creative opportunities. All rooms contain a certain amount of doors which branch into other rooms. These dungeons are organised into categories depending on the nature of them (secret room, boss room, regular dungeon room). When the game is first started, an appropriate random room is instantiated at the centre of the world (0,0,0). Each door inside of a room is given a unique tag (#up, #down, #left, #right), which organises the location of all of the room exits.When the player collides with one of the doors, a transition animation is played and the old room is removed. A new room with is instantiated in the same position, and the player is teleported to the door with the opposite tag of the original door (#up -> #down). The new room that is instantiated has a check to make sure it has the opposite door of the original room (otherwise it would appear as if the player entered from a wall). The collider for the opposite door is removed. Chance is also utilised, with different chances to get a unique or boss room, and the percentage scaling as the player progresses for more rooms. This is also the same system for the exit room. This system is very lightweight and effective, however does not allow for the player to backtrack through the rooms.

Movement MechanicsThe game featured many different movement mechanics. I made them modular by using movement states and booleans to manage all movement possibilities. I di
Cybernetics was a first person sci-fi shooter I spent a while working on. I experimented with many different movement mechanics, systems and other prototypes. The game was going to be largely story oriented with an additional sandbox option for replayability, however production stopped as the scope was too large back when I was developing the game.
The weapon system:I created the weapon system modular meaning I could add additional weapons without changing a significant amount of the logic for weapons. I created many variables with examples such as firerate, ammo and recoil.I changed the variables for each type of weapon. Moreover, I made weapon switching and ADS (aim-down-sights) with animations and inputs. The weapons that the player has is stored with numbers.
Dungeon Descent is a unique dungeon crawler with the goal of defeating the 'abyss'. Play as a knight in a spooky, purple dungeon fighting different enemies such as skeletons and ghosts. Progress and solve puzzles and fall through many levels until you r each the boss.Dungeon descent is a game I produced with a team for the 'UDC GameJam #29'. Developed in 48 hours. The theme was 'falling'.
