Bt Builder

Discussions and help for the Bard's Tale Construction Set
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

Methuselas wrote:I have Depth of Field ready for horizons, if you want to use lights. Since the Engine uses 0 for no lights and 5 for max light, I have the DOF set to 1, 2, 3,4 and _horizon (the default), so if you have an item or spell that has light of 1, it uses _horizon1 and so on.

If you want, I can send you a test batch for the city, so you can implement the code, or you can wait til I have the rest done. I have to do 40 or so.
I have a lot of things going on at the moment so I'm not sure when I can get to it.

If anyone is use my btbuilder COPR for Fedora, I'm going to delete it. Instead there is a new IdenticalGames COPR. It currently include Bt Builder and Troll Bridge.

(What is Troll Bridge? A Legend of Zelda like adventure game. It is not very playable and hasn't been touched in years. Some of the code is almost 20 years old and hasn't aged well. My kids saw a Teen Titans Go episode with a Legend of Zelda like segment. I showed them the original game which they liked. I then showed them Troll Bridge. They want me to add things to the game.)
Methuselas
Posts: 352
Joined: Tue Apr 28, 2009 11:03 pm

Re: Bt Builder

Post by Methuselas »

dulsi wrote: I have a lot of things going on at the moment so I'm not sure when I can get to it.
Totally fine. My mockups for the City were done in photoshop. I actually have renderable horizon files for Maya now. I want to render them, not use photoshop. Better for lights. In the original BT, Cat's Eyes actually went 7 squares deep. Do you want to support that?

Speaking of, does anyone want the Default Wall and Door Maya files, so they can render their own Tilesets? I can include my bat files for naming conventions. The only images you'll need are diffuse (texture), bump and normal maps. Simple bump maps can be made as a black and white file and normal maps can be created using the Nvidia plugins for Normal maps. I can do a quick tutorial on how to create nice Normal maps that help with depth illusion.
dulsi wrote:If anyone is use my btbuilder COPR for Fedora, I'm going to delete it. Instead there is a new IdenticalGames COPR. It currently include Bt Builder and Troll Bridge.

(What is Troll Bridge? A Legend of Zelda like adventure game. It is not very playable and hasn't been touched in years. Some of the code is almost 20 years old and hasn't aged well. My kids saw a Teen Titans Go episode with a Legend of Zelda like segment. I showed them the original game which they liked. I then showed them Troll Bridge. They want me to add things to the game.)
Got a Windows version? ;) Is it a top down crawler? How do graphics work? I'm always up for working on new stuff. Kiddo plays minecraft with Mum and wants me to play, so I can build him castles and stuff. Problem is, he always breaks my castles and blows them up with TNT. XD

Kiddo loves Teen Titans Go! as well. ;) He has all the DVDs.
"Using No Way as Way; Having No Limitation As Limitation". - Bruce Lee.

BTBuilder Stuff - https://drive.google.com/folderview?id= ... sp=sharing
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

Methuselas wrote:Totally fine. My mockups for the City were done in photoshop. I actually have renderable horizon files for Maya now. I want to render them, not use photoshop. Better for lights. In the original BT, Cat's Eyes actually went 7 squares deep. Do you want to support that?
I'll have to take a look to see what it did for that. Ideally if original BT supported it, I want it in Bt Builder.
Methuselas wrote:Speaking of, does anyone want the Default Wall and Door Maya files, so they can render their own Tilesets?
Not of interest to me unless you make it run under an open source program under Linux. :)
Methuselas wrote:Got a Windows version? ;) Is it a top down crawler? How do graphics work? I'm always up for working on new stuff.
This is old crap not new stuff :) No windows version at the moment. A dos version is available on the web site which should run under windows. Yes it is a top down crawler. Graphics work badly. Why don't we put Troll Bridge in a new thread.
Methuselas
Posts: 352
Joined: Tue Apr 28, 2009 11:03 pm

Re: Bt Builder

Post by Methuselas »

