Jump to content

Newbie in need of help.


Haspen

Recommended Posts

Hello!

 

I'm new there, I should start with introduction of some sort, but blah.

 

Anyway. After getting a basic grasp of Avernumscript, meddling a bit with dialogue scripts, and understanding the whole Stuff Done Flag part, I've decided to make a scenario.

And I have some stuff I cannot solve myself:

 

1. 'Talk' in message window.

 

I remember from other games, that when you 'Talk'ed with a, for example, a Guard, dialogue didn't started but instead it showed something like "You made a small talk..." in the message window. What I have to do to have this in my scenario as well? Is it related to dialogue script, or I'm looking in wrong direction?

 

2. Harmful ice tiles.

 

Just like lava, but dealing ice damage. I can't find it anywhere (or I'm not looking good enough), so... how I can script that?

Link to comment
Share on other sites

1)What you are looking for is in the creature script. If you open basicnpc.txt (or most others), you’ll find TALKING_STATE at the bottom. If memory cell 3 is zero, it will use a default one-liner instead: print_str("Talking: It doesn't respond.");

So, if you want, say, the guards to say something different, you find their script (guard.txt) and change the above into something else.

 

2)This is explained in the docs, in custom floor types. You need a custom floor with special property 2. Don’t forget to set its strength, too.

 

 

Welcome and happy coding ;-)

 

Edit: also, we should probably take it to the editor forum beneath this one, but meh. An admin might move it.

Link to comment
Share on other sites

1. I could interpret what you want to do in two ways, so I'll just answer both of them.

 

Code:
You make a little small talk with the guard, but don't really learn anything interesting.1.The conversation ends.

 

To make something like that show up in the dialog area, you have to open your dialog script, and enter this code:

 

Code:
state = -1;nextstate = -1;question = "Guard"; //It's standard to put the creature's name in the question of the first node of their dialog, even though it does nothing but help you remember whose dialog this istext1 = "You make a little small talk with the guard, but don't really learn anything interesting."; //Replace this with what you want them to saycode =end(); //This ends the dialog immediately, making the only dialog option 'The conversation ends.'break;

 

Now, the other way I could have interpreted your question is that you wanted to have a dialog message appear in the middle of the screen when you talk to someone, instead of having a talk script open.

 

To do that, you'll have to make a new character script.

 

1. Make a new text file and paste the entirety of 'basicnpc' into it.

2. Scroll down to where it says:

 

Code:
beginstate TALKING_STATE;	if (get_memory_cell(3) == 0) {		print_str("Talking: It doesn't respond.");		end();		}	begin_talk_mode(get_memory_cell(3));break;

 

Replace that whole block of code with this:

 

Code:
beginstate TALKING_STATE;	message_dialog("You make a little small talk with the guard, but you don't learn anything interesting.","");break;

 

2. There is no icy floor as far as I know, so you'll have to make it by yourself. Read chapters 2.2-2.7 in the BoA editor docs to find out how to make your own custom objects. I don't think anyone's released an icy floor graphic, but the Blades Forge has snow floors if those would work too.

 

 

EDIT: Grrr. Sniped. tongue

Link to comment
Share on other sites

Thanks guys, you helped me a lot with that laugh

 

Also, it now looks a bit weird to me that there were icy floors in older avernum games but not in Blades. Oh well.

 

I will be back with more questions, I'm sure tongue

 

EDIT: Another thing.

 

3. The documentation says:

question = "Sunny Jim"; // For the first node in a conversation, the question is the name of the character

 

But when I test the scenario, the title above the dialogue says just creature name, like "Merchant" "Townsman" and so on. What I have to do to change it to the NPC' name?

Link to comment
Share on other sites

You need to use the set_name() call from a script to set characters' names. The usual way to do this is to put it in the INIT_STATE of the town script. You can see examples of this in pretty much every scenario.

 

EDIT: For future reference, the Blades of Avernum Editor forum is the best place to put questions about creating scenarios, as opposed to playing them, although this is mostly just an organizational thing.

Link to comment
Share on other sites

Quote:

Edit: I don't think there's a way to change the name just in the dialog.


You could always hack something together to that end. Change the name when talk state is called, then again in the town's start state, so it's reset every round.

Not sure where that could be used, though. In the annual Merry convention, perhaps[ Merry(Avernum), Merry(Kritzan), etc.]
Link to comment
Share on other sites

Originally Posted By: Haspen
Also, it now looks a bit weird to me that there were icy floors in older avernum games but not in Blades. Oh well.
Um, there are icy floors in Blades. Special property 2, and the graphic is even there (though it's redundant, since it's just the lava graphic inverted).
Link to comment
Share on other sites

Originally Posted By: Craftmaster Duck
Yes, set_name() changes its name not only for the dialog but for all other purposes.

Edit: I don't think there's a way to change the name just in the dialog.


It's perfectly what I need tongue And it's strike me unlogical if someone just changes the name of a creature for dialogue only tongue

Originally Posted By: Celtic Minstrel
Originally Posted By: Haspen
Also, it now looks a bit weird to me that there were icy floors in older avernum games but not in Blades. Oh well.
Um, there are icy floors in Blades. Special property 2, and the graphic is even there (though it's redundant, since it's just the lava graphic inverted).


I must find out what's that special property thing when I have some time at home.

Edit: I don't see any 'ice' tiles. Only two different lava tiles, 6 water ones (above/underground + without borders). No ice stuff. Maybe you're speaking about Mac version or BoE? tongue
Link to comment
Share on other sites

