Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Mr.Mo's Squad Based ABS (SBABS)

Eldnar;216917 said:
Please mr.mo make the enemies can drop more than one item!!!!please!
I need ssssooooo this.

And in my game i use your SABS and somentimes [rarity] have lags.....
Please!
I know that should be annoying! but please

Eldnar, I don't know if this would solve your first problem or not, but, this is what I do in my game to make it seem as if the monsters have different items:

1. Copy the monster (in the Enemies Database) so that you have two of the same monsters there.
2. Make the items different. (One drops a potion, one drops a perfume?)
3. Then change some of your monsters on the map to have the new ID.
4. Repeat if you need more variations.

So, when you kill monsters, if they have different ID's, you'll get different items. Tada! :thumb:

I hope that helps, and that I made it clear enough. @_@
 

Shiro

Member

Eldnar;216917 said:
Please mr.mo make the enemies can drop more than one item!!!!please!
I need ssssooooo this.

And in my game i use your SABS and somentimes [rarity] have lags.....
Please!
I know that should be annoying! but please

The lag is because of your computer. I don't think Mr. Mo can fix that. :-/
 
What I did, with some of my monsters that I wanted to have second drops.
set them to trigger 3 1. (Self Switch A=on)
and make self-switch A turn them into an 'item_display' charset that gives the item then switches to B.
for an added look to it, I downloaded someone's message script that imitates the text on the side.
To set the rarity of that item.
Use random variables and condition branches.

This method disables the usual respawn time. But that can be fixed by turning self switches off.
for example:

Page 1
No switch:
(Normal enemy comments.)
Trigger 3 1

Page 2
Self-Switch A on: (Action button)
(Variables to determine random drop. unless 100%)
add item +whatever
Self-Switch B on.

Page 3
Self Switch B on: (Parallel process)
wait (desired respawn time)
Self-switch A off.
Self-switch B off.



As for the lag, Mr.Mo stated earlier about it when I commented.
His script is very CPU-intensive, which is why its included with the latest Anti-Lag script.
You can set some strings in the anti-lag script to make it take even more of your CPU power, lowering the lag. (Not a good thing to do though, it can be dangerous to lower-end computers to tax the cpu like that.)

But your best bet is to try to reduce as many parallel processes as you can. Disable the ABS when in towns or other places that don't have any enemies. And for large maps that you want covered in enemies?
Break the maps into sections.
 
This is my little change to add more drops:
Code:
Search for:
[CODE]BASE_AGGRESSIVE = 5
Add behind:
Code:
#--------------------------------------------------------------------------
MONSTER_DROPS = {}
# Here you can change the Monster Drops.
# Syntax: MONSTER_DROPS[MONSTER_ID] = ["ITEM_ID,ITEM_TYPE,DROP_CHANCE", ...]
#
# MONSTER_ID = ID of the monster in the database
# ITEM_ID = ID of the item in the database
# ITEM_TYPE = Type of Item (1=Item, 2=Weapon, 3=Armor)
# DROP_CHANCE = The chance to get the item in %
# 
# Example: MONSTER_DROPS[1] = ["2,1,80", "10,2,20", "11,2,10"]
# The Monster with ID 1 is able to drop 1 item and 2 weapons,
# with the chance of 80, 20 and 10 percent.
MONSTER_DROPS[1] = ["2,1,80", "10,2,20", "11,2,10"]
Search for:
Code:
    unless enemy.hidden
      exp += enemy.exp
      gold += enemy.gold
      if rand(100) < enemy.treasure_prob
        if enemy.item_id > 0
          treasures.push($data_items[enemy.item_id])
        end
        if enemy.weapon_id > 0
          treasures.push($data_weapons[enemy.weapon_id])
        end
        if enemy.armor_id > 0
          treasures.push($data_armors[enemy.armor_id])
        end
      end
    end
Replace with:
Code:
    unless enemy.hidden
      exp += enemy.exp
      gold += enemy.gold
      if MONSTER_DROPS[enemy.id]
        MONSTER_DROPS[enemy.id].each {|v|
          drop = v.split(",")
          dropitem_id = drop[0].to_i
          dropitem_type = drop[1].to_i
          dropitem_chance = drop[2].to_i
          
          if rand(100) < dropitem_chance
            if dropitem_type == 1
              treasures.push($data_items[dropitem_id])
            end
            if dropitem_type == 2
              treasures.push($data_weapons[dropitem_id])
            end
            if dropitem_type == 3
              treasures.push($data_armors[dropitem_id])
            end
          end
        }
      end
    end
[/code]
 
Wow, way to render half of my earlier post pointless, Natsuki. :P
Great addition though. Nice to see someone helping on improving this already amazing script.

I'm going to give this a try in a moment.
I'm going to have to fix quite a few monsters if this works :P


