<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:admin="http://webns.net/mvcb/"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<channel>
	  <title>Ask MetaFilter questions tagged with roguelike</title>
      <link>http://ask.metafilter.com/tags/roguelike</link>
      <description>Questions tagged with 'roguelike' at Ask MetaFilter.</description>
	  <pubDate>Sat, 21 Nov 2009 19:18:12 -0800</pubDate> <lastBuildDate>Sat, 21 Nov 2009 19:18:12 -0800</lastBuildDate>

      <language>en-us</language>
	  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
	  <ttl>60</ttl>	  
	<item>
	<title>You hit Duke. Duke is killed.</title>
	<link>http://ask.metafilter.com/138754/You%2Dhit%2DDuke%2DDuke%2Dis%2Dkilled</link>	
	<description>I&apos;m trying to teach myself Java by writing a simple roguelike. Can you help me figure out the architecture? I&apos;m totally new to Java. I just installed NetBeans this evening. I&apos;ve been tinkering around with the Swing library.&lt;br&gt;
&lt;br&gt;
One of the reasons I &lt;em&gt;want&lt;/em&gt; to learn Java is to enhance my architectural chops. I&apos;m reasonably comfortable with OOP (mainly in PHP5, which lacks some of the more exotic OO features), and I&apos;ve read a couple of books on design patterns (and I know that patterns are not a magic bullet), but I still struggle with architecture.&lt;br&gt;
&lt;br&gt;
The specific concern I&apos;m wondering about is how to delegate control to various parts of the program as the player negotiates menus, enters different modes and interfaces in the game, etc.&lt;br&gt;
&lt;br&gt;
For example, the first thing the player will see is the main menu. From here, they can start a new game, load a saved one, or view the high score table.&lt;br&gt;
&lt;br&gt;
Let&apos;s say they choose the latter. My program needs to pass control over to the class responsible for displaying the high score view. When the user dismisses that view, the system should automatically return control to the main menu.&lt;br&gt;
&lt;br&gt;
Now let&apos;s say they start a new game. Control is passed over to the main game engine, which renders a map, player statistics, etc.&lt;br&gt;
&lt;br&gt;
The user presses &quot;r&quot; to read an item from their inventory. Control is passed over to a menuing widget which displays all readable items in their backpack, and allows them to select one with the up/down keys. The player can cancel the action with Esc (which simply returns control to the previous subsystem in the chain&#8212;&lt;em&gt;i.e.&lt;/em&gt;, the main game engine), or select the highlighted item by pressing Enter.&lt;br&gt;
&lt;br&gt;
Perhaps the player later encounters a minigame&#8212;let&apos;s say they can play blackjack to earn money. In this case, control gets passed to the blackjack class. When they decide they&apos;ve had enough, control is released to whatever class spawned the blackjack game.&lt;br&gt;
&lt;br&gt;
(Or they enter a city mode from an overworld map, then return to the overworld when leaving the city...you get the idea.)&lt;br&gt;
&lt;br&gt;
And, of course, when the player dies, the game engine terminates and control is automatically returned to the main menu.&lt;br&gt;
&lt;br&gt;
In other words, it&apos;s much like a call stack. I&apos;ve seen a similar system used in many programs, and I think it will work well for mine.&lt;br&gt;
&lt;br&gt;
But the web apps I&apos;m used to programming are much more linear creatures&#8212;they only receive input (&lt;em&gt;e.g.&lt;/em&gt;, POST variables) at runtime. State is entirely simulated&#8212;when it&apos;s time to move to the next step in a process, the user is simply forwarded to a new page (which is, effectively, a whole new program).&lt;br&gt;
&lt;br&gt;
So: does my proposed architecture (sketchy though it may be) make sense? Is there a name for it? And, most importantly, how do I implement it?&lt;br&gt;
&lt;br&gt;
Bonus points if you can combine this with an elegant way to separate the view/UI entirely from the game logic, so I can (for example) build the initial design with a text-only interface, and then graft a graphical mode on top later.</description>
	<guid isPermaLink="false">tag:ask.metafilter.com,2009:site.138754</guid>
	<pubDate>Sat, 21 Nov 2009 19:18:12 -0800</pubDate>
	<category>gameprogramming</category>
	<category>java</category>
	<category>roguelike</category>
	<category>softwarearchitecture</category>
	<dc:creator>ixohoxi</dc:creator>
	</item>
	<item>
	<title>Nethack-like copper mining game?  In space?</title>
	<link>http://ask.metafilter.com/58873/Nethacklike%2Dcopper%2Dmining%2Dgame%2DIn%2Dspace</link>	
	<description>Help me identify a computer game!  Mid-late 90s, Windows, visually a Nethack or Roguelike but thematically entirely different: you were sort-of mining for copper nodules, crystals, oxygen bubbles, and possibly seeds for plants. There were high ASCII symbols for the copper (other metals, too; I think silver would show up later) nodes, which kind of looked like paisley shapes, or a teardrop with a hook on the end.  There were three different representative sizes and it would tell you how many grams each was.  &lt;br&gt;
&lt;br&gt;
I am pretty sure you had to get oxygen bubbles to survive, and that there was some sort of plant or seed involved as well.  I say &apos;sort-of&apos; mined because I don&apos;t think it gave you any sort of personality.  You may not have actually mined - it might have been &apos;absorbed&apos; or &apos;eaten&apos; or something instead.  There may also have been crystals.  It was not an online game.  (Most definitely not Motherlode, although the theme is similar.)  I&apos;m pretty sure I played it in college, which means it was downloadable in the late 90s.  Serious bonus points if you actually find me the game.</description>
	<guid isPermaLink="false">tag:ask.metafilter.com,2007:site.58873</guid>
	<pubDate>Sat, 17 Mar 2007 07:14:45 -0800</pubDate>
	<category>computergames</category>
	<category>games</category>
	<category>mining</category>
	<category>roguelike</category>
	<dc:creator>cobaltnine</dc:creator>
	</item>
	<item>
	<title>I miss Castle of the Winds.</title>
	<link>http://ask.metafilter.com/36157/I%2Dmiss%2DCastle%2Dof%2Dthe%2DWinds</link>	
	<description>Recommend me a relatively simple &lt;a href=&quot;http://en.wikipedia.org/wiki/Roguelike&quot;&gt;roguelike&lt;/a&gt; for Mac. Years ago, when I was a PC user, I used to love Castle of the Winds.  Today I got the urge to play something like that again.  I found a ton of other roguelikes browsing the net, but the ones I looked at (ADOM, Nethack) are way over my head in terms of complexity.  I&apos;m looking for a something a bit closer to CotW -- easy to learn and without the kitchen sink mentality.  Any recommendations?</description>
	<guid isPermaLink="false">tag:ask.metafilter.com,2006:site.36157</guid>
	<pubDate>Tue, 11 Apr 2006 16:34:31 -0800</pubDate>
	<category>cotw</category>
	<category>games</category>
	<category>mac</category>
	<category>roguelike</category>
	<dc:creator>danb</dc:creator>
	</item>
	
	</channel>
</rss>

