new CMS and CBS required...

Started by Squig, March 06, 2010, 10:25:12 am

Previous topic - Next topic

Squig

I know the title is very vague and I apologise for that... Just unsure of exactly what to call it...

Required;

  • CMS system to incorporate a level-able 'materia'/magic system very closely akin to FFVII...

  • Shop system to include building of new weapons based on items collected...

  • CBS to include magic with the standard fare and also to be side facing as per another script spotted on here



No other scripts other than the prepackaged scripts are in use at this time and other than increasing the number of saves I'm happy with that.

I know this brief is, well, brief but I'm very open to interpretation of this.
Any feedback is massively appricated.

lilbrudder917

March 06, 2010, 10:43:51 am #1 Last Edit: March 06, 2010, 10:54:45 am by Breloom Trainer Brudder
The first one doesn't require a CMS, you're looking for, like you said, a Materia System. Googled it and found this: Materia System by DustCollecter.

In Scene_Menu, on line 25, add an extra line and add
s7 = "Materia"


and from
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])


make it
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7])


on line 161 (162, if you already added the s7 in the beginning), where it says
      when 5  # end game
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Switch to end game screen
       $scene = Scene_End.new
       end


Before that last end, add
when 6
$game_system.se_play($data_system.decision_se)
$scene = Scene_MateriaEquip.new


