Jump to content

Photo

boss please?


  • Please log in to reply
16 replies to this topic

#1 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 29 March 2008 - 01:59 PM

I poster this at ZC but i havent gotten a reply yet so i figured i'd post here to double my chances =)

QUOTE
i have a request for an enemy... since im not a good enough scripter to do it myself.... can i possibly bother you to make my forest temple's mini-bosses?

what i want is basically a plant-like monster... which really doesent matter since im making the graphics...

there should be one FFC which is the main vine. it makes little vines pop up from the floor(3 FFC's). it is invincible, until you hit the little vines with the boomerang, then the combos for the main vine cycle to a... well different graphic, which is vulnerable to the sword, and stops attacking (stunned).

then after about 10 seconds it cycles back and starts attacking again.

i would like to be able to edit the heath and power of this enemy if at all possible.

also if anyone decides to make it, i would love to get thet ghome script that someone asked for erlier, but if thats too much then its ok.

Also i have a question about attached enemies. if you set them to firing enemies, they fire right? and also the same with statue combos, except the "statues shoot fire" rule would have to be on, right?

thanks to anyone who helps =)
ill give you credit in my quest.


#2 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 29 March 2008 - 04:23 PM

It sounds complicated. I have an idea of how it might work, though.

The FFC's carry boomerang triggers and the main vine carries a sword trigger... No. I don't think that would work.

Maybe I don't know how it would work.

And why do you need a Ghoma script? Can't you just beef up an existing Ghoma enemy or something? Perhaps add a MiniGhoma spawner FFC?

about the enemies: I have almost no idea what you are asking.

#3 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 29 March 2008 - 09:41 PM

oh... lol sorry abiout the ghoma part, i saw someone post a script request at ZC and i was interested but noone replied to him so... yeah. disregard the ghoma =)

and yeah it is kinda complicated, but... its my idea for a good forest temple mini-boss.

if it makes it easier, it could be where the boomerang kills the small vines, and when all the small vines are killed the big one becomes vulnerable to the sword. whatever's easier lol im not really good enough with scripting to make something like this myself so yeah.

oh idea for the small vines when making an attack pattern-

if its a little easier, make them pop up like leevers, except make them stay still so link can hit them. but they need to attempt to pop up right under link but wait a few seconds so link has time to move.

thanks =)

#4 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 30 March 2008 - 11:25 AM

Okay. That sounds a little more possible. It was actually possible before, but it would have been a PAIN in the butt.

It reminds me of the WW Forbidden Forest boss.

The small vine FFCs will be scripted and will "look for" boomerang Link Weapons. If the boomerang Lweapon gets within 4-8 pixels of the FFC, then it "dies" and increments screen variable D0 by one. Heck, you could even add sounds including a vine "tapped" sound. When screen D0 reaches a certain value, it resets screen D0 and waits for sword lweapons to hit it for a good 10 seconds.

It sounds fun. I'll give it a shot. It would fit well in MY quest as an end boss of the first dungeon. (except with fire instead of boomerangs)

#5 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 30 March 2008 - 01:50 PM

lol well im using it as a mini-boss... actually im using it twice in the first dungeon so yeah lol.

im still not sure what my main boss should be. i was thinking some kind of big plant seed with vines (in segments like a moldorm) but im not sure.

#6 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 30 March 2008 - 08:47 PM

I'd actually go with this one for the main boss (especially if it is the first or second dungeon) and have a few Moldorm-like minibosses. Perhaps a Moldorm with an Aquamentus. Gleeoks shouldn't be introduced until the 4th level AT LEAST-- Unless you're shooting to make a challenging quest.

I'm currently working on the spawning, but my next step will be hit detection.

EDIT: I hit a roadblock. I'm awaiting response over at AGN.

Edited by Beefster, 31 March 2008 - 06:49 PM.


#7 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 31 March 2008 - 08:07 PM

hmm... that sucks lol

small request... could you make me able to edit the HP and damage that they deal in the arguments tab?

and also like i said at AGN, im sure theres a variable for the item ID... if not then there could be 2 seperate scripts. the one that tells the boss's movements and actions (FFC) and then one on the item that says effects on a certain screen/enemy. (Item)

just an idea lol but that might not work because i dont think you can attach more than one script to an item and thats already being used for message strings on item pickup...

and actually i might use this script for my main boss too, except... well i'd need...

tiles for the seed... and tiles for the seed opening... and tiles for whats in the seed...

and then... i'd need to make extra appendages from the seed and ask for more script.

i do want to make the seed have vines that are "sprouting" from it which are segmented like a gleeok's neck and they should hold you still and render you unable to move while little vines attack.

IDK lol but it would basically just be adding to the script.

but thats asking too much. i might use joes custom moldorm script for this that he mentioned though... not sure yet.

#8 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 10 April 2008 - 07:20 PM

