MrMo's ABS Ultimate
#11

BUMP!
To Version 3.2


(If you find 2 links, use the 2nd. The first link will be down for an unspecified duration. Once the servier is repaired, the 2nd link will not be required.)

The attack, skill and item systems have been reworked in a manner so that when an attack (or like) action is decided, the system can first begin to play the character's animation and wait a litttle while before actually performing the action calculation. I know that some people reading this may think... 'Huh?' ... so let me explain.

If you pressed the attack button in the original system and had your character swing to attack, your target already GOT hit even though your character just started his animation. Your target already starts to get knocked back even though your sword just got raised rather than on the downward slice. Visually, this is ... Ugh!

So now, weapons, skills and items have an animation delay value associated with them. If you have a sword, you could set it to a small delay (hopefully to match your animation) so your target gets his just moments after the animation starts... and when your character's sword actually connects. On the other hand, you can set it to a slightly larger delay (again to match your animation) so a sledgehammer takes a longer time to swing and hit your target. This can be applied to the skills where the character clasps his hands before a cool effect, or to items where the character's arm appears to throw something before the item is generated and hurled at the target.

You don't need to have these delays and can set the delays to '0' so they work like the original system, but now the system can give a more visually correct appearance while being more challenging. After all.... your target may actually dodge your blow now there's a delay after you trigger your attack. ^_^

* * *

To get the enemies to function like this, the aggressiveness system was reworked. No longer are enemy attacks and skills based on the old "frame_count / aggressiveness" system, but is using a more fluid delay and action system that mimics the player's.

The player has a feature called 'button mash' which controls how much of a delay the player has before he can perform an attack. Now introduced to the enemies, they now have their own mash time that is augmented with the aggressiveness system. This means that if a player uses a skill that prevents them from performing another attack for 2 seconds, a matching enemy may have to wait 2 seconds themselves. In the meantime, a more aggressive enemy may have only a 1 second delay while a less aggressive enemy might need to wait 3 seconds.

* * *

It was found that the 'trigger on death' system was rendered ineffective on the upgrade that used the SDK Addon script. This was unexpected, though technically it should have been foreseen. I won't go into actual details on why it went 'Boom', but it has been reworked so it now functions again. The only caveat is that you need to use a new system to create your triggers. It is not difficult. Just annoying. Your trigger values must now be held within an array. So your original triggers such as Trigger 0 must now read as Trigger [0], and a trigger that turns on switch #2 will read as Trigger [1,2] rather than Trigger 1 2. All it entails is that you surround your values in brackets and put commas between the values.

Don't forget that you have 'default values' now. Very likely, your config already has the trigger set to '0', so adding Trigger [0] to your enemies isn't necessary anymore. ^_^

Yeah... if you didn't notice that before, you probably could reduce your regular enemy's comment list a great deal now.

* * *

Something totally nagged me when I got paralyzed by the zombies in my demo. Even though my player's paralyze status disappeared, I was still moving slowly and couldn't effectively attack. What the heck? I found that while I didn't have party members with me, the actors in the party were having to handle the temporary status afflictions as the player. Oookay...

The real problem was how the system handled the remove status system. While the system would cycle through every actor to apply and update states, it 'exited out' of the system once it found the first ailment to remove. So if Aluxes and Basil were paralyzed, it would find Aluxes's paralyse state and cure him but leave Basil stuck. Ugh. While the player could actually attack, his move speed was stuck because Basil was still listed as paralyzed. THAT had to be fixed.... and fixed it was. The initial status effect system wasn't made for a full party, but now should handle companions with ease.

* * *

Landmines....

Everyone probably uses the Game_Landmines class for ballistics, but almost no one uses the interpreter's simplified landmines command. Who would? You have no hit points for a mine. The player cannot place them as ordinance. You cannot give them a range or make them chain together.

But a minor change was made. The plain interpreter driven landmine routine only used the default '99' explosion effect. Pretty lame. So now the explosion effect is keyed on the item whose damage stat its using or the landmine stats in the configuration system, like the others. Not a big deal, but something better than what it was.

* * *

Did anyone notice that the confuse state for MrMo's ABS didn't work? He had the state available as s configurable option, but that was all it was... a configurable. Now, you have an actually functioning confuse state. If confused, the character will move erratically and you have a 50/50 chance that a key pressed will or won't work. Careful about being in battle with that. You might not be able to use a remedy that can cure you in time!!! Yep, that's evil...

* * *

And finally, a number of methods used have been renamed and reordered in the system for convenience and neatness. Within the ABS engine section, all the enemy based methods are grouped together, followed by the player's methods, companion methods, and so forth.



