-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #3 from swarm-game/posts/0.5-release
blog post for 0.5 release
- Loading branch information
Showing
1 changed file
with
121 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,121 @@ | ||
--- | ||
title: "Swarm 0.5 release" | ||
author: "Karl Ostmo" | ||
--- | ||
|
||
The [Swarm](https://github.com/swarm-game/swarm/) development team is | ||
pleased to announce the latest (alpha) release of the game. | ||
|
||
Much work since the last release has gone into making Swarm even | ||
more contributor-friendly, spanning CI, documentation, and code quality. For | ||
full details, see the [release | ||
notes](https://github.com/swarm-game/swarm/releases/tag/0.5.0.0). If | ||
you just want to try it out, see the [installation | ||
instructions][install]. | ||
|
||
## What is it? | ||
|
||
As a reminder, Swarm is a 2D, open-world programming and resource | ||
gathering game with a strongly-typed, functional programming language | ||
and a unique upgrade system. | ||
|
||
## Scenario authoring improvements | ||
|
||
Swarm can be played in an "open-world" mode or with | ||
self-contained "scenarios" as stand-alone challenges. | ||
|
||
The JSON schema that describes scenario files has been | ||
revamped and also now serves as the authoritative source | ||
of human-readable documentation, | ||
[rendered to markdown](https://github.com/swarm-game/swarm/blob/main/data/scenarios/doc-fragments/SCHEMA.md) ([#1441](https://github.com/swarm-game/swarm/pull/1441)). | ||
|
||
All scenarios are verified against the schema as part of CI | ||
([#1475](https://github.com/swarm-game/swarm/pull/1475)), | ||
and the schema itself has an enforced structure, e.g. | ||
requiring `"additionalProperties": false` for all `object`s. | ||
|
||
All this together means that [online documentation](https://github.com/swarm-game/swarm/blob/main/data/scenarios/README.md) stays up-to-date, and authors get hover-documentation and | ||
instant feedback about misspelled or misplaced fields in their | ||
scenario files. Setting up VS Code for this is now ([#1478](https://github.com/swarm-game/swarm/pull/1478)) merely a matter | ||
of installing an [extension](https://marketplace.visualstudio.com/items?itemName=redhat.vscode-yaml). | ||
|
||
## Code quality | ||
|
||
- Partial functions are now restricted via `hlint` ([#1503](https://github.com/swarm-game/swarm/pull/1503)). | ||
- Huge records are decomposed ([#1510](https://github.com/swarm-game/swarm/pull/1510)) | ||
- Richer internal API types ([#1604](https://github.com/swarm-game/swarm/pull/1604)) | ||
- Haddocks, wiki, and README improvements (e.g. [#1512](https://github.com/swarm-game/swarm/pull/1512), [#1527](https://github.com/swarm-game/swarm/pull/1527), [#1529](https://github.com/swarm-game/swarm/pull/1529), [#1493](https://github.com/swarm-game/swarm/pull/1493), [#1488](https://github.com/swarm-game/swarm/pull/1488), [#1472](https://github.com/swarm-game/swarm/pull/1472)) | ||
|
||
## Give it a try! | ||
|
||
To install, check out the [installation instructions][install]: you | ||
can download a [binary release][release] (for now, Linux only, but | ||
MacOS binaries should be on the horizon), or [install from | ||
Hackage][hackage]. Give it a try and send us your feedback, either | ||
[via a github issue][issue] or [IRC][irc]! | ||
|
||
[install]: https://github.com/swarm-game/swarm#installing | ||
[release]: https://github.com/swarm-game/swarm/releases | ||
[hackage]: https://hackage.haskell.org/package/swarm | ||
[issue]: https://github.com/swarm-game/swarm/issues/new/choose | ||
|
||
## Future plans & getting involved | ||
|
||
We're still hard at work on the game. Fun upcoming things include: | ||
|
||
- [Saving and loading games][saving] | ||
- New world features like aliens and [cities][cities] | ||
- New language features like [recursive types][rectypes], | ||
[arrays][arrays], [inter-robot communication][robot-comm], and [a | ||
proper `import` construct][import] | ||
|
||
[cities]: https://github.com/swarm-game/swarm/issues/112 | ||
[saving]: https://github.com/swarm-game/swarm/issues/50 | ||
[rectypes]: https://github.com/swarm-game/swarm/issues/154 | ||
[arrays]: https://github.com/swarm-game/swarm/issues/98 | ||
[robot-comm]: https://github.com/swarm-game/swarm/issues/94 | ||
[import]: https://github.com/swarm-game/swarm/issues/495 | ||
|
||
Of course, there are also [tons of small things that need fixing and | ||
polishing][low-hanging] too! If you're interested in getting | ||
involved, check out our [contribution guide][contrib], come [join us | ||
on IRC][irc] (`#swarm` on Libera.Chat), or take a look at the list of | ||
[issues marked "low-hanging fruit"][low-hanging]. | ||
|
||
[contrib]: https://github.com/swarm-game/swarm/blob/main/CONTRIBUTING.md | ||
[low-hanging]: https://github.com/swarm-game/swarm/issues?q=is%3Aissue+is%3Aopen+label%3A%22C-Low+Hanging+Fruit%22 | ||
[irc]: https://web.libera.chat/?channels=#swarm | ||
|
||
Brought to you by the Swarm development team: | ||
|
||
- Brent Yorgey | ||
- Karl Ostmo | ||
- Ondřej Šebek | ||
|
||
With contributions from: | ||
|
||
- Alexander Block | ||
- Brian Wignall | ||
- Chris Casinghino | ||
- Daniel Díaz Carrete | ||
- Gagan Chandan | ||
- Huw Campbell | ||
- Ishan Bhanuka | ||
- Jacob | ||
- Jens Petersen | ||
- José Rafael Vieira | ||
- Joshua Price | ||
- lsmor | ||
- Noah Yorgey | ||
- Norbert Dzikowski | ||
- Paul Brauner | ||
- Ryan Yates | ||
- Sam Tay | ||
- Steven Garcia | ||
- Tamas Zsar | ||
- Tristan de Cacqueray | ||
- Valentin Golev | ||
|
||
...not to mention many others who gave valuable suggestions and | ||
feedback. Want to see your name listed here in the next release? | ||
[See how you can contribute!][contrib] |