I think you were right about the ID. I guess I misinterpreted zscript.txt.

I have it done. All that is left is to test it.

EDIT: Why don't you give it a spin. I'm not exactly ready to use it myself. Here is the script:

CODE
//Plant Boss
//D0: number of roots to be "spawned"
//D1: minimum number of roots to be killed to stun (probably same as or close to D0)
//D2: starting HP. You'll probably want 50-100
//D3: time length of stun (in frames) probably 600-1200
//D4: root "shadow" combo number. This combo should be BEFORE the hurting plant combo.
//D5: spawn delay (in frames) you'll want this to be 75-180 or so frames
//D6: starting reference to root FFCs
//D7: the hitbox radius
ffc script MainPlant{

    void run(int rtcount, int rtkill, int HP, int stunlength, int rtcombo, int spawndelay, int firstffc, int hitbox) {

        int stun = 0;
        int justHit = 0;
        Screen->D[0] = -1;
        ffc rtref;
        lweapon wpn;

        while(HP > 0) {

            if(stun <= 0) {

                if(Screen->D[0] == -1) {

                    Screen->D[0] = 0;

                    for(int i=0;i<rtcount;i++) {

                        rtref = Screen->LoadFFC(i+firstffc);
                        rtref->Data = rtcombo;

                        Waitframes(spawndelay);

                    }

                } else if(Screen->D[0] >= rtkill) {

                    stun = stunlength;
                    Screen->D[0] = -1;

                }

            } else {


                if(justHit <= 0) {

                    for(int lw=1;lw<=Screen->NumLWeapons();lw++) {

                        wpn = Screen->LoadLWeapon(lw);

                        if(Distance(this->X, this->Y, wpn->X, wpn->Y) <= hitbox) {

                            HP -= wpn->Damage;

                        }
                    }
                }

                if(stun > 0)
                    stun --;
                if(justHit > 0)
                    justHit --;

            }

            Waitframe();
        }

        //Death animation goes here.

    }
}

//Roots
//D0: Delay between spawning and sprouting. (in frames) probably 30-75 frames.
//D1: Time to be exposed at any given time. (in frames) probably 300-900 frames.
//D2: Delay between retracting and respawning. (in frames) probably 60-180 frames.
//D3-D5: Link Weapon types to be sensitive to. (repeat values for less than 3)
//D6: the maximum distance of a weapon in order to be destroyed
//D7: the SFX to be played when the root is destroyed
//Notes: your first two comboes of the entire combospace SHOULD be blank.
// The second root combo should be a damage combo.
ffc script Root{

    void run(int sprdelay, int outtime, int retdelay, int wt1, int wt2, int wt3, int size, int destroySFX) {

        int startData = this->Data;
        lweapon wpn;

        while(true) {

            this->X = Link->X; this->Y = Link->Y;

            Waitframes(sprdelay);

            this->Data ++;

            for(int i=0;i<outtime;i++) {

                for(int lw=1;lw<=Screen->NumLWeapons();lw++) {

                    wpn = Screen->LoadLWeapon(lw);
                    if(wpn->ID == wt1 || wpn->ID == wt2 || wpn->ID == wt3) {

                        if(Distance(this->X, this->Y, wpn->X, wpn->Y) <= size) {

                            Screen->D[0]++;
                            this->Data = 0;

                        }
                    }
                        

                }

                Waitframe();

            }

            this->Data = 1;

            Waitframes(retdelay);

            this->Data = startData;
        }
    }
}

Edited by Beefster, 10 April 2008 - 07:44 PM.


#9 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 10 April 2008 - 08:09 PM

QUOTE(Beefster @ Apr 10 2008, 04:20 PM) View Post

I think you were right about the ID. I guess I misinterpreted zscript.txt.

I have it done. All that is left is to test it.

EDIT: Why don't you give it a spin. I'm not exactly ready to use it myself. Here is the script:

CODE
//Plant Boss
//D0: number of roots to be "spawned"
//D1: minimum number of roots to be killed to stun (probably same as or close to D0)
//D2: starting HP. You'll probably want 50-100
//D3: time length of stun (in frames) probably 600-1200
//D4: root "shadow" combo number. This combo should be BEFORE the hurting plant combo.
//D5: spawn delay (in frames) you'll want this to be 75-180 or so frames
//D6: starting reference to root FFCs
//D7: the hitbox radius
ffc script MainPlant{

    void run(int rtcount, int rtkill, int HP, int stunlength, int rtcombo, int spawndelay, int firstffc, int hitbox) {

        int stun = 0;
        int justHit = 0;
        Screen->D[0] = -1;
        ffc rtref;
        lweapon wpn;

        while(HP > 0) {

            if(stun <= 0) {

                if(Screen->D[0] == -1) {

                    Screen->D[0] = 0;

                    for(int i=0;i<rtcount;i++) {

                        rtref = Screen->LoadFFC(i+firstffc);
                        rtref->Data = rtcombo;

                        Waitframes(spawndelay);

                    }

                } else if(Screen->D[0] >= rtkill) {

                    stun = stunlength;
                    Screen->D[0] = -1;

                }

            } else {
                if(justHit <= 0) {

                    for(int lw=1;lw<=Screen->NumLWeapons();lw++) {

                        wpn = Screen->LoadLWeapon(lw);

                        if(Distance(this->X, this->Y, wpn->X, wpn->Y) <= hitbox) {

                            HP -= wpn->Damage;

                        }
                    }
                }

                if(stun > 0)
                    stun --;
                if(justHit > 0)
                    justHit --;

            }

            Waitframe();
        }

        //Death animation goes here.

    }
}

