
Posted December 22, 2020 by Nuclear_Diamond
Until now, the game has drawn the level and all entities on the graphscreen, which means it uses the graphscreen's small character set, and also that the proportions of the level are much more square than your usual roguelike, since on most terminals characters are taller than they are wide (but the opposite is true with the way that characters are currently drawn)
Long story short, the home screen (which is where all the usual stuff you do on a Ti-84 is displayed) can be accessed with commands like Disp() and Output() which mean that I can draw directly on the homescreen. This means that characters would be much bigger onscreen compared to how they render on the graphscreen, and that also all of the current "overwrite past character position" code could be removed, since on the homescreen the act of filling a spot with a character already clears it. This would probably greatly speed up execution. This does, however, come with some added challenges, such as the fact that the home screen has 8*16 rows instead of the 10*12 rows I'm able to get away with on the graphscreen. This means smaller levels, but also much faster round times and bigger, more legible characters.
Here is a comparison of the classic Graph Screen display and the new Home Screen display:
The "classic" Graph Screen display:

A mockup of the "new" home screen display:

The way I see it, the graph screen has *much* more real estate to work with, and levels look much more cramped on the home screen. However, with the greatly improved drawing speed I think going between rooms in the home screen display would be a much more pleasant experience, so we could end up with an equally large level (by going between rooms). The other option would be to implement some sort of a scrolling display, but this would most likely take a while to draw onscreen, negating the benefits of switching to the home screen in the first place.
Now, on to the main development: the new level generator.