EDIT:
I just tested your change.
If you kill a monster that does NOT have an item set in MONSTER_DROPS = {}
part. It results in a crash.
If the items ARE set though (or at least set to 'MONSTER_DROPS[#] = []') then it works perfectly.
Very nice work. A worthwhile change to make, though requires a little bit of extra work on the script for new enemies drops, to ensure crashing doesn't occur.
(I'm just going to fill it with MONSTER_DROPS[#1-100] = [] and set them as I go.)

Hope to see you keep up the good work on this amazing script. ;)
 
Darkus;217000 said:
Wow, way to render half of my earlier post pointless, Natsuki. :P
Great addition though. Nice to see someone helping on improving this already amazing script.

I'm going to give this a try in a moment.
I'm going to have to fix quite a few monsters if this works :P


EDIT:
I just tested your change.
If you kill a monster that does NOT have an item set in MONSTER_DROPS = {}
part. It results in a crash.
If the items ARE set though (or at least set to 'MONSTER_DROPS[#] = []') then it works perfectly.
Very nice work. A worthwhile change to make, though requires a little bit of extra work on the script for new enemies drops, to ensure crashing doesn't occur.
(I'm just going to fill it with MONSTER_DROPS[#1-100] = [] and set them as I go.)

Hope to see you keep up the good work on this amazing script. ;)
Oh, sorry. Just fixed (edited post).
 
It's not in the script itself. To make a weapon play an attack animation when attacking, you just set the animation to what you want in the weapon entry on the Database animations drop-down menu.
 

Eldnar

Member

Thanks Natsuki you save my online game, sure you have BIG credits on my game!:thumb: :thumb: :D :D :D :D :thumb: :thumb: ^_^ ^_^ ^_^ :yes: :yes: :yes: :yes:
 
Alright, I'm having a problem with hotkeying and character graphics.

I had my friend beta-test parts of my game today. And found a pretty severe problem with the hotkeys.

It seems hotkeys disable themself after you are no longer in combat.
Which means you cannot heal yourself without having to enter your menu and use the skill/item there,unless you are in combat.
(Sort of breaks my balance idea to disable most item use from inside menus, so that players cannot bypass the mash time.)

Another problem is hotkeying items. When you hotkey an item, it does NOT appear on the hotkey bar. And you cannot remove it's hotkey setting unless you hotkey a skill over it.
You also can't seem to hotkey 2 items at the same time. Or overwrite a skill's hotkey with an item hotkey.

And finally, one last less severe, but slightly odd problem. After awhile, your character animation becomes stuck in a walking position.
He's not animated like he's walking or anything, he's just sticking his foot out like he's in the middle of a walk animation.

...I HATE typing on this laptop keyboard. I really do, so bad.
 
Hmm, I've noticed this as well Darkus...

It seems that the script sets a wait time after your charcter goes back to walk animation, which might explain why there is a delay in a walk animation "with the foot out." :|

So far I've been workin around with to common events for skill animation, so when you use a skill, you can change character graphics through the common event commands. In this case you can get alot more garphical style with the skill such as screen shaking, or multiple battle animations, sounds, etc. Another good thing about this is that you can string animations together to make combo chains (animations) with skills.

I tried this with monsters, but when monsters use skills they can't launch common events... and that messes up my animation theory for them ':|
(...be nice if someone could implement that ;) )
 
trying to move up from abs 4.5 BUT i managed to kill all sdk crap errors but... now i can get to the title but no matter what map i cant play i get this error!

Script 'input(Need for abs)' line 767: Typeerror occurred.
no implicit conversion from nil to integer

line 767 says "return !getasyncKeyState.call(num).between?(0, 1)

~~Please help!
Asmodean~
 
Iam using this script for my game..

How do i make so that when you kill a enemie then you go to the next area.

EDIT: forget it...I read the help file and now i know.
 
Is there a way to use this script with the Pixel Movement Script or is someone working on this compatibility? I'd love to see both scripts working together!
 

Eldnar

Member

Is there a way to use this script with the Pixel Movement Script or is someone working on this compatibility? I'd love to see both scripts working together!

Hey, I ask this of Pixelmovement and 8 directions for Mr.Mo and he say:
No, this script are not compatiple for Mr.Mo SABS....
 
This pixel ABS thing has been requested a thousand of times. Most of the ABSs (including Mr. Mo one) are writed for the default tile movement, and adding compatibility for pixel movement will require to rewrite the whole battle system.
 
Lol i have always been wondering that! but anyway... no one answered my question about the error and so MR MO! i had the sprint and sneak keys set to ctrl and shift.. apparently you cant do that!

One more thing.... Mr. Mo thanks again for the time spent here you are a god among scripters.. :p


(seriously a god!)

As not to double post i add the following...

MODE07 RULES i love it its works great and looks great.... but if i have a party of player even one... the game crashes if i bring them to a mode07 map.... so i have a question

1. WILL you, as in I'm just requesting add support for this??? I will ask MGCaladtogel to add this as well.

Oh heh... just read the bold on the first page no requests....

Well anyway THANK YOU! This couldnt be better for my game!
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top