From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=192.134.164.83; helo=mail2-relais-roc.national.inria.fr; envelope-from=caml-list-owner@inria.fr; receiver=tunbury.org Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by plum.tunbury.org (Postfix) with ESMTPS id 30167128CA3 for ; Tue, 26 Nov 2024 17:39:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=mime-version:from:in-reply-to:date: content-transfer-encoding:message-id:references:to: subject:reply-to:sender:list-id:list-help:list-subscribe: list-unsubscribe:list-post:list-owner:list-archive; bh=3hYCW4VHQRYVyHaUVleSc4m+Pu6JguZkcn/aSKo+llU=; b=o/KcoCBSO3BcuX/ER7wsI8YEpVJL/E/qG0Y/JEtAP5aIhBdDUd6lZ0Yf LYRgres3NBmOfFj0Qp84YWL0ICE/92a84jTU+Ei9CNbMA4g3dLXoZKTVM nx8JFOjZAwS9Kj20PXgPAAqL+cYRblWRs6R+LTw/BGXwJoQRz0Zz8WYE4 o=; Received-SPF: Pass (mail2-relais-roc.national.inria.fr: domain of caml-list-owner@inria.fr designates 128.93.162.160 as permitted sender) identity=mailfrom; client-ip=128.93.162.160; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="caml-list-owner@inria.fr"; x-conformance=spf_only; x-record-type="v=spf1"; x-record-text="v=spf1 include:mailout.safebrands.com a:basic-mail.safebrands.com a:basic-mail01.safebrands.com a:basic-mail02.safebrands.com ip4:128.93.142.0/24 ip4:192.134.164.0/24 ip4:128.93.162.160 ip4:128.93.162.3 ip4:128.93.162.88 ip4:89.107.174.7 mx ~all" Received-SPF: None (mail2-relais-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@sympa.inria.fr) identity=helo; client-ip=128.93.162.160; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="postmaster@sympa.inria.fr"; x-conformance=spf_only Authentication-Results: mail2-relais-roc.national.inria.fr; spf=Pass smtp.mailfrom=caml-list-owner@inria.fr; spf=None smtp.helo=postmaster@sympa.inria.fr; dkim=pass (signature verified) header.i=@mpi-sws.org X-IronPort-AV: E=Sophos;i="6.12,186,1728943200"; d="scan'208";a="195938698" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 26 Nov 2024 18:39:36 +0100 Received: by sympa.inria.fr (Postfix, from userid 20132) id 6D4F8E0D25; Tue, 26 Nov 2024 18:39:36 +0100 (CET) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id D9660E00B6 for ; Tue, 26 Nov 2024 18:39:33 +0100 (CET) IronPort-SDR: 674607d5_MK4VGn/e/mEK/f2J79QBkaygh+tb8YQLVIha35J87rXOtw5 GqkWJM77cnepdcMrsOBu/pJtTE0lxZ+x3V0Q/sg== X-IPAS-Result: =?us-ascii?q?A0FgAgDoBkZngQ9WE4taHgEBCxIMQIFIC4JEfVsyBAtIh?= =?us-ascii?q?FaPTYIhA2mdLoFAPg8BAwENOQgBAgQBAQMBA4UAAopcAh4HAQQwCQ4BAgQBA?= =?us-ascii?q?QEBAwIDAQEBAQEBEAEBBQEBAQIBAQIEBgECEAEBPQVJhXsNgls7cWUJNwEBA?= =?us-ascii?q?QEBAQEBAQEBAQEBAQEBAQEBFgINME0BAQEBAgEjHQEBOAQLCwwMAgIYDgICV?= =?us-ascii?q?hmDAQGCQSMDBA2wF3qBMoEBggwBAQaCZ9scAwaBGi6ITAGKYCcbgg2BFScbg?= =?us-ascii?q?WaBAj6CShcCAgGBXU2DDjqCL4JEhQ8lhTYBg0mMEI9NSAplFnghEQFVEw0KC?= =?us-ascii?q?wcFYEkhLAOCRwV6K4ELgRc6AYF9gRNKgy6BXgU3R4JKaUs3Ag0CNoIkfYJNg?= =?us-ascii?q?SUEBYNpgQuDXoRbhigdQAMLGA1IESw3FBsGPm4HoDABRoNegSRoKQdgRQstk?= =?us-ascii?q?mezIYQkhG+HJ5V6l1EGknqYe4pYSIJglkIBhGWBZzqBXE0wCDsqAYI8PxADG?= =?us-ascii?q?Q9XjUqDeoUUwl5DNDsCBwEKAQEDCYVFAQEBgQOKU4FLAQE?= IronPort-PHdr: A9a23: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 l4Lxajya4ELOcv31h46AmQ= IronPort-Data: A9a23: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 Z87q6ZhLYxbNrz/dJbFY+4UvJI= IronPort-HdrOrdr: A9a23:jSR4cq7ITwUrkqAHqQPXwcaCI+orL9Y04lQ7vn2ZFiY5TiXIra qTdaogviMc0AxhIU3I6urwQJVoIEmsvaKdjrNhWItKMDOJhILsFvAF0WKA+UyqJ8SdzJ846U 4IScEXZLLN5BpB/KHHCWKDc+rIteP3kpxA8t2urEuFIzsKV4hQqyNCTiqLGEx/QwdLQbI/CZ qn/8JC4xawZHgNacy/J38dG8zOvcfCmp7KaQMPQ0dP0njCsRqYrJrBVzSI1BYXVD1ChZ8k7G j+igT8oomzrv2hzRfY9mnLq7BbgsHoxNdvDNGFzuIVNjLvoAC1Y5kJYczJgBkF5MWUrHo6mt jFpBkte+5p7WnKQ22zqRzxnyH9zTcH8RbZuBClqEqmhfa8aCMxCsJHi44cWADe8VAcsNZ117 8O936FtqBQEQjLkE3Glpb1vlBR5wuJSEgZ4K0uZk9kIMkjgXhq3MkiFXZuYdc99eTBmcQa+a dVfYbhDb1tACinhjjizxNSKZqXLzgO9169MzQ/UsD56UkqoFlpi0Qf38ARhXEG6dY0TIRF/f 3NNuBymKhJVdJ+V9MLOA4te7rDNoX2e2O5DEuCZVD8UK0XMXPErJD6pL0z+eGxYZQNiJ8/go 7IXl9UvXM7PxuGM7zG4LRbthTWBGmtVzXkzc9To5B/p73nXbLudSmOUkonncesq+gWRsfbR/ GwMpRLBOKLFxqZJa9ZmwnlH5VCI3gXV8MY/t49RlKVu8rObpbns+TKGcyjVoYF0QxUKV8XLk FzLQQbfv8wkXxDckWI/iT5SjfqZlH1+452HezT4/UTobJ9RrFxjg== X-Talos-CUID: 9a23:Mm/Lx2HKVD65Ff8hqmJ48W0ENdAkQ0f+90reelS8L0JlSbysHAo= X-Talos-MUID: 9a23:+hd4kgWD1FDOtvPq/DbjhgNaOd5G2KbwJU8Irs0Xm46pDTMlbg== X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.12,186,1728943200"; d="scan'208";a="195938661" X-MGA-submission: =?us-ascii?q?MDH+ioiwbOhr1zQRxWoswHJ1jdKMscPrTB5GEL?= =?us-ascii?q?m/pxq82cY9op5h3qaA5wBFJm83UGR+YWaLR/NhBt39DlPb1AS0zn+yON?= =?us-ascii?q?LhK4a+pdZdEhv/Aan6fii7Wmz/OqIx5Zyhc89W6GaGK3FZGPypoONjOE?= =?us-ascii?q?9yr9B7ebXyYGS5fPzvLIJt4A=3D=3D?= Received: from jupiter.mpi-klsb.mpg.de ([139.19.86.15]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Nov 2024 18:39:33 +0100 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mpi-sws.org ; s=mail202309; h=To:References:Message-Id:Content-Transfer-Encoding:Date: In-Reply-To:From:Mime-Version:Content-Type:cc:content-id:content-description; bh=3hYCW4VHQRYVyHaUVleSc4m+Pu6JguZkcn/aSKo+llU=; b=QeVu5XM7WOUEv5qIC+kVSpCP2T ZHS8PkeSvWXWgyGOS6nGyZWRkSk69wsk8KEaeC0l62s3KJEi+dl9DMUZO70eeX6hj8mUyZZVi4DWy 5GbQZJTtiGHjVhusUPglV6VK91LocloSqGG5JMu8mH/tswcERjcoSJAtp7SiUS73lj8eL57K/KRmw UffGCJQC+fBeC2gCzqRdKOpXmn2q1nnKnd3FvpLO8jSl/vLVBrl96W95rDjiK2U1gbsEBHB9BGOlQ 8qvavSMONL9/k0qeBUDrRnZpNoyXPfJCz9PYaONHyCsXmPcpQqfIIcFKa7gz0BGQprhgN6Auib2eJ D3VXIVeg==; Received: from maniac.mpi-klsb.mpg.de ([139.19.205.26]:55428) by jupiter.mpi-klsb.mpg.de (envelope-from ) with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.98) id 1tFzX7-0000000G7ze-0YGX; Tue, 26 Nov 2024 18:39:32 +0100 Received: from [212.30.36.73] (port=55880 helo=smtpclient.apple) by maniac.mpi-klsb.mpg.de (envelope-from ) with esmtpsa (TLS1.2:ECDHE_SECP256R1__RSA_SHA256__AES_256_GCM:256) (Exim 4.96) id 1tFzX6-00BTCR-2i; Tue, 26 Nov 2024 18:39:28 +0100 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) From: Andreas Rossberg In-Reply-To: <7F296476-3CFC-4E74-B3F9-462A438A1BD6@mpi-sws.org> Date: Tue, 26 Nov 2024 18:38:04 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: <0B3AB0A7-C413-4F1B-818A-7541B3919163@mpi-sws.org> References: <7F296476-3CFC-4E74-B3F9-462A438A1BD6@mpi-sws.org> To: caml-list@inria.fr X-Mailer: Apple Mail (2.3774.600.62) x-ms-reactions: disallow Subject: Re: [Caml-list] ANN: Boulder Dash in OCaml Reply-To: Andreas Rossberg X-Loop: caml-list@inria.fr X-Sequence: 19215 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: Couldn=E2=80=99t let it rest, so I=E2=80=99m (already) announcing = version 2 of it =E2=80=94 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 = wrote: >=20 > 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. >=20 > 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. >=20 > Features: >=20 > =E2=80=A2 Faithful original physics, graphics, and animations > =E2=80=A2 Authentic scrolling mechanics combined with dynamic = window resizing > =E2=80=A2 All 20 levels, including intermissions, and 5 = difficulties > =E2=80=A2 Pause-and-go mode for relaxed playing >=20 > It is open-source here: >=20 > https://github.com/rossberg/boulder-dash >=20 > Enjoy! >=20 > /Andreas >=20 > (*) https://en.wikipedia.org/wiki/Boulder_Dash_(video_game)=20 > "Boulder Dash" is a trademark of BBG Entertainment >=20