A rust-based roguelike in the pattern of common libtcod roguelike tutorials, created by following https://tomassedovic.github.io/roguelike-tutorial/ and extending/diverging where fun.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
.gitignore
COPYING
Cargo.lock
Cargo.toml
LIBTCOD-LICENSE.txt
LICENSE
README.md
arial10x10.png
menu_background.png
square.ttf
square10x10.png

README.md

The Glass Oak

This is a roguelike made in rust by following Tomas Sedovic's Roguelike in Rust tutorial. As a reason for me to install Rust and to learn a bit about it, I'm following along with /r/roguelikedev in a group effort to work on the roguelike tutorial around the same time. We'll see if anything in this is useful enough to make its way over to my other project, Creek.

What's Creek?

Fancy you should ask! It's a (very old-style vanilla js) simulation/game engine thing I wrote for the heck of it. You can check it out over at its github, or see a small demo of it running an action rpg or tetris.

It's very much a work in progress!

Is this good code? Can I learn from this or make money from it?

Haha, no, probably not.

Can I try anyway / use it somewhere though?

Yeah! Like Creek, this work is published under the MIT License. You can check out the specifics of what that entails in the License file. Don't worry about contacting me to use anything here, but if you have questions or want to anyway, hit me up at wyatt@wcarss.ca

Dev Log

Dawn of The First Day: Wednesday, June 27, 2018

I'm starting this venture ~2 weeks into the community effort, but I'm pretty sure I'll be able to catch up now that I actually have Rust installed and running code.

I was up until 4-5 AM last night trying to install Rust on Windows 7! I fell asleep multiple times while waiting for things to install or to uninstall, but it finally worked at one point and I excitedly rushed through the first part of the tutorial.

(If you're installing Rust for the first time on Windows, I wrote a blog post about this to help you out. My biggest problem was trying to be clever.)

As far as using Rust goes: the package system is already something I'm happy with, and the match function and some of the small syntactical things around while/if statements have struck me as cool so far -- I'm a little confused about why some tokens don't take semicolons (e.g. false or break), but I figure I'll pick it up as I go along. It's very surface stuff so far.

I tried to find a better font, but it seems like libtcod has some pretty exact (and unusual) requirements about the layout, format, etc. of its loaded font, and does not accept TTF files. I ended up mashing the Arial font Tomas Sedovic provides in tcod-rs together with a font called Square by Wouten Van Oortmersen, after converting Oortmersen's supplied TTF into a png using The DataBeaver's ttf2png , which only took a little bit of fiddling to make compile on ubuntu. But it also did a pretty weird job of laying the font out, so I'm not likely to do too much more tinkering with fonts for the near future.

Next up: Part 2 of the tutorial.

Some weeks later: August 7th, 2018

I've feasted and famined on this project and totally failed to update the development log as I went. I just completed Part 11, "Dungeon levels and character progression", and the character can now progress through dungeons and level up, in addition to all the menu systems, items, controls, saving & loading, fighting monsters, and all the other things that previous lessons have covered. There are only 2 lessons left -- improving the monster progression and some basic equipment functionality. Hope to get to them soon!