dulsi wrote: I'll have to take a look to see what it did for that. Ideally if original BT supported it, I want it in Bt Builder.
With the exception of the ones that have actual models, this only requires me moving a single plane along the grid. Rendering is the issue. ;)
dulsi wrote: Not of interest to me unless you make it run under an open source program under Linux. :)
You use Blender? ;) It supports FBX imports. I have *NO* problem making YOU an fbx of the default doors and walls. All of the "animations" are along the grid, using X,Y, Z Trans. Simple and easy - any modeler can do it and will import it, if it can import frames, which Blender should. Oh, and if need be, I should be able to just bake the "animations", which will just turn each frame into it's own object in the scene, so it will work.

Lights should import no problem, but it's just an ambient light at an X, Y and Z trans of .5 I have all the camera limits in a text file, so if they don't import, I can give them to you. Textures, may be a problem, due to my using hypershade, but you can create a new material instantly that's Blender-friendly.

Set the render settings how you want them and volia!

People who use Maya, though, can just add their textures, save the files and batch render. Everything is pre-determined by screen size. ;)

dulsi wrote:This is old crap not new stuff :) No windows version at the moment. A dos version is available on the web site which should run under windows. Yes it is a top down crawler. Graphics work badly. Why don't we put Troll Bridge in a new thread.
It's the old stuff, that's always the best. I loved Legend of Zelda. If I can run it in DosBox, I'm good. If I'm feeling REALLY snarky, I can load it up on my Amiga, via PC-Task. :P

Make a new thread. I'll jump in.
"Using No Way as Way; Having No Limitation As Limitation". - Bruce Lee.

BTBuilder Stuff - https://drive.google.com/folderview?id= ... sp=sharing
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

Methuselas wrote:There's zip files in the images folder for the picture slots I've done. 320 and 640. I left the "_" extensions. You can use those files in the job.xml. I'll add that tidbit to the manual in a bit. I have some other stuff to add.
I started adding the 320 files. Some are 224x176 instead of 112x88. The golem mng has a transparent background so it doesn't clear the old content. I've decided to hold off on including these images for now. I wanted to do a new release since I'm making progress on getting added to fedora.

Bt Builder 0.5.3 released. Added the ability to output tags on status screen (or other screens). Disabled auto screen multiplier. It will still up the graphics to 640x400 but a user with three monitors found the auto multiplier produced bad results. It can still be manually set from the command line. Removed the old utilities. Moved SDL_mng into a separate library.

To display a tag you use:
<tag name="lawful" />
If the character has the lawful tag, that returns lawful otherwise it returns empty string. It can be used with the if tag, it you need to display it different than the tag name. Tags are case sensitive. So "lawful" and "Lawful" would be different tags.

For Troll Bridge I create a thread under Off Topic.
Methuselas
Posts: 352
Joined: Tue Apr 28, 2009 11:03 pm

Re: Bt Builder

Post by Methuselas »

dulsi wrote: I started adding the 320 files. Some are 224x176 instead of 112x88. The golem mng has a transparent background so it doesn't clear the old content. I've decided to hold off on including these images for now. I wanted to do a new release since I'm making progress on getting added to fedora.
I don't know why my batch file didn't work, but I corrected the ones that it missed, manually. New zip file in on my shared folder. I haven't however, found the golem file that has a transparent background. Both mine, from the folders I made the archive with have black backgrounds and are set for opaque, anyway.
"Using No Way as Way; Having No Limitation As Limitation". - Bruce Lee.

BTBuilder Stuff - https://drive.google.com/folderview?id= ... sp=sharing
Methuselas
Posts: 352
Joined: Tue Apr 28, 2009 11:03 pm

Re: Bt Builder

Post by Methuselas »

Dulsi,

I'm having problems with the Alignment parameters for the Status screens. My Status.xml basically follows the BT3 format in that it shows:

"Character is a Level X Race Job."

However, I want it go go:

"Character is a Level X Alignment Race Job."

Can you look at my status.xml and post how I would get that to work, so I can add it to the manual, in the event other people wish to use the Alignment settings?

Code: Select all

