On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Donitz

206
Posts
3,875
Followers
A member registered Aug 12, 2018 · View creator page →

Creator of

Recent community posts

Quickly jump left and right, or as somebody found out. You can just stand in the middle platform and never get hit… That was not on purpose.

Hello! I didn’t write any particular documentation making this game, no. It was a month long project where I just added a few things every day. It’s a bit difficult to go into specific details, but the source code is available, and I’ll gladly answer any questions about it or the tools I used.

Hello! I’m currently in the final stretches of finishing my own horror game right now, so at the moment I’m not really available for commissions, but if you got questions, or want advice I can certainly help.

(1 edit)

Yeah, it is pretty hard with the randomness of some bosses.

You only get one life to finish the game.

Thank you for the offer. I’m already pretty busy with the development of my next horror game so I will have to decline, but if you need advice I can always help.

Try randomizing the orb shape, color and cluster separately until you get something close to what you want, and then fine-tune it.

It was made using the three.js framework, used by almost everyone for 3D rendering online (Even by NASA).

Impressive. I haven’t managed to do that myself yet.

It may be an unsupported browser, though it should work in most of them.

I wrote my own 2D rendering classes in JavasSript ES6.

Thank you. The issue with using 64 colors is the way I divided the byte-like genes in the procedural generation into multiple color levels. I think I used -2, -1, neutral, 1, 2 color levels for each color, so that leaves only 256 / 5 = 51 colors to work with.

Sorry about that. Re-rated.

You sorta can. You can use WebView to embed a web browser in an app, or something like Cordova/PhoneGap/Tauri. The iOS web browser has been nerfed on purpose so that it can't really compete with apps, at least in the past. I don't know what the current state is.

Though it isn't quite optimal. If you want to make a game for Android/iOS/PC/Linux it's easier to get started with Godot (or Unity).

I can't add any additional uploads before the jam rating period is over, but after that I can upload the source.

Nice and fun. Yeah the game really could use some sfx, but other than that the boss design and gameplay is really smooth and polished.

Thank you! There is indeed a quicker kill strat for the vampire by tricking it to teleport into a corner.

(4 edits)

Hello!

I would recommend you first start with learning how to do Object-Oriented Programming in JavaScript. If you listen to other JS developers online, you will hear a lot about how Functional Programming is so much better than OOP. Those people usually do not make games and their opinion on OOP can be ignored. OOP is the best fit for games since most things in the world can naturally be represented as objects.

So you learn how do OOP using classes in ES6. Now you can represent things in your game as objects such as a Player, Enemy etc.. You can use inheritance if you need multiple objects to use the same foundation. For example, in my games every object inherits from an Entity class, which contains an update/draw/destroy function.

Use the ES6 module system since it's the modern way to handle multiple imports in JS today. I like to name my modules after their class names like this:

player.class.js:
export default class Player {
}
game.js:
import Player from './player.class.js';
const player = new Player();

This is my own personal opinion and many people do not agree with me, but I think it's okay to use fake encapsulation in JS as long as it is only done for code organization and you understand it doesn't actual protect the variables.

export default class Player {
    constructor() {
        this._x = 0; // _ implies private, so don't access this member outside the class
        this._y = 0;
    }
}

Then you decide on what type of rendering engine you want.

  • For 3D games, Three.js is the best choice.
  • For 2D games, you can either use Pixi.JS if you prefer a more graph based scene setup like in Unity.
  • Work directly with 2D canvas which gives you the most versatility.

    Here is a really simple example how to draw an image on a 2D canvas:
<html><body><canvas></canvas><image src="./test" />
<script>
const image = document.querySelector('image');
const canvas = document.querySelector("canvas");
const context = canvas.getContext("2d");
canvas.width = 500;
canvas.height = 500;
context.drawImage(image, 50, 50);
</script></body></html>

I prefer to load images using the Javascript fetch command rather than embedding them in the document.

You can create a "main loop" for your game using requestAnimationFrame:

let lastTime = 0;
const update = time => {
    const elapsedSeconds = Math.min(maxTimestep, (time - lastTime) / 1000);
    lastTime = time;
    // Update and draw your entire game here
    update();
    draw();
    requestAnimationFrame(update);
}

And that's pretty much it. The 2D canvas can be used to make both games like this with bitmap graphics or vector-based games using primitive line/shape drawing.

Great! I love the concept of this, and it is very extensible. It's kind of a self-balancing thing.

I've pondered on a similar idea for a SHMUP in the past. You'd switch side between each level and the enemies have all the upgrades you have bought.

Cool little game. Really enjoy the music too.

(1 edit)

As per usual tradition, the last hours of the jam were about 1000% more productive than anything that came before. Time is a good motivator.

Your boss design is really nice.

The economy system is really interesting. It could probably be expanded into a larger game. Good game!

I like the way you mix up the genre between the bosses, and the artstyle is really cool. I especially liked the single outline on the first boss. The story/cutscene is really nice too.

Thank you for the feedback! I agree the jump is a bit restrictive. It was modeled after the jump in La Mulana, in which jumping is a key mechanic in many puzzles. In this game it's mostly just a form of artificial difficulty by making the PC commit to a jump.

Great story. The artstyle is very consistent and fitting, and well use of the boss rush theme. The gameplay and controls are good and the attacks are clever and fits the bosses.

If I were to suggest one improvement, it would be to center the camera between the boss and PC as to keep the boss in view longer.

Very cool. The boss design is beautiful, and the gameplay mechanic works well. The player hitbox could be a bit clearer

(1 edit)

Very funny and very stylish game! It reminds me a bit of Furi.

One addition I think would be to allow you to use A as well as X to attack, since there is such a large gap between B and X.

GG EZ

Solid gameplay, very hard hitting. Came pretty far on the first try once I got the hang of the controls.

Quite a unique control scheme, but it works okay once you get used to it. The art is good with the bosses having some cool designs.

I like the minimalist presentation. Straight to the point. Fun enemy design and a simple choice system. Good!

Nicely animated and inventive bosses, with a lot of fun dodging. One critique is that the dodge feels a bit weak in presentation. Could use more flash.

Nice boss design with some really nice bullet patterns. Wish the game was longer.

Yeah the slime is the most ridiculous of the bosses, and my personal favorite. I hope memorizing its attack pattern was fun!

Thank you! Yeah the game isn't really too hard compared to some of the more difficult platformers, but it's pretty hard to judge the difficulty after you have played the same game so many times.

(2 edits)

Because for some reason the adult tag found its way into the tag list. I think it was meant to be action.

Press once for each cat you saw in an earlier one.

Absolutely nothing.

Yeah, computer was off today.

Hello! You can message me at Libera chat at the username Donitz. Your idea sounds interesting, though it would probably be rather hard to prevent cheating.

Hmm... Did you slow down time?