PDA

View Full Version : ANGEL code library for BBS doors



Draquix
16-07-2007, 09:48 PM
The ANGEL door kit contains a number of units for TP 7.0 for the development of doorgames for BBS systems. It contains an entire new system of writeln (awriteln, awriteiccln for color) to use in getting the console program's output to show up on the BBS when users play the game.
The problem is that I can't get the traditional or example defined methods of inserting a variable into a line of output.
e.g. awriteln('Your health lvl is',hitpoints); doesn't work. I'm pushing forward in developing the text based rpg with traditional writeln statements for any output containing variables in it, and awriteiccln for other messages to be in ANSI color. The problem is I don't know if this will work when the program is ran as an external door from a bbs. It does work as a standalone.

If anyone has used ANGEL successfully, please let me know either a way to use awrite's to display variables (mainly integers) or whether someone can tell me if the generic writeln is compatible or not with a BBS.

WILL
16-07-2007, 10:02 PM
Wow... I don't know of a single BBS that would be running in this day and age... :? Mind you noone uses TP7 anymore either.

I recommend looking into Free Pascal at www.freepascal.org if you are a fan of the older style console coding. Otherwise FPC (short for Free Pascal Compiler) is just as modern as all the other commercial and opensource compilers out there.


...and welcome to PGD! ;)

captainproton
17-07-2007, 08:29 AM
BBS's are still around, but mostly used via TELNET rather than the old style dialup - which was a pain because you had to lock com port speeds, use a FOSSIL Driver and other cool stuff.

I used to own and run a BBS many years ago, it was good fun.

I also wrote an IGM (In Game Module) for Legend of the Red Dragon - called Weapons of War. What let it down was that I stupidly wrote some cheats in for friends, but apart from that it was pretty cool.

They still run my game at http://eob-bbs.com if anyone is interested.

Now, writing doors was fun. From memory I used a unit called sharky which allowed me to write ansi graphics and stuff both to the local sysop window and the remote machine.

You mentioned "awriteln('Your health lvl is',hitpoints);" are you sure it wouldn't be something like

awriteln('Your health lvl is'+inttostr(hitpoints));

or
HitPointsStr:=inttostr(hitpoints);
awriteln('Your health lvl is'+hitpointstr);

Because you seem to be writing a string and an integer - but not knowing exactly what you are doing makes it hard to debug.

Craig

captainproton
17-07-2007, 08:49 PM
I forgot to mention. The generic writeln you mentioned is most likely only good for the machine on which the code is running. I will not redirect output to a comport or any other output device. Local only.

Craig

drzimp
21-09-2007, 02:17 PM
The ANGEL door kit contains a number of units for TP 7.0 for the development of doorgames for BBS systems. It contains an entire new system of writeln (awriteln, awriteiccln for color) to use in getting the console program's output to show up on the BBS when users play the game.
The problem is that I can't get the traditional or example defined methods of inserting a variable into a line of output.
e.g. awriteln('Your health lvl is',hitpoints); doesn't work. I'm pushing forward in developing the text based rpg with traditional writeln statements for any output containing variables in it, and awriteiccln for other messages to be in ANSI color. The problem is I don't know if this will work when the program is ran as an external door from a bbs. It does work as a standalone.

If anyone has used ANGEL successfully, please let me know either a way to use awrite's to display variables (mainly integers) or whether someone can tell me if the generic writeln is compatible or not with a BBS.


As someone said previously, you'll need to do an awriteln('some string'+inttostr(hitpoints));

ANGEL's awriteln is declared as: procedure awriteln(s:string); But since ANGEL is a closed source kit, there's no way of anyone knowing what it actually does under the hood.

MannDoor, on the other hand, is a nice kit that compiles for BP/TP 7, FPC, VP, and Delphi.. ANNND you get the source. http://www.randma.ca

TLDR: Use IntToStr() .. Use MannDoor instead of ANGEL

Robert Kosek
21-09-2007, 02:38 PM
drzimp, your URL is wrong. It should be: http://www.randm.ca/programs.php

drzimp
21-09-2007, 02:53 PM
drzimp, your URL is wrong. It should be: http://www.randm.ca/programs.php

Seems I added an "a" when I shouldn't have. Thanks for pointing that out.

jasman
23-09-2007, 08:59 PM
Wow... I don't know of a single BBS that would be running in this day and age... :? Mind you noone uses TP7 anymore either.



Hello there! i run the website/bbs/etc at eob-bbs.com and i'd have to say, bbses are NOT dead :D they may be in some zombie form of undead though!

Most bbs softwares of today are an all-in-one viable free alternative to web/nntp/telnet/ssh/webforums/webmail/email/gopher/finger/rlogin servers.

Since the mid nineties we've connected our bbses to the internet and they
are accessible via telnet [and god knows what else]

Not only THAT, but they are maintained frequently and the authors are easy to contact.

BBSes are extremely popular in other parts of the world where email access is sparse [russia] or the internet is overly regulated [china].

It's my feeling that bbsing will come back into popularity when regulations from the various governments overstep their bounds, and people will search for safe alternatives to email/filesharing.

i setup a myspace site at http://www.myspace.com/bbses

there are some[but not all] ]http://theroughnecks.net/Downloads.aspx[/url]

they support ansi and other emulations and zmodem downloads.

Great website you guys have here, and pascal is not dead either! :D

marcov
28-10-2007, 02:45 PM
NORMAL WRITELN/READLN BEHAVIOUR IS PLUGGABLE.

On both FPC and TP. The standard example is unit crt, that redirects output over its own routines (see assigncrt())

Maybe the awriteln implementor didn't know that.

The graph unit also does somethign similar.