Nov 21, 2013

ASCII

What do you think about ASCII.
Do Roguelike means ASCII?
You said yes, but why? Seriously. Just think about it.
Why ASCII means to be roguelike main feature?
Heh, it looks like I understand.

The same situation happens with other aspects of roguelikes and  nearly everything in life.
For example, lets say, that Roguelike development is religion.
We have the main idea, name it teaching. What make roguelike so addictive.
Make you to assault dungeons, fight monsters. That's why they eats up hours of your time and you don't regret it.
What is "Te@ching of Roguelike"?
It is procedural generation, jiggling all game world up side down.  
It is lot of random action in gameplay.
Depth and tons of simple details, fast gameplay, that takes hours to master.
You can see, they are really few.
This is roguelike.

But, there is other side of the coin, that doesn't make roguelike, but absurdly meant to do so!
The sacrament rituals of roguelike.
Some of them had settled here, because The Master Rogue did so.
Without understanding why this feature was there!
We can see a lot games, that has all roguelike "features", read game presents us heap of ridiculous  combinations of obsolete  rogdev traditions, dirty hacks in a uncontrollable boring mix. (I knew it, it was reason of Fallen1 downfall. =)  )

Lets check a couple of this rogue dev traps:
Food clock. You say -- "but roguelike have to have it!". Hey, hey! Why?
Because food clock exists in all Great Roguelikes of Old Times!
Okay, but some of them, like ADOM, would really win, if food clock would vanish from them or reworked greatly.
And for rogue or DCSS. Food clock is limitation, gameplay press, that makes player to move forward and not to grind.
And I think -- not the best one.
Food clock could be really annoying part of game play if you add it, just because every roguelike should have it.


Next, but not the last sacrament rituals is our topic, ASCII.
Ask anyone, what means Roguelike and one of 3-5 answers would be "this ugly ASCII".
But before trying to put me on pyre for heresy, ask youself -- why ASCII even came to roguelikes?
Answer is simple, it was the easiest possible way to create UI for indy game.
It would take minimal code/hours investments and reasonable quality for terminals of old times.
The joke is that right now, create console window simulation on modern computers as hard as create fully graphical interface.
But the second one is really more flexible and useful.
Right now, ASCII in roguelikes is sacrament tradition, that should die long ago, but still on board.

Why? Well. people love traditions and ritual, even if it put real idea aside.

7 comments:

  1. The term rogue-like has become something of a buzzword. To my dismay, I have seen it applied to very un-roguelike games, such as side-scrollers. Rogue-likes are, by definition, games that are like rogue. There are graphical versions of rogue, but rogue was never a side-scroller.

    Random procedural content is one hallmark. Another is turn-based play. Rogue has more in common with chess, than it does with pong.

    Simulating a console window is no harder than using a GUI. The tools already exist, such as libtcod and PDCurses/SDL. So in my opinion it is NOT time for ASCII to die. The genre has room for both ASCII and graphical interfaces, and many rogue-like games reflect this by supporting both.

    ReplyDelete
  2. I think I didn't write it well enough. I plan to make couple more postr about it, but...

    Yes, they are LIKE rogue. That's true.
    But What makes The Rogue -- The Rogue?
    What parts of game affected gameplay and made rogue that astonishing win and what parts was just tools to create, code, make it run?
    That is my option.

    Yes, there is lot of tools and some of them rather powerful. So player can get old ASCII crouches with all modern effects. =)
    But ASCII didn't make Rogue that game, that made genre.
    It was tool of that day. I don't like words "what if..", but I am not really sure, that Rogue would have ASCII, if this genre born nowdays.
    I don't say, that ASCII very bad or all ASCII roguelikes should be deleted and roguedevs who use it should be executed. Of course not (I use it myself as "dummy" filler)!
    But really, with all my respect, lets stop reanimating this old and dead UI tool.

    ReplyDelete
  3. The original rogue developers used libcurses, which was cutting edge at the time. It is only a matter of time before "modern" graphics go out of fashion too. Rogue has its roots in D&D, which has its roots in literature and war gaming. It is more about the model than the presentation. It has the potential to be a classic. Classics like chess and text have been around for thousands of years. Text is relevant and it underpins modern web standards. It has fringe benefits such as portability, low bandwidth requirements, and accessibility to the blind. These may help explain why modern rogue-likes such as DCSS have public SSH servers for playing the text version of the game online. Text should not be a requirement, but it is not dead.

    ReplyDelete
  4. Rogue ditched ASCII as soon as it was ported to Mac. The ASCII aesthetic has some nice things about it, and is easier to display than making your own graphics, but there is absolutely nothing required about it for roguelikes.

    We recorded a Roguelike Radio episode on ASCII recently - should be out within the next week.

    ReplyDelete
  5. Right and I want to add one thing.
    You see, Ben, if we say - until any roguelike that use ASCII exists, ASCII isn't dead.
    Well, from this point of view, yes. It is not dead, "Long live the ASCII"!
    And lot of roguedevs don't give it to rest in peace.
    But, I was writing, that it is dead as tool, as method of creating final work.

    There is not reason, except fake elitism and stubbornest to use them.
    ASCII was(!) really easy way for data output at old computers.
    I had couple of them 20 years ago(it was XT and couple more ancient ones, obsolete even for that time, 286 was in its pride) and can say, that it was possible to create graphic interface on this machines.
    Of course, but they had very fast and easy console mode, that took 99 zillions less "units" =) of time and brainpower to work with.

    Right now, it is equal, 100% percent equal ways to show UI.
    When you work on graphics you need totally quantity of work, CP and GPU time to draw ASCII symbol or graphic tile on a screen.
    One guy from rlgclub saind very vell -- in this conditions, when there is completely no difference in used resources what to use: modern technology of obsolete, but something "vintage and classic", you are nothing, but a poser.
    .

    ReplyDelete
  6. When I said that rogue-like games had the *potential* to be classic, I emphasized that it is the model and not the presentation that matters. To qualify as a classic it would need to stand the test of time. Neither ASCII nor rogue-like games are old enough to qualify yet.

    It is ironic that you used a super-set of ASCII to call me a poser. Name calling aside, CPU time is a straw man. What I mentioned was bandwidth and the fact remains that ASCII uses less network bandwidth. The webtiles version of DCSS takes advantage of this by sending JSON over the network, when it could have used RFB.

    ASCII and graphics are a matter of taste, and I don't see why one's tastes should be imposed on others. However, I will point out a few possible reasons to use ASCII other than elitism. For one, programmer time matters a lot more than CPU time. As Darren mentioned, It takes less time to use ASCII than to draw graphics. It also takes less code. Even in a super-modern environment like the web browser, printing a character uses fewer lines of code than drawing graphics on a canvas or sprites from an image.

    ReplyDelete
  7. =)))))) You right, there was a portion of irony.
    But honestly, I totally disagree, that ASCII take less coding. Oh no! It takes at least equal quantity of code lines, also its limitations grow while program develops.

    Addressing the bandwidth. Well, it is only matter of technology. Speaking the truth, I can understand how single download of few hundred of KB can harm internet connection.

    ReplyDelete