........ Oh, and a few people wondered why I gave the player's traveling party members the nickname, Companions, rather than something like Game_Frinds, Game_Allies, or the like. The answer is simple. I'm a fan of Doctor Who. Those who travel with him are called Companions.
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#12

BUMP!
to version 3.3

Had one more bug to squish. It involved the skill animation system. Took 2 minutes once found.
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#13

BUMP!
to version 3.4

Another two minute bug squish. This time, I forgot to prevent companions from trying to attack if they had no weapon. Caused a 'nil' issue. Bug found by Argol228.


Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#14
How do skills work? I'm trying to create a target system where the player "locks on" to an enemy and all skills attack that enemy. Does it just get the nearest enemy?
Reply }
#15
Skills can be used without missile effects by not adding anything for a skill into any of the SKILL_RANGED or etc. arrays. Skills like these affect all enemies on the screen within reason. These are to be set as 'all enemies' for targeting purposes.

Or skills that have their ID set up in the SKILL_ whatever arrays are cast with a missile effect. Fireballs, magic missiles, etc. These skills are fired at a single target (or multiples with the new scatter effect). And you usually set these to 'single enemy' effects. Could be 'all enemies' if you wanna use an explosive skill effect.

There is no skill or system that lets you identify and set a predetermined target. I'm assuming you mean 'clicking on an enemy and a cursor says 'targetted' ... press your skill button hits him. That would be pretty dang difficult.
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#16
Okay, that's weird. I know I uploaded newer demos... Confused

Well, it's time to
BUMP
to version 4.1

I've since added blood and gore effects, gave weapons a recoil so a powerful calibur weapon may knock you back when you use it. Made it so you can fire explosive rounds and....

Now you can click on an enemy with the mouse and your player will move to it and start hitting it over and over with the 'auto battle' feature! It even works with missiles![/align][/align]
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#17
BUMP!
To Version 5.0

There have been a number of things done with the ABS system, like the Distance Replacement system. But I am getting ahead of myself.

First off, I reduced some code by making a couple of routines that hendle the skill point costs, animations and button mash delays for the various skill types. Separate routines were employed for enemies, players and companions and were similar in design. But because of this compartmentalization, you can attach code to this method rather than needlessly changing/editing the original looooong method it was previously within.

I reduced the code further by creating methods that hendled ranged (all-enemy) attacks that did not use one the MrMo missile system. If you made an all-enemies system that was not defined in the RANGE_SKILLS or RANGE_EXPLODE arrays, they will hit one or more enemies on the screen without fail (other than MDef affecting it). This has always been the case and not something new. But I reduced the code by isolating the damage effect, hit, jump and other related stuff and putting it into its own method. It had to be done for both players and companions, but it reduced the code by about 18 lines of commands.

A minor bug fix was done to skill effects for companions as I accidentally removed the target animation effect a couple updates ago.

And all user animations and target animations have been straightened out to normal. TARGET animations are no longer used to display on the caster. It was kinda in the original MrMo system, but I never fixed it until now.

I reworked some of the routines that check the ability to use a skill and found some code needing to be fixed. MrMo's system initially used a 'can_use_skill' method and I'm keeping it for ABS reasons. Some code was flawed and needed to be fixed.

Big whoops found when I discovered that the companions lacked the code which prevents them from moving through 'barriers'. So now it's replicated from the Player's system.

But worse. ENEMIES and MISSILES were not stopped by solid barriers either. Now that totally sucked and needed to be handled.

On top of that, I added some new code for ABS Enemies that is run when the enemy decides which attack to perform. This makes the use of skills and/or attacks work a bit better. Previously, it didn't want to work so well and if the enemy wanted to cast a skill, it wouldn't change to a different attack if he didn't have enough points. He'd just freeze and do nothing but wait until his next turn. But he/she still will freeze if he doesn't have a melee attack if you don't do anything.

But now, here's something you'll love.

Enemies have a flag called 'Personality' which controls some of its behavior in combat. With it, you can set an enemy to keep its distance from the player. However, it sucked when the enemy ran out of SP and could only perform melee attacks. IT WOULD ALWAYS BACK AWAY FROM YOU!!! Because of that, additional work was done to the system. Now, when you have an enemy set up to keep its distance and it runs out of skill points, it changes its behavior to a normal enemy. It can then approach the player and use melee attacks.

This should make those pesky spell lobbing, arrow launching enemies even more dangerous.
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#18

BUMP!
to version 5.5

