Blizz-ABS Bug and Suggestion Compilation

Started by winkio, April 21, 2010, 03:40:33 am

Previous topic - Next topic

winkio

Hrm, that's interesting.  It's a good idea, but I'm going to stick with the 'actions' setup that I currently have.  Instead of setting up each combo like you have, it will be each action.

For your first example, it would be:

Action 1
1.  Jump Back 1 square
2.  Wait 4 frames
3.  Open input time window of 8 frames for button M.
4.  Wait for all actions to finish.
5. If time window "8 frames for button M" succeeded:
- Go to Action 2.

Action 2
1. Executed body skill with ID 5 (Super Charge). (assuming the skill takes 12 frames or more, moves 3 squares forward)
2. Wait 6 frames.
3. Open input time window of 6 frames for button N XOR button H. (exclusive or)
4. Wait for all actions to finish.
5. If time window "6 frames for button N XOR button H" had button N triggered:
- Go to Action 3
6. Else if time window "6 frames for button N XOR button H" had button H triggered:
- Go to Action 4.

Action 3
1. Execute skill ID 9 (Earthquake)
2. Wait for all actions to finish.

Action 4
1. Execute skill ID 12 (Energy Wave)
2. Wait for all actions to finish.

Combos automatically begin Action 1, and automatically end if they reach the end of any action.
While this format doesn't really change the functionality for the combos you provided, it does allow for a few more structures:

A.  The repeated combo:
Action 1
1.  Execute Attack
2. Open input time window of 6 frames for attack button.
3. Wait for all actions to finish.
4. If time window "6 frames for attack button" succeeded:
- Go to Action 1

B.  Many combo paths:
I'm not going to write out all the actions for this, but here's a flowchart of the form:
  1
  /\
2 3
/\ /\
4 5 6
\/\/\
7 8 9

You can see that using conditionals would make it hell

C.  Bosses:
By separating the actions out of the combo, you can allow bosses to be made much more easily, by being able to pick and choose which actions to use depending on boss health, time, etc.  It's nice.

Blizzard

Check out our game brands:

Daygames
Game Night Games
Chugnar Games

Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

legacyblade

May 18, 2010, 03:46:25 pm #102 Last Edit: May 18, 2010, 04:06:17 pm by legacyblade
How winkio just described it is what I was envisioning. That would be the best way to handle it I think, since it'd feel like eventing. I like the idea of setting up each step/attack-block separately. And the ability to fork based on the timing and which button is being pressed is a great idea. That would allow things like during a combo you press the down button plus the attack button to knock the enemy prone. You could then follow up by stabbing them while their down, or a verity of other actions. It would be epic if you could allow weapon attacks to be chained to spells/skills. That way you could knock an enemy's shield out of the way, punch them, them blast them with a fireball if the combo system was set up. It'd add no end to configurability :D

-edit,

it just occurred to me that with that and a gravity system, one could easily make a fighter-style battle system or something like super smash bros. BlizzABS is close to being the cure-all tool for any battle system you can imagine (all it takes is a few addons) o.o

winkio

yeah, I was keeping fighting games in mind while working on the combo system.  Because that's literally all those games are.

poxy

The combo system sounds awesome. Just wondering though, maybe I missed the obvious, but we can set up movements such as

  • Run up to enemy, if enemy within predefined range

  • Jump over enemy if enemy is in adjacent square/ at a distance of a predefined length of squares


The reason i ask is if not the combo would not look the same from where it's done. Could be the intention was to jump over the enemy but the enemy is further than where the character is executing the combo.

Also, I think I'd prefer the first Config option. The Blizz ABS Config is already set up that way, would be familiar, more intuitive perhaps.

Model 3 sounds like it could be limiting the options for combos, if there is a limited number of predefined actions (that sound very specific). Even if you could edit those actions, could be not every one understands that it could be done or how.  Maybe I'm missunderstanding how it would look like...
My Project: ShowHide

winkio

May 18, 2010, 05:38:46 pm #105 Last Edit: May 18, 2010, 11:39:26 pm by winkio
If you want to do stuff with relation to enemies, you need to script it yourself and have a targeting add-on.

And option 3 looks like eventing.  like at the top of this page.

EDIT: if you are trying to mess around with combos in 2.74, don't bother.  I'm 80% of the way done building my own little version of the event system to be used in combos, which basically means everything works differently (as seen in the last few posts)

EDIT:  Yay, just finished the eventing engine.  scripting is gone from the config!  I still have to update the config app though.

