Beginners Guide To Xp

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Beginners Guide To Xp as PDF for free.

More details

  • Words: 2,025
  • Pages: 22
Beginners guide to RPG MAKER XP -Conditional branchs -Switchs -Varibles -Making a game story -Branstorming -Resourses -Scripts -Actors -Enemies -Icons -Titles -Tutorials -Getting your game over the net -Conditinal BranchsA Conditinal Branch is when it runs a event under a spesific condition. Ok first make a new game called RPG Test. Now make a event with a Grafic of a man set the position fixed. Next Make a item called key, After that add a conditional branch to the man event now go to page 4 and put in key. Now lets look at it so far... @>Conditinal Branch [Key] in invetory... @>Else handler @>Branch end Now in under Conditinal Branch [Key] in invetory... add this... Text:Man: Thank you you got my key! Text:Hero: Yes here you go...

Text:Man: Here is your reward... Text: Aqquired 150G Change gold 150+ Change items 1- Key Now make anouther event with a cheast grafic add... Text: Aqquired 1x Key... Change items 1+key Erase event Now when you pick up the key talk to the map you got a quest congraglations! -SwitchsNow go back to the man event copy everything make a new condinal brantch make it when switch 1 is off we will call this switch finsh1. now paste the other conditnal branch. Now in the first else handler put in Text: Man: I lost my key can you find it? Text:Hero: ok... Now add under Text:Man: Thank you you got my key! Text:Hero: Yes here you go... Text:Man: Here is your reward... Text: Aqquired 150G Change gold 150+ Change items 1- Key Put Finsh1 on... Now in the second else handler put Text: Hero: Do you need more help? Text: Man: no... Now it should look like this...

Conditinal Branch [0001 Finsh1 off] Conditinal Branch [Key] in invetory... Text:Man: Thank you you got my key! Text:Hero: Yes here you go... Text:Man: Here is your reward... Text: Aqquired 150G Change gold 150+ Change items 1- Key Change switchs Finsh1 on... Else Handler Text: Man: I lost my key can you find it? Text:Hero: ok... Else Handler Text: Hero: Do you need more help? Text: Man: no... Now your done! -VariblesFirst off make a event make some secrity door grafic now put in Number input make 2 digits and make a varible called security door. make acondinal branch now click on varible now make it epule to this number 34 it should look like this. input number Conditinal branch [Varrible 0001:Security door] equle to 34 Teleport player to blabla bla Else handler dont put anything... and your done! -Making a game story-

Here is a tip don't worry about the features worry about the storyline. You could have good gameplay but a stupid bouring storyline think of a good story to catch alot of people... -BrainstormingFirst off buy a notepad, every night write the story of the game after about a month you will have about a 30 hour game... -ResourcesThe best resources are on fourms or on http://www.phanxgames.com/ things like charas genrator are stupid you need to resize the stuff. cheack the google for resources. -ScriptsUsing scripts is easy here is a ring menu script... First clear the menu script and add this... #=========================================================================== === # チ¡ Window_RingMenu #=========================================================================== === #=========================================================================== === # Edited by MakirouAru #=========================================================================== === class Window_RingMenu < Window_Base #-------------------------------------------------------------------------# › ƒNƒ‰ƒX’è" #-------------------------------------------------------------------------STARTUP_FRAMES = 20 # 艊úƒAƒjƒ[ƒVƒ‡ƒ"‚̃tƒŒ[ƒ€" MOVING_FRAMES = 5 # ƒŠƒ"ƒO‚ð‰ñ‚µ‚½Žž‚̃tƒŒ[ƒ€"