//Roots
//D0: Delay between spawning and sprouting. (in frames) probably 30-75 frames.
//D1: Time to be exposed at any given time. (in frames) probably 300-900 frames.
//D2: Delay between retracting and respawning. (in frames) probably 60-180 frames.
//D3-D5: Link Weapon types to be sensitive to. (repeat values for less than 3)
//D6: the maximum distance of a weapon in order to be destroyed
//D7: the SFX to be played when the root is destroyed
//Notes: your first two comboes of the entire combospace SHOULD be blank.
// The second root combo should be a damage combo.
ffc script Root{

    void run(int sprdelay, int outtime, int retdelay, int wt1, int wt2, int wt3, int size, int destroySFX) {

        int startData = this->Data;
        lweapon wpn;

        while(true) {

            this->X = Link->X; this->Y = Link->Y;

            Waitframes(sprdelay);

            this->Data ++;

            for(int i=0;i<outtime;i++) {

                for(int lw=1;lw<=Screen->NumLWeapons();lw++) {

                    wpn = Screen->LoadLWeapon(lw);
                    if(wpn->ID == wt1 || wpn->ID == wt2 || wpn->ID == wt3) {

                        if(Distance(this->X, this->Y, wpn->X, wpn->Y) <= size) {

                            Screen->D[0]++;
                            this->Data = 0;

                        }
                    }
                        

                }

                Waitframe();

            }

            this->Data = 1;

            Waitframes(retdelay);

            this->Data = startData;
        }
    }
}




dude... you are officially awesome XD

just have a few questions

on the main vine:

what do i do about the hitbox...? is its radius in pixels?

and im guessing the refrence for the little vines is their ffc #

and for the small vines:

the weapons to be sensitive to are the weapon IDs right?

and weapon distance is in pixels im guessing

thank you sooo much XD

i can really use this

i owe you now... come to think of it i owe a lot of people things...

#10 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 10 April 2008 - 08:17 PM

"hitbox" is equivalent to "size" on the root script. It's just how close it must get.

If it doesn't work, I suspect the devs haven't implemented weapon type references. I should petition them to change "ID" to "Type" to prevent confusion if they are the same.

#11 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 10 April 2008 - 08:21 PM

compilation errors.

it tells me that in lines 96, 124, and 33 function waitframes is undeclared

and in lines 107 and 33, function distance is undeclared.

i thought waitframes didnt need to be declared...?

oh and thats not exactly what it said. i condensed it so i wouldnt have to type so much =)

but thats what it said was wrong.

#12 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 10 April 2008 - 08:25 PM

Make sure you have
CODE
import "std.zh"
at the top of your scripting buffer.

Edited by Beefster, 10 April 2008 - 08:25 PM.


#13 Master Maniac

Master Maniac

    Earth, Wind, Fire, and Water.

  • Members
  • Real Name:kris

Posted 10 April 2008 - 08:34 PM

testing it now. hold on and ill edit and tell you how it goes =)

i cant believe i just did that...

lol so simple >.<

EDIT: tested it.

one major flaw. your lweapons work right though =)

the fatal problem is, the roots dont die after 3 like i have it set to do. they just keep coming and coming, and they dont stop. so the main vine doesent become vulnerable.

Edited by Master Maniac, 10 April 2008 - 09:44 PM.


#14 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 21 April 2008 - 12:36 PM

Oh. That shouldn't be too hard to fix.

#15 Beefster

Beefster

    Human Being

  • Members
  • Real Name:Justin
  • Location:Colorado

Posted 02 May 2008 - 11:19 PM

I've finally gotten around to testing it. Now I'm gonna have to work out the flaws by about noon tomorrow. icon_xd.gif

I really need to work out the spawning.

EDIT: I think I figured out what all was wrong. I must have made it while I was even more tired, because I left some counters unused. I fixed most of the problems by adding checker variables. The only thing that still has problems is the main body hit detection. It isn't responding to the sword for some reason and the center is off. And the debug sounds startled the crap out of me, but that usually happens when I'm tired like right now.

Edited by Beefster, 03 May 2008 - 12:11 AM.



0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users