That is a really good point. A feature like what I just described would be a pretty heavyweight solution, but it would be easy to script.
If we had a light-weight LineSlice, I could get similar results by re-positioning the line each tick in a loop or a timer, and I really wouldn't care if my line lagged a pixel or two.
It would also be easy to write helper functions for updating line position
What was just mentioned about negative size inverting its children when set to fill really interests me.
I've been wondering for a while if tis possible to invert a slice collection, including their positions relative to each other, anchor points etc.,
(I want to invert stuff on-screen, but it doesn't invert their children properly afaik)
EDIT:
I'm woefully uncomprehending of this discussion
but how about a "point slice" with the ability to draw lines between any 2 point slices?
EDIT: I realise one can flip slices and their children relative to each other by placing it flat on an axis at 0 and inverting the positions on that axis, but ir requires some planning with anchor points and such.
Request:
I would like to be able to fully 'C'entre a slice with a shortcut key.
Can we see a quick-align/quick-anchor set up type thing?
Perhaps the numpad could be worked into such a function as well?
I imagine it would go something like this:
1. user presses shortcut key for anchor/align set-up and it displays on-screen prompts
2. user presses numpad for align settings
3. user presses numpad for anchor settings
and in this way, one could set-up the anchor and align settings for a slice in only 3 key-presses (maybe)
I've been wondering for a while if tis possible to invert a slice collection, including their positions relative to each other, anchor points etc.,
(I want to invert stuff on-screen, but it doesn't invert their children properly afaik)
EDIT:
I'm woefully uncomprehending of this discussion
but how about a "point slice" with the ability to draw lines between any 2 point slices?
EDIT: I realise one can flip slices and their children relative to each other by placing it flat on an axis at 0 and inverting the positions on that axis, but ir requires some planning with anchor points and such.
Request:
I would like to be able to fully 'C'entre a slice with a shortcut key.
Can we see a quick-align/quick-anchor set up type thing?
Perhaps the numpad could be worked into such a function as well?
I imagine it would go something like this:
1. user presses shortcut key for anchor/align set-up and it displays on-screen prompts
2. user presses numpad for align settings
3. user presses numpad for anchor settings
and in this way, one could set-up the anchor and align settings for a slice in only 3 key-presses (maybe)
If you wanted to mirror a slice collection, it would be straight-forward to write a script to do it, (aside from the sprite and text slices of course).
Faster positioning/setup of slices would be great. You could do a lot by mouse.
Actually, a point slice sounds like a much simpler alternative to giving line slices two attach points, since the positions of both ends are just normal slices instead of requiring a bunch of extra data. There would only be one new piece of data, a handle for another slice, so this sounds more realistic.
It would make sense to just add it as an extra piece of data to a line slice, rather than a new slice type, because all the other line slice data will still apply. If the "other end" attach point is specified, then the line slice width/height would get recomputed each tick so that the line is drawn between its anchor point and the other slice's anchor point.
And if we had curve slices, then maybe attaching one curve to another could cause the two to automatically match gradient where they join.
Actually there wouldn't be any lag if you scripted it, because "slice screen x/y" force the screen positions of slices to be recalculated. (Which is worryingly inefficient, actually. I haven't encountered slowdown yet, though.)
Of course, this is assuming that script fibers have been implemented so that you can set a script to run right before the screen is drawn (but after slice velocities are applied). Maybe there's no need to be able to run script right before velocities are applied.
Faster positioning/setup of slices would be great. You could do a lot by mouse.
Actually, a point slice sounds like a much simpler alternative to giving line slices two attach points, since the positions of both ends are just normal slices instead of requiring a bunch of extra data. There would only be one new piece of data, a handle for another slice, so this sounds more realistic.
It would make sense to just add it as an extra piece of data to a line slice, rather than a new slice type, because all the other line slice data will still apply. If the "other end" attach point is specified, then the line slice width/height would get recomputed each tick so that the line is drawn between its anchor point and the other slice's anchor point.
And if we had curve slices, then maybe attaching one curve to another could cause the two to automatically match gradient where they join.
Quote:
If we had a light-weight LineSlice, I could get similar results by re-positioning the line each tick in a loop or a timer, and I really wouldn't care if my line lagged a pixel or two.
Actually there wouldn't be any lag if you scripted it, because "slice screen x/y" force the screen positions of slices to be recalculated. (Which is worryingly inefficient, actually. I haven't encountered slowdown yet, though.)
Of course, this is assuming that script fibers have been implemented so that you can set a script to run right before the screen is drawn (but after slice velocities are applied). Maybe there's no need to be able to run script right before velocities are applied.
Perhaps we could see some kind of polygonal slice?
If rotation ever gets added, point slice could be used for that too.
Maybe point slices could be used as a reference for other slices to rotate around, flip around, and things like that.
Not really good at coding and all that, but I'm always excited by the possibility of developments in the slice editor!
If rotation ever gets added, point slice could be used for that too.
Maybe point slices could be used as a reference for other slices to rotate around, flip around, and things like that.
Not really good at coding and all that, but I'm always excited by the possibility of developments in the slice editor!
This isn't working for me:
https://rpg.hamsterrepublic.com/ohrrpgce/How_do_I_make_more_than_two_choices_in_a_dialogue_using_a_menu%3F
I used the method that doesn't require plotscripting and the menu with choices appears in a test, but selecting an option doesn't have an effect. I don't know how to trigger the options. I set the tags, but I don't know how to activate different text boxes that would allow the speaker to react to a player's chosen options.
I also tried to use the plotscript at the bottom of that page. It only compiled after I closed the open brackets in that sample. An editor of the Wiki should fix it.
After it was compiled, I added the script to a textbox, but it caused "game.exe" to close as soon as I attempted to test my game.
Edit: I probably should've started a new topic about this, but I first thought I should post it here since textbox options with more than two choices have been requested as a new feature before.
https://rpg.hamsterrepublic.com/ohrrpgce/How_do_I_make_more_than_two_choices_in_a_dialogue_using_a_menu%3F
I used the method that doesn't require plotscripting and the menu with choices appears in a test, but selecting an option doesn't have an effect. I don't know how to trigger the options. I set the tags, but I don't know how to activate different text boxes that would allow the speaker to react to a player's chosen options.
I also tried to use the plotscript at the bottom of that page. It only compiled after I closed the open brackets in that sample. An editor of the Wiki should fix it.
After it was compiled, I added the script to a textbox, but it caused "game.exe" to close as soon as I attempted to test my game.
Edit: I probably should've started a new topic about this, but I first thought I should post it here since textbox options with more than two choices have been requested as a new feature before.
I think that article is obsolete. A lot of menu features have been added since it was written.
I think you should be able to do what you want to do without any tags at all.
Talking to the NPC should bring up the first text box.
That text box should bring up the menu.
The menu should have a bunch of choices.
Each choice should lead to another text box, and should have the bitset turned on that causes the menu to be closed when the menu item is chosen.
I think that is all it should take.
Let me know if that helps
I think you should be able to do what you want to do without any tags at all.
Talking to the NPC should bring up the first text box.
That text box should bring up the menu.
The menu should have a bunch of choices.
Each choice should lead to another text box, and should have the bitset turned on that causes the menu to be closed when the menu item is chosen.
I think that is all it should take.
Let me know if that helps
You're right. The instructions on the Wiki page are inaccurate.
My menu has three choices, and each choice leads to a different text box.
I still need tags because I want a different response from the same character when I speak to him again.
Here's the example:
1. A character says "Will you help me?"
2. Menu with replies:
A: No. (set tag 4 to ON)
B: Yes. (set tag 5 to ON)
C: I hate you. (set tag 6 to ON)
If I edit the "Conditionals" page of the original text box that said "Will you help me?", a section called "Instead" allows me to display a different textbox, so the guy won't ask for help again. So, if tag 6 is ON, the character will say "Why do you hate me?"
I want to set multiple possible textboxes for the "Instead" section of the Conditionals page, like this:
Instead:
If tag 4 = ON, display textbox 13 "Why won't you help?!"
OR
if tag 5 = ON, display textbox 14 "Wow, you'll help!"
OR
if tag 6 = ON, display textbox 15 "Why do you hate me?"
Is that possible with this engine?
I am using the stable version called "Callipygous+1".
I want an infinite number of "OR" options, so I can speak to the same character again hundreds of times with a new conversation each time.
If I want to create an infinite number of new conversations with the same character, would I need to create a new NPC with the same walkabout graphics very often, so people who play the game will think they're speaking to the same character? Is that the only way to start a new set of conversations with a single person?
My menu has three choices, and each choice leads to a different text box.
I still need tags because I want a different response from the same character when I speak to him again.
Here's the example:
1. A character says "Will you help me?"
2. Menu with replies:
A: No. (set tag 4 to ON)
B: Yes. (set tag 5 to ON)
C: I hate you. (set tag 6 to ON)
If I edit the "Conditionals" page of the original text box that said "Will you help me?", a section called "Instead" allows me to display a different textbox, so the guy won't ask for help again. So, if tag 6 is ON, the character will say "Why do you hate me?"
I want to set multiple possible textboxes for the "Instead" section of the Conditionals page, like this:
Instead:
If tag 4 = ON, display textbox 13 "Why won't you help?!"
OR
if tag 5 = ON, display textbox 14 "Wow, you'll help!"
OR
if tag 6 = ON, display textbox 15 "Why do you hate me?"
Is that possible with this engine?
I am using the stable version called "Callipygous+1".
I want an infinite number of "OR" options, so I can speak to the same character again hundreds of times with a new conversation each time.
If I want to create an infinite number of new conversations with the same character, would I need to create a new NPC with the same walkabout graphics very often, so people who play the game will think they're speaking to the same character? Is that the only way to start a new set of conversations with a single person?
So you are using the menu to set the tags?
How about if each menu goes directly to a text box.
Then the textboxes themselves can turn the tags on.
That makes your Menu simpler, it makes your text box conditionals simpler, and you still get the same effect you are looking for.
How about if each menu goes directly to a text box.
Then the textboxes themselves can turn the tags on.
That makes your Menu simpler, it makes your text box conditionals simpler, and you still get the same effect you are looking for.
marionline wrote:
Would it be possible to include a search like the search in the textbox menu
in the NPC menu for the display text setting?
As it is now, I have to remember the textbox numbers or search them manually.
in the NPC menu for the display text setting?
As it is now, I have to remember the textbox numbers or search them manually.
We should just let you press Enter to go to the textbox editor, then you can use the text search feature in it. In fact, 'Search' should be pre-selected.
Billiard wrote:
I also tried to use the plotscript at the bottom of that page. It only compiled after I closed the open brackets in that sample. An editor of the Wiki should fix it.
Anyone can edit the wiki! You don't have to register. I've added the missing brackets, but I haven't read the rest of this closely, so I'm not sure what othr changes should be made to the article.
Hmm, on that note, I should consider releasing the dialogue engine I've put together. Allows for branching dialogue like in most RPGs (Ultima, Baldur's Gate, etc...) along with setting of tags and stuff. Prolly might be a good idea to include the spreadsheet I use to auto-generate the scripts for it... Guess I'll clean it up, comment the crap out of it, and get some documentation together or something. Might be useful.
Being from the third world, I reserve the right to speak in the third person.
Using Editor version wip 20170527 gfx_sdl+fb music_sdl
Being from the third world, I reserve the right to speak in the third person.
Using Editor version wip 20170527 gfx_sdl+fb music_sdl
Well, the way it works is that I have a script that generates some stuff, specifically:
Dialogue ID
Speaker Backdrop Portrait
-pose type
Listener Backdrop Portrait
-pose type
Display text
Menu option number
Option X
-required tag
-set tag
-target dialogue id
-option text
etc...
The spreadsheet has cells for each of the different things. When I need to display something, say when an NPC is activated, it calls a script, "Show Dialogue" and it passes it an argument specifying the dialogue ID. The script then gets all the data it needs from a stupidly long subscript that has all the required variables for each dialogue ID. What the spreadsheet generates is that stupidly long subscript. Depending on how many menu options there are, what tags are needed, portrait, etc... the subscript can also be made to do different stuff. Now, because it's a real pain to have to do all that by hand, the spreadsheet autogenerates most of it for me. Yeah, I'm a lazy slime like that =p
Being from the third world, I reserve the right to speak in the third person.
Using Editor version wip 20170527 gfx_sdl+fb music_sdl
Dialogue ID
Speaker Backdrop Portrait
-pose type
Listener Backdrop Portrait
-pose type
Display text
Menu option number
Option X
-required tag
-set tag
-target dialogue id
-option text
etc...
The spreadsheet has cells for each of the different things. When I need to display something, say when an NPC is activated, it calls a script, "Show Dialogue" and it passes it an argument specifying the dialogue ID. The script then gets all the data it needs from a stupidly long subscript that has all the required variables for each dialogue ID. What the spreadsheet generates is that stupidly long subscript. Depending on how many menu options there are, what tags are needed, portrait, etc... the subscript can also be made to do different stuff. Now, because it's a real pain to have to do all that by hand, the spreadsheet autogenerates most of it for me. Yeah, I'm a lazy slime like that =p
Being from the third world, I reserve the right to speak in the third person.
Using Editor version wip 20170527 gfx_sdl+fb music_sdl
Ah yes, data entry. The usual reason to autogenerate scripts. Not a bad way to go about it. In future we might have text file reading/writing commands so an alternative might become to export the spreadsheet as a csv and parse it with a script... but then you're stuck parsing it. But I assume when you export a csv file it has the formulas rather than the calculated values? Can you export with the calculated values instead?



