Group: Member
Posts: 64
Type: None
RM Skill: Intermediate
@ripley: After reading all 8 pages of this (trying to find an easy solution to below) this script doesn't seem to be compatible with the 8-way directional scripts.
Now, I myself was wondering if there was an easier fix to turning this off when going onto the world map/ back on when you enter a town/dungeon/etc.
QUOTE (Ryukodomo @ Jul 13 2008, 12:31 PM)
Thx dude! I was looking for this ^^
QUOTE (celestial @ Jun 6 2008, 03:36 AM)
i have a question
is it possible for me to HIDE the CATERPILLAR in a WORLD MAP? or in a specific place?
i really don't like CATERPILLAR in the world map, i wanted it in inside towns
if that's necessary please reply
thanks!
Umm i think you need to completely get rid of the script then add it again when in town using the Advanced section in the event editor. Yeah i think that should help. Sorry if it doesn't
__________________________
Hmm.... rm2k isn't compatible with vista? Looks like I'll go to rmvx... Scripting? Oh sweet, I get to add new stuff! OH DEAR GOD! *head explodes*
Group: Member
Posts: 64
Type: None
RM Skill: Intermediate
Sorry for double post, (hoping this'll have it seen more)
but, would it be possible to have a script in it like
CODE
if map = (n,n) caterpillerscript = off else caterpillerscript = on
Not entirely sure if you'll understand what I mean by that so basically it would be an if the map = the name or number (whichever would be easier) then the script is off, but if not the its on.... The only problem is.. I have no idea how to actually script it myself so..... ? any scripters wanna lend a hand? lol
really don't want to have to make switch on/off event for every transition to/from my world map lol
This post has been edited by mortigneous: Apr 12 2009, 03:57 AM
__________________________
Hmm.... rm2k isn't compatible with vista? Looks like I'll go to rmvx... Scripting? Oh sweet, I get to add new stuff! OH DEAR GOD! *head explodes*
Group: Member
Posts: 2
Type: None
RM Skill: Undisclosed
Hi I was hoping someone could help I've noticed that several people have had the same problem basically when I try to playtest the game I get:
"NoMethodError occured undefined method 'each' for nil:NilClass" It's line 137 in my script (which is copied and pasted from the first post in this topic)
#-------------------------------------------------------------------------- # Made by: Trickster #-------------------------------------------------------------------------- class Game_Player #-------------------------------------------------------------------------- # * Move Down # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_down(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move Left # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_left(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move Right # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_right(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move up # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_up(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move Lower Left #-------------------------------------------------------------------------- def move_lower_left super end #-------------------------------------------------------------------------- # * Move Lower Right #-------------------------------------------------------------------------- def move_lower_right super end #-------------------------------------------------------------------------- # * Move Upper Left #-------------------------------------------------------------------------- def move_upper_left super end #-------------------------------------------------------------------------- # * Move Upper Right #-------------------------------------------------------------------------- def move_upper_right super end end
class Game_Follower < Game_Character #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :actor attr_accessor :move_speed #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(actor) super() @through = true @actor = actor end #-------------------------------------------------------------------------- # * Set Actor #-------------------------------------------------------------------------- def actor=(actor) @actor = actor setup end #-------------------------------------------------------------------------- # * Setup #-------------------------------------------------------------------------- def setup if @actor != nil @character_name = $game_actors[@actor].character_name @character_index = $game_actors[@actor].character_index else @character_name = "" @character_index = 0 end @opacity = 255 @blend_type = 0 @priority_type = $game_player.priority_type end
#-------------------------------------------------------------------------- # * Screen Z #-------------------------------------------------------------------------- def screen_z if $game_player.x == @x and $game_player.y == @y return $game_player.screen_z - 1 end super end #-------------------------------------------------------------------------- # * Same Position Starting Determinant (Disabled) #-------------------------------------------------------------------------- def check_event_trigger_here(triggers) result = false return result end #-------------------------------------------------------------------------- # * Front Envent Starting Determinant (Disabled) #-------------------------------------------------------------------------- def check_event_trigger_there(triggers) result = false return result end #-------------------------------------------------------------------------- # * Touch Event Starting Determinant (Disabled) #-------------------------------------------------------------------------- def check_event_trigger_touch(x, y) result = false return result end end
class Spriteset_Map alias_method :spriteset_map_create_characters, :create_characters def create_characters spriteset_map_create_characters $game_party.followers.each do |char| @character_sprites << Sprite_Character.new(@viewport1, char) end end end
class Game_Party #-------------------------------------------------------------------------- # * Constants #-------------------------------------------------------------------------- MAX_SIZE = 8 CATERPILLAR = 6 #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :followers #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- alias_method :trick_caterpillar_party_initialize, :initialize def initialize trick_caterpillar_party_initialize @followers = Array.new(MAX_SIZE - 1) {Game_Follower.new(nil)} @move_list = [] end #-------------------------------------------------------------------------- # * Update Followers #-------------------------------------------------------------------------- def update_followers flag = $game_player.transparent || $game_switches[CATERPILLAR] @followers.each_with_index do |char, i| char.actor = @actors[i + 1] char.move_speed = $game_player.move_speed if $game_player.dash? char.move_speed += 1 end char.update char.transparent = flag end end #-------------------------------------------------------------------------- # * Move To Party #-------------------------------------------------------------------------- def moveto_party(x, y) @followers.each {|char| char.moveto(x, y)} @move_list.clear end #-------------------------------------------------------------------------- # * Move Party #-------------------------------------------------------------------------- def move_party @move_list.each_index do |i| if @followers[i] == nil @move_list[i...@move_list.size] = nil next end case @move_list[i].type when 2 @followers[i].move_down(*@move_list[i].args) when 4 @followers[i].move_left(*@move_list[i].args) when 6 @followers[i].move_right(*@move_list[i].args) when 8 @followers[i].move_up(*@move_list[i].args) when 1 @followers[i].move_lower_left when 3 @followers[i].move_lower_right when 7 @followers[i].move_upper_left when 9 @followers[i].move_upper_right when 5 @followers[i].jump(*@move_list[i].args) end end end #-------------------------------------------------------------------------- # * Add Move List #-------------------------------------------------------------------------- def update_move(type, *args) move_party @move_list.unshift(Game_MoveListElement.new(type, args)) end end
class Game_MoveListElement #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(type, args) @type = type @args = args end #-------------------------------------------------------------------------- # * Type #-------------------------------------------------------------------------- def type return @type end #-------------------------------------------------------------------------- # * Args #-------------------------------------------------------------------------- def args return @args end end
class Game_Player #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :move_speed
#-------------------------------------------------------------------------- # * Update #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_update, :update def update $game_party.update_followers trick_caterpillar_player_update end #-------------------------------------------------------------------------- # * Moveto #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_moveto, :moveto def moveto(x, y) $game_party.moveto_party(x, y) trick_caterpillar_player_moveto(x, y) end #-------------------------------------------------------------------------- # * Move Down #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_down, :move_down def move_down(turn_enabled = true) if passable?(@x, @y+1) $game_party.update_move(2, turn_enabled) end trick_caterpillar_player_move_down(turn_enabled) end #-------------------------------------------------------------------------- # * Move Left #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_left, :move_left def move_left(turn_enabled = true) if passable?(@x-1, @y) $game_party.update_move(4, turn_enabled) end trick_caterpillar_player_move_left(turn_enabled) end #-------------------------------------------------------------------------- # * Move Right #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_right, :move_right def move_right(turn_enabled = true) if passable?(@x+1, @y) $game_party.update_move(6, turn_enabled) end trick_caterpillar_player_move_right(turn_enabled) end #-------------------------------------------------------------------------- # * Move Up #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_up, :move_up def move_up(turn_enabled = true) if passable?(@x, @y-1) $game_party.update_move(8, turn_enabled) end trick_caterpillar_player_move_up(turn_enabled) end #-------------------------------------------------------------------------- # * Move Lower Left #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_lower_left, :move_lower_left def move_lower_left if passable?(@x - 1, @y) and passable?(@x, @y + 1) $game_party.update_move(1) end trick_caterpillar_player_move_lower_left end #-------------------------------------------------------------------------- # * Move Lower Right #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_lower_right, :move_lower_right def move_lower_right if passable?(@x + 1, @y) and passable?(@x, @y + 1) $game_party.update_move(3) end trick_caterpillar_player_move_lower_right end #-------------------------------------------------------------------------- # * Move Upper Left #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_upper_left, :move_upper_left def move_upper_left if passable?(@x - 1, @y) and passable?(@x, @y - 1) $game_party.update_move(7) end trick_caterpillar_player_move_upper_left end #-------------------------------------------------------------------------- # * Move Upper Right #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_upper_right, :move_upper_right def move_upper_right if passable?(@x + 1, @y) and passable?(@x, @y - 1) $game_party.update_move(9) end trick_caterpillar_player_move_upper_right end #-------------------------------------------------------------------------- # * Jump #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_jump, :jump def jump(x_plus, y_plus) new_x = @x + x_plus new_y = @y + y_plus if (x_plus == 0 and y_plus == 0) or passable?(new_x, new_y) $game_party.update_move(5, x_plus, y_plus) end trick_caterpillar_player_jump(x_plus, y_plus) end #============================================================================== # Game_Character #==============================================================================
class Game_Character #-------------------------------------------------------------------------- # Public instance variables #-------------------------------------------------------------------------- attr_accessor :priority_type end
end########### ########### ###########
just remember if you still have problems (unless your directing them at me and you do copy that), you might wanna remember that you have two extra lines. remember, all credit still goes to Trickster on this, I didn't do anything to it that wasn't suggested.
also, the switch in this was changed to 6
This post has been edited by mortigneous: Apr 18 2009, 05:35 AM
__________________________
Hmm.... rm2k isn't compatible with vista? Looks like I'll go to rmvx... Scripting? Oh sweet, I get to add new stuff! OH DEAR GOD! *head explodes*
1.open the script editor 2.click on the left hand column below 'materials' but above 'main' 3.click int the big white space that has a bar on the left with a 1 4. paste the script there 5. on the lefthand where it says 'Name:' name the script something you will remember in case it comes up with an error
Also, with the fixed script (for level of followers) I changed the caterpillar switch to 6
This post has been edited by mortigneous: Apr 18 2009, 05:36 AM
__________________________
Hmm.... rm2k isn't compatible with vista? Looks like I'll go to rmvx... Scripting? Oh sweet, I get to add new stuff! OH DEAR GOD! *head explodes*
Group: Member
Posts: 5
Type: Musician
RM Skill: Intermediate
QUOTE (X-Snake-X @ Jan 28 2008, 09:47 AM)
Hey I have some problems... Everytime I add a Third Chara all the Charas are disappearing? e.g when i have a map with three charas with an add to team thing... The first chara appears.. But when i recruit another one they all disappear^^"
Its just not working here... I put the script below all other "custom script", i added the "update" in "Game_Party", but there were no "original update_followers"... Can someone please help me, i badly need that script
Group: Member
Posts: 3
Type: None
RM Skill: Beginner
heya, i'm new to all this, just learning right now, i kind of glitch my game when i play, but i know the answer to that, i was just wondering if there was a way on how you could make the characters not follow you at certain areas ( say if i am in a town, and i want to talk to my party members around the town. wouldn't make sense if i have a guy following me, and yet the same guy talking to me...i dunno how to fix it )
heya, i'm new to all this, just learning right now, i kind of glitch my game when i play, but i know the answer to that, i was just wondering if there was a way on how you could make the characters not follow you at certain areas ( say if i am in a town, and i want to talk to my party members around the town. wouldn't make sense if i have a guy following me, and yet the same guy talking to me...i dunno how to fix it )
I'm pretty sure you can activate/disable the script via switch (switch 2 by default).
Anyways, is anyone else having troubles when a character jumps? I don't get an error message but once I jump to a certain tile, that tile that I land on becomes unpassable. Another problem is that the caterpillar line-up gets broken when I jump a lot and my party starts walking in different sections of the map. I know this thread is almost dead but it would be nice to have a caterpillar script for rmvx that finally works properly. The caterpillar looks so cute in rmvx so I really wanna' get this working.
Group: Member
Posts: 3
Type: None
RM Skill: Beginner
k, i'll try that, thanx, and that is also how i glitch my game, i jump around, and my caterpillar ends up on a tile i can't walk, and then the line goes all screwy, not much of a glitch, but still annoying... i was also wondering if you could make the caterpillar characters somwhat like actually programs, cause other scripts i have kind of make my game kind of messed.
Group: Member
Posts: 1
Type: Developer
RM Skill: Beginner
Is there any way to increase the spacing between the player sprites? I'm using XP sprites and when I move them upward, it looks like the leader is walking on the follower's head. A little bit of extra space would help out here, no doubt. Also, NPCs can walk right through the follower characters. Is there any fix for this?
Group: Member
Posts: 27
Type: Artist
RM Skill: Skilled
Hey, I'm having a bit of difficulty.
See I'm using the Caterpillar script in my game. But, I am also using Woratana's Improved & Specials Move Commands Script. This script allows me to make a player jump at any time on the screen with just a click of the button (and it makes it impossible to jump if there the player would land on an impassable tile).
Anyway, here's my issue. If I remove the "Jump" section of the Caterpillar script, the partner following my main character won't jump after he jumps; leaving a huge gap between them, However, if I leave the "Jump" section in the Caterpillar script, it negate Woratana's script and causes my main character (who can jump with the click of a button) to jump onto impassable tiles and even jump off the screen.
I honestly have no idea what to do. Is there anything you/I can tweak in the Caterpillar script to make the party member following my main character simply just jump with him and nothing else? I really don't know any other way around it while keeping both scripts.
A saying that I DID NOT STEAL FROM KUNG FU PANDA! Today is a Gift. That's why they call it the Present. You never know what's inside, Because the Present is always changing. ~Made it up with my cuz 7 Years Ago, without the help of anybody else~