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.

XAS Action Rpg System (Secret Of Mana Styled)

Seib

Member

hi guys... i have a very simple quastion...
how can i set with this the hero movement speed.. i tried so many ways.. but it wasn't worked.. (i tried the usually way too)..
pls som1 help.
thx.
 
Question:

Is it possible to increase the tile distance of the dodge mechanic? Right now you jump back one tile. I think two or three tiles would be better for what it's supposed to be. I checked around the usual scripts and didn't find anything readily editable for it.
 
Skie Fortress":yhiwgayw said:
Question:

Is it possible to increase the tile distance of the dodge mechanic? Right now you jump back one tile. I think two or three tiles would be better for what it's supposed to be. I checked around the usual scripts and didn't find anything readily editable for it.

I'm sure it is editable. It's probably under some conditionals like if facing right, then jump back on the x axis and same with y.

I have not idea where it would be in the script though :3
 
Found it.

Search for "$game_temp.dodge_time_real = 15" in the XAS SYSTEM (Version 3.4) its line 6262 or thereabouts.

Just add another "move_backwards" for every space you want your hero to jump/dodge.

Note, you may have to edit a few more stats to make sure the dodge actual counts (seems to work alright actually).
 
Here a little script if you want more than one drop

Code:
 

module XAS_BA_ENEMY  

#

#A=>B

#A = enemy Id

#B = number of drops

#

ENEMY_DROPS = {

 

}

end

 

module XAS_BA_ItemDrop

  def defeat_process

    super   

   if XAS_BA_ENEMY::ENEMY_DROPS[self.battler.id] == nil

     drops = 1

   else

     drops = XAS_BA_ENEMY::ENEMY_DROPS[self.battler.id] 

     end

    $game_variables[1] = drops

   for i in 0...drops

    

    if self.battler.is_a?(Game_Enemy) and self.battler.dead? 

      treasure = nil      

      enemy = self.battler

      if rand(100) < enemy.treasure_prob and

        self.battler.steal == false        

        if enemy.item_id > 0

          treasure = $data_items[enemy.item_id]

        end

        if enemy.weapon_id > 0

          treasure = $data_weapons[enemy.weapon_id]

        end

        if enemy.armor_id > 0

          treasure = $data_armors[enemy.armor_id]

        end

      else  

   item_2treasure = XAS_BA_ENEMY::ENEMY_2TREASURE[enemy.id] 

   if item_2treasure != nil

        treasure_type = item_2treasure[0]

        treasure_id = item_2treasure[1]

        treasure_prob = item_2treasure[2]        

   if rand(100) < treasure_prob

        if treasure_type == 0

          treasure = $data_items[treasure_id]    

        end

        if treasure_type == 1

          treasure = $data_weapons[treasure_id]

        end

        if treasure_type == 2

          treasure = $data_armors[treasure_id]

        end           

    else

      item_3treasure = XAS_BA_ENEMY::ENEMY_3TREASURE[enemy.id] 

    if item_3treasure != nil

        treasure_type = item_3treasure[0]

        treasure_id = item_3treasure[1]

        treasure_prob = item_3treasure[2]    

    if rand(100) < treasure_prob 

        if treasure_type == 0

          treasure = $data_items[treasure_id]    

        end

        if treasure_type == 1

          treasure = $data_weapons[treasure_id]

        end

        if treasure_type == 2

          treasure = $data_armors[treasure_id]

        end

    else    

      item_4treasure = XAS_BA_ENEMY::ENEMY_4TREASURE[enemy.id] 

    if item_4treasure != nil

        treasure_type = item_4treasure[0]

        treasure_id = item_4treasure[1]

        treasure_prob = item_4treasure[2]    

    if rand(100) < treasure_prob 

        if treasure_type == 0

          treasure = $data_items[treasure_id]    

        end

        if treasure_type == 1

          treasure = $data_weapons[treasure_id]

        end

        if treasure_type == 2

          treasure = $data_armors[treasure_id]

        end

    else          

      item_5treasure = XAS_BA_ENEMY::ENEMY_5TREASURE[enemy.id] 

    if item_5treasure != nil

        treasure_type = item_5treasure[0]

        treasure_id = item_5treasure[1]

        treasure_prob = item_5treasure[2]    

    if rand(100) < treasure_prob 

        if treasure_type == 0

          treasure = $data_items[treasure_id]    

        end

        if treasure_type == 1

          treasure = $data_weapons[treasure_id]

        end

        if treasure_type == 2

          treasure = $data_armors[treasure_id]

        end        

             end

            end

           end

         end

        end    

      end            

    end 

  end

     end           

      if treasure != nil

        item_se = XAS::ITEMDROP_SE

        opecode = treasure.is_a?(RPG::Item) ? 126 :

                  treasure.is_a?(RPG::Weapon) ? 127 :

                  treasure.is_a?(RPG::Armor) ? 128 :

                  nil

        list = []

        if opecode != nil

          item_number = XAS::ITEM_NUMBER[treasure.id]   

          if item_number != nil and treasure.is_a?(RPG::Item)

          list[0] = RPG::EventCommand.new(opecode, 0, [treasure.id,0,0,item_number])

          else

          list[0] = RPG::EventCommand.new(opecode, 0, [treasure.id,0,0,1])

          end

          list[1] = RPG::EventCommand.new(250, 0, [item_se])

          list[2] = RPG::EventCommand.new(116, 0, [])          

        end

        list.push(RPG::EventCommand.new)

        command = RPG::MoveCommand.new

        command.code = 14

        command.parameters = [0,0]

        route = RPG::MoveRoute.new

        route.repeat = false

        route.list = [command, RPG::MoveCommand.new]

        page = RPG::Event::Page.new

        page.move_type = 3

        page.move_route = route

        page.move_frequency = 6

        page.always_on_top = true

        page.trigger = 1

        page.list = list

        if drops > 1          

          a = rand(3)

          c = rand(3)

          a = a-1

          c = c-1

          event = RPG::Event.new(self.x + a, self.y + c)

        else

          event = RPG::Event.new(self.x, self.y)

        end

        event.pages = [page]

        token = Token_Event.new($game_map.id, event)

        token.icon_name = treasure.icon_name

        $game_map.add_token(token)

      end

      end

    end

  end

