Discussion:
Interactive Fiction Tool Research
(too old to reply)
j***@ncsu.edu
2020-04-21 18:42:42 UTC
Permalink
Calling all interactive story authors, aspiring and practicing!

The POEM Lab at NC State University (see http://go.ncsu.edu/poem) is conducting research to assess our authoring tool, Villanelle, for creating autonomous characters in interactive stories. Want to participate? Learn more at https://sites.google.com/a/ncsu.edu/villanelle/contribute-to-research.
n***@zzo38computer.org.invalid
2020-04-21 20:59:03 UTC
Permalink
Post by j***@ncsu.edu
Calling all interactive story authors, aspiring and practicing!
The POEM Lab at NC State University (see http://go.ncsu.edu/poem) is conduc=
ting research to assess our authoring tool, Villanelle, for creating autono=
mous characters in interactive stories. Want to participate? Learn more at =
https://sites.google.com/a/ncsu.edu/villanelle/contribute-to-research.
Please stop with the requiring to use a Google account, Zoom, Team Viewer,
etc. These Google forms is rather hostile. Why can't you just make a simple
plain text survey? I don't even have a camera or microphone on my computer.

I am not interested in the $25 gift card.

I do know how to program in Glulx, and other programming languages, and
I don't really like GUI so much; a text-based batch interface is better.
Programming the game is the easy part; the difficult part is the story.
--
This signature intentionally left blank.
(But if it has these words, then actually it isn't blank, isn't it?)
r***@gmail.com
2020-07-29 21:09:57 UTC
Permalink
Post by n***@zzo38computer.org.invalid
I do know how to program in Glulx, and other programming languages, and
I don't really like GUI so much; a text-based batch interface is better.
Programming the game is the easy part; the difficult part is the story.
To my knowledge you can't "program in Glulx". Glulx is a virtual machine
that provides a platform for interactive fiction games. Inform 6 and 7
are two languages that compile to a format suitable for the Glulx platform.
n***@zzo38computer.org.invalid
2020-07-30 16:48:51 UTC
Permalink
Post by r***@gmail.com
To my knowledge you can't "program in Glulx". Glulx is a virtual machine
that provides a platform for interactive fiction games. Inform 6 and 7
are two languages that compile to a format suitable for the Glulx platform.
Actually, you can program in Glulx, or, more specifically, using a
specific assembler, such as Glasm. I have written a few programs using
that assembler, including a Z-machine implementation in Glulx, as well
as partially a game called "Game of XYZABCDE -- Part II" (incomplete,
because I don't know what to put in, not because I can't program it;
I wrote about it in article <***@zzo38computer.org> if
you are interested). Another example of a Glulx code is listed here:

<!include ":glulx"
<!include ":glk"
!stack 256

:Prompt !string ">> "

!main 3

; Check if Glk supported; quit if not
gestalt gs.IOSystem,2,$
jz $,0

; Open window
!pushr 0,0,0,glk.wintype_TextBuffer,0
glk glk_window_open,5,$2
jz $2,0
push $2
glk glk_set_window,1,0
setiosys 2,0

; Main loop

; Check if number is -1 or 256
0h jne $0,-1,1f
2h copy 0,$0
1h jeq $0,256,2b

; Prompt and get input
streamstr Prompt
!pushr $2,Buf,1,0
glk glk_request_line_event,4,0
1h push Event
glk glk_select,1,0
jne @Etype,glk.evtype_LineInput,1b
jz @Eval1,0b

; Execute operation
copyb @Buf,$1
jeq $1,'i',I
jeq $1,'d',D
jeq $1,'s',S
jeq $1,'o',O
jump 0b

; Increment
:I add $0,1,$0
jump 0b

; Decrement
:D sub $0,1,$0
jump 0b

; Square
:S mul $0,$0,$0
jump 0b

; Output
:O streamnum $0
streamchar 10
jump 0b

!bss
:Event !allot 16
:Etype !is Event
:Ewin !is Event+4
:Eval1 !is Event+8
:Eval2 !is Event+12
:Buf !allot 8

(This program isn't really so useful; it is an implementation of the
rather worthless "Deadfish" esolang. It is just for demonstration.)
--
This signature intentionally left blank.
(But if it has these words, then actually it isn't blank, isn't it?)
r***@gmail.com
2020-07-30 17:22:17 UTC
Permalink
Post by n***@zzo38computer.org.invalid
Post by r***@gmail.com
To my knowledge you can't "program in Glulx". Glulx is a virtual machine
that provides a platform for interactive fiction games. Inform 6 and 7
are two languages that compile to a format suitable for the Glulx platform.
Actually, you can program in Glulx, or, more specifically, using a
specific assembler, such as Glasm. I have written a few programs using
that assembler, including a Z-machine implementation in Glulx, as well
Wow. I am sorry for promulgating misinformation happy to be corrected!
a***@openbsd.home
2021-01-07 03:56:03 UTC
Permalink
Post by n***@zzo38computer.org.invalid
Post by r***@gmail.com
To my knowledge you can't "program in Glulx". Glulx is a virtual machine
that provides a platform for interactive fiction games. Inform 6 and 7
are two languages that compile to a format suitable for the Glulx platform.
Actually, you can program in Glulx, or, more specifically, using a
specific assembler, such as Glasm. I have written a few programs using
that assembler, including a Z-machine implementation in Glulx, as well
as partially a game called "Game of XYZABCDE -- Part II" (incomplete,
because I don't know what to put in, not because I can't program it;
<!include ":glulx"
<!include ":glk"
!stack 256
:Prompt !string ">> "
!main 3
; Check if Glk supported; quit if not
gestalt gs.IOSystem,2,$
jz $,0
; Open window
!pushr 0,0,0,glk.wintype_TextBuffer,0
glk glk_window_open,5,$2
jz $2,0
push $2
glk glk_set_window,1,0
setiosys 2,0
; Main loop
; Check if number is -1 or 256
0h jne $0,-1,1f
2h copy 0,$0
1h jeq $0,256,2b
; Prompt and get input
streamstr Prompt
!pushr $2,Buf,1,0
glk glk_request_line_event,4,0
1h push Event
glk glk_select,1,0
; Execute operation
jeq $1,'i',I
jeq $1,'d',D
jeq $1,'s',S
jeq $1,'o',O
jump 0b
; Increment
:I add $0,1,$0
jump 0b
; Decrement
:D sub $0,1,$0
jump 0b
; Square
:S mul $0,$0,$0
jump 0b
; Output
:O streamnum $0
streamchar 10
jump 0b
!bss
:Event !allot 16
:Etype !is Event
:Ewin !is Event+4
:Eval1 !is Event+8
:Eval2 !is Event+12
:Buf !allot 8
(This program isn't really so useful; it is an implementation of the
rather worthless "Deadfish" esolang. It is just for demonstration.)
Nice, but I find inform6 much easier than some assembler for a VM,
even Inform7 looks like a nightmare because it look like pseudo-English.
Continue reading on narkive:
Loading...