RING_R = 64 # ƒŠƒ"ƒO‚Ì"¼Œa ICON_ITEM = RPG::Cache.icon("034-Item03") # uƒAƒCƒeƒ€vƒƒjƒ…[‚̃AƒCƒRƒ" ICON_SKILL = RPG::Cache.icon("044-Skill01") # uƒXƒLƒ‹vƒƒjƒ…[‚̃AƒCƒRƒ" ICON_EQUIP = RPG::Cache.icon("001-Weapon01") # u‘•"õvƒƒjƒ…[‚̃AƒCƒRƒ" ICON_STATUS = RPG::Cache.icon("050-Skill07") # uƒXƒe[ƒ^ƒXvƒƒjƒ…[‚̃AƒCƒRƒ" ICON_SAVE = RPG::Cache.icon("038-Item07") # uƒZ[ƒuvƒƒjƒ…[‚̃AƒCƒRƒ" ICON_EXIT = RPG::Cache.icon("046-Skill03") # uèI—¹vƒƒjƒ…[‚̃AƒCƒRƒ" ICON_DISABLE= RPG::Cache.icon("") # Žg—p‹ÖŽ~€–Ú‚É•t‚ƒAƒCƒRƒ" SE_STARTUP = "056-Right02" # ƒƒjƒ…[‚ðŠJ‚¢‚½‚Æ‚«‚ɖ‚炷SE MODE_START = 1 # ƒXƒ^[ƒgƒAƒbƒvƒAƒjƒ[ƒVƒ‡ƒ" MODE_WAIT = 2 # ‘Ò‹@ MODE_MOVER = 3 # ŽžŒv‰ñ‚è‰ñ"]ƒAƒjƒ[ƒVƒ‡ƒ" MODE_MOVEL = 4 # "½ŽžŒv‰ñ‚è‰ñ"]ƒAƒjƒ[ƒVƒ‡ƒ" #-------------------------------------------------------------------------# チ› ƒAƒNƒZƒT #-------------------------------------------------------------------------attr_accessor :index #-------------------------------------------------------------------------# チ œ ƒIƒuƒWƒFƒNƒg マ‰Šú‰» #-------------------------------------------------------------------------def initialize( center_x, center_y ) super(0, 0, 640, 480) self.contents = Bitmap.new(width-32, height-32) self.contents.font.name = "Arial" self.opacity = 0 self.back_opacity = 0 s1 = "Items" s2 = "Skills"

s3 = "Equip" s4 = "Stats" s5 = "Save" s6 = "Exit" @commands = [ s1, s2, s3, s4, s5, s6 ] @item_max = 6 @index = 0 @items = [ ICON_ITEM, ICON_SKILL, ICON_EQUIP, ICON_STATUS, ICON_SAVE, ICON_EXIT ] @disabled = [ false, false, false, false, false, false ] @cx = center_x - 16 @cy = center_y - 16 setup_move_start refresh end #-------------------------------------------------------------------------# œ ƒtƒŒ[ƒ€XV #-------------------------------------------------------------------------def update super refresh end #-------------------------------------------------------------------------# œ ‰æ–ʍĕ`‰æ #-------------------------------------------------------------------------def refresh self.contents.clear # ƒAƒCƒRƒ"‚ð•`‰æ case @mode

when MODE_START refresh_start when MODE_WAIT refresh_wait when MODE_MOVER refresh_move(1) when MODE_MOVEL refresh_move(0) end # ƒAƒNƒeƒBƒu‚ȃRƒ}ƒ"ƒh–¼•\Ž¦ rect = Rect.new(@cx - 272, @cy + 24, self.contents.width-32, 32) self.contents.draw_text(rect, @commands[@index],1) end #-------------------------------------------------------------------------# › ‰æ–ʍĕ`‰æ(艊ú‰»Žž) #-------------------------------------------------------------------------def refresh_start d1 = 2.0 * Math::PI / @item_max d2 = 1.0 * Math::PI / STARTUP_FRAMES r = RING_R - 1.0 * RING_R * @steps / STARTUP_FRAMES for i in 0...@item_max j = i - @index d = d1 * j + d2 * @steps x = @cx + ( r * Math.sin( d ) ).to_i y = @cy - ( r * Math.cos( d ) ).to_i draw_item(x, y, i) end @steps -= 1

if @steps < 1 @mode = MODE_WAIT end end #-------------------------------------------------------------------------# チ› ‰æ–ʍĕ`‰æ(‘Ò‹@Žž) #-------------------------------------------------------------------------def refresh_wait d = 2.0 * Math::PI / @item_max for i in 0...@item_max j = i - @index x = @cx + ( RING_R * Math.sin( d * j ) ).to_i y = @cy - ( RING_R * Math.cos( d * j ) ).to_i draw_item(x, y, i) end end #-------------------------------------------------------------------------# › ‰æ–ʍĕ`‰æ(‰ñ"]Žž) # mode : 0="½ŽžŒv‰ñ‚è 1=ŽžŒv‰ñ‚è #-------------------------------------------------------------------------def refresh_move( mode ) d1 = 2.0 * Math::PI / @item_max d2 = d1 / MOVING_FRAMES d2 *= -1 if mode != 0 for i in 0...@item_max j = i - @index d = d1 * j + d2 * @steps x = @cx + ( RING_R * Math.sin( d ) ).to_i