end

rite in the ENEMY_DROPS module
A=>B
A is the enemy id
B are the number of drops

you have to paste the script under XAS - System
 
Hackel, cool script mate, that was one of the things I missed in XAS. How can you, however, add multiple drops? Like that sometimes it drops 1 potion, sometimes 3, but also sometimes 1 ether and 2 potion and so on?
 
@ calvin624 - yes you can

@ Mr_Smith - hmm i do not know what you mean. you can add the potion to the normal drop with 60% and the ether to the multiple drops with 10 %.
now you can give the enemy 3 drops but now enemy can also drop 3 ether ect

i hope you understand me
 
I just don't understand on how to change the enemies name? Whenever I put an enemy, its name is still G Slime. Also, how to make we can change the main character? I mean like we can choose our own character.
Thanks in advance!
 
@acrox999 - Are you just beginning to use RMXP? Not to be rude but if you are it is probably best if you learn how to use the editor before jumping into any custom scripts (especially one that is complex as XAS).

To create/change a character's name first open up the database of a project by pressing F9 or clicking on the database icon. Once you have that open click on the "Actors" tab. Here you will a list of actors you could add/remove from your project. Next select a character/actor then change their name where the "Name:" label is located.
 
Is it possible to add dash/sneak/jump and having a different attack animation? Like when you press during dash you will execute a forward stab, or pressing attack when jumping will do a jump attack o.O

Plus how do you config so that some shield have the ability to guard while walking and canceling casting time or special ability when you get attacked? (which can be prevented by some accessory or a skill later on)

Also, is it possible to add wall damage? I mean knocking enemy in wall (unpassable tiles) does damage, I think children of mana (a ds game) has this ability where you can knock enemy on the wall or other enemy and make a bowling out of them.

Finally, I haven't tinkered with the system yet but I want a general idea if this skills are possible on XAS.
-Knock Back Skills: Skills that knocks enemy back by x tiles.
-Black Hole effect: Draws enemy to you, or where your skill is activated (where the magic circle landed)

Thank you o.o
 
For you animation question the answer is yet but you would have to make the sprites and I'm not sure if the "Tool System" (the system which controls items, skills, overdrive, weapons etc.) could support a jump attack but you are more than welcomed to try making such an attack/skill.

For your other questions it would probably best if you download a copy of XAS.

Here's a like to where you can find a translated (english) version of the lastest version of the ABS.
http://www.fileden.com/files/2007/5/2/10 39333/Translated_3.4.zip
 

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