bontz-team
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bontz-team] build targets, text system


From: Owen Swerkstrom
Subject: [Bontz-team] build targets, text system
Date: Mon, 14 Jul 2003 07:27:52 -0700 (PDT)

the main() pointer stuff sounds to me like it would
work. The code that actually assigns one "main" to the
pointer, would that happen just based on what files
are being built, or would you have a -DSOMEFLAG in the
makefile's gcc line and an #ifdef SOMEFLAG in the
code?  I know Linux itself uses such defines in
determining whether a driver will build as a loadable
module or something to be statically linked right into
the kernel.

Any thoughts on file formats for text conversations? 
There needs to be branching stuff, indicators of who's
talking (to show the name, and possibly a mug shot)
cues to stop and wait for the user to hit space/the a
button/whatever, special "give/take item" things, and
maybe other stuff?  I thought we might want to tie it
into a sort-of-separate cursor system where the
pointing hand shows up (will be used for selecting
enemies etc too)...  here's a possible sample
"script", more just to think about how we want to go
about doing this, not so much a hard suggestion:

[Fishmonger Henry]fishmonger-happy.png
Hey there, ol' buddy!
...
~
[Furgason]furgason-confused.png
Do I know you?
...
~
[Fishmonger Henry]fishmonger-confused.png
Nah.  Well probably not anyway.  Maybe.
...
:menu
~
[Fishmonger Henry]fishmonger-happy.png
So what brings you here today?
:buy:I'd like to buy some fish
:sell:I've got some bait to sell you
:race:Any fish races today?
:end:Nothing, never mind.
?
:buy
~
What would you like?
-10-Small fish
-20-Big fish
:menu:Nothing
:sell
~
What have you got for me?
+1+Worm
+30+Something
+100+Super-bait
:menu:Nothing
:race
Oooooh!  So you want to bet on fish races eh?
Well let's get started then!!
=fishrace=
:end
~
Bye-bye, old buddy!
.

Each line's starting character determines if there's
anything special about it.
[something] means specify that the character is named
"something" in the structure of the text box, an
optional filename afterwards points to their mug shot.
~ means clear the text window
:mark is a "goto" type label, often jumped to by a
:target: makes a spot within the text window that the
pointing-finger cursor can point to and select,
jumping to ":target" in the script if chosen.
=someroutine= starts up a special game event
"someroutine".
. all alone on a line means the conversation is over.
... all alone on a line means there's a pause to let
the player read and hit space or whatever to continue.
-50-someitem means someitem can be cursor-selected and
costs $50, so if the player's short of money it would
be grayed out.  if chosen, there's a cha-ching, a
"thank you", and the user is sent back to the menu
from which it was chosen.
+50+someitem works the same way, giving the player $50
if he has someitem, and removing someitem from the
inventory.

as afterthoughts, maybe the +/- stuff needs to be more
generalized so items can be given/taken without money
involved etc.

Anyway all text in the game could use one common
engine, a sign might be:
[]sign-wood.png
You are reading a sign right now.
.
which would look something like (forgive the poor
ascii art)
+-----+-------------------------------------+
| [=] | []                                  |
|  I  | You are reading a sign right now.   |
+-----+-------------------------------------+
where the thing on the left is a picture of the sign,
for lack of a sensible mugshot, and the [] isn't a
literal "[]" but is where the character's name would
go (in yellow or something) if it was a character or
had a name.

Again, all just thinking out loud, the syntax I've
chosen is totally arbitrary.  But I do think some
generic text format would be more suitable than XML or
something, no reason for us to get carried away.

__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com




reply via email to

[Prev in Thread] Current Thread [Next in Thread]