y = @cy - ( RING_R * Math.cos( d ) ).to_i draw_item(x, y, i) end @steps -= 1 if @steps < 1 @mode = MODE_WAIT end end #-------------------------------------------------------------------------# œ €–Ú‚Ì•`‰æ #x: #y: # i : €–Ú"ԍ† #-------------------------------------------------------------------------def draw_item(x, y, i) #p "x=" + x.to_s + " y=" + y.to_s + " i=" + @items[i].to_s rect = Rect.new(0, 0, @items[i].width, @items[i].height) if @index == i self.contents.blt( x, y, @items[i], rect ) if @disabled[@index] self.contents.blt( x, y, ICON_DISABLE, rect ) end else self.contents.blt( x, y, @items[i], rect, 128 ) if @disabled[@index] self.contents.blt( x, y, ICON_DISABLE, rect, 128 ) end end

end #-------------------------------------------------------------------------# œ €–ڂ𖳌ø‚É‚·‚é # index : €–Ú"ԍ† #-------------------------------------------------------------------------def disable_item(index) @disabled[index] = true end #-------------------------------------------------------------------------# › 艊ú‰»ƒAƒjƒ[ƒVƒ‡ƒ"‚Ìè€"õ #-------------------------------------------------------------------------def setup_move_start @mode = MODE_START @steps = STARTUP_FRAMES if SE_STARTUP != nil and SE_STARTUP != "" Audio.se_play("Audio/SE/" + SE_STARTUP, 80, 100) end end #-------------------------------------------------------------------------# › ‰ñ"]ƒAƒjƒ[ƒVƒ‡ƒ"‚Ìè€"õ #-------------------------------------------------------------------------def setup_move_move(mode) if mode == MODE_MOVER @index -= 1 @index = @items.size - 1 if @index < 0 elsif mode == MODE_MOVEL @index += 1 @index = 0 if @index >= @items.size

else return end @mode = mode @steps = MOVING_FRAMES end #-------------------------------------------------------------------------# チ› ƒAƒjƒ チチ[ƒVƒ‡ƒ"’†‚©‚Ç‚¤‚© #-------------------------------------------------------------------------def animation? return @mode != MODE_WAIT end end #=========================================================================== === # チ¡ Window_MenuStatus #-----------------------------------------------------------------------------# @ƒƒjƒ…[‰æ–Ê‚ƒp[ƒeƒBƒƒ"ƒo[‚̃Xƒe[ƒ^ƒX‚ð•\Ž¦‚·‚éƒEƒBƒ"ƒhƒE‚‚·B #=========================================================================== === class Window_RingMenuStatus < Window_Selectable #-------------------------------------------------------------------------# チ œ ƒIƒuƒWƒFƒNƒg マ‰Šú‰» #-------------------------------------------------------------------------def initialize super(204, 64, 232, 352) self.contents = Bitmap.new(width - 32, height - 32) refresh self.active = false

self.index = -1 end #-------------------------------------------------------------------------# チ œ ƒŠƒtƒŒƒbƒVƒ… #-------------------------------------------------------------------------def refresh self.contents.clear self.contents.font.name = "Arial" @item_max = $game_party.actors.size for i in 0...$game_party.actors.size x = 80 y = 80 * i actor = $game_party.actors[i] draw_actor_graphic(actor, x - 40, y + 80) draw_actor_name(actor, x, y + 24) end end #-------------------------------------------------------------------------# チ œ ƒJ チ[ƒ\ƒ‹‚Ì‹éŒ`ヘ X ミ V #-------------------------------------------------------------------------def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 80, self.width - 32, 80) end end end

#=========================================================================== === # #チ¡ Scene_RingMenu # チ¡ Scene_Menu #-----------------------------------------------------------------------------# チ@ƒ チ ƒjƒ…チ[‰æ–Ê‚Ì マˆ—ン‚ð ヘ s‚¤ƒNƒ‰ƒX‚‚·チ B #=========================================================================== === #class Scene_RingMenu class Scene_Menu #-------------------------------------------------------------------------# チ œ ƒIƒuƒWƒFƒNƒg マ‰Šú‰» # menu_index : ƒRƒ}ƒ"ƒh‚̃J チ[ƒ\ƒ‹マ‰ŠúˆÊ’u #-------------------------------------------------------------------------def initialize(menu_index = 0) @menu_index = menu_index end #-------------------------------------------------------------------------# チ œ ƒ チ ƒCƒ"マˆ—ン #-------------------------------------------------------------------------def main # ƒXƒvƒ‰ƒCƒgƒZƒbƒg‚ð ヘ ì ミ¬ @spriteset = Spriteset_Map.new # ƒRƒ}ƒ"ƒhƒEƒBƒ"ƒhƒE‚ðì¬ px = $game_player.screen_x - 15 py = $game_player.screen_y - 24 @command_window = Window_RingMenu.new(px,py) @command_window.index = @menu_index # ƒp[ƒeƒBl"‚ª 0 l‚Ì萍‡

