Okay, so today I started Dungeon of the Day (working title), for the 7 Day Roguelike challenge 2021.
i started by creating a an array of arrays (2d array) to 'hold' the level. i looped through it to assign a blank characters, at first a zero, but now a period. it took me some time to figure out how to properly point to a x,y position properly with this method. argh. lots of trial and error and i copy-pasta one line i didn't really understand from stackoverflow but understand what it outputs and worked backwards. actually, here it goes. this is cool. separately, maybe i can revisit making my own processing-derivative drawing parser in ascii. ok ok, that's a later project. anyway, i can now address a grid of text with x,y coordinates. great. proud of myself! lol. i have a grid of periods.
................................ ................................ ................................ ................................ ................................
next i pick a random x,y position on the grid for the player. drop an @ there.
................................ ................................ ........@....................... ................................ ................................ ` now i save to an external file. i think a core mechanic of my game will be that you can only play one move a day. inpsired by michael brough's vesper.5 'ritual'-game where you can (only move one square a day). that game got a lot of notice. oh, but it wasn't ascii. and it was 7 or 8 years ago. argh. anyway. i think i like this idea. and it's doable. and even though the command line and ascii art does not appeal to my 'art' base, my hacker phreaks like this, and i like this too! lol. it's not visual though. michael's work is so appealing because it speaks its own visual language. should i just work in p5 again? i have a half-engine for roguelikes in p5. maybe i could revisit? but way, i like this idea of a "Message of the Day" (Dungeon of the Day?) roguelike where it's in the command line, since that's my primary interface on my computer. i mean i'm typing in the command line now.
node dotd --new # new game
node dotd --left #move left
the concept is loosely that it's an ambient game. when you open a new terminal window the board (perhaps) is displayed as the message of the day. you can make one move a day. (how?). other than moving, maybe you can also use an item, talk to npc's, buy something at the market? or maybe you can move up to 3 different characters, like Lost Vikings (o.g. nintendo game that i liked that there doesn't seem to be any modern clones of). okay, need to figure out more core mechanic/compelling gameplay. an ambient game is nice perhaps but needs some juice to make people want to play this and not skip over it. other roguelike ideas i'd been thinking of but maybe not this time: * monome teletype-based roguelike for my modular synth. moving/fighting/spells would each play a different sound. i wish i could plug a nintendo/snes controller though instead of a keyboard. i guess i could use a numpad instead. each number to trigger a different script, for each direction and maybe 0 for something. * use p5.js to make more out-there experimental compelling visuals, a la a Broughlike * use Lua. which i really enjoy, and there are (brough-like again!) tutorials for * use pico-8 which i also enjoy, and is a subset of Lua with extended API, and i have some tutorials and previous experience on. i particularly love how it combines a CLI with visuals on same screen. i wish i could do this with p5/js. * use my PLOGO logo-language to make a roguelike. kind of a funny idea. also, i did built a console into it. anyway.... no end of (bad) ideas # Day 1 1/2 What should terrain look like? Old PETSCII? ZZT? (Can i get this with unicode or do i need to load a special font in the terminal, and then have to package that font? Can node do this? oh wait, or should i just do this. it's easy. emoji.🎄 🌳 🌲 🌴 🎋 🏡 🌱 🌿 🏕️
too cheesy? possibly ### References Code page 437 - (for example in ZZT) => https://wikimili.com/en/Code_page_437 page 437 characters translated to unicode => https://github.com/berenddeschouwer/fourthreeseven unicode page 437 font to work in linux! => https://www.masswerk.at/nowgobang/2020/petscii embedded (copy-pastable) in this article => https://style64.org/petscii/ petscii to unicode converter