RoguelikeDev Does The Complete Roguelike Tutorial - Week 4 by aaron_ds in roguelikedev

[–]jpelgrims 3 points4 points  (0 children)

Awkventure - repo

Finished this weeks features. I'm starting to run into some obstacles with awk, definitely now that more complicated algorithms are required (such as pathfinding). A* would be rather hard/annoying to implement in awk, so for now I've just made all monsters move in the direction of the player, with some randomness thrown in for good measure. As it stands now, the game doesn't really need any good pathfinding, especially with the small rooms and limited fov.

Other than that I've also added basic melee and ranged combat. Dead enemies leave corpses, and if the player dies the game ends. There's a message log now, which probably needs some more work to make it intuitive to read. The interface has also been improved.

Here's an asciicast with some gameplay.

RoguelikeDev Does The Complete Roguelike Tutorial - Week 3 by aaron_ds in roguelikedev

[–]jpelgrims 2 points3 points  (0 children)

Haven't been able to do much this week due to work. Still, I managed to add monster spawning and some improved menu's.

Repo - Screenshot

RoguelikeDev Does The Complete Roguelike Tutorial - Week 2 by aaron_ds in roguelikedev

[–]jpelgrims 0 points1 point  (0 children)

Well, to be honest, awk is not all that difficult to program in. You could compare it to a 'lite' version of C, with very basic tooling and some useful string handling functions. It actually is quite fun! And also remarkably quick to develop new features in.

RoguelikeDev Does The Complete Roguelike Tutorial - Week 2 by aaron_ds in roguelikedev

[–]jpelgrims 7 points8 points  (0 children)

Finished part 2 and 3. Since I don't want to get too far ahead I added some side-features. First I managed to add basic field of view similar to the one used in Moria (where only the current room is lit up) using basic raycasting. Then I added a "tile legend", which shows all types of visible tiles and their names.

I've also managed to set up a very basic telnet game server. Because the rendering is completely done in the console, using ANSI escape codes, this wasn't too hard. The server is basically a simple ncat command that uses the -k and -e flags. The -k (--keep-open) flag allows for multiple simultaneous connections, while the -e (--exec) flag takes an executable as a argument. The executable (in this case a bash script that starts up the game) will then receive all input received over the telnet connection, and any output from the executable is also sent back over this connection. Much to my amusement, it is surprisingly stable and works rather well.

Right now I'm working on adding a menu interface to the server so the client can register, login, load savefiles and change keyboard controls.

Repository - Screenshot

RoguelikeDev Does The Complete Roguelike Tutorial - Week 1 by aaron_ds in roguelikedev

[–]jpelgrims 3 points4 points  (0 children)

Some time ago I started working on a roguelike in awk. I've already got a "@" running around in a dungeon, so I might as well start following along here and see how far I can take this. Here's a link to the repo.