[Game] PRANG! [prang]

Post Reply
User avatar
luk3yx
Member
Posts: 83
Joined: Sun Oct 21, 2012 18:14
GitHub: luk3yx
IRC: luk3yx
In-game: luk3yx
Location: Earth
Contact:

[Game] PRANG! [prang]

by luk3yx » Post

PRANG!

Image

An unofficial port of PRANG!, a 2D arcade-style game, to Minetest.

Image

There are instructions on how to play inside the game. In short, you have to collect food/potions and avoid enemies. You can get a powerup (umbrella) to be able to destroy enemies, however obstacles are deadly while you have the powerup.

Requires 5.4.0+ servers, however it should work with clients down to 5.0.0 (although it will send more HUD updates to clients older than 5.2.0).

If you don't see a "FPS" counter at the top-left corner of the game, you may need to zoom out to be able to see the entire game. Minetest doesn't provide an API to get the window resolution from clients so an automatic zoom feature isn't possible at the moment.

Download

You can install PRANG! using Minetest's "browse online content" feature.

Alternatively, you can download a .zip or clone one of the two Git repositories:
Public server

If you don't want to download PRANG!, Edgy1 hosts a public server. Note that movement processing and rendering is done server-side so there may be lag and/or glitching if you are far away from the server (which is currently in Canada) or have a poor internet connection. See https://edgy1.net/minetest/prang for more information.

License

Code

formspec_ast, fs51, hud_fs, and prang are all MIT.

Media

The textures are CC BY-SA 4.0 Atomic Shrimp(?), and the music is CC BY-SA 3.0 Ozzed.

See the LICENSE.md file for more information.

Image
Last edited by luk3yx on Sun Oct 03, 2021 04:36, edited 1 time in total.
git_undo() { [ -e .git ] || return 1; local r=$(git remote get-url origin); cd ..; rm -rf "$OLDPWD"; git clone "$r" "$OLDPWD"; cd "$OLDPWD"; }

User avatar
Blockhead
Member
Posts: 1602
Joined: Wed Jul 17, 2019 10:14
GitHub: Montandalar
IRC: Blockhead256
In-game: Blockhead Blockhead256
Location: Land Down Under
Contact:

Re: [Game] PRANG! [prang]

by Blockhead » Post

I didn't know you could do 2D games with minetest, so that's pretty cool. It's all just a formspec right? Does it support multiplayer and how bad would the effect of lag be? Could it be integrated as a minigame in some larger server?

Gameplay wise: Doesn't seem to escalate in difficulty past a certain point and/or doesn't escalate fast enough. Got to 350k score on my third play and then quit due to boredom. I get that the enemies are a bit slower than you so you can escape them, but the enemy spawns could be ramped up faster based on score; or you could make the extra life milestones further and further apart as your score increases. You could also decrease the rate at which umbrellas spawn.

Overall worth playing just to see what minetest is capable of in 2D as well, but I don't think I'll play it again in a hurry. It was easy to install from ContentDB too.
/˳˳_˳˳]_[˳˳_˳˳]_[˳˳_˳˳\ Advtrains enthusiast | My map: Noah's Railyard | My Content on ContentDB ✝️♂

User avatar
Wuzzy
Member
Posts: 4778
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Game] PRANG! [prang]

by Wuzzy » Post

That's an unusual sight, but interesting.

GUI-wise, the game isn't fully consistent. Some GUI elements use the Minetest default style or default font, like the config buttons in the main menu or the score display. If you want to go retro-style, it's better to go all-in.

Also, if you Esc out in the main menu, you end up in the black void ...That's not good. One trick you could do is to just automatically reopen the formspec if it was closed.

Also, I think "enable_server" should be added to the disabled_settings.

I dislike that the game forcefully sets the dedicated_server_step setting. This setting is silently stored in my global minetest.conf and stays there even after I quit. This has some annoying side-effects afterwards … It's partially a Minetest problem as well, I wish it would be more flexible.


