PDA

View Full Version : TAB Alpha Release 40



catventure
06-08-2008, 08:28
Hi,

Here are details of recent updates thru to latest version of TAB today.

http://tab.thinbasic.com/

06 Aug 2008 (Release 40.2)
=========
*FIX. Space missing in "objlistoff" style of inventory listing when listing objects in carried container

*FIX. Coding flaw in #else# processing which was affecting game logic.
Important fix.

*ADDED. "door_demo.tab". Example door puzzle. (Thanks to sandyrepope)

02 Aug 2008 (Release 40.1)
=========
*FIX.The following ACTIONS now work correctly
swapobjsX,Y
swapcharsX,Y
swapflagsX,Y

*FIX. %anyn1% and %anyn2% text format tags causing TAB to get stuck in loop/crash if used out of context when no noun1 or noun2 parser variable existed.


26 Jul 2008 (Release 40)
=========
*CHANGED. TAB Player dialog window (text mode) now opens in same size as graphic mode game.

*NEW. Action "linkX$" automatically load a database into Player. eg: linkpart2.tab
Useful for multipart games over more than one database.

*NEW. "gfxdir=X$" and "sfxdir=X$" actions. Change picture and sound folders used by TAB.
eg: gfxdir=part2pics

*CHANGED. Any character movements are not now reported when player is in a dark location.

*FIX. The following actions were not working correctly *all* the time:
n1=n2
n2=n1
objn1=objn2
objn2=objn1
charn1=charn2
charn2=charn1

*CHANGED. playmovie display problems fixed. movie can now loop/repeat.

*IMPROVED. Long noun now works for ordinary and character nouns as well as object nouns.

*CHANGED. Video clip/movies are now called by the below actions:
playmovie1FILENAME$ - play a .wmv video clip in picbox1 ONCE only
playmovie2FILENAME$ - play a .wmv video clip in picbox2 ONCE only
loopmovie1FILENAME$ - loop a .wmv video clip in picbox1
loopmovie2FILENAME$ - loop a .wmv video clip in picbox2
Note: Player can press <ESCAPE> key to exit videoclips

*FIX. 'objn2notstatic' condition now works properly
*FIX. 'objn2notcontainer' condition now works properly

*NEW. Some new conditions added:
objn1lit - is object noun 1 a lightsource?
objn2lit
objn1notlit - is object noun 1 not a lightsource?
objn2notlit
litX - is object X a lightsource?
notlitX - is object X not a lightsource?

*NEW. 3 new OPTIONAL Character SPEECH actions are:

"charobjn1mess" - print a Speech Character's response to an object noun 1 'examine' command (uses object examine message text in Object Editor)

"charobjn2mess" - print a Speech Character's response to an object noun 2 'examine' command (uses object examine message text in Object Editor)

"charmsgX" - where X is a MESSAGE number. Print Speech Character's response to a command.

There's an example usage of these commands in "char_command_demo.tab"

21 Jul 2008 (Release 39)
=========
*NEW. "#then#" ACTION command implemented. An extension to TAB coding.

EXAMPLE:
[start]words conditions#condition#condition[acts]action#action#then#condition#condition[acts]action# action#then#condition#condition[acts]action#action[end]

*NEW. Set Editor Background Color button added to "Game Settings Editor"

*NEW. Objects can now be set as a "lightsource" on the Object Editor.

*NEW Locations can be set to be "dark" unless a lightsource is available.
To make a 'dark' location prefix the Location "brief" text field with an exclamation symbol ( ! )
TAB will display system message 78: "It's dark. You can't see anything" instead.
Location pics, exits, objects visible, and any characters present will not be reported in dark rooms...
(More info on TAB forum)

*NEW. 2 new conditions
dark - true if location is dark
notdark - true if location is not dark

*CHANGED. Actions may now follow a playmovie action command. TAB Player adventure dialog cannot be resized, minimized or maximized while video playing. TAB will be on "hold" until video closes.