<screenset>
	<screen number="1" escapeScreen="2">
		<line><name /> is a Level <level /> <race /> <job /></line>
		<tag name="Lawful" />
		<line><col>ST: <stat number="1" /></col><col>IQ: <stat number="2" /></col></line>
		<line><col>DX: <stat number="3" /></col><col>CN: <stat number="4" /></col></line>
		<line><col>LK: <stat number="5" /></col><col></col></line>
		<line><col>HP: <hp /></col><col>SP: <sp /></col></line>
		<line>Expr: <xp /></line>
		<line>Gold: <gold /></line>
		<barrier />
		<choice keys="pP" action="poolGold" align="center">(POOL GOLD)</choice>
		<choice keys="tT" screen="5" align="center">(TRADE GOLD)</choice>
		<choice keys="cCdD" screen="2" align="center">(CONTINUE)</choice>
	</screen>
	<screen number="2" escapeScreen="7">
		<line>Inventory:</line>
		<selectInventory action="selectItem" screen="3" noerror="1" numbered="0"/>
		<choice keys="cCdD" screen="7" align="center">(CONTINUE)</choice>
	</screen>
	<screen number="3" escapeScreen="2">
		<line><name /> do you wish to:</line>
		<line></line>
		<choice keys="tT" screen="4">Trade the item</choice>
		<choice keys="dD" action="drop" screen="2">Drop the item</choice>
		<can option="equipped" value="1"><choice keys="eEuU" action="equip" screen="2">Equip the item</choice></can>
		<can option="equipped" value="2"><choice keys="eEuU" action="unequip" screen="2">Unequip the item</choice></can>
		<barrier />
		<choice keys="cC" screen="2" align="center">(CANCEL)</choice>
	</screen>
	<screen number="4" escapeScreen="2">
		<line></line>
		<line>Who does <name /> want to give the <itemName /> to?</line>
		<selectParty action="give" screen="2" />
		<choice keys="cC" screen="2" align="center">(CANCEL)</choice>
	</screen>
	<screen number="5" escapeScreen="1">
		<line></line>
		<line>Trade gold to whom?</line>
		<selectParty screen="6" action="selectParty" who="1" />
		<choice keys="cC" screen="1" align="center">(CANCEL)</choice>
	</screen>
	<screen number="6" escapeScreen="1">
		<line></line>
		<line>How much gold will you trade?</line>
		<readString action="tradeGold" screen="1">></readString>
	</screen>
	<screen number="7" escapeScreen="8">
		<line>Spells:</line>
		<line></line>
		<can option="skill" index="4"><line><col>Archmage:   <skill index="4" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="0"><line><col>Conjurer:   <skill index="0" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="1"><line><col>Magician:   <skill index="1" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="2"><line><col>Sorcerer:   <skill index="2" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="3"><line><col>Wizard:     <skill index="3" field="value" default="-"></skill></col></line></can>
		<barrier />
		<choice keys="cCdD" screen="8" align="center">(CONTINUE)</choice>
	</screen>
	<screen number="8" escapeScreen="exit">
		<line>Skills:</line>
		<line></line>
		<can option="skill" index="8"><line><col>Bard Song:<skill index="8" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="7"><line><col>Disarm Traps: <skill index="7" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="6"><line><col>HideInShadows:<skill index="6" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="10"><line><col>Sneak Attack: <skill index="10" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="5"><line><col>Critical Hit:<skill index="5" field="value" default="-"></skill></col></line></can>
		<barrier />
		<choice keys="cCdD" screen="exit" align="center">(DONE)</choice>
	</screen>
	<error type="fullinventory"><name /> has no room for that item!</error>
	<error type="notenoughgold">Not enough gold.</error>
</screenset>
Thanks!
"Using No Way as Way; Having No Limitation As Limitation". - Bruce Lee.

BTBuilder Stuff - https://drive.google.com/folderview?id= ... sp=sharing
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

You just need to put the tag inside the line tag.

Code: Select all