if $game_party.actors.size == 0 # ƒAƒCƒeƒ€AƒXƒLƒ‹A‘•"õAƒXƒe[ƒ^ƒX‚𖳌ø‰» @command_window.disable_item(0) @command_window.disable_item(1) @command_window.disable_item(2) @command_window.disable_item(3) end @command_window.z = 100 # ƒZ[ƒu‹ÖŽ~‚Ì萍‡ if $game_system.save_disabled # ƒZ[ƒu‚𖳌ø‚É‚·‚é @command_window.disable_item(4) end # ƒXƒe[ƒ^ƒXƒEƒBƒ"ƒhƒE‚ðì¬ @status_window = Window_RingMenuStatus.new @status_window.x = 160 @status_window.y = 0 @status_window.z = 200 @status_window.visible = false # ƒgƒ‰ƒ"ƒWƒVƒ‡ƒ"ŽÀs Graphics.transition # ƒƒCƒ"ƒ‹[ƒv loop do # ƒQ[ƒ€‰æ–Ê‚ðXV Graphics.update # "ü—Íèî•ñ‚ðXV Input.update # ƒtƒŒ[ƒ€XV

update # ‰æ–Ê‚ªØ‚è‘Ö‚í‚Á‚½‚烋[ƒv‚ð’†’f if $scene != self break end end # ƒgƒ‰ƒ"ƒWƒVƒ‡ƒ"è€"õ Graphics.freeze # ƒXƒvƒ‰ƒCƒgƒZƒbƒg‚ð‰ð•ú @spriteset.dispose # ƒEƒBƒ"ƒhƒE‚ð‰ð•ú @command_window.dispose @status_window.dispose end #-------------------------------------------------------------------------# œ ƒtƒŒ[ƒ€XV #-------------------------------------------------------------------------def update # ƒEƒBƒ"ƒhƒE‚ð ヘ X ミ V @command_window.update @status_window.update # ƒRƒ}ƒ"ƒhƒEƒBƒ"ƒhƒE‚ªƒAƒNƒeƒBƒu‚Ì マ  ヘ‡: update_command ‚ðŒÄ‚Ô if @command_window.active update_command return end # ƒXƒe チ[ƒ^ƒXƒEƒBƒ"ƒhƒE‚ªƒAƒNƒeƒBƒu‚Ì マ  ヘ‡: update_status ‚ðŒÄ‚Ô if @status_window.active

update_status return end end #-------------------------------------------------------------------------# œ ƒtƒŒ[ƒ€XV (ƒRƒ}ƒ"ƒhƒEƒBƒ"ƒhƒE‚ªƒAƒNƒeƒBƒu‚Ì萍‡) #-------------------------------------------------------------------------def update_command # B ƒ{ƒ^ƒ"‚ª‰Ÿ‚³‚‚½è‡ if Input.trigger?(Input::B) # ƒLƒƒƒ"ƒZƒ‹ SE ‚ð‰‰‘t $game_system.se_play($data_system.cancel_se) # ƒ}ƒbƒv‰æ–ʂɐ؂è‘Ö‚¦ $scene = Scene_Map.new return end # C ƒ{ƒ^ƒ"‚ª‰Ÿ‚³‚‚½è‡ if Input.trigger?(Input::C) # ƒp[ƒeƒBl"‚ª 0 l‚AƒZ[ƒuAƒQ[ƒ€èI—¹ˆÈŠO‚̃Rƒ}ƒ"ƒh‚Ì萍‡ if $game_party.actors.size == 0 and @command_window.index < 4 # ƒuƒU[ SE ‚ð‰‰‘t $game_system.se_play($data_system.buzzer_se) return end # ƒRƒ}ƒ"ƒhƒEƒBƒ"ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚•ªŠò case @command_window.index when 0 # ƒAƒCƒeƒ€ # Œˆ’è SE ‚ð‰‰‘t

$game_system.se_play($data_system.decision_se) # ƒAƒCƒeƒ€‰æ–ʂɐ؂è‘Ö‚¦ $scene = Scene_Item.new when 1 # ƒXƒLƒ‹ # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒXƒe[ƒ^ƒXƒEƒBƒ"ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é @command_window.active = false @status_window.active = true @status_window.visible = true @status_window.index = 0 when 2 # ‘•"õ # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒXƒe チ[ƒ^ƒXƒEƒBƒ"ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é @command_window.active = false @status_window.active = true @status_window.visible = true @status_window.index = 0 when 3 # ƒXƒe チ[ƒ^ƒX # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒXƒe チ[ƒ^ƒXƒEƒBƒ"ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é @command_window.active = false @status_window.active = true @status_window.visible = true @status_window.index = 0 when 4 # ƒZ[ƒu

