chenjywz 发表于 2012-4-23 22:35

海岛大亨4资源上限修改方法

本帖最后由 chenjywz 于 2012-4-26 12:04 编辑

是论坛转帖的去除人口上限的帖子启发了我,经过对lua的反编译以及和Swixel的交流,最终发现在他的去除人口上限代码中的NoLimitsMod(0)的最后加入
g_Classes.LargeGoldMarker.Amount = 20000000,就可以在挑战中将单个金矿的数目修改为20,000,000,我相信足够了,而且经过测试,矿井的一次采集大概在200左右,这样不会导致卡车司机不足。同理可以加LargeIronMarker,LargeBauxiteMarker。
全部的代码如下,我这里的人口上限是5000,而且一次不会有那么多人移民进来。

local GameEntityCount = 200000
local MaxPopulation = 5000

-- Original mod code
function NoLimitsMod()
    -- Sets the entity count
    config.MaxGameObjectExCount = GameEntityCount
    config.MaxGameObjectCount = GameEntityCount

    -- Remove the road construction limitations
    road_construction.ReachedLimit =function(x)
      return false
    end

    -- Sets the population
    MigrationMaxCitizens = MaxPopulation

    ImmigrationRandomize = function(y)
      return MulDivRound(y, MaxPopulation - CitizenCount, 60)
    end


      g_Classes.LargeGoldMarker.Amount = 80000000
      g_Classes.LargeBauxiteMarker.Amount = 80000000
      g_Classes.SmallGoldMarker.Amount = 8000000
      g_Classes.LargeIronMarker.Amount = 20000000


end



-- Only fire once
local FiredOnce = false

-- UA Set Mode
OnMsg.UASetMode = function(actions,mode)

    -- Fire until fired once
    if not FiredOnce then
      -- If we boot, trip it ...
      if(mode == "Boot") then
            FiredOnce = true

            -- Run the thread to bypass it
            CreateRealTimeThread(function()

                -- Do mod loading code here.
                NoLimitsMod()

                -- Reconfigure/force the settings every map load.
                OnMsg.MapPermanentObjectsLoaded = function()
                  NoLimitsMod()
                end
            end)
      end
    end
end

-- Legacy load (what the original mod used)
OnMsg.ClassesPreprocess = function()
    NoLimitsMod()
end


argeoo 发表于 2012-4-24 09:06

本帖最后由 argeoo 于 2012-4-24 11:23 编辑

    感谢,这贴就是座金矿

   续:
    测试有效,好象最大数量限制在5999999,改再大也是这个数。

chenjywz 发表于 2012-4-24 12:01

貌似我改成800,000,000也有效。

fly0025 发表于 2012-4-24 12:09

貌似我用那帖的方法没有效果啊,难道是设置错了?求具体方法啊。

chenjywz 发表于 2012-4-24 12:10

你是Modern time吗?在游戏目录下建一个Game文件夹,把那个文件放到这个文件夹下面,记住文件后缀名是.lua

fly0025 发表于 2012-4-24 12:11

fly0025 发表于 2012-4-24 12:09 static/image/common/back.gif
貌似我用那帖的方法没有效果啊,难道是设置错了?求具体方法啊。

呃,文本开头少了个l,汗死。

2237361a 发表于 2012-4-24 13:56

哈哈哈,我就说嘛。高人多的很。人口补丁有了。资源补丁也有了。哈哈哈太幸福了。顶!!!!!!!!!!!!!

2237361a 发表于 2012-4-24 14:01

回楼主。我在去人口上限那个lua文件里面没有发现NoLimitsMod(0)这个语句。只有三个NoLimitsMod(),括号中间没有零,不知道你那句g_Classes.LargeGoldMarker.Amount = 20000000是加在哪里呢?还是再建立个lua文件?

2237361a 发表于 2012-4-24 14:09

还有如果要加入铁和铝土那么格式是不是g_Classes.LargeIronMarker.Amount = 20000000和g_Classes.LargeBauxiteMarker.Amount = 20000000呢?

a4b1300 发表于 2012-4-24 16:20

没有发现NoLimitsMod(0)这句话啊

2237361a 发表于 2012-4-24 16:28

麻烦楼主出来详细说下格式啊。。。

2237361a 发表于 2012-4-24 16:37

有谁试验成功了,出来分享下啊。

a4b1300 发表于 2012-4-24 16:48

感觉有点不明不白的

marswormqq 发表于 2012-4-24 17:03

能不能把道路口做成只能右转的啊?嘿嘿{:3_58:}

caobo840623 发表于 2012-4-24 17:08

嗯 最好是版主帮忙弄个置顶帖然后请高手们把游戏的详细修改方法都列出来这么好的游戏不深挖一下太可惜了!

a3449655 发表于 2012-4-24 17:14

完全不能明白呀!!!

chenjywz 发表于 2012-4-24 18:21

a3449655 发表于 2012-4-24 17:14完全不能明白呀!!!

我晚上回去贴出来吧,现在外面吃饭

a3449655 发表于 2012-4-24 18:52

chenjywz 发表于 2012-4-24 18:21 static/image/common/back.gif
我晚上回去贴出来吧,现在外面吃饭

好的亲爱的楼主我爱你!!

boteney 发表于 2012-4-24 19:38

顶个,等楼主

2237361a 发表于 2012-4-24 21:27

哈哈,哦也。

a4b1300 发表于 2012-4-25 02:29

按照上面的改了 果然很爽

328615289 发表于 2012-4-25 08:20

没反应啊   

sototo 发表于 2012-4-25 10:46

把改好的放出来吧!{:3_188:}

suenjerry 发表于 2012-4-25 11:21

我用了没效果啊,我是1.1汉化的高科技时代,难道是版本问题?

snbco 发表于 2012-4-25 14:03

很不错的说!~~

boteney 发表于 2012-4-25 17:58

用了无效啊,楼主

boteney 发表于 2012-4-25 18:00

在游戏主目录建一个Game文件夹,把这个lua文件放进去,直接进游戏就可以了么?

suenjerry 发表于 2012-4-25 18:02

boteney 发表于 2012-4-25 18:00 static/image/common/back.gif
在游戏主目录建一个Game文件夹,把这个lua文件放进去,直接进游戏就可以了么? ...

我也用了没效果,我是整合版的,打了1.1汉化补丁,难道是版本的问题?

boteney 发表于 2012-4-26 10:41

楼主在不?求解答

chenjywz 发表于 2012-4-26 11:15

是的,应该有效的。不知道你的问题出在哪里。我这边用着没问题,而且论坛上还有人也成功了,你最好检查一下。后缀名必须是.lua不是.lua.txt
页: [1] 2 3 4 5 6
查看完整版本: 海岛大亨4资源上限修改方法