Pages: Main Content Portfolio CV
On different sites: YouTube Steam Github
This page has been visited 9 times today.
Pingviinipeli was the first game I ever made. I made it during ninth grade. I have updated it over the years and I am currently in the process of remaking it, because I wanted to update it in a major way, but building on the existing codebase isn't pleasant because the original version was made by a kid who didn't know how to program. Even with the fixes the old bad programming was still too much.
Here is a comparison between the released version and the work in progress version at the start of the game. As you can see I have redone all the sprites and I haven't given the monster his sword yet. The major reason I redid the sprites is that they had inconsistent pixels per units. besides that, the sprites kinda needed the refresh.
Here you can see my custom navigation system at work, as well as a visualisation of how it sees the world. The blue stuff on the stairs indicates that touching it would move you or a monster to another level. The monsters understand moving between different levels, but it is hard to make into a neat video.
To try the game for yourself go to the games page. Please note that the version that is up on this site is still the old one, since the new version isn't done.
If you would like to play around with the new navigation, I have prepared a Navigation Demo.
Pentacomplex is a game I have heavily inspired by an old Nokia phone game know as "Diamond rush". Right now it is very ugly, because I want to get the gameplay to be pleasant before I work hard on the graphics.
Anyways, the part I actually want to show you is the level file format. Pentacomplex uses a custom format to save levels. Here is a visualisation of what it looks like:
Altough mashing all the games I am talking about to this page would make it rather laggy, tic tac toe is so simple it shouldn't be a problem. So, the best way to show it off is this:
I am proud to say I got more difficulty levels than GOOGLE, How cool is that?
To be fair, I only have two more, but one of them is my favorite.
Lets talk about the bots in little more detail:
Random: Random bot is quite self explanatory. This is one of the two that google doesn't have. This one was honestly very useful to debug the impossible one, but isn't very fun.
Easy: Easy bot tries hard to lose. All it does is avoid winning, or being in your way. You can lose to it, but it is a very different challenge. Compared to Googles own, it is very similiar in difficulty, however I think they have made their's in a different way.
Normal: All normal bot knows is if a move would win or leave it vulnerable. This one is also very similiar to Googles medium bot, infact the behavior seems to be the exact same.
Hard: Hard bot understands "double traps". If it can't win instantly and isn't in a vulnerable position, it will try to setup a "double trap" or alternatively choose a move that makes sure you can't do just that. This one doesn't have a counter part in Googles tic tac toe and this one is my absolute favorite.
impossible: Impossible bot never loses. Other bots pick randomly if they don't know what to do, this one has hardcoded answers. Other wise it is just like the hard bot. Behavior appears to be the same as Googles, probably because to play tic tac toe perfectly you only have one option.
I used python to figure out all of the states where hard logic wouldn't work on its own.
Now we are getting to the unreleased territory! Gno-op is a asymmetric co-operative puzzle platformer. This one is also a co-operative effort! It was made with my brother, who did almost all of the art and a lot of design stuff. I worked on the design too and did all of the programming. I also made the art for the Tutorial section, which is why you can see an image of a Tutorial promt sign.
Unfortunately though, this one isn't out (yet), because we never felt like it was complete. It was originally supposed to be a weekend project but it kind exploded in size. It is essentially a complete game, just not up to our standards.
I have made two terminal based games. I haven't released them because in the modern world where pixel based graphics are extremely common, games without those elements feel archaic. I mostly made them as fun experiements.
The first one is pong in turn based pong in the terminal. You can probably see how playing it is fun for a single match.
The other one is ConsoleBasedSquadStrategy, which is exactly what it sounds like. And it is really bad when compared to X-COM: UFO Defense that costs just 5€.
There was a time, when I was making a VR game. It was essentially a beatsaber ripoff, because I think that game is just too damn expensive. To not be a total ripoff, I went with physics based nodes to beat and medieval weapons you can pick and even throw. This project really fell apart because the music I had access to wasn't exactly great for this type of game.
On the left you can see me throwing a cube that changes color when picked up in my testing environment , because I thought it looked cool.
Is there such a thing as a developer who has never modded anything? I used to work on a mod for Terraria, made with tModLoader ofcourse. The idea was to add gear that seemed to be missing, such as starting weapons for mages and summoners. The higlight of this work was the mushroom staffs and the book.
Unfortunately I lost the source code when my windows installation broke. While I do take backups of my work, that only includes my "WIP" and "Archive" folders, but since tmodloader wants mod sources to be in their modsources folder, the mod wasn't in a location I was taking backups of. These two videos are all that survived.
See Sysadmin for hosting
Obviously, this website is an example of a website written entirely by me. I know it looks blocky and has a weird color scheme. I have no taste.
No images since you have already laid your eyes on it.
Then, for projects that I have been a part of we can start with salotaskussa.fi/ for which I have worked on the backend.
I would love to add some images, but how does one add images of backends?
Unfortunately my last example isnt public to begin with.
But along with a fellow student when we were on-the-job learning at Lounea, we created a web app for them that shows all of their customers problems that require attention on a map and higlights ones that are getting ignored. This teached me about how automatically generated databases lack any reasonable formatting. I don't think I can go into details, but I think I can say their database was inefficient and hard to use.
No images for this one either, this time because I don't have any and I don't have access to the app anymore. Altough you can imagine it: a map with a lot of "pins" which had little icons to show what they ment and were color coded. For this one I did the backend.
I have my own discord bot. What it does right now is send images of cats, because you know, that is important. It used to have a game playable right in discord too, about solving mazes. This was however scrapepd when I lost the source code to the bot, since no one really played it actively so I saw no point in remaking it. The bot is made with the discord.net library.
ack when I was a student, me and my fellow students didn't exactly have a lot of cash. Because of this, we borrowed money from each other constantly. I am however a scatterbrain, so to keep things fair I needed to write down the debts people, including me, racked up. I made an app to do this, because it feels more organised and is faster to use than writing them down in a text document.
To learn more see the Dedicated page
Mesh generation at runtime is kinda fun. And I figured out the best way to learn it; Jump in without a clue on how to do it. Here you can see my Doughnut, with no visible seams (the seams are on the left and inside the hole of the torus , but you can't see them).
I had the top spot in the Xennial Hunt, which is a programming competition used by a company known as Reaktor to find people to hire. I wont dive deep into how I scored this high, because I don't want other people to steal my work to score high and ruin the competition.
This website you are on, along with my two other websites ankkapeli.fi and pussyhub.fi, neither of which I have bothered to build out, are all hosted by me. The server also runs my discord bot and NAS and used to have minecraft servers (both java and bedrock). The server is a slightly somewhat modified Asus prebuilt PC running the LAMP stack. It used to be WAMP but I changed it in order to save system resources for things that actually matter.
I served in "VirtuaaliKoulutusYmpäristö" which translates to "VirtualLearningEnviorement". My role was Sysadmin/Programmer and Teamleader. As sysadmin my tasks included maintenace of hardware and managing of software. This includes working in a linux enviorement and even managing some files inside a docker container on a regular basis.
This probably isn't a suprise to anyone, but nerds tend to like to build computers.
There isn't really anything special I can say about my past with hardware, for now. altough I have some plans to make something special.
In the end, all I can say for now is that I have built, repaired and upgraded multiple desktops and repaired and upgraded several laptops. I have also done some data recovery on phones and laptops.
I have worked with arduinos, stuff like reading sensor values and controlling servos. Nothing really special.
It is hard to put into words how much someone is into 3D-printing. But I think a way to get a rough idea is to look at their printers, so here is mine:
For starters, Here is my Voron V0.0, which I built my self. Boy am I proud of it. Took me quite a while to build it, but it was definitely worth it.
Then there is also my PrusaMini, which I also assembled. Altough, it came in a three piece kit. I would have wanted to get the full kit, but it wasn't available yet. This was my first 3D printer.
Then there is also this Elegoo Mars 3, which is my first touch in resin 3D printing. I don't have a lot of experience with this one yet.
As you may or may not have guessed already, a man who owns three 3D printers is a man who knows how to model stuff to print. The coolest things I model tend to get stuck in the "good enough" gap, where a prototype ends up working but isn't great, but since it works I can't be arsed to do it properly. Really the worst part about this is that I also won't publish those, since they aren't "done".
As an example, take this impossible-to-photograph lamp I made. The design isn't great and I admit it. I should make the shader easier to print and figure out a way to manage the wire before the base of the lamp. I also should make an openSCAD script to make the base to fit shelves of different thicknesses. But since it works for me, I haven't bothered to improve it.
For examples of models, mostly fixes to stuff that I did bring to a finished state, see Miscellaneous 3D-Prints