The game itself is pretty easy, at some point, the difficulty seems to be maxed out and doesn't get higher and it gets repetitive fast. I got a score of 300260 on my 1st try and I basically just suicided due to boredom lol.

But it's pretty interesting to see you can do 2D games in Minetest, that's pretty funny! :D

User avatar
luk3yx
Member
Posts: 83
Joined: Sun Oct 21, 2012 18:14
GitHub: luk3yx
IRC: luk3yx
In-game: luk3yx
Location: Earth
Contact:

Re: [Game] PRANG! [prang]

by luk3yx » Post

Blockhead wrote: It's all just a formspec right?
It uses formspecs for the menu buttons but HUDs for the game itself.
Blockhead wrote: Does it support multiplayer and how bad would the effect of lag be? Could it be integrated as a minigame in some larger server?
It will work on multiplayer servers but players can't play together. This doesn't work well if you have high latency to the server, Edgy1 hosts a server (https://edgy1.net/prang) if you want to try it out. It may be able to work as a minigame, although the server would need to have a lower server step and low lag.
Gameplay wise: Doesn't seem to escalate in difficulty past a certain point and/or doesn't escalate fast enough. Got to 350k score on my third play and then quit due to boredom. I get that the enemies are a bit slower than you so you can escape them, but the enemy spawns could be ramped up faster based on score; or you could make the extra life milestones further and further apart as your score increases. You could also decrease the rate at which umbrellas spawn.
Currently the gameplay is similar to the original game.
git_undo() { [ -e .git ] || return 1; local r=$(git remote get-url origin); cd ..; rm -rf "$OLDPWD"; git clone "$r" "$OLDPWD"; cd "$OLDPWD"; }

User avatar
luk3yx
Member
Posts: 83
Joined: Sun Oct 21, 2012 18:14
GitHub: luk3yx
IRC: luk3yx
In-game: luk3yx
Location: Earth
Contact:

Re: [Game] PRANG! [prang]

by luk3yx » Post

Wuzzy wrote: GUI-wise, the game isn't fully consistent. Some GUI elements use the Minetest default style or default font, like the config buttons in the main menu or the score display. If you want to go retro-style, it's better to go all-in.
I agree, although I'm not sure if I'll get around to implementing this.
Wuzzy wrote: Also, if you Esc out in the main menu, you end up in the black void ...That's not good. One trick you could do is to just automatically reopen the formspec if it was closed.
I avoided this so you could run chat commands without starting a game. This probably isn't very useful in singleplayer and not trapping players in a void is probably more important than being able to run chatcommands without starting a game. It should now re-open the formspec if you close it.
Wuzzy wrote: Also, I think "enable_server" should be added to the disabled_settings. I dislike that the game forcefully sets the dedicated_server_step setting. This setting is silently stored in my global minetest.conf and stays there even after I quit. This has some annoying side-effects afterwards … It's partially a Minetest problem as well, I wish it would be more flexible.
I have to decrease the server step to make it playable, it's a shame Minetest writes it back to minetest.conf. Singleplayer seems to run with a low step regardless of this setting, maybe disabling enable_server will fix this issue (at least for 5.5.0+).
Wuzzy wrote: The game itself is pretty easy, at some point, the difficulty seems to be maxed out and doesn't get higher and it gets repetitive fast. I got a score of 300260 on my 1st try and I basically just suicided due to boredom lol. But it's pretty interesting to see you can do 2D games in Minetest, that's pretty funny! :D
I've (mostly) copied the original game and the difficulty stops increasing with a score of 40,000.
git_undo() { [ -e .git ] || return 1; local r=$(git remote get-url origin); cd ..; rm -rf "$OLDPWD"; git clone "$r" "$OLDPWD"; cd "$OLDPWD"; }

User avatar
MisterE
Member
Posts: 693
Joined: Sun Feb 16, 2020 21:06
GitHub: MisterE123
IRC: MisterE
In-game: MisterE

Re: [Game] PRANG! [prang]

by MisterE » Post

great job with this! any chance you could put the whole game into an arcade node that the formspec opens when you rightclick it? So... it gets added as a modpack rather than a whole game. IK that the point of this is to make a whole game but it would be nice to have this on my minigames server... also a highscores list of players who have played it would be nice. Anyhow, I had a bit of fun with this game :)\

