Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: Vu Ngoc San <san.vu-ngoc@laposte.net>
To: caml-list@inria.fr
Subject: Re: [Caml-list] ANN: Boulder Dash in OCaml
Date: Wed, 27 Nov 2024 11:44:56 +0100	[thread overview]
Message-ID: <863914ab-6142-42bc-8ab4-8ead2800623a@laposte.net> (raw)
In-Reply-To: <0B3AB0A7-C413-4F1B-818A-7541B3919163@mpi-sws.org>

that's really impressive, thanks for this!
for the sound in SDL, why not use tsdl_mixer ?

San

Le 26/11/2024 à 18:38, Andreas Rossberg a écrit :
> Couldn’t let it rest, so I’m (already) announcing version 2 of it — now a much improved, practically feature-complete reimplementation of both Boulder Dash 1 & 2.
>
> Version 2 was an excuse for me to mess around with the OCaml bindings to popular graphics engines, and as a result, it now comes with 3 backends to choose from:
>
> 1. the homely bare OCaml Graphics library (https://github.com/ocaml/graphics),
> 2. the TSDL binding to the SDL2 API (https://github.com/dbuenzli/tsdl),
> 3. the binding to the Raylib engine (https://github.com/tjammer/raylib-ocaml).
>
> The list is in order of increasingly better user experience, for the price of a potentially harder build experience. In theory, all versions should run on Windows, Mac, and Linux, though I was too lazy to test all combinations, and I (or my opam) had trouble installing some of the dependencies on some of the systems.
>
> Features:
>
> * Faithful original physics, graphics, animations, sound, and music
> * Authentic scrolling mechanics combined with dynamic resizing
> * All 40 levels and 5 difficulties of Boulder Dash 1 & 2
> * Pause-and-go mode for relaxed playing
>
> Relative to the previous release, version 2 adds the following niceties:
>
> * Support for SDL and Raylib engines, which allow all of the following
> * Original sound effects and music
> * Original level color schemes
> * Full screen mode
> * Faster graphics
> * Dynamic graphics scaling adjustment
> * Gamepad/joystick support as well as more precise keyboard controls
> * Boulder Dash 2 levels and decoder
>
> Almost looks like a real game now. One from the 80s anyways. :)
>
> Enjoy,
> /Andreas
>
>
>> On 12. Nov 2024, at 16:55, Andreas Rossberg <rossberg@mpi-sws.org> wrote:
>>
>> Boulder Dash(*) was my favourite computer game in the 8-bit era, first released on the Atari 400/800 in 1984. Though I never owned an 8-bit machine myself, I had friends that I annoyed enough to let me play it on theirs.
>>
>> As a homage to its 40th anniversary, I put together a fairly faithful clone of the original game, implemented in just a few 100 lines of bare OCaml, with nothing but the homely Graphics library. It should run on Windows, Mac, and Linux, though I was too lazy to test the latter.
>>
>> Features:
>>
>>     • Faithful original physics, graphics, and animations
>>     • Authentic scrolling mechanics combined with dynamic window resizing
>>     • All 20 levels, including intermissions, and 5 difficulties
>>     • Pause-and-go mode for relaxed playing
>>
>> It is open-source here:
>>
>>     https://github.com/rossberg/boulder-dash
>>
>> Enjoy!
>>
>> /Andreas
>>
>> (*) https://en.wikipedia.org/wiki/Boulder_Dash_(video_game)
>>     "Boulder Dash" is a trademark of BBG Entertainment
>>


  parent reply	other threads:[~2024-11-27 10:45 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-12 15:55 Andreas Rossberg
2024-11-12 23:28 ` Daniel Bünzli
2024-11-13  9:44   ` Andreas Rossberg
2024-11-26 17:38 ` Andreas Rossberg
2024-11-27  6:54   ` Yotam Barnoy
2024-11-27  9:03     ` Andreas Rossberg
2024-11-27 10:44   ` Vu Ngoc San [this message]
2024-11-27 16:58     ` Andreas Rossberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=863914ab-6142-42bc-8ab4-8ead2800623a@laposte.net \
    --to=san.vu-ngoc@laposte.net \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox