LD 43 November 30–December 3, 2018

Here we go again

Gonna be trying out another ludum dare. Pretty basic developer, just trying to have some fun. Good luck to everybody in the jam!

Let's do this

3rd compo for me. Once again I have not practised since last LD, so let's keep it simple: GameMaker Studio, Piskel and BFXr. And hopefully BoscaCeoil or even Reaper to make some tunes.

Good luck everyone!

Here We Go!

It's almost time! I hope your all ready cause I AM! I can't wait to see what everyone can imagine!

Good Luck Everybody!!

motivational music

https://youtu.be/mj-v6zCnEaw

I'm in

finally a new LDJAM is about to start. Let's have fun developing cool games :D

the final stretch: a hot reloading asset manager for vore

https://github.com/HybridEidolon/love2d-vore-template

once more doing some groundwork to save some time, and sharing the code.

vore is a love2d game template leveraging the gulp build tool from the node ecosystem to watch your game source for changes and recompile and bake your assets automatically. accompanying it are extensions for tiny-ecs and (now) an asset manager that both fit well into this watch-reload pattern, allowing you to reload both system code and assets at runtime simply by saving them in your editor. vore also automatically packages and uploads your game to itch.io through butler. it supports moonscript, aseprite, and tiled compilation to loadable assets built-in, and is relatively easy to extend.

per the documentation:

Asset Manager

AssetManager is a stateful object that combines a few functions:

  • Loading and caching of various asset types by string path
  • Storage of runtime-generated assets by a unique transient index object
  • Retrieval of cached assets (assuming they are already loaded)
  • Reloading of loaded assets

Examples (Moonscript)

Construct a new instance:

import AssetManager from require 'AssetManager'

manager = AssetManager!

Add an extension-based loader. The return value of the loader func will be stored in the cache.

manager\setLoader 'png', love.graphics.newImage
manager\setLoader 'wav', (path) -> love.audio.newSource path, 'static'
manager\setLoader 'lua', love.filesystem.load
manager\setLoader 'json', myJsonLoader

Load an asset (for later retrieval). The loader used will be based on the extension.

manager\load 'sprite.png'

Retrieve an asset and use it

sprite = manager\get 'sprite.png'

love.graphics.draw sprite, 0, 0

Insert a dynamic asset into the cache and create an opaque index key for it. Store the key if you want to reference the asset later. (Note: if you need to e.g. serialize entity state, you'll need to delete this from the output)

image = love.image.newImageData 512, 512
key = manager\insert image

Retrieve a dynamic asset from the cache. You should not store this reference; keep it only for as long as you need it, because you can retrieve it later. Holding onto the asset will just make hot reloading not work.

dynamicImage = manager\get key

Replace a dynamic asset in the cache, reusing the key. release will NOT be called on the object. You can replace an asset with nil to fully remove it from the cache.

anotherImage = love.image.newImageData 128, 128
oldImage = manager

eplace key, anotherImage oldImage elease!

-- remove it
oldImage = manager

eplace key, nil oldImage elease!

Check and reload updated assets. release will be called on the values if it exists. If a file is removed, it will not be removed from the cache, but obviously it won't be present in future runs.

manager\update!

Usage in ECS

Store the AssetManager on your World. Use a System to first gather all of the asset references in your scene that need to be loaded, and load them. For example:

tiny = require 'tiny'
ProcessingSystem = require 'tinyx.ProcessingSystem'

class LoadSpriteImages extends ProcessingSystem
  new: =>
    super!

  filter: tiny.filter 'sprite'

  process: (e, dt) =>
    if not @world.assetManager\get e.sprite.imageKey and type(e.sprite.imageKey) == 'string'
      @world.assetManager\load e.sprite.imageKey

LoadSpriteImages

If you want to periodically hot reload all your assets (almost certainly why you're using this):

tiny = require 'tiny'
System = require 'tinyx.System'

class ReloadAssets extends System
  new: (reloadInterval) =>
    super!
    @interval = reloadInterval

  update: (dt) =>
    @world.assetManager\update!

ReloadAssets

Of course, you can get the assets you need in the systems e.g. responsible for drawing or starting sound sources.

I'm in

Second Ludum Dare for me! Excited for this one.

We are in!

Go Space Jammers! \oXoXoXoXoXoXo/

Back again after a couple years!

Couldn't believe my luck when I randomly visited this site tonight (after months) only to see the timer down below an hour! I'll be using Godot, and if I have pixel art it comes from Aseprite.

Wanna talk during Ludum?

If you wanna keep in touch during LDJAM and talk with some argentinians near the Antartica, here's the link to our Discord Channel!

https://discord.gg/F6AFZZ

I'm in I'm in I'm in I'm in

This time I'm teaming up with @mrthee! I'll be making SOMEthing silly

I'm in, suprisingly!

This is a last minute entry, I wasn't going to originally enter because of too much on my plate. Some things cleared up that I just found out about a few hours ago, and so I made a last minute decision to give it a go! I wish I could've prepared a little bit more, but that wasn't in the cards for me. This is going to be my second Ludum Dare, and I can't wait to get started!

Good luck to you all!

PLEASE EXPLAIN

wut.PNG
That ain't me

Im in Ludum Dare 43

Hi hello, this is my first Ludum, I am very excited and I am happy to be able to participate in this event, good luck to everyone and to have a lot of coffee!

I'm in Ladies.

Hey I'm DrBlury. My first game jam was brackeys game jam and I made #1 in Audio and a few other high positions. A lot has been learned since then and I hope for the best possible outcome. More ideas to walk through and learn from. The final place doesn't matter. Just the polished product at the end. The last time I fiddled too much with the mechanics to let them feel right and only had about an hour left for the actual game content. This time will be different. I'm much better in programming now and hope that the models will look great in Unity. :)

What do you think about this style?photoem2018-12-01/em02-23-23.jpg

I'm gonna give it a try I guess.

I tried last LD and it didn't work out too well. I'm gonna try again. I won't be abandoning too much homework. I can do Unity, pixel art, basic 3D modeling, and music.