legacyblade

wow. impressive winkio. I can't wait to see it!

winkio

May 19, 2010, 12:33:11 am #107 Last Edit: May 19, 2010, 12:51:30 am by winkio
this is what the new input looks like script-side (the whole combo is defined in this code):
when 1 # Combo 1
       case com.aid
       when 1 then return [[COMFreeze, true],
                           [COMMove, DIRForward, true, 4],
                           [COMCompletion],
                           [COMAttack],
                           [COMInput, 0, [Input::Attack], 10],
                           [COMCondition, VARInput, 0, 0, 0, 0],
                           [COMGoTo, 2]] # Action 1
       when 2 then return [[COMMove, DIR90Right, true, 1],
                           [COMCompletion],
                           [COMAttack],
                           [COMInput, 0, [Input::Attack], 10],
                           [COMCondition, VARInput, 0, 0, 0, 0],
                           [COMGoTo, 2]] # Action 2
       end


That's a simple combo that will walk forward and attack, and then turn in circles and keep on attacking as you press the attack button.
You can see how it looks a lot like eventing.  The config app with thus look pretty much like an event page.

poxy

Quote from: winkio on May 18, 2010, 05:38:46 pm
If you want to do stuff with relation to enemies, you need to script it yourself and have a targeting add-on.


I just realized though... maybe it's simpler to have a condition to check if the enemy was hit with the first action, before branching to the next? Just thinking ahead here  :^_^':
My Project: ShowHide

winkio

What the interface looks like:

Spoiler: ShowHide


Spoiler: ShowHide

Magus

Winkio, you're Blizzard's son xD

Just to be clear, We're allowed to make suggestions right?  (reasonable ones. Yeah, I know, the ones I've made in the past were bashable by law, but those were due to be, forgetting alot of things)

I'll see what idea I can come up with :3

[I was too lazy to read ALL of the posts above, so I apollogize if I ninja'd anyone] Maybe there should be something like a state of rage(included, the rage bar) One you killed, or inflicted enough damage, he can press a certain button to change into "Rage Mode" included, would be a default animation: like aura around the character.

Don't get me wrong, I can probably make this myself using a common eventing system and "states" (but no rage bar of course)
And I bet this already exists. So pretend I'm suggesting a Blizz-abs version.


But aside from that, I do like the idea and planned features that Blizzard's son, Winkio is created
:o
LEVEL ME DOWN. THE ANTI-BLIZZ GROUP IS AMONG YOU... Do it for the chick below...She watches..<br />

winkio

You mean using CRLS?  http://forum.chaos-project.com/index.php/topic,110.0.html

And stop giving Blizzard credit for stuff after his retirement >:U

Blizzard

But you will always be my son, winkio! D: I don't care if I'm in retirement or not, you're my son forever! D:

:V:
Check out our game brands:

Daygames
Game Night Games
Chugnar Games

Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

winkio


Blizzard

I tried avoiding to say "I'm your father". :rofl:
Check out our game brands:

Daygames
Game Night Games
Chugnar Games

Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Magus

LOL, I had a feeling you were going to say that XD
LEVEL ME DOWN. THE ANTI-BLIZZ GROUP IS AMONG YOU... Do it for the chick below...She watches..<br />

winkio

Oh my god I finally got through all that.  I think I'm about to collapse  :negative:

AliveDrive

May 21, 2010, 12:38:59 am #117 Last Edit: May 21, 2010, 12:42:25 am by RatatatOG
Quote from: Valdred on April 22, 2010, 10:32:44 am

"It's probably a useless idea, I dunno."



There are no useless ideas. And awesome work to everyone that is making these ideas into a reality.

I know nothing about code. Without all of your ideas, I doubt mine would ever become reality.

Keep up the awesome work!
Quote from: Blizzard on September 09, 2011, 02:26:33 am
The permanent solution for your problem would be to stop hanging out with stupid people.

Blizzard

Quote from: RatatatOG on May 21, 2010, 12:38:59 am
There are no useless ideas.


Wrong.

QuoteI want the character to die when SP reach 0.
Check out our game brands:

Daygames
Game Night Games
Chugnar Games

Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

element

I have a suggestion unless this could be done with events somehow.
I'd like you to be able to talk to a pet you summon.
Like when you turn around and look at your pet you could use the action button and a common event would be triggerd.
I'd like to have this so i can event it that you can ride on the pet you have ^^