# ƒZ[ƒu‹ÖŽ~‚Ì萍‡ if $game_system.save_disabled # ƒuƒU[ SE ‚ð‰‰‘t $game_system.se_play($data_system.buzzer_se) return end # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒZ[ƒu‰æ–ʂɐ؂è‘Ö‚¦ $scene = Scene_Save.new when 5 # ƒQ[ƒ€èI—¹ # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒQ[ƒ€èI—¹‰æ–ʂɐ؂è‘Ö‚¦ $scene = Scene_End.new end return end # ƒAƒjƒ[ƒVƒ‡ƒ"’†‚È‚çƒJ[ƒ\ƒ‹‚Ì舗‚ðs‚í‚È‚¢ return if @command_window.animation? # チ ªor チ© ƒ{ƒ^ƒ"‚ª‰Ÿ‚³‚‚½ マ  ヘ‡ if Input.press?(Input::UP) or Input.press?(Input::LEFT) $game_system.se_play($data_system.cursor_se) @command_window.setup_move_move(Window_RingMenu::MODE_MOVEL) return end # チ«or チ¨ ƒ{ƒ^ƒ"‚ª‰Ÿ‚³‚‚½ マ  ヘ‡ if Input.press?(Input::DOWN) or Input.press?(Input::RIGHT)

$game_system.se_play($data_system.cursor_se) @command_window.setup_move_move(Window_RingMenu::MODE_MOVER) return end end #-------------------------------------------------------------------------# チ œ ƒtƒŒ[ƒ€XV (ƒXƒe[ƒ^ƒXƒEƒBƒ"ƒhƒE‚ªƒAƒNƒeƒBƒu‚Ì萍‡) #-------------------------------------------------------------------------def update_status # B ƒ{ƒ^ƒ"‚ª‰Ÿ‚³‚‚½è‡ if Input.trigger?(Input::B) # ƒLƒƒƒ"ƒZƒ‹ SE ‚ð‰‰‘t $game_system.se_play($data_system.cancel_se) # ƒRƒ}ƒ"ƒhƒEƒBƒ"ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é @command_window.active = true @status_window.active = false @status_window.visible = false @status_window.index = -1 return end # C ƒ{ƒ^ƒ"‚ª‰Ÿ‚³‚‚½ マ  ヘ‡ if Input.trigger?(Input::C) # ƒRƒ}ƒ"ƒhƒEƒBƒ"ƒhƒE‚̃J チ[ƒ\ƒ‹ˆÊ’u‚•ªŠò case @command_window.index when 1 # ƒXƒLƒ‹ # ‚±‚̃AƒNƒ^チ[‚Ì ヘ s"®ミ§ŒÀ‚ª 2 ˆÈ マ ã‚Ì マ  ヘ‡ if $game_party.actors[@status_window.index].restriction >= 2 # ƒuƒU チ[ SE ‚ð‰‰‘t

$game_system.se_play($data_system.buzzer_se) return end # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒXƒLƒ‹‰æ–Ê‚É ミ Ø‚è‘Ö‚¦ $scene = Scene_Skill.new(@status_window.index) when 2 # ‘•"õ # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ‘•"õ‰æ–Ê‚É ミ Ø‚è‘Ö‚¦ $scene = Scene_Equip.new(@status_window.index) when 3 # ƒXƒe チ[ƒ^ƒX # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒXƒe チ[ƒ^ƒX‰æ–Ê‚É ミ Ø‚è‘Ö‚¦ $scene = Scene_Status.new(@status_window.index) end return end end end This is not my script! -ActorsMake a unqie name for your actors not like jamie make a good name like salfix and also use your own grafics. -EnemiesEdit the enemies names and make coditions to destroy them like

you need the hell pendent to stop the knight angel. -IconsMake your own weapon icons or your going to have crimson axe with the defult axe icon there are alout of icons here no resizing needing. -TitlesMake your own title with a good logo to catch people atension also make a good background. -TutorialsHere is my own tutorial about making a journal first make a item called journal... now make a commen event called journal now make a switch called journal 1 now put in this... Woul do you like to view journal? When yes... Condinal branch journal 1 is on Text: This is my first quest and i completed it! else handler Nothing now when you make a quest when you complet it add the switch journal 1 on and you got a journal... -Getting your game over the netMake a website at www.freewebs.com and then add your game to the site! next go to www.co.nr and make a domain for your site its free! and your done! Written by jonathan samson edited by sam romanove Drawer studios www.drawerstudios.co.nr

THE END

Related Documents