Edit: the above suggestion isnt for the game, but to copy the game to a mod

User avatar
luk3yx
Member
Posts: 83
Joined: Sun Oct 21, 2012 18:14
GitHub: luk3yx
IRC: luk3yx
In-game: luk3yx
Location: Earth
Contact:

Re: [Game] PRANG! [prang]

by luk3yx » Post

MisterE wrote:
Mon Sep 27, 2021 22:04
great job with this! any chance you could put the whole game into an arcade node that the formspec opens when you rightclick it? So... it gets added as a modpack rather than a whole game. IK that the point of this is to make a whole game but it would be nice to have this on my minigames server... also a highscores list of players who have played it would be nice. Anyhow, I had a bit of fun with this game :)\

Edit: the above suggestion isnt for the game, but to copy the game to a mod
While this would be possible, you'd have to lower the `dedicated_server_step` setting so the game runs at a playable speed, which may affect other mods on the server. It would also be very sensitive to lag. Controls are processed server-side so the game won't work well for anyone who has a poor connection to the server (or who is far away from the server).
git_undo() { [ -e .git ] || return 1; local r=$(git remote get-url origin); cd ..; rm -rf "$OLDPWD"; git clone "$r" "$OLDPWD"; cd "$OLDPWD"; }

User avatar
celeron55
Administrator
Posts: 532
Joined: Tue Apr 19, 2011 10:10
GitHub: celeron55
IRC: celeron55

Re: [Game] PRANG! [prang]

by celeron55 » Post

This is ridiculous and I love it. I was surprised how well it plays.

Technically, it's important that Minetest's UI is flexible enough to make this possible and it's good that the amount of boilerplate code is fairly similar to what you would get with any 2D engine.

User avatar
MisterE
Member
Posts: 693
Joined: Sun Feb 16, 2020 21:06
GitHub: MisterE123
IRC: MisterE
In-game: MisterE

Re: [Game] PRANG! [prang]

by MisterE » Post

im amazed at how perfect an implementation of prang it is, from playing the browser based version!

User avatar
luk3yx
Member
Posts: 83
Joined: Sun Oct 21, 2012 18:14
GitHub: luk3yx
IRC: luk3yx
In-game: luk3yx
Location: Earth
Contact:

Re: [Game] PRANG! [prang]

by luk3yx » Post

celeron55 wrote:
Sat Nov 27, 2021 21:29
This is ridiculous and I love it. I was surprised how well it plays.

Technically, it's important that Minetest's UI is flexible enough to make this possible and it's good that the amount of boilerplate code is fairly similar to what you would get with any 2D engine.
Thanks!
git_undo() { [ -e .git ] || return 1; local r=$(git remote get-url origin); cd ..; rm -rf "$OLDPWD"; git clone "$r" "$OLDPWD"; cd "$OLDPWD"; }

User avatar
Hybrid Dog
Member
Posts: 2828
Joined: Thu Nov 01, 2012 12:46
GitHub: HybridDog

Re: [Game] PRANG! [prang]

by Hybrid Dog » Post

I've only played the browser version of this port and I like it. I also quit due to boredom when the difficulty has maxed out.
https://minetest.dustlabs.io/?gameid=prang

‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪

User avatar
SuperStarSonic
Member
Posts: 160
Joined: Fri Oct 14, 2022 20:30
GitHub: Python-Sargent
In-game: SuperStarSonic
Location: Earth (may be out of date)

Re: [Game] PRANG! [prang]

by SuperStarSonic » Post

Fun to play, I just spent 10-15 minutes on my first game, (16000+ points, not too bad)

Still very much bad at it, but I had plenty of fun.

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 6 guests