Help - Search - Members - Calendar
Full Version: Yggdrasil ABS
RPG RPG Revolution Forums > Scripting > Script Tutorials > RGSS
Pages: 1, 2
munkis
Yggdrasil ABS

Version: 1.6
Author: IceDragon
Release Date:02/15/2011


Originally posted on RPGMakerVX.net, posted on RPG RPG Revolution with author's permission.


Introduction
Yggdrasil is a Large Addon based ABS (Active Battle System). Unlike most ABS's though, this one can be switched on and off, so you could theoretically have this system, GTBS, and whatever you want for the 3rd system

Script
This ABS comes in many parts, so grab the demo.

Features/Customization
The biggest feature of Yggdrasil is customization through event-based comments. Yggdrasil also has the ability to have "Monster Generators", something that most ABS's can't do easily, if at all. Yggdrasil also ships with YEM Keyboard Input, and it's highly recommended you use it.

Compatibility
Shouldn't be any compatibility issues, since it doesn't do anything to Scene_Battle. Contact IceDragon with any issues.

Screenshot
You need to see it in action, trust me. Just grab the demo.

DEMO
http://www.mediafire.com/?dh4h0tk3kgmb7sq

Installation
Place under "Materials", above "Main".

FAQ
All questions are to be directed at IceDragon on RPGMakerVX.net, since this is his masterpiece

Terms and Conditions
You'll need to ask IceDragon for permission to post this on other sites, as well as wether or not he'll allow this script to be used in a commercial project.

Credits
All credit goes to IceDragon; he made this ABS, all I'm doing is "spreading the love".

Contact Info

For now, the only option is to go to RPGMakerVX.net and either post your question on the Yggdrasil thread there, or send him a PM.
Shadyone
Oh cool, this is something I wanted to do in my game, thanks for posting it here munkis smile.gif
EDIT: WOW THIS IS BLOODY AMAZING! Much better than Requiem ABS imo
dartdaman
wow this is really awesome smile.gif
I have a lot of work to do changing my game from requiem to this
KillerRed9
I have one VERY important question for you, and Yggdrasil, and IceDragon:
Question!
Wanna make out?

LOL JUST KIDDING!!

Seriously though, I love you guys for putting this on RPGRevolution. If you hadn't done so, I would've never found this. It is much more sleek than the Vampire Ludis thingy... (NO OFFENSE VLAD), and it has a lot of goodies tongue.gif

Anyways, thanks for putting it on here. If this forum had a rep system, thanking system... etc...
dartdaman
munkis just to let you know IceDragon has released a new version of this ABS its 1.5b
I was just telling you so you could update this topic so people could use the newer version
munkis
Thanks for letting me know. I've been trying unsuccessfully to contact him to ask which version in his mediafire folder was current.