so now it should look like this:
      when 5  # end game
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Switch to end game screen
       $scene = Scene_End.new
       when 6
       $game_system.se_play($data_system.decision_se
       $scene = Scene_MateriaEquip.new
       end


Now you can access that Materia script from the menu.

Also, the Materia script comes with SDK. Any line that has the word SDK in it, remove the entire line. It's not required and the SDK blows.




The second request, sounds like an Alchemy System to me. There are some out there, none have really worked for me. I'll search later.

The third, not sure what you mean exactly.

EDIT: Not sure if it looks similar to FFVII. Never played it. Google Image searched it, it doesn't look like it, but you can easily change the XY positions, width/height and make it relatively similar.

G_G

I recommend using this materia system. http://www.hbgames.org/forums/viewtopic.php?f=11&t=59972 By Atoa its very excellent and practically a replica of FFVII's.


lilbrudder917

I'm sure there are more out there, the one I posted was just one I found from Google that worked.

But if G_G's recommending that one, it's probably better.  :P

If that one doesn't use Scene_MateriaEquip as the Materia Equip Scene, then replace

$scene = Scene_MateriaEquip.new

that I told you to add to the menu before to
$scene = Scene_WhateverTheyCalledIt.new

Squig

awesome cheers guys!

The side facing CBS I found was this one by Nortos... my main problem here, if I can digress slightly, is that I'm a complete Ruby newb and as such have absolutely no idea how to get scripts to work together... maybe someone can tell me whether Atoa's Materia script can work with Nortos' CBS so magic becomes a selectable option?

Oh, and yes, an 'Alchemy' system is kind of what I mean... if I can explain further; say you have a monster encounter, and that monster drops an iron pipe, later another encounter yields a clockwork mechanism, then a third gives a wooden stock, you then take these items to a shop and "trade" them and a fire and water materia to gain a steam musket (which would be a pre-existing weapon)... however you could buy a musket and add your materia to power it. Obviously the materia is entirely used up and lost forever...
This could be expanded to allow the player to add elemental effects to weapons by using materia, too...

Once again thoughts guys... Might be worth letting you know I've spent a lot of time planning this but find myself unable to implement it.

lilbrudder917

1. Put the Materia System under the Sideview Battle System.
2. Comment line 65 of Enemy HP Bars :
@result_window.visible = true

3. Comment line 2,528 of the Materia System :
@result_window = Window_BattleResult.new(exp, gold, treasures, ap)

4. Comment/Delete this in the Materia System:

class Window_BattleResult < Window_Base
  #------------------------------------------------------------------------------
  def initialize(exp, gold, treasures, ap=0)
    @ap = ap
    @exp = exp
    @gold = gold
    @treasures = treasures
    super(140, 0, 360, @treasures.size * 32 + 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    self.y = 160 - height / 2
    self.back_opacity = 160
    self.visible = false
    refresh
  end
  #------------------------------------------------------------------------------
  def refresh
    self.contents.clear
    x = 4
    self.contents.font.color = normal_color
    cx = contents.text_size(@exp.to_s).width
    self.contents.draw_text(x, 0, cx, 32, @exp.to_s)
    x += cx + 4
    self.contents.font.color = system_color
    cx = contents.text_size("EXP").width
    self.contents.draw_text(x, 0, 64, 32, "EXP")
    x += cx + 16
    self.contents.font.color = normal_color
    cx = contents.text_size(@gold.to_s).width
    self.contents.draw_text(x, 0, cx, 32, @gold.to_s)
    x += cx + 4
    self.contents.font.color = system_color
    self.contents.draw_text(x, 0, 128, 32, $data_system.words.gold)
    x += cx + 16
    self.contents.font.color = normal_color
    cx = contents.text_size(@ap.to_s).width
    self.contents.draw_text(x, 0, cx, 32, @ap.to_s)
    x += cx + 4
    self.contents.font.color = system_color
    cx = contents.text_size(Materia_Config::AP_Name).width
    self.contents.draw_text(x, 0, 64, 32, Materia_Config::AP_Name)
    y = 32
    for item in @treasures
      draw_item_name(item, 4, y)
      y += 32
    end
  end
end


and it'll work just fine.

Squig

March 06, 2010, 01:02:33 pm #6 Last Edit: March 06, 2010, 01:08:56 pm by Squig
Cheers guys have implemented the suggested Materia system and the new CBS, unfortunately when using the generic guard in the first combat scene (i.e an unlooseable battle as a tutorial) the game crashed with this error "Script 'CBS' line 43: NoMethodError occurred. undefined method 'width' for nil:NilClass"...
What have I done wrong?

def draw_face(actor,x,y)
   face = RPG::Cache.picture(actor.name + "_face") rescue face
   fw = face.width
   fh = face.height
   src_rect = Rect.new(0, 0, fw, fh)
   self.contents.blt(x , y - fh, face, src_rect)  

this is the section of code that appears to have the problem... Is this due to no-one having a face and is there anything I can do until I get round to drawing faces? Tried adding faces but no joy

G_G

replace this line
face = RPG::Cache.picture(actor.name + "_face") rescue face

With this
begin
face = RPG::Cache.picture(actor.name + "_face")
rescue
return
end

Squig

excellent! now just have to sort out the battler graphics  :haha:
Thanks very much guys, I am, (for now  :naughty:) very pleased with the result!

Fantasist

QuoteAlso, the Materia script comes with SDK. Any line that has the word SDK in it, remove the entire line. It's not required and the SDK blows.

OK, the scripters might know this already, but be careful when you make this assumption! There are some scripts which actually use the SDK and not just tag themselves to it, so simply removing those lines at the top and bottom might not work. Just a word of caution.

About the alchemy system, I suggest you take a look at Blizzard's Creation System. Wait, did you even know there was an awesome uber leet automated Script Database in CP? It's great, check it out :)

@Script supporters: I think we should put links to the Script Database in our sigs.

@Blizz: Is it possible to put up the Script Database button in the forums as in the homepage? It would sure be great.
Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)


The best of freeware reviews: Gizmo's Freeware Reviews




lilbrudder917

Quote from: Mad Scientist Fantasist on March 07, 2010, 02:26:14 am
QuoteAlso, the Materia script comes with SDK. Any line that has the word SDK in it, remove the entire line. It's not required and the SDK blows.

OK, the scripters might know this already, but be careful when you make this assumption! There are some scripts which actually use the SDK and not just tag themselves to it, so simply removing those lines at the top and bottom might not work. Just a word of caution.


Oh, I know that. I actually try things before I post. I tested it out and removed the SDK. It worked fine.

Quote from: Mad Scientist Fantasist on March 07, 2010, 02:26:14 am
About the alchemy system, I suggest you take a look at Blizzard's Creation System.


I don't think that's what Squig was looking for. I think they wanted something that actually used items the player has to get a weapon/armor/item that already exists in the database.
Though I may be wrong.