DBW=黑獅的部落格

遊戲設定方面 2

為這篇文章評分
從負責點圖的日本人Saur桑那裡得到注意。

Saur桑認為“沒有難度的對戰很容易厭煩”
所以希望“所有敵人的等級能按照主人公的等級上升”

第一,我不知道怎麼做(汗
雖然我也懷疑無論什麽等級在什麽地方對戰都有難度其實也會讓人覺得麻煩...而且
第二,真的是這樣的系統,我很懷疑1級開始能遇敵的地方就能讓玩家連續練級到99級為止...


Saur桑的另一個建議是,能和隊伍的同伴,或者能加入隊伍的同伴進行切磋。
這個嘛...我懷疑六翼畫的人設圖均可用作這個事件的怪物圖片了...

外加總結之前考慮的,我決定還是製作所有奴隸的玩家角色資料
讓他們成為能被自由編入隊伍
人數限制因為是4人,我決定考慮怎麼樣增加一條寫法,讓不能加入戰鬥的角色同樣參與隊伍,可是效果確是讓他的“主人”暫時性的獲得一個特殊技能...
綜合的用雖然可能很麻煩,不過值得挑戰?
分類
未分類

評論

  1. 好喝的茶 的頭像
    為了小洛做的遊戲,我曾經寫過黑獅所說的系統。
    敵人的能力會隨著角色群的平均等級倍化。

    例如玩家平均等級為1,敵人力量是4點。
    當平均等級為2時,敵人力量就會變8點。

    而且我可以使敵人擁有所謂「最低等級」,
    使得敵人最差也不會弱過某個下限。
    這可避免玩家故意只練一個角色,然後利用低等級角色拖低平均等級。

    雖然我是用RMXP寫的,不過RMVX版本也應該寫得出來。
    如果黑獅確定要做,我可以試著寫。
  2. 黑獅 的頭像
    主要是我怕太平均了也不好,因為好像比較難讓玩家感覺到角色的成長
    其實有時候有些RPG遊戲前後在同一個地方打怪的輕鬆度大有不同
    所以會有些讓玩家感慨自己玩了很久,可能越來越接近結局的那種感覺

    不過話說,你是怎麼寫的?
  3. 好喝的茶 的頭像
    一般而言,角色升級,除了提升能力,還可以學到新技能。
    而且劇情越往後,買到的裝備也會越強。
    所以我覺得高等玩家對上高等敵人,還是玩家優勝。



    我是用RMXP寫的,方法和語法可能跟RMVX有點不同。
    我有定義敵最低等級,就是在資料庫裏,在敵人的名字後加「,」,再加上數字。
    例如名字是「史萊姆,5」,就是指史萊姆的最低等級是5
    如果不寫,即是指敵人能力值固定,不受角色等級影響。

    在Game_Party定義平均等級,
    然後再在Game_Enemy定義等級,把敵人名字後面的數字拆出來。
    最後就是在平均等級和最低等級裏,取一個較高的數字,
    把敵人的能力全部乘上去就是了。

    聽起來很複雜,其實才二、三十行程式碼,很簡單的東西。
  4. 黑獅 的頭像
    不過對我來說好像很複雜的樣子

    對程序碼一概不精通?
  5. 好喝的茶 的頭像
    我昨天試著寫一下,今早寫好了。
    RMVX跟RMXP的寫法很不同啊……
    [code:1]
    class Game_Enemy < Game_Battler
    def initialize(index, enemy_id)
    super()
    @index = index
    @enemy_id = enemy_id
    enemy = $data_enemies[@enemy_id]
    #split name
    @original_name = enemy.name.split(/,/)[0]
    @letter = ''
    @plural = false
    @screen_x = 0
    @screen_y = 0
    @battler_name = enemy.battler_name
    @battler_hue = enemy.battler_hue
    #set multiplier
    mul = self.lv != -1 ? [$game_party.avg_lv, self.lv].max : 1
    #multiply status
    self.maxhp *= mul
    self.maxmp *= mul
    self.atk *= mul
    self.def *= mul
    self.spi *= mul
    self.agi *= mul
    @hp = maxhp
    @mp = maxmp
    end

    #level
    def lv
    tmp = $data_enemies[@enemy_id].name.split(/,/)[1]
    tmp != nil ? tmp.to_i : -1
    end
    end

    class Game_Party < Game_Unit
    #average level
    def avg_lv
    sum = 0
    for i in @actors
    actor = $game_actors[i]
    sum += actor.level
    end
    return sum / @actors.size
    end
    end
    [/code:1]

    按F11叫出腳本編輯器,把上面的程式碼插入Materials那邊,再儲存就可以了。
    用法在我上面的回覆有寫。
  6. 黑獅 的頭像
    看著看著覺得其實部份很明顯?
    所以我應該知道改哪裡,不過還是直接問一下好了
    以免出錯了不知道該怎麼說

    這個系統如果運用,我希望讓敵人的防禦力並不是跟著等級乘上去
    而是只增加固定的數值

    因為現實中一個人再強,也不可能到皮厚過頭,結果野獸的牙齒咬不進去的程度。
    所以敵人的攻擊力上漲可以保持對方對我方的打擊度不變
    而自己的強度所帶動的攻擊力卻能輕易的給應該比自己弱小的敵人帶來大打擊
    我是想這樣做

    所以,如果是只讓防禦力增加固定數值上去的話,上面的要怎麼改?





    外加,這個Script也需要寫在Game_party里?所以是Game_Party和Game_Enemy,綜共寫兩次?
  7. 好喝的茶 的頭像
    對啊,程式碼部份不難,難的是要研究內建寫法,找正確的地方修改。

    更改能力的程式碼就這幾行,更動一下就可以了︰
    [code:1]
    #multiply status
    self.maxhp += mul * 2
    self.maxmp += mul * 3
    self.atk += mul * 4
    self.def += mul * 5
    self.spi += mul * 6
    self.agi += mul * 7
    [/code:1]

    這樣就會增加固定的數值。每行最後的數字可以隨意改。
    如果想要每種敵人增加的固定數值都不同,就複雜一點點。看黑獅需不需要。

    另外也可以改成,敵人每升一級,能力乘以1.1倍,這樣能力提升會比較合理。
    [code:1]
    #set multiplier
    mul = self.lv != -1 ? [$game_party.avg_lv, self.lv].max : 0
    #multiply status
    self.maxhp *= 1.02 ** mul
    self.maxmp *= 1.02 ** mul
    self.atk *= 1.02 ** mul
    self.def *= 1.02 ** mul
    self.spi *= 1.02 ** mul
    self.agi *= 1.02 ** mul
    [/code:1]

    我使用這種寫法就是避免更動內建的腳本,所以貼在這裏即可,不需要再貼其他地方。
  8. 黑獅 的頭像
    [color=red]我是想指定全能力x1.2倍
    但是防禦力增加為x1.05倍[/color]
    雖然覺得數值有點奇怪(數值更改:8/12/2009)
  9. 好喝的茶 的頭像
    這想改就可以了。

    [code:1]
    #set multiplier
    mul = self.lv != -1 ? [$game_party.avg_lv, self.lv].max : 0
    #multiply status
    self.maxhp *= 1.2 ** mul
    self.maxmp *= 1.2 ** mul
    self.atk *= 1.2 ** mul
    self.def *= 1.05 ** mul
    self.spi *= 1.2 ** mul
    self.agi *= 1.2 ** mul
    [/code:1]

    由self.maxhp到self.agi這六行都是更改數值。可以隨你喜好改。
    + - * / 對應加減乘除,
    **是次方,例如2**3就是2的3次方。

    += -= *= /=是簡寫,a += 1即是a = a + 1,其他類推。
  10. 黑獅 的頭像
    [quote="好喝的茶"]+= -= *= /=是簡寫,a += 1即是a = a + 1,其他類推。[/quote]

    以上部份在我頭腦內被轉化成了亂碼。沒有適應和有相對的知識的話我還是無法理解。
    不過謝了。
    我晚點做一個測試版的小遊戲用來試試看。

    不過我不確定模擬戰鬥會不會有效果...雖然其實這樣很方便。
    嘛,把需要的升級和武器更換事件加進去就差不多了吧。
    如果有問題我會發新帖。

聯盟網站及推薦社區