/me goes to update ABS
munkis
Updating this post with a little bad news: My main PC (the one with the link to IceDragon's MediaFire folder) crashed recently, so updates to Yggdrasil may be slower than normal in coming. I'm trying to contact Ice to see if he's willing to re-send the link to the back-up PC I'm using right now, but for now I wouldn't advise holding your breath.

EDIT: Got the link from IceDragon, so I'll be able to update this ABS normally.
Kirinou
To be 100% honest this ABS script is better then the others, it doesn't have a very good party feature, but other then that it's amazing. It has a very fast paced action game to it. I stand by this ABS being my all time favorite.

I give it 9/10 only reason it loses that point is because the party swap thing is, eh... They need to fight with you, once party members follow you etc, it will be a 10/10, basically what I'm saying is; perfect.
munkis
You mean like a caterpillar or party formation script? Or something where you can change all the party members, and not just hot-swap the leader like you can now?
Axerax
I would like to see a screenshot so i can see what the HUD Looks like. Please post one.
dartdaman
QUOTE (Axerax @ Mar 28 2011, 05:48 AM) *
I would like to see a screenshot so i can see what the HUD Looks like. Please post one.


there is a screenshot at the author's thread on this website
Axerax
I can't view Photobucket images.
dl_thunder
seems a good script
Very nice
I'll download to see biggrin.gif

Please, add a little more to your post. It's pretty much spam.~Kread
Kyle873
Alright, so I added the ABS into my game but I'm having a small issue. When I get hit by an enemy or an enemy hits me, the game quits with this error:

CODE
Script 'IEX - Yggdrasal EGN - Visual' line 143: NoMethodError occured
Undefined method 'data_animations' for nil NilClass


I haven't learned the ins and outs of scripting yet, just the basics, so I don't know how to fix this myself.
munkis
I can't replicate the error you're having. I'd go to RPGMakerVX.net and post your problem on the Yggdrasil thread there.
dartdaman
QUOTE (Kyle873 @ Apr 4 2011, 10:26 AM) *
Alright, so I added the ABS into my game but I'm having a small issue. When I get hit by an enemy or an enemy hits me, the game quits with this error:

CODE
Script 'IEX - Yggdrasal EGN - Visual' line 143: NoMethodError occured
Undefined method 'data_animations' for nil NilClass


I haven't learned the ins and outs of scripting yet, just the basics, so I don't know how to fix this myself.

did you copy the animations over to your game
KuramaBingyi
Question. Hopefully someone can help me.

I cheated and "copy-pasted" the Script data file into my game's Data directory. Something must have went wrong, because when I go to test my game, I get the "Unable to find file Data/MapXXX.rvdata" message. Was there something in the scripts that I needed to change, or did I have to manually copy scripts?
dartdaman
first off that problem is that you need to copy the Yggdrasil Item Map into your project then go into the IEX-Yggdrasil CUS-Main script and scroll down to line 300 and put in the number of the map that the item map appears in your project
your are gonna run into even more problems if you don't copy the animations into your project also
KuramaBingyi
QUOTE (dartdaman @ Apr 16 2011, 11:02 AM) *
first off that problem is that you need to copy the Yggdrasil Item Map into your project then go into the IEX-Yggdrasil CUS-Main script and scroll down to line 300 and put in the number of the map that the item map appears in your project
your are gonna run into even more problems if you don't copy the animations into your project also


That did it. Thank you.
Lato
The demo gets bugged when I try and talk to that monster thing, it stops all your movement. Besides that it seems very cool, i dont like that type of battle system but I can see alot of other ppl do, goodwork.
KuramaBingyi
Next question.

I'm trying to use this with the HUD-Like Menu system. However, I'm assuming that the health and mana bars from that is causing a compatibility issue with the health and mana bars in Yggdrasil, because I keep getting an error message when I try to start a new playtest saying,

"Script 'YEM Core Fixes and Upgrades' line 961: No Method Error occurred.

undefined method 'hp' for nil:NilClass"

Can you find any way to toggle the HUD so that it's disabled when you enter the Menu? Or am I just not looking hard enough?

EDIT: Also to ask another question, is there a way to disable the Health Bars on the sprites until I can activate them?
KuramaBingyi
Kread, you've been great help, so far.

Using the Yggdrasil Battle System, how can I set it up so that a player won't receive EXP and nothing would drop off of the enemy actor?
Kread-EX
To disable EXP gain for an actor, well, it depends. In the config part, EXP_SAHRE_METHOD = 1. Setting it to 0 will enable exp gain only for the active character. If you want it to be determined by its ID, you'll have to find this part:
CODE
    case IEX::YGGDRASIL::EXP_SAHRE_METHOD
    when 0
      attacker.iex_ygg_attacker.gain_exp(exp_gain, false)
    when 1
      for act in $game_party.members
        next if act == nil
        act.gain_exp(exp_gain, false)
      end  
    when 2
      for act in $game_party.members
        next if act == nil
        iget_exp = exp_gain / $game_party.members.size
        act.gain_exp(iget_exp, false)
      end
    end

And change it like that:
CODE
    case IEX::YGGDRASIL::EXP_SAHRE_METHOD
    when 0
      attacker.iex_ygg_attacker.gain_exp(exp_gain, false) unless attacker.id == 1  # Put here the ID of the char you want to disable EXP for.
    when 1
      for act in $game_party.members
        next if act == nil || act.id == 1 # Same here
        act.gain_exp(exp_gain, false)
      end  
    when 2
      for act in $game_party.members
        next if act == nil || act.id == 1 # Same here
        iget_exp = exp_gain / $game_party.members.size
        act.gain_exp(iget_exp, false)
      end
    end

As for your second question, I'm not entirely sure about what exactly you want to achieve. Disable item gain when a certain actor kills an enemy?

EDIT: I have moved your post and mine from your question thread to this thread. Don't worry, you haven't double-posted.
KuramaBingyi
Hm. Not exactly what I'm looking for. I have a "Training" event in the middle of my project, to show the ropes of the battle system. I want to be able to disable EXP gain just for this event, and any other event just like it, as well as disallow item drops. I'm wondering if there's a call script code I can use for that.
Kread-EX
Oh, okay. Well, it's actually even easier. There is no script call, but you can turn on a switch to determine if this is the training. And after that, paste this snippet under Yggdrasil.
Clicky.
CODE
#==============================================================================
# ** Game_Enemy
#==============================================================================

class Game_Enemy < Game_Battler
  # The ID of the switch to determine training.
  TRAINING_SWITCH = 21
  #--------------------------------------------------------------------------
  # * Get Experience
  #--------------------------------------------------------------------------
  alias_method(:krx_yggcr_exp, :exp) unless $@
  def exp
    return 0 if $game_switches[TRAINING_SWITCH]
    return krx_yggcr_exp
  end
  #--------------------------------------------------------------------------
  # * Get Gold
  #--------------------------------------------------------------------------
  alias_method(:krx_yggcr_gold, :gold) unless $@
  def gold
    return 0 if $game_switches[TRAINING_SWITCH]
    return krx_yggcr_gold
  end
  #--------------------------------------------------------------------------
  # * Get Drop Item 1
  #--------------------------------------------------------------------------
  alias_method(:krx_yggcr_di1, :drop_item1) unless $@
  def drop_item1
    return RPG::Enemy::DropItem.new if $game_switches[TRAINING_SWITCH]
    return krx_yggcr_di1
  end
  #--------------------------------------------------------------------------
  # * Get Drop Item 2
  #--------------------------------------------------------------------------
  alias_method(:krx_yggcr_di2, :drop_item2) unless $@
  def drop_item2
    return RPG::Enemy::DropItem.new if $game_switches[TRAINING_SWITCH]
    return krx_yggcr_di2
  end
  #----------------------------------------------------------------------------#
  # ** Drops
  #----------------------------------------------------------------------------#
  if defined?(IEX::YGGDRASIL)
    p true
    alias_method(:krx_yggcr_drops, :iex_ygg_drops) unless $@
    def iex_ygg_drops
      return [] if $game_switches[TRAINING_SWITCH]
      return krx_yggcr_drops
    end
  end
end
It should work with other battle systems too.
KuramaBingyi
Much better. Thank you, Kread.
Brittonic
Alright time for the Noob Question of the day, I'm trying to find the file to open the scripting format so I can copy and paste all information over to my game. Problem is Winrar is being an butthole to me, and keeps driving me around in circles.
Basically was wondering if someone was willing to post a step by step play of how to dig the contents out and place them in the script on your game.

If there is instructions already posted somewhere please post the link, I could not find it.
Genshyu
I don't think it gets much better than this biggrin.gif Good job, IceDragon! And thanks dude for sharing this smile.gif
Shunjino
This is the kinda battle system I was looking for biggrin.gif I thank Jesus and god for finding this ABS system and U scripters wish i could script:D thanks again for the wonderfull demo
Vuster
WOOT, MY 1ST POST!!!!Id give this battle system 5 start if itwas not 4 2 things:

1: the party members are not included in the battles.(Im not trying to hinder u but the moment u do it, TELL ME! my game would get more enjoyable once thats in there XD laugh.gif

2: My event skill is good( i can make quite a few bosses what will piss you off ^_-) but my scripting is below amature. I basicly want a weapon to fire, similer to what you have dont with the skills. I know i need an event to be called and i have that but when i give trying to make it a go, i seem to kill off my game(thank god 4 back ups) I've tried and im basicly to busy with my final major project to really go into deaph with a tutorial so im just requesting a way to make Weapons(guns as an example) fire with a set range, dont really mind as long as its ranged. Also, can you please post a screenshot of what is basicly needed so i can have a refrence when i give it a shot myself? I gave it my best shot but my actions are limited in college.

If you need some kind of screenshot of what im using and such, let me know, ill b able to do it after college times.

I also want to learn how to make more skills like the 4Dslash and such but i wanna try to learn that on my own a bit longer. only way ima learn really...

ok, thanks and my rating on ur script:
****
4 star baby happy.gif
InfinateX
Awesome script! I like how you can use it to make 3 different fighting styles for game if you wanted a menu option that activated a special scene or common event that asks which battle style you would like to use and it would have 3 options (each battle system). Of course that would require other scripts as well. biggrin.gif
Vuster
(Resoved)
Took some time but i figured it out now. So now i can make some sweet attacks with the scripts. I also made an alternateve for a ranged weapon. Heres an example:
CODE
ATTACKS["ranged"] = [
    "Target: E",
    "Thrust",
    "Lock Anim Direction",
    "Damage x: 1.3",
    "Rotate Anim",
    "Reverse Swing",
    "Hit anim id: 171",
    "Coord Hit: 1, 0",
    "Coord Hit: 2, 0",
    "Coord Hit: 3, 0",    
    "Coord Hit: 4, 0",
    "Hit anim id: 170",

with this, the attack of a weapon is 4 spaced away like a gun weapon. theres no projectile animamtion but i can live with that.
Vuster
I wanted 2 ask, about the Ally thing(<ABS_WILD_TYPE> ), I cant seem to get that to work. I try to make it attack other enemies as well as me but it just attacks me.
munkis
You need to set DONT_SCAN_EVENTS to false.
Phantomaang
This is an incredible system, and I'm absolutely loving it. However, I'm running repeatedly into an issue with the Dungeon Actor HUD.
When I have all three of the system's switches off: Dungeon Actor Hud, ABS Battle System, and HP/MP bars off,
I will go to a new regular frontal-view battle, fight, but when the fight ends, I get this error.


Script 'IEX - Dungeon Actor Hud' line 702: RGSSError occurred.
disposed window

Here is line 702.
def update
@iex_viewport = self.viewport
reset if @lastmap_id != $game_map.map_id
@req_update = false

I'm not sure what script I'm using is screwing with this, but I want to be able to fix this. Can anyone tell me if any of these would mess with it?

DisplayVictoryAftermath
KGC_ContinueBGM
seanshimitsu
When I try to target with the bow, the cursor is a rock that rolls around. When I try to shoot, The game crashes, with the error:
Script 'IEX - Yggdrasil EGN - Core' line 2022: NoMethodError occured.
undefined method 'bow_treatment' for nil:NilClass

I know nothing about scripting, so I can't fix it.
Line 2022 says: "if proje.bow_treatment?"
Philip
QUOTE (Kread-EX @ Apr 18 2011, 02:21 PM) *
Oh, okay. Well, it's actually even easier. There is no script call, but you can turn on a switch to determine if this is the training. And after that, paste this snippet under Yggdrasil.

Ok Kread, I've got a little issue as well. I LOVE Yggdrasil and I've modified almost everything to fit my needs; HOWEVER, I have a small problem with drops as well. I've created Bombs (don't ask how LONG explanation) and I made cracks in the wall an enemy and when I place a bomb near it, it explodes destroying the crack and creating a passage. The only problem with this is IT DROPS A CHUNK OF GOLD!!! LOL!!! I'd like to just place a comment in the event to disable gold dropping. I know how to add new comments in through Lunatic Script I just don't know who to use this in the drops class to disable the drop from happening.

Hope you give this a shot tongue.gif
Kread-EX
It's been a while since I last looked at Yggdrasil, so pardon me if it's a stupid question, but are you certain that you set the gained gold to 0 for this type of enemy?
seanshimitsu
QUOTE (Kread-EX @ Aug 16 2011, 12:04 PM) *
It's been a while since I last looked at Yggdrasil, so pardon me if it's a stupid question, but are you certain that you set the gained gold to 0 for this type of enemy?

I have destructable boulders in my game, and it still drops a bag of zero gold...
seanshimitsu
QUOTE (seanshimitsu @ Aug 4 2011, 10:01 PM) *
When I try to target with the bow, the cursor is a rock that rolls around. When I try to shoot, The game crashes, with the error:
Script 'IEX - Yggdrasil EGN - Core' line 2022: NoMethodError occured.
undefined method 'bow_treatment' for nil:NilClass

I know nothing about scripting, so I can't fix it.
Line 2022 says: "if proje.bow_treatment?"

I fixed the cursor being a rock, but it still crashes when I shoot sad.gif
Could someone please help?
Kread-EX
Have you set the projectile on the Item Map?
seanshimitsu
QUOTE (Kread-EX @ Aug 19 2011, 12:37 PM) *
Have you set the projectile on the Item Map?

I copied Map 002 from the Demo, and it still won't work... If there is something else I need to do, I haven't done it.
Am I supposed to comment on the projectile?

The Bow weapons have the following comments:
<target attack: light>
<medium projectile: Normal Arrow>
<heavy projectile: Strong Arrow>
<medium target>
<heavy target>
<target range: 5>
Kread-EX
Yes, you also need to create the projectile inside the configuration of Yggdrasil. Within the Projectiles part of the script, you have this:
CODE
    PROJECTILES = {} # DO NOT REMOVE
    PROJECTILES["Javelin"] = [
    "Item Event: 2",
    "Attack Name: Arrow_Strike2",
    "Bow Treatment",
    "No Self Move",
    "Avoid Parent",
    ]

You need to create new projectiles, named like in the notetag. For instance, like this:
CODE
    PROJECTILES["Normal Arrow"] = [
    "Item Event: 4",
    "Attack Name: Direct Arrow",
    "Bow Treatment",
    "No Self Move",
    "Avoid Parent",
    ]
In that case, it matches the name "Normal Arrow" and the event within the item map should be the one with the ID of 4.
seanshimitsu
QUOTE (Kread-EX @ Aug 19 2011, 01:25 PM) *
Yes, you also need to create the projectile inside the configuration of Yggdrasil. Within the Projectiles part of the script, you have this:
CODE
    PROJECTILES = {} # DO NOT REMOVE
    PROJECTILES["Javelin"] = [
    "Item Event: 2",
    "Attack Name: Arrow_Strike2",
    "Bow Treatment",
    "No Self Move",
    "Avoid Parent",
    ]

You need to create new projectiles, named like in the notetag. For instance, like this:
CODE
    PROJECTILES["Normal Arrow"] = [
    "Item Event: 4",
    "Attack Name: Direct Arrow",
    "Bow Treatment",
    "No Self Move",
    "Avoid Parent",
    ]
In that case, it matches the name "Normal Arrow" and the event within the item map should be the one with the ID of 4.

Thank you very much, I finally have it working! This is my first time having to edit scripts, except for changing names...I really appreciate the help laugh.gif I can get the bow to shoot, but it seems to clip through things w/o causing damage...And yes, the attcaks have damage values.
Seytalgo
Awesome battle system very easy to use tongue.gif just having one issue sad.gif im hoping someone may beable to help me with im trying to use Woratana's Monster Book II script and im not sure how to go about configuring it to work with this battle system.. is it possible or not?

if it is possible how would i call the script to add monsters to the book?


Edit: i worked it out tongue.gif
for anyone else who wants to know this is how i did it

in the monster book script look for this

Scene_MonsterBook
@window_monlist.active = true <------- this line is false to begin with change it to true
@window_monlist.visible = false
@window_mondetail.active = true
@window_mondetail.visible = true
@window_mondetail.write_detail(@window_monlist.index + 1)


then to call monster data to the book
you call script using this command

$game_system.monbook[enemy_id] = true
(note you need to set up the enemy event as a Event Touch Trigger for it to trigger the script)

i spent quite a while working it out biggrin.gif soo glad i did feel like im getting the hang of script editing now tongue.gif when i first started noting worked when i editied hahah

Edit (22/08/11): Any idea when and if the party battle script for this system will be finished its a shame its not finished yet because i would really like to use party battle for my game tongue.gif
AriArk
How do you use a skill?
KaizerKirin
Hello im new at the forum so please tell me if im doing something wrong.....
This abs demo is the best but im having some problems with and i hep that any of you could help
1-I cant see how to put the attack animations like in the demo
2-i cant map actions each time i do so they disappear
3-every time i hit an enemy an error like this appears 'Script 'IEX-Yggdrasil EGN - Visual'line 143: TypeError occurred.
can't clone NilClass
For now that is Please help me
KaizerKirin
BUMP!
Philip
Ok Kread sry its been awhile since I've checked this topic. Anyway yes the gold is set to 0. I'd really like it if someone could figure this out.
KaizerKirin
Can somebody help me???
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2013 Invision Power Services, Inc.