Point taken Tom on the text front, ----- I actually understood your php
example pretty well given my knolidge of html, ---- ;D.
I suppose the crytical difference here is with Angband's presentation.
It doesn't need to worry about presenting several thousand screens of actual
text and linking them via key presses or whatever, it just needs to defign a
number of objects, ----- player, monsters, npcs, walls doors and items which
are presented randomly on a grid pattern with certain rules and attributes
attached to them, and set up the various reactions for what happenes when
two of these objects interact, rather than completely rewrite all in game
screens for each game event as happens in a gamebook style game or your
example.
I was just particularly interested in the use of text files, sinse that's
one of Angband's actual strengths, and the reason players have been able to
create so many different varients and alternative versions of the game so
easily.
Your example though also makes me wonder about early 80's rpgs like Eamon
and fallthru and how much doing they must have taken to create.
Beware the rue!
Dark;.
----- Original Message -----
From: "Thomas Ward" <[email protected]>
To: "Gamers Discussion list" <[email protected]>
Sent: Thursday, July 16, 2009 3:18 PM
Subject: Re: [Audyssey] Creating Roll Playing Games From Scratch
Hi Dark,
Well, when I wrote that article I was actually thinking more of designing
roll playing games in general rather than my roll playing game
specifically. In any case I understand what you are saying, and I could
use text files to store stats, weapons, armor, and other items, but there
are advantages to using an actual database for this. Plus, logistics
asside, programming in C, C++, C-Sharp, Java, etc is also a lot more time
consuming. Consider the two examples below.
C Example
// Header includes
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
// Function prototypes
void LoadScreen(int);
void GetInput(int);
// Load and show the game screen.
void LoadScreen(int screen)
{
// Clear the game screen
system("cls");
// If this is screen 1091
// print the screen
if (screen == 1091)
{
printf("(%d)\n", screen);
printf("You are standing in a north/south passage.\n");
printf("You can hear the sound of dripping water up ahead.\n");
printf("What would you like to do?\n");
printf("Head North (n)\n");
printf("Head South(s)\n");
}
// Wait for the player to press a key
GetInput(screen);
}
// Get keyboard input
// for the current game screen
void GetInput(int screen)
{
// Wait for a key press
char key = getch();
// If this is screen 1091
// handle keyboard input
if (screen == 1091)
{
// Head north
if (key == 'n')
{
LoadScreen(1092);
}
// Head south
if (key == 's')
{
LoadScreen(1090);
}
// The user pressed an invalid choice
else
{
system("cls");
printf("Error! Please press n or s.\n");
printf("Press any key to continue.\n");
getch();
LoadScreen(1091);
}
}
}
html/php example
<html>
<head>
<title>Legends of Etheria</title>
</head>
<body>
<p align="center">(1091)</p>
<p align="left">You are standing in a north/south passage. You can hear
the sound of dripping water from up ahead. What would you like to do?</p>
<br><a href="1092.php">Head North</a>
<br><a href="1090.php">Head South</a>
<?php
$options = file_get_contents('options.php');
$stats = file_get_contents('stats.php');
print $stats;
print $options;
?>
</body>
</html>
What is probably quite clear in these two examples is my second example
was far easier and quicker to create than the first example. While C is
powerful it is not really suited to the game book style adventure.
Assuming there were 1091 screens I'd have to do the same thing 1,091
times. In such an instance using html and php makes the job much easier to
perform.
Smile.
dark wrote:
Hi Tom.
Well I'm fully in favor of the frequent updates etc which a php script
game could give, and I'm glad your stil thinking single player even if
the logistics are much easier online, pluss, it'd probably be seen as
more reasonable of you to charge for an online game in some way than for
a downloadable text rpg, ----- though personally I'd be willing to pay
for such a game if it fulfilled my needs.
But being as your also running a business (and to maintain the server
costs of the game), either a subscription or account update fee for the
game to gain full access would be seen as more reasonable by the public
in general, ----- I know the huge amounts of markiting resources the
commercial interactive fiction company malinch have to put into selling
their games.
Btw, not to quibble over your decision (which I completely understand the
logic of), but Angband, the roguelike I mentioned which will hopefully be
having full accessibility features added in the future, has taken
precisely the opposite approach.
I'm not certain what language the game is written in, but there are
certainly several versions (windows mac os), and even source code for
self compiling.
When new versions come out, they are symply stuck on the website and
people are expected to update. Everything in the game, ---- the thousand
or so monsters, the classes, items, and huuuuuuge amount of complex
mechanics are contained in a series of text files which are easy to
modify (one reason Angband has so many varients developed by other
people). There is even a text file containing sound and display options.
Obviously there are some differences, ---- the most notable being that
while Angband certainly uses lots of text for a roguelike (one reason why
I'm fairly convinced it can be made fully accessible in the first place
given some extra warning messages and coordinates), it does have a
basically spacial interface with characters moving around a grid based,
randomly generated dungeon rather than the environment being described
gamebook style.
Stil, in terms of pure mechanics, ---- of which Angband has a truly mind
bogling amount, everything is run through text file databases.
this isn't to say your decision is wrong, or to argue in the least, -----
as I said I can fully follow your logic, I just thought it was an
interesting contrast, and sinse we're discussing rpgs I thought I'd throw
it out for considderation.
Beware the Grue!
Dark.
---
Gamers mailing list __ [email protected]
If you want to leave the list, send E-mail to
[email protected].
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/[email protected].
If you have any questions or concerns regarding the management of the
list,
please send E-mail to [email protected].
---
Gamers mailing list __ [email protected]
If you want to leave the list, send E-mail to [email protected].
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/[email protected].
If you have any questions or concerns regarding the management of the list,
please send E-mail to [email protected].