What is TP?TextPulse is a simple interactive storytelling engine that allows users to easily write stories using text and images, and allows them to specify multiple different actions that the user can choose. The easy-to-learn language is extremely simple, and anyone can do it. The idea came to me that this would be a neat program to make after I saw all the forum games people were making. I thought it would be cool if we could have a way to share and play these stories easily. Thus TP was born :3
So how do I use TP?As a basic user...Simply download the TP client. Any stories you download should be placed in C:\TextPulse\Stories.
Run the program at least once before downloading any stories! Once you have downloaded and placed a story in the designated folder, open up TP, go to File->Open Story and select the story of your choice.
As a writer...EDIT: Also, see the end of OP to check out the Story builder. It's just a prototype for now.
TP code is extremely straight forward. First, create a folder in C:\TextPulse\Stories called whatever you want your story to be called. Then, inside of that, create a text file called main.txt. All your code will go into this file. Any other files (.wav, .bmp, etc) will go inside your story's folder.
To start off, create a new entity like so:
(init)
<tags go here>
(/init)
Every story needs an init entity which will execute when the user loads your story. Within that entity you can place your tags.
Here are the basic tags which compose the TP language.
Text - [txt]Everything between the [txt] and the [/txt] tags will be displayed to the user as text.
If you'd like, omit the tags and simply type the text anywhere within the entity - TP will automatically consider it text.Example: [txt]You are standing in a dark room filled with crates. An awful stench of melting plastic fills your nostrils.Image - [ img]TP allows for 500x300 images to be displayed to the user. Creating a 500x300 bmp/png/jpg/jpeg file and placing it in your story folder will allow you to display it by simply putting it's name between the [ img] tags.
Example: (room.bmp is in my story folder) [ img]room[/ img]Internet Image - [ url]TP allows for 500x300 images to be displayed to the user. Put the full file path between the [ url] tags.
Example: (room.bmp is in my story folder) [ url]www.coolhouses.com/room.png[/ url]Viables - [vis]Viables defines the actions that the user can choose from. Format like so: [vis]eat|sleep|run[/vis].
When a user selects a viable during runtime, the program will crash if the viable's entity does not exist. You must have an entity to execute for each viable. In this case, I would need to create entities called run, sleep, and eat in my main.txt which would execute when the user selected that choice.
Execute - [exe]Putting an entity name between [exe] tags will force the program to execute that entity.
Execution Delay - [edl]Placing a number betweeb [edl] tags will make the [exe] execute only after the specified number of
tenths of a second. IE, 10 would be 1 second :3
Example: [edl]5000[/edl] [exe]winner[/exe] - this will cause winner to execute after five seconds.Wave File - [wav]Works like the [ img] tag but with a .wav file. Placing the [loop] tag in the file will cause the .wav to loop instead of simply playing once.
Saving/Loading - [save]/[load]Saving/loading will happen when you place the [save] or [load] commands. If you wish for TP to automatically save progress at each new scene the user gets to, you can turn it on and off using the [save_on] and [save_off] commands.
Message Box - [abx]Placing text between the [abx] and [/abx] tags will make an alert box pop up with the desired text.
Autoactions on/off - [dia_on]/[dia_off]Placing the [dia_off] tag will stop TP from listing the available actions to the user. The [dia_on] tag will re-enable the feature.
IMPORTANT: You can only have ONE of each tagset per txt file!Pics or it didn't happen:
So... Dowload? :DDOWNLOADDEMO STORY - For writers to get a hang of the engine. Just unzip and place the folder in C:/TextPulse/Stories. Yes, it works with v2 now :)
Update 1.1:-a couple bug fixes with help and quit menu items
-now logs your actions
Update 1.2-added .wav file support for music :D
-made opening stories much more stable
Update 1.3-general stabilization, less crashes
-will now try and help writers debug stories instead of crashing when en error is encountered
-new lovey default image (thanks, alphadin! :3)
Update 1.4-now it actually works :3
Update 1.5-now [ img] actually works with bmps like it should, instead of throwing errors about .png
-added a demo story to help writers
Update 1.6-added a saving/loading system for use in longer stories, includes autosaver option
-added ability to display a message box with text in it
-added the ability to enable or disable the automatic message telling the user what his available actions are, useful if you want the user to figure out what to do on his own
Update 2.0-single text file coding using entities, read OP for more information-more support for image file types: jpg, jpeg, png, bmp
-execution delay no longer temporarily freezes up the program
-new background for V2 (thanks alphadin :3)
Update 2.1-fixed the execution delay to work with 10ths of a second
-text tags will remain functional for people who are working on projects, but now you can also simply type text outside of any tags and it will be displayed to the user.
Update 2.2-fixed the error with execution delays, due to my stpidity :c
Update 2.3-fixed the error with execution delays, this time having to do with the new text system as of V2
Update 2.4-added a new Debug tool - select a story and it will try and catch some basic errors
-added the [ url] tag for internet images
Tell me if there's any glitches or problems...
User Story Library:- Demo - can be found next to the download link for TP
-
The Cliff by
dared