Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

A couple of questions

A topic by Nikoichu created 49 days ago Views: 159 Replies: 3
Viewing posts 1 to 3
Submitted (1 edit)

EDIT:

GAME RELEASED!

https://nikoichu.itch.io/midnight-fisherman



Hey, I'm making a fishing game (it's a spooky one don't worry).



I was wondering what is allowed and what isn't in terms of asset creation.
-Are we allowed to use free images as a basis to trace our pixel art ontop of?
-Are we allowed to use free sounds to remix them into 8-bit sound effects?
-Is it required to make the sound effects and music sound 8-bit like they come from a gameboy, or can they be higher fidelity?

And a bonus one if anyone is familiar with Godot:
-Is there a way to enforce the 4-color palette via Shaders (or some other way?) and change it dynamically via code?
Submitted(+3)

- I wouldn't just trace an image, but there's definitely nothing wrong with using one as a reference. Perhaps you could trace it initially and then modify it enough that it looks original.
- Sampled sounds aren't allowed, but if you're stuck for sound effects you can use tools like jsfxr, chiptone, sfxia, etc. And they will sound better than downsampled sounds anyway.
- It doesn't need to be authentic sounding gameboy music. Not everybody has the know-how to do this, and the mods wanted everyone to be able to enjoy the jam. Obviously try to make it as chiptuney as you possibly can, but don't sweat it if it doesn't sound like it's coming straight out of GB hardware.

Haven't used Godot enough to help you there. I know it's definitely possible, so hopefully someone can help you out with that one.

Submitted(+1)

Thank you for the answers! The suggestion to use sound generating tools will definitely be useful. :)

Submitted(+1)

For the 4-color limitation, I coded a dumb post processing shader that converts everything to a 4-color palette :)
Its useful to make sure to stick to the rules, here's the core section:

uniform sampler2D u_image; // final image as tex
uniform vec3 u_palette[4]; // color palette
in vec2 v_texcoord; // text coords
out vec4 fragColor; // final color
void main() {
    // Since its a PostProcessing shader, I have access to the final image as texture
    vec4 tex = texture(u_image, v_texcoord);
    // Than I compute the lumimance (color => grey-scale conversion)
    // This is optional, you can even do normal weighted average
    // by adding each channel and dividing by 3.
    float avg = 0.2126 * tex.r + 0.7152 * tex.g + 0.0722 * tex.b;
    // Than I divide the color spectrum in 4 sections (0.25, 0.50, 0.75, 1.0)
    // and assign an index for each of them, going from black-ish to white-ish
    //         x <  0.25   => #0
    // 0.25 <= x <  0.50   => #1
    // 0.50 <= x <  0.75   => #2
    // 0.75 <= x           => #3
    int index = (avg < 0.25) ? 0 : (avg < 0.5) ? 1 : (avg < 0.75) ? 2 : 3;
    // Than the index access a palette (uniform of 4 vec3)
    fragColor = vec4(u_palette[index], 1.0);
}

For palettes, you can access sites like this:
https://lospec.com/palette-list

For Godot, PostProcessing shaders can be integrated easily, try following this guide:
https://docs.godotengine.org/en/stable/tutorials/shaders/custom_postprocessing.h...