The Dink Network

spinning bonca

May 10th 2005, 12:23 PM
dragon.gif
i have taken a script from the dink source of a bonca, i have attached it and it works, but when i tried adding it to one bonca more, the bonca just spins around... all i changed is the screenlock, what is wrong?

by the way, how do you make dink change into a armor, like on "world of dinkc", well, there you change into a goblin... but it's the same procedure i guess, and can you add an attack to the "armor dink", not as the boring one in "quest for dorothina"?
May 10th 2005, 12:50 PM
slayer.gif
rabidwolf9
Peasant He/Him United States
twitch.tv/rabidwolf9 
check the hardness of the sprite, it should be 1 for monsters and people. if its not, it has a hardblock and cant move (or something like that...)
May 10th 2005, 12:51 PM
dragon.gif
and whats hard 1 on windink?
May 10th 2005, 12:53 PM
slayer.gif
rabidwolf9
Peasant He/Him United States
twitch.tv/rabidwolf9 
i just use dinkedit...on dinkedit, use key 9, i think...
May 10th 2005, 12:55 PM
fish.gif
Simeon
Peasant He/Him Netherlands
Any fool can use a computer. Many do. 
i have taken a script from the dink source of a bonca, i have attached it and it works, but when i tried adding it to one bonca more, the bonca just spins around... all i changed is the screenlock, what is wrong?

It's probably frozen, it's stuck in an invisible hardness sprite or it has hardness itself.

by the way, how do you make dink change into a armor, like on "world of dinkc", well, there you change into a goblin... but it's the same procedure i guess, and can you add an attack to the "armor dink", not as the boring one in "quest for dorothina"?

You'll need several commands (these are from World of DinkC's goblin, you'll need to change the numbers):

sp_base_walk(1, 800);
sp_base_idle(1, 800);
sp_base_attack(1, 790);
push_active(0);

The first three are used to change the character: sp_base_walk are the sequences it uses for walking, sp_base_idle for when the player is not walking and sp_base_attack for the attack sequences. push_active(0); deactives Dink's pushing ability so he won't morph into Dink all of a sudden when the player tries to push. Be sure to change it back to 1 when Dink becomes Dink again though
May 10th 2005, 12:59 PM
dragon.gif
well, is there some text of wich the "base_walk"
is revealed, because i only know the basewalk of milder and the purple clothed man...
May 10th 2005, 01:02 PM
fish.gif
Simeon
Peasant He/Him Netherlands
Any fool can use a computer. Many do. 
Yeah, you need to go in the editor, find the character's walking sequences (where he's walking anyway), and then (in DinkEdit) look at the bottom of the screen. Round that number down to a base of ten (so if it's 801, base is 800, if it's 809, base is 800). In WinDinkEdit, it's similar except you have to look somewhere else.. I don't use it so..
May 10th 2005, 01:04 PM
dragon.gif
oh, yeah. THAT reveals *much*!
May 10th 2005, 01:11 PM
dragon.gif
does anyone use windink? it dosent seem so!
if someone use it, tell me how to see the "base_walk" on people!

please?
May 10th 2005, 01:57 PM
fish.gif
Simeon
Peasant He/Him Netherlands
Any fool can use a computer. Many do. 
Oh, I just checked, it's also in the bottom left corner, of your WinDinkEdit window this time. Just hold your cursor over one of the sprites and it'll display the sequence & frame (you need the sequence number, then round it down to get the base walk).
May 10th 2005, 02:05 PM
dragon.gif
i only see the y and x cordinates and on the other side the text never show that...

*modify* wait i saw it, i think there is something wrong with it as it only is shown in about 0,50 seconds...
May 10th 2005, 02:36 PM
dragon.gif
then, if you shall make dink into a armored knight, do i just write the "base attack" and such after a conversion if i want it to be so?
will he get the armor then?
May 10th 2005, 04:12 PM
fish.gif
Simeon
Peasant He/Him Netherlands
Any fool can use a computer. Many do. 
i only see the y and x cordinates and on the other side the text never show that...

I mean in the sprite selection screen.

then, if you shall make dink into a armored knight, do i just write the "base attack" and such after a conversion if i want it to be so?
will he get the armor then?


Well, you need to do all the commands if you want Dink to completely be a knight. If you also want him to be a knight when the player attacks, you'll need to change his base attack as well.
May 10th 2005, 08:57 PM
goblinm.gif
You'll also have to do something about the items, which can sometimes change Dink's base attack.
May 11th 2005, 01:13 AM
dragon.gif
well, my knight (i copied the thing about the goblin and wrote in "base_walk" 271 but he can only go in one wrong direction, he cant attack like knight, he turns into dink and in one direction, he become a knight corpse
May 11th 2005, 02:38 AM
spike.gif
hahaha

sp_base_walk(1, 270);
sp_base_attack(1, 720);
sp_base_idle(1, 270);
push_active(1, 0);

this would make Dink into a knight. You want him to attack like a knight, you need to modify the weapons Dink has. simply replaceing &basehit += 100; with &basehit += 720; would make it look right.
May 12th 2005, 10:31 AM
dragon.gif
void main(void)
{
if (&story >= 4)
{
sp_base_walk(1, 270);
sp_base_idle(1, 270);
sp_base_attack(1, 710);
push_active(0);
&basehit += 720;
}
}

will this work?

void main(void)
{
if (&story >= 4)
{
sp_base_walk(1, 270);
sp_base_idle(1, 270);
sp_base_attack(1, 710);
push_active(0);
if (&basehit += 720);
}
}
or this?
May 12th 2005, 10:55 AM
spike.gif
Neither will work, though the first is the correct one. you need to edit item-fst.c and edit the value of &basehit there. propably what you want is something like this:

//item fists

void use( void )
{
//disallow diagonal punches

if (sp_dir(1, -1) == 1) sp_dir(1, 2);
if (sp_dir(1, -1) == 3) sp_dir(1, 2);
if (sp_dir(1, -1) == 7) sp_dir(1, 8);
if (sp_dir(1, -1) == 9) sp_dir(1, 8);

&basehit = sp_dir(1, -1);
if (&story > 3)
{
&basehit += 710;
} else
{
&basehit += 100; //100 is the 'base' for the hit animations, we just add
//the direction
}

sp_seq(1, &basehit);
sp_frame(1, 1); //reset seq to 1st frame
sp_kill_wait(1); //make sure dink will punch right away
sp_nocontrol(1, 1); //dink can't move until anim is done!
wait(1);
playsound(8, 8000,0,0,0);

}