Live data from Hacker News

I made a multiplayer shooter game in Lisp, here is my journey

ertu.dev

41–50 of 57 posts

Re: I made a multiplayer shooter game in Lisp, here is my journey

#41
post #39
post #33

Earlier quoted context omitted.

> player is aiming at the sky continuously Same here :( I'm guessing this wasn't tested (at all?) in Firefox? That's unfortunate.

Works fine for me on Firefox (Windows).

Ditto, on Linux.

Re: I made a multiplayer shooter game in Lisp, here is my journey

#42
post #16

I found some old gaming instincts kicking in when I asked myself: did I get a frag? This is a fun little romp. Very Quake-esque in terms of mechanics (though the floaty jumps have more of a Tribes feel). Excellent job putting it all together in a Lisp... even if that Lisp is Clojure! I like to think of Lisp as a mind-tool for creatives, a way to turn thoughts into code so quickly it can keep up with the highly iterat…

I played a ton of Quake and Tribes 2 I felt very at home not sure if it was intentional but definitely an awesome result.

Re: I made a multiplayer shooter game in Lisp, here is my journey

#43

Earlier quoted context omitted.

> The point about lack of tooling for Babylon.JS is interesting: a lot of times I see people wanting to release games but spending most of the time building tools... sometimes all of the time. It is a delicate balance! Ah we all know what we really want to do - build tools! A game just makes the journey a tad more interesting.

Or, we want to make a game, but we also want to make the base a reusable game engine, so we can later make another game with it, and this way we can also make simpler tech demos on the way to impress our friends (real or on social media), and because of that we need to do this properly, and wait I remember the Virtual File System in StarCraft was fascinating to me as a kid, let's do something like it, and wow did you…

This post was physically painful to me, and also makes me paranoid that someone else has access to my /mnt/old_projects filesystem.

Re: I made a multiplayer shooter game in Lisp, here is my journey

#44

Earlier quoted context omitted.

> The point about lack of tooling for Babylon.JS is interesting: a lot of times I see people wanting to release games but spending most of the time building tools... sometimes all of the time. It is a delicate balance! Ah we all know what we really want to do - build tools! A game just makes the journey a tad more interesting.

Or, we want to make a game, but we also want to make the base a reusable game engine, so we can later make another game with it, and this way we can also make simpler tech demos on the way to impress our friends (real or on social media), and because of that we need to do this properly, and wait I remember the Virtual File System in StarCraft was fascinating to me as a kid, let's do something like it, and wow did you…

I love the saying "running out of childhood". Going to look for places to use that.

Re: I made a multiplayer shooter game in Lisp, here is my journey

#46
post #25
post #8

How many closing parenthesis do you have on a last line?

In college Intro to CS was taught with Racket (a lisp) and we even had to write code with pen and paper during our exams. Got really good at quickly visually matching parentheses which is still helpful to me today in non-lisps. (But given that the handwritten code would never be run, you could also just fudge it and write a bunch of )))))'s at the end and hope the TA grading it wouldn't count them either)

Average Northeastern student.

Re: I made a multiplayer shooter game in Lisp, here is my journey

#48
I have a question if you don't mind. I don't know clojure at all, and I may be misreading things, but from this comment on your site:

> Game development is fundamentally an art of state management. States are everywhere, and managing numerous unrelated systems in harmony is a challenging task. While Clojure’s immutability by default offers many advantages, it also introduces complexity. To handle the intricate state management required for game development, I had to create my own abstractions. Writing a custom DSL (domain-specific language) became a necessity, but it wasn’t easy.

And then this comment:

> In Wizard Masters, all game data resides in a global game database—a single large hashmap. The fields referenced in the :what block (e.g., :pointer-locked?, :player/ground?) are keys in this global hashmap.

Please don't take this the wrong way but you've essentially just worked around clojures functional immutable style and invented global state in a hashmap, right?

Re: I made a multiplayer shooter game in Lisp, here is my journey

#49

PLEASE PLEASE PLEASE option to invert mouse Y-axis. It looks fantastic, but I can only play if down on mouse is up on view.

lol, it's a shooter, not a flight sim!

I am the same way with shooters: I play all games with inverted Y. It's just about personal preference and what you grew up playing. I believe the difference is whether you conceptualize mouse/joystick motions as moving your eyes vs pivoting your head.

normal: move joystick up = move eyes up

inverted: move joystick up = push top of head down

Re: I made a multiplayer shooter game in Lisp, here is my journey

#50

Earlier quoted context omitted.

> The point about lack of tooling for Babylon.JS is interesting: a lot of times I see people wanting to release games but spending most of the time building tools... sometimes all of the time. It is a delicate balance! Ah we all know what we really want to do - build tools! A game just makes the journey a tad more interesting.

Or, we want to make a game, but we also want to make the base a reusable game engine, so we can later make another game with it, and this way we can also make simpler tech demos on the way to impress our friends (real or on social media), and because of that we need to do this properly, and wait I remember the Virtual File System in StarCraft was fascinating to me as a kid, let's do something like it, and wow did you…

Great post! "Running out of childhood", and "webshit": I have to remember these...
Post reply on HN