
I open sourced my game along with a tutorial on how to make it using Lua - adnzzzzZ
https://github.com/a327ex/BYTEPATH
======
justinclift
The author has some relevant blog posts (in GitHub issues) too:

[https://github.com/a327ex/blog/issues/35](https://github.com/a327ex/blog/issues/35)
\- BYTEPATH Postmortem (2018)

[https://github.com/a327ex/blog/issues/44](https://github.com/a327ex/blog/issues/44)
\- One Year Sales Data for BYTEPATH (2019)

~~~
siraben
That's a very interesting way to use GitHub issues. I wonder what sort of
problems can arise with vendor lock-in, though.

~~~
cercatrova
It's probably better to just make them Markdown inside the directory, you can
export the Markdown files (since they're in git) but you can't export issues.
Github renders both the same since, well, they're both Markdown.

------
kirillzubovsky
I've never heard of Lua, but now that I am looking at it, it seems very
friendly. Love how they call things what they are, for example `local` is just
a local variable, or `repeat X until Y` for a loop. It's a joy to see, to be
honest.

~~~
umvi
1-index kept throwing me off though

~~~
TedDoesntTalk
How about this: The empty string and 0 are truthy. Why?

~~~
anonymoushn
This is probably a good thing, if you don't want to have tickets filed about
whether midnight (time of day) is truthy, whether Jan 1, 1970 is truthy, why
some type of empty collection is truthy but others are not, etc.

~~~
pansa2
> This is probably a good thing, if you don't want to have tickets filed about
> whether midnight (time of day) is truthy

Agreed. Here is an example of exactly that in Python:

[https://bugs.python.org/issue13936](https://bugs.python.org/issue13936)

------
jv22222
For those interested, a very quick and easy way to start making games in Lua
is with Roblox Studio.

[https://www.roblox.com/create](https://www.roblox.com/create)

~~~
bemmu
Roblox was strangely unmentioned in the online bubble I was living in before
having a child. I discovered it only after I started searching for child-
appropriate games, and even then initially dismissed it as "some dirtily
monetized Minecraft clone", but it actually predates it, and is completely
different.

As you mention, Roblox is actually a huge platform for creating games in Lua,
and helping other players discover them. Not only do you get a cross-platform
game engine with multiplayer built in, it also seems to be quite pleasant to
develop for.

For instance, you can create both client-side and server-side Lua in the same
IDE, and spin up a local server with a client that connects to it in a single
click with no configuration. You can also add breakpoints and step through
both sides in the debugger. Pretty awesome as I was used to client-side
JavaScript and server-side Python before.

Because the platform encourages experimentation, I think we'll see many new
game ideas and probably even new genres emerging from Roblox.

------
cl3misch
Cool project with awesome visuals!

It's always interesting to see games published made with LÖVE in lua. I'm
writing an "Advance Wars 2" clone at the moment in LÖVE and hope to get some
inspiration from your code.

You seem to use a lot of global variables. Is that on purpose? I try to do as
much as possible with local variables (although especially in game logic
global entities are sometimes just the easiest way). I'm very wary of 1.
global lookup overhead and 2. confusing errors when accidentally overwriting
an existing global variable.

As I have never noticed both of these I'm not sure whether my angst is
justified ;-)

~~~
nonbirithm
The author explains their reasoning about globals here.

[https://github.com/a327ex/blog/issues/24](https://github.com/a327ex/blog/issues/24)

It mainly boils down to the fact that an indie game written by one person and
never maintained after release doesn't need to be written for maintainability.
Supposedly there are productivity gains the author receives from doing this.

Personally, I disagree from past experiences dealing with hundreds of globals
in legacy code, but to each their own.

~~~
cl3misch
Thank you for the link, that's exactly what I was looking for.

I see the point that a single developer does not have to focus on
maintainability so much. And if it works for him -- as it obviously does --
more power to him.

But for me, I do not think I am mentally capable to reason about my program if
it has to many globals. If I can have as much as possible local, my mental
model also can be local.

I am very new to gamedev, so this way of thinking may not be appropriate in
the long run.

------
anonytrary
Stunning visuals by the way, seems to have been designed carefully with
pixelation in mind, in a way that adds to the overall aesthetic.

------
crearo
Something that really annoys me is a blob of code suddenly pushed to GitHub
without a commit message, and then 10 random Update Readme commits. The
repository holds no history.

A rich git history a lot of the times imo is necessary to understand why some
parts are written the way they are written, and is also enjoyable to read.

------
azhenley
Another great example of a nice looking game with basic graphics. So much
polish on this, good job!

------
the-dude-abides
Very cool. Thanks for doing something like this. I'm curious about making
indie games and love the idea of being able to understand a finished project
that I can analyze to understand things better.

------
qmmmur
What was the process of compiling your love to a standalone executable? I'd
love to try out LOVE but I dont want to sink time in unless the process of
packaging it up into something I can send my friends is painful or not well
supported.

Also, are you using moonscript and SDL2 in this?

Great project by the way! The pixellated graphic effects are clever and
unique.

~~~
anonymoushn
On Windows, you can add your project to a zip file, concatenate that zip file
to love.exe to get game.exe, and distribute a zip file containing game.exe and
the dlls used by love.

When I packaged a game for Mac it was a bit more painful but not too bad, and
I told Linux users to use wine. Some people have made it pretty easy to
package love games for Linux since then though.

------
solarized
@GithubStaff: The new two columns design made my eyes sick. :( Please bring
back the simple one column design.

------
montenegrohugo
I always enjoy seeing projects done in Love2D; it's such a great little game
engine!

------
lazlee
I'm gonna dig into this also. Thanks for your contribution to the gaming
community.

------
iAmAPencilYo
Awesome that you open sourced the game. I got it on Steam from a post on
/r/PathOfExile

(PoE is a awesome ARPG with a massive build customization and I believe
inspired game creates by OP)

------
lisardo
Go Adonaac! It's nice to read about you on the internet from time to time! \-
Lisardo

------
tartoran
A whiff of fresh air! Really interesting graphics!! Thanks for sharing

------
bambam24
Wonderful job!

------
marzell
I tried posting this 15 hours ago lol