20 Jul 2008 (Release 38.1)
=========
FIX. "#else#" not functioning correctly. Amended

FIX. Condition "objlocn2=absent" was missing due to duplication of "objlocn2=here"

18 Jul 2008 (Release 38)
=========
*NEW. "#else#" ACTION command implemented. An extension to TAB coding.

EXAMPLE:
[start]words conditions#condition#condition[acts]action#action#else#condition#condition[acts]action# action#else#condition#condition[acts]action#action#else#[acts]action[end]

Therefore you can have multiple conditions and actions in respect of the SAME starting "words conditions". .. Think about it; it could save writing several individual entries to build up a particular game puzzle and also cuts down on typing too!
Think of action "#else#" as meaning ELSE IF. The last use of action "#else#" in this example shows how to do an ELSE DO type of statement.
In other words if NONE of the previous Response entry conditions and actions were executed then this default action in respect of the valid command will ALWAYS be done. Notice there are no conditions before the [acts] tag for this "catch-all" usage of "#else#"

Example SCRIPT 1 or 2 usage format:

[start]condition[acts]action#else#condition#condition[acts]action#else#condition[acts]action[end]

There are no "words conditions" in these coding editors but you could use #else# as above
to truncate several entries into a single entry to save space...
You can still use the or-checking syntax ( "or_" prefix on conditions) in this new extension to TAB coding as well.

[start]words condition#or_ condition#or_condition[acts]action#else#or_condition#or_condition[acts]action#else#[acts]action[end]

*ADDED. New parser variable CONDITIONS that were missing or forgotten:
charn1=charn2 - is parser variable charn1 the same number as parser variable charn2?
charn2=charn1
charn1<>charn2 - is parser variable charn1 not the same as parser variable charn2?
charn2<>charn1

*ADDED. When entering CONTAINER objects in the Object Editor, TAB now warns user that the corresponding location number will be used as its contents holder. If accepted that Location will be flagged as "Inside of Object X." and will not be editable in the Locations Editor.

17 Jul 2008 (Release 37.1)
=========
*FIX. 'Deletion' word handling causing TAB to crash in particular situation . Revamped deletion routine.

*ADDED Web Page Tutorial pages included in text format as requested

http://tab.thinbasic.com

Cheers,
catventure.

Petr Schreiber
06-08-2008, 11:50
Hi,

thanks for the update!
It took me while to type the correct word to get the doors open ( I was trying to do "use key ..." ).
But once I got it, door opened ok.

Maybe under help menu in Player there could be list of usable verbs?


Petr

catventure
06-08-2008, 12:56
It took me while to type the correct word to get the doors open ( I was trying to do "use key ..." ).
But once I got it, door opened ok.
Maybe under help menu in Player there could be list of usable verbs?


Hi Petr,

It is just a basic example of interacting with a door and key: open, close, lock and unlock.
"use X on Y" is more commonly used in the point and click graphic adventure types of games - I can perfectly understand why you thought that might be an acceptable input. In any case such commands can be made to be understood quite easily in TAB, Petr.
Text adventures in general usually require a more specific input... such as just HOW exactly to use object X on object Y.
For instance, UNLOCK DOOR WITH KEY or UNLOCK DOOR USING KEY instead.
Part of the fun (and frustration!) in text adventures used to be trying various different commands to see what might work. However, it is also important for a game to be user friendly and responsive to player input, so catering for more and varied player commands can make a game seem more intelligent and enjoyable.

Regarding the help; The adventure author can create a dialog box message listing some (or all) the verbs and/or special commands used by the game; as was done in "PiggeryJokery" and "Crystal Keepers" games when HELP is typed by the player. Or can make playing instructions and rules in a 'readme' file.

Thanks for your interest and now I shall disappear..

> PLUGH !

Err..

> XYZZY !

Damn! The magic doesn't seem to work anymore. ;D

catventure.

Petr Schreiber
06-08-2008, 13:18
;D

You are right about the built in help in the game as a such, makes sense.


Petr