A major change was performed to the enemy's attack decision system. The update_enemy_action method was shortened, and all actions that the enemy can perform are now retrieved from the new enemy_retrieve_actions method. This new method was modeled after the default 'make_action' method within Game_Enemy and it contains some components of the 'enemy_preset_reactions' method that has now been replaced and removed. More advanced, the new enemy_retrieve_actions method doesn't only check to see what type of actions an enemy may perform, but limit the enemy's actions if it cannot perform skills on certain maps, and handles certain skills that are performed on actors based on the skill's scope.

Due to a few issues, the Cowardice system has been changed. Rather than the system running by a timer, the enemies flee a set number of tiles when a fellow enemy dies. This means that setting a cowardice value to '2' will have enemies back away from the player by two tiles rather than run away for two seconds.

Along with this, two more systemw were added, one that lets the enemy perform hit-and-run attacks and another that makes the enemy back away if it is hit.

The Back Off function is a system similar to the cowardice system. If an enemy is properly set up, it may back away from the player if it is hit by a melee attack. The enemy must be set to be one that will back away by a setting within the Personality option, and how many tiles it retreats is up to the backoff function. The enemy has a 50/50 chance of backing off if it is struck. However, the function doesn't really make much of a difference if your weapons have a kick feature that knocks the enemies back.

The Hit and Run system is a more evil system, letting the enemy back off on its own after it delivers a successful melee strike. This means that the player will likely find the enemy out of range after being hit, adding a new layer of difficulty to the battles. Unlike the cowardice and backoff systems, the enemy doesn't need to be defined in the enemy's Personality array.

And lastly, a small addition was added to the Game_Actor code so it can function WITHOUT either Guillaume777's or DerVVulfman's Multiple Slot code. During development, dependencies were added so the system can handle additional armor slots. Unfortunately, you couldn't use MrMo's ABS without one of these two systems without generating an error. Now that has been resolved. If you don't want to use a Multiple Slot system, you do not have to.
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#19

BUMP!
to version 5.6

Well, it's that time of the year. Time to ... aw, who am I kidding. I've bumped this thread with updates pretty damn often.

Well, this new bump gives a new little feature for skills, the ability to damage a target's own SP. So if you want to make a 'Mind basher' skill that can do around 80SP damage, now you can. A little credit goes to AGAFURO who asked me to make that particular feature for another battlesystem. I figured... include it here too.
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)

[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png]    [Image: liM4ikn.png]    [Image: fdzKgZA.png]    [Image: sj0H81z.png]
[Image: QL7oRau.png]    [Image: uSqjY09.png]    [Image: GAA3qE9.png]    [Image: 2Hmnx1G.png]    [Image: BwtNdKw.png%5B]
  Above are clickable links
Reply }
#20
There is a bug with this system (actually, I found it in every ABS Mr. Moe ever released). If a party member dies after loading a game, they will vanish from the map and be unable to fight, yet their status is "normal." It is as if they never died, yet you will no longer be able to use them or bring them back to life. If you start a new game and add your party members, they will fight/die as intended. This bug only surfaces upon loading a previously saved game.
Reply }


Possibly Related Threads…
Thread Author Replies Views Last Post
   MrMo's MultiPose Charactersets DerVVulfman 9 16,892 08-22-2012, 05:33 AM
Last Post: DerVVulfman
   MrMo's ABS Paperdoll System DerVVulfman 4 12,205 08-22-2012, 05:28 AM
Last Post: DerVVulfman
   MrMo's Item-Using Skills DerVVulfman 0 5,438 04-05-2012, 03:52 AM
Last Post: DerVVulfman
   Meagan's Particles for MrMo's ABS Ultimate DerVVulfman 1 6,020 11-09-2011, 05:02 AM
Last Post: DerVVulfman
   MrMo DVV Add-On #4: Francesca's Companions DerVVulfman 31 47,568 08-07-2011, 07:52 AM
Last Post: polo12
   MrMo's HUD DerVVulfman 1 7,681 07-19-2011, 03:50 AM
Last Post: DerVVulfman
   MrMo DVV Add-On #2: Dawn's Item Drops DerVVulfman 3 10,172 07-15-2011, 03:50 AM
Last Post: DerVVulfman
   MrMo DVV Add-On #21: Jocelyn's Big Booms DerVVulfman 0 5,775 07-14-2011, 03:27 AM
Last Post: DerVVulfman
   MrMo DVV Add-On #20: Vicki's Passable Enemies DerVVulfman 0 5,671 07-14-2011, 03:25 AM
Last Post: DerVVulfman
   MrMo DVV Add-On #18: Marissa's Landmines DerVVulfman 1 6,676 07-13-2011, 11:53 PM
Last Post: DerVVulfman



Users browsing this thread: 3 Guest(s)