<screenset>
	<screen number="1" escapeScreen="2">
		<line><name /> is a Level <level /> <tag name="Lawful" /> <race /> <job /></line>
		<line><col>ST: <stat number="1" /></col><col>IQ: <stat number="2" /></col></line>
		<line><col>DX: <stat number="3" /></col><col>CN: <stat number="4" /></col></line>
		<line><col>LK: <stat number="5" /></col><col></col></line>
		<line><col>HP: <hp /></col><col>SP: <sp /></col></line>
		<line>Expr: <xp /></line>
		<line>Gold: <gold /></line>
		<barrier />
		<choice keys="pP" action="poolGold" align="center">(POOL GOLD)</choice>
		<choice keys="tT" screen="5" align="center">(TRADE GOLD)</choice>
		<choice keys="cCdD" screen="2" align="center">(CONTINUE)</choice>
	</screen>
	<screen number="2" escapeScreen="7">
		<line>Inventory:</line>
		<selectInventory action="selectItem" screen="3" noerror="1" numbered="0"/>
		<choice keys="cCdD" screen="7" align="center">(CONTINUE)</choice>
	</screen>
	<screen number="3" escapeScreen="2">
		<line><name /> do you wish to:</line>
		<line></line>
		<choice keys="tT" screen="4">Trade the item</choice>
		<choice keys="dD" action="drop" screen="2">Drop the item</choice>
		<can option="equipped" value="1"><choice keys="eEuU" action="equip" screen="2">Equip the item</choice></can>
		<can option="equipped" value="2"><choice keys="eEuU" action="unequip" screen="2">Unequip the item</choice></can>
		<barrier />
		<choice keys="cC" screen="2" align="center">(CANCEL)</choice>
	</screen>
	<screen number="4" escapeScreen="2">
		<line></line>
		<line>Who does <name /> want to give the <itemName /> to?</line>
		<selectParty action="give" screen="2" />
		<choice keys="cC" screen="2" align="center">(CANCEL)</choice>
	</screen>
	<screen number="5" escapeScreen="1">
		<line></line>
		<line>Trade gold to whom?</line>
		<selectParty screen="6" action="selectParty" who="1" />
		<choice keys="cC" screen="1" align="center">(CANCEL)</choice>
	</screen>
	<screen number="6" escapeScreen="1">
		<line></line>
		<line>How much gold will you trade?</line>
		<readString action="tradeGold" screen="1">></readString>
	</screen>
	<screen number="7" escapeScreen="8">
		<line>Spells:</line>
		<line></line>
		<can option="skill" index="4"><line><col>Archmage:   <skill index="4" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="0"><line><col>Conjurer:   <skill index="0" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="1"><line><col>Magician:   <skill index="1" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="2"><line><col>Sorcerer:   <skill index="2" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="3"><line><col>Wizard:     <skill index="3" field="value" default="-"></skill></col></line></can>
		<barrier />
		<choice keys="cCdD" screen="8" align="center">(CONTINUE)</choice>
	</screen>
	<screen number="8" escapeScreen="exit">
		<line>Skills:</line>
		<line></line>
		<can option="skill" index="8"><line><col>Bard Song:<skill index="8" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="7"><line><col>Disarm Traps: <skill index="7" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="6"><line><col>HideInShadows:<skill index="6" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="10"><line><col>Sneak Attack: <skill index="10" field="value" default="0"></skill></col></line></can>
		<can option="skill" index="5"><line><col>Critical Hit:<skill index="5" field="value" default="-"></skill></col></line></can>
		<barrier />
		<choice keys="cCdD" screen="exit" align="center">(DONE)</choice>
	</screen>
	<error type="fullinventory"><name /> has no room for that item!</error>
	<error type="notenoughgold">Not enough gold.</error>
</screenset>
sombunall

Re: Bt Builder

Post by sombunall »

I am having a problem. When I try to run btbuilder I get:
./btbuilder: error while loading shared libraries: libSDL_mng.so.0: cannot open shared object file: No such file or directory
When I try to run autogen for SDL_mng-0.2.2 it just hangs. Top shows nothing is happening. When I press control-C I get:
CAutoGen aborting on signal 2 (Interrupt) in state LOAD_DEFS
Aborted
I am using Debian Jessie with latest updates.
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