The game has some graphics built in that aren't used by any of the default floor definitions. The ice water graphics are icons 0-3 on sheet 752. So, just write your own floor definition with the special property mentioned above and those graphics (using fl_which_sheet, fl_which_icon, and fl_anim_steps) and you'll have it.

Link to comment
Share on other sites

Originally Posted By: Niemand
The game has some graphics built in that aren't used by any of the default floor definitions. The ice water graphics are icons 0-3 on sheet 752. So, just write your own floor definition with the special property mentioned above and those graphics (using fl_which_sheet, fl_which_icon, and fl_anim_steps) and you'll have it.


Ah, yes, the graphics are there. My fault.

And you speak of it as writing in AVscript is something easy for me tongue

Well, gotta try this. Thanks for help!

EDIT: Yay, it worked! After reading the Docs, you forgot to mention about fl_ed_which_sheet/icon, and I wondered why it doesn't show up in editor tongue Oh well, it's working and that counts.
Link to comment
Share on other sites

Your Ice floor lack ability to merge with dirt/rough cave floor.

 

And that's what I needed.

 

Still, it will be helpful. Thanks a lot. Why you don't nibble Jeff so he will include that in the BoA editor? ;P Not in the editor as a whole, but just a separate folder with instructions how to apply those. No rewrite needed.

 

Ah well, it's wrong thread for that tongue

Link to comment
Share on other sites

Quote:
. . . you forgot to mention about fl_ed_which_sheet/icon, and I wondered why it doesn't show up in editor Oh well, it's working and that counts.

You wound me, sir! tongue I quite seriously considered mentioning those properties, and decided not to clutter up my post by going into such detail. I regret that I guessed wrong, and caused the very sort of confusion I had sought to avoid by omitting them.
Link to comment
Share on other sites

Originally Posted By: Haspen
I don't see any 'ice' tiles. Only two different lava tiles, 6 water ones (above/underground + without borders). No ice stuff. Maybe you're speaking about Mac version or BoE? tongue
Nope; the Mac version has the same graphics, and BoE doesn't even have ice graphics.

Originally Posted By: Haspen

Still, it will be helpful. Thanks a lot. Why you don't nibble Jeff so he will include that in the BoA editor? ;P Not in the editor as a whole, but just a separate folder with instructions how to apply those. No rewrite needed.
No need to nibble Jeff, either. The editor is open source. Not that I think it's a good idea; I'm not sure what I think of it, really...

Originally Posted By: Haspen

And about your Ice, Kelandon - I was wrong, it fits perfectly. Mea culpa, or so they say.
Um, what? How?
Link to comment
Share on other sites

There are a few other graphics that you will find in the Terrain Graphics folder but are not used in the two core scenario data files:

 

Click to reveal..
Unused Graphics

(Many effects are placed by the program, not by the core data scripts. For example boats, horses, barriers, crates, barrels, stains on ground…)

Unused Graphics Editor Icons

703:7,8 – gray ground, cube. 680: 37-38

705:9 – dirt with footprint. 680: 59

707:9 – dirt slope. ?

709:1,9 – carpet, stone slab. 680:91,99

711:8,9 – green force barrier. 681:18,19

717:5-9 – gray fence and a big rock. 681:75-79

720:2-7 – gravestones and kegs. 682:92-97

722:5-7 – stacked wood. 682:25

724:5-7 – stone pillar, triple icon. 682:45

726:7 – stacked hay. 682:67

727:2,8,9 – wooden doorways, stone table ?,682:79

728:1,6 – amphorae and stone tower or pillar. 682:81,86

742:8 – boat landing. 683:28

743:7 – totem. 683:37

744:5-8 – ramps. 683:40-43

751:5-7 – ground. 684:15-17

757:9 – bedside table. 684:79

758:3-6 – two white towers. 684:83,84

759:6-9 – bridges/tables and stalagmites. 684:96-99

761:4-9 – Vahnatai floors. 686:14-19

762:0,2-5 – building and animations. 686:20.?

768:1-2 – pedestal and building. 686:81-82

769:1,3 – ruined statue bits. 686:?,93

786:6-7 – beds. 688:66,67

796:5,8 – insect casings, double fires 689:65,68

 

Entire graphic sheet not found in either core scenario data file:

729:0-3 – four chairs.

730:0-1 – two mines. 687:10,11

731:0-3 – four mines. 687:12,13

732:0-5 – six mines. 687:14,15

752:0-9 – ice floor, mosaic. 684:20-23, (24-29)

764:0-3 – magical barriers. 683:33-36

765:0-9 – animations.

 

(716: 6,7 very much like 787:6,7 ditto 716:5 much like 787:9. There seem to be a surprisingly large number of repetitions of graphics.)

Link to comment
Share on other sites

Originally Posted By: Celtic Minstrel
No need to nibble Jeff, either. The editor is open source. Not that I think it's a good idea; I'm not sure what I think of it, really...

I suppose one could just put in a button during scenario creation that would, if checked, start the scenario with a custom objects script from the Base. Seems like it would be ridiculously easy to program and would offer a tiny shortcut for designers.

I never felt strongly enough about it to do it myself, though, and I think there might be a thing or two wrong with the Base (or a thing or two in the default objects scripts that it fails to fix), so I really ought to go through it and check it over again. But it's been so many years since I made it....
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...