sombunall wrote:I am having a problem. When I try to run btbuilder I get:
./btbuilder: error while loading shared libraries: libSDL_mng.so.0: cannot open shared object file: No such file or directory
When I try to run autogen for SDL_mng-0.2.2 it just hangs. Top shows nothing is happening. When I press control-C I get:
CAutoGen aborting on signal 2 (Interrupt) in state LOAD_DEFS
Aborted
I am using Debian Jessie with latest updates.
I'm confused by what you did. Did you successfully build SDL_mng and btbuilder? Then received the error when running btbuilder. Did you get binaries from somewhere that failed? Only then you tried to compile btbuilder?
sombunall

Re: Bt Builder

Post by sombunall »

dulsi wrote: I'm confused by what you did. Did you successfully build SDL_mng and btbuilder? Then received the error when running btbuilder. Did you get binaries from somewhere that failed? Only then you tried to compile btbuilder?
Oops sorry about the confusion. I went ahead with the rest of the instructions for building sdl_mng and I got no errors in the output for some reason :? . So then I went ahead and compiled btbuilder and it complained about sdl_mng.c and sdl_mng.h so I just copied them to src/ and it compiled. But then when I tried to execute I got that error... so maybe the key to the problem is finding out why autogen hangs. I get the sinking feeling we are dealing with old versions of something here as Jessie is stable now (not testing). If you are out of ideas I could try to go to Stretch / testing.
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

sombunall wrote:Oops sorry about the confusion. I went ahead with the rest of the instructions for building sdl_mng and I got no errors in the output for some reason :? . So then I went ahead and compiled btbuilder and it complained about sdl_mng.c and sdl_mng.h so I just copied them to src/ and it compiled. But then when I tried to execute I got that error... so maybe the key to the problem is finding out why autogen hangs. I get the sinking feeling we are dealing with old versions of something here as Jessie is stable now (not testing). If you are out of ideas I could try to go to Stretch / testing.
Well, I'm doing a demo on kvm for a local linux user group so I installed debian under it. The easiest way to run btbuilder on debian is:

go to SDL_mng directory.
./configure --prefix=/usr
make
make install

(The last step 'make install' needs to be run as root or run through sudo.)

After doing that you should be able to build and run btbuilder. If you can't install the library or don't want to, the library files are found in SDL_mng-0.2.2/.libs. You can use LD_LIBRARY_PATH to load the libraries.
sombunall

Re: Bt Builder

Post by sombunall »

Ahh that worked! I guess the window sizing code is having teething problems. when I load up it's small and I press alt+enter it then gets big like in the past and also goes into the current module automatically so I have to quit out of it. The readme doesn't say anything about changing the size of the screen. Also when I go fullscreen I lose my xrandr settings and my second monitor goes into clone mode but that's easy to fix for me since I have my config on a hotkey.

What were those command line parameters again? I can't even find them in Meth's manual. :(

You made me look in the source code but I don't have time to find all the sizes. It works if I do

btbuilder -u2

but

btbuilder -u1

is downright tiny. What is the number for the one in between? It doesn't take floating point.
dulsi
Posts: 242
Joined: Thu Mar 22, 2007 7:15 pm

Re: Bt Builder

Post by dulsi »

sombunall wrote:You made me look in the source code but I don't have time to find all the sizes. It works if I do

btbuilder -u2

but

btbuilder -u1

is downright tiny. What is the number for the one in between? It doesn't take floating point.
There is nothing in between. The automatic maximum is the highest "expanded" size in display.xml (640x400 in the default file. Methuslas has 960x600 I believe). Hmm... why doesn't -u3, -u4, etc. work. I'll take a look.
sombunall

Re: Bt Builder

Post by sombunall »

Thanks for the help Dulsi! I have to remind myself how new these features are. For now I will set btbuilder to appear the old way since it seems to match a typical DPI (btbuilder -u2). I do have an old CRT TV with a couch in front of it and I just realized all you need is composite out, a keyboard and btbuilder at a low DPI setting. I am getting curious. You just made a console game.
Post Reply