3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

楼主: dybhkc
打印 上一主题 下一主题

[攻略] 【修改教程】萌新的小修改教程

  [复制链接]

0

主题

483

帖子

565

积分

高级玩家

Rank: 4

贡献度
5
金元
5454
积分
565
精华
0
注册时间
2008-8-5
151#
发表于 2022-3-1 19:18 | 只看该作者
本帖最后由 hongyu7998 于 2022-3-2 10:06 编辑

我自己搞错了,抱歉,又没找到删回复的地方
回复 支持 反对

使用道具 举报

0

主题

66

帖子

67

积分

初级玩家

Rank: 2

贡献度
0
金元
668
积分
67
精华
0
注册时间
2018-3-29
152#
发表于 2022-3-3 13:46 | 只看该作者
dybhkc 发表于 2022-2-8 19:33
就是characterScript类的GetWorkSpeed()方法
if (this.krank > 0)
    {

更新后这个用不了啊 大佬
回复 支持 反对

使用道具 举报

0

主题

66

帖子

67

积分

初级玩家

Rank: 2

贡献度
0
金元
668
积分
67
精华
0
注册时间
2018-3-29
153#
发表于 2022-3-3 13:47 | 只看该作者
dybhkc 发表于 2022-2-8 22:47
呃。。这个我没改过
不过要改游戏库存的话可以这样:
在gamescript:

这个也用不了
回复 支持 反对

使用道具 举报

0

主题

66

帖子

67

积分

初级玩家

Rank: 2

贡献度
0
金元
668
积分
67
精华
0
注册时间
2018-3-29
154#
发表于 2022-3-3 13:58 | 只看该作者
dybhkc 发表于 2022-2-3 17:10
合适的子类型组合青色显示:
menu_devgame_genres:
        setdata():

这也不行啦
回复 支持 反对

使用道具 举报

0

主题

66

帖子

67

积分

初级玩家

Rank: 2

贡献度
0
金元
668
积分
67
精华
0
注册时间
2018-3-29
155#
发表于 2022-3-3 14:01 | 只看该作者
dybhkc 发表于 2022-2-4 13:56
4游戏性,画面这四项自动选择:
还是上面那里,在this.UpdateDesignSettings();上面加上:
genres componen ...

这个也不行啦
回复 支持 反对

使用道具 举报

0

主题

66

帖子

67

积分

初级玩家

Rank: 2

贡献度
0
金元
668
积分
67
精华
0
注册时间
2018-3-29
156#
发表于 2022-3-3 14:27 | 只看该作者
主题和工作速度都不管用了
回复 支持 反对

使用道具 举报

23

主题

480

帖子

9449

积分

匠心精神

Rank: 12Rank: 12Rank: 12

贡献度
1333
金元
41065
积分
9449
精华
1
注册时间
2017-5-22

原创MOD高级话题讨论高手原创MOD达人匠心精神梦幻意境

QQ
157#
发表于 2022-3-3 18:33 | 只看该作者
主题还能用
工资失效了
培训室上限也失效了
回复 支持 反对

使用道具 举报

0

主题

243

帖子

299

积分

高级玩家

Rank: 4

贡献度
0
金元
2993
积分
299
精华
0
注册时间
2017-7-21
158#
发表于 2022-3-5 09:33 | 只看该作者
求大佬更新
回复 支持 反对

使用道具 举报

9

主题

411

帖子

501

积分

高级玩家

Rank: 4

贡献度
5
金元
4814
积分
501
精华
0
注册时间
2016-2-17
159#
发表于 2022-3-6 13:32 | 只看该作者
能改掌机硬件的出现时间吗,掌机的光盘屏幕那些总是比主机的慢,技术等级差太多了
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
160#
 楼主| 发表于 2022-3-6 17:27 | 只看该作者
最近没啥时间,没怎么看,好像更新了?有的不能用了吗?
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
161#
 楼主| 发表于 2022-3-6 17:33 | 只看该作者
新仔2015 发表于 2022-3-6 13:32
能改掌机硬件的出现时间吗,掌机的光盘屏幕那些总是比主机的慢,技术等级差太多了 ...

这个要改文件,游戏目录\Mad Games Tycoon 2_Data\Extern\Text\DATA\Hardware.txt
比如:
[ID]0
[TYP]0
[NAME EN]1 Mhz CPU
[NAME GE]1 Mhz CPU
[NAME TU]1 Mhz İşlemci[NAME ES]CPU de 1 Mhz[NAME PB]CPU de 1 Mhz[NAME JA]1 Mhz CPU[NAME CH]1 Mhz 处理器[NAME CT]1 Mhz 處理器[NAME IT]CPU 1 Mhz[NAME FR]CPU 1 Mhz[NAME PL]Procesor 1 Mhz[DATE]JAN 1976[RES POINTS]0[PRICE]0[DEV COSTS]400000
date是时间 格式就 缩写空格年份price价格,cost花费[TECHLEVEL]1注意:别乱动格式比如换行什么的,好像就是用换行分隔数据的
要新档才有用,老档的话这些数据都在存档里,当然改存档也是可以的,我改过,不过比较麻烦

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

9

主题

411

帖子

501

积分

高级玩家

Rank: 4

贡献度
5
金元
4814
积分
501
精华
0
注册时间
2016-2-17
162#
发表于 2022-3-6 17:40 | 只看该作者
dybhkc 发表于 2022-3-6 17:33
这个要改文件,游戏目录\Mad Games Tycoon 2_Data\Extern\Text\DATA\Hardware.txt
比如:
0

感谢大佬
回复 支持 1 反对 0

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
163#
 楼主| 发表于 2022-3-6 17:41 | 只看该作者
yuxiayou 发表于 2022-3-3 14:27
主题和工作速度都不管用了

具体啥情况
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
164#
 楼主| 发表于 2022-3-6 17:42 | 只看该作者
无尽的遐想 发表于 2022-3-3 18:33
主题还能用
工资失效了
培训室上限也失效了

具体啥情况
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
165#
 楼主| 发表于 2022-3-6 17:42 | 只看该作者

更新啥,具体啥情况
回复 支持 反对

使用道具 举报

23

主题

480

帖子

9449

积分

匠心精神

Rank: 12Rank: 12Rank: 12

贡献度
1333
金元
41065
积分
9449
精华
1
注册时间
2017-5-22

原创MOD高级话题讨论高手原创MOD达人匠心精神梦幻意境

QQ
166#
发表于 2022-3-6 20:13 | 只看该作者

又试了一下 工资失效了 现在通过减少上面的数值可以基本达到效果 其他的都可以用
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
167#
 楼主| 发表于 2022-3-6 21:22 | 只看该作者
无尽的遐想 发表于 2022-3-6 20:13
又试了一下 工资失效了 现在通过减少上面的数值可以基本达到效果 其他的都可以用
...

刚刚拿3.2的测了一下,return 0的话实际工资为0,说明实际工资的修改是有效的
不过人才市场倒是显示有工资,要是说这个的话,可以去改charArbeitsmarkt.GetGehalt()这个方法
和员工那个一样的改法

回复 支持 反对

使用道具 举报

0

主题

256

帖子

360

积分

高级玩家

Rank: 4

贡献度
0
金元
3598
积分
360
精华
0
注册时间
2012-3-4
168#
发表于 2022-3-11 18:45 | 只看该作者
员工的特性改不了
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
169#
 楼主| 发表于 2022-3-11 20:14 | 只看该作者

刚用3.02版本的测了下,好像没问题,就是特性数量超过一行会导致“人才市场”里信息显示出问题,
实际上是没有问题的,而且3.02的创建员工的代码和1.17的一样,没变


要不你看看是不是哪里改错了

回复 支持 反对

使用道具 举报

9

主题

411

帖子

501

积分

高级玩家

Rank: 4

贡献度
5
金元
4814
积分
501
精华
0
注册时间
2016-2-17
170#
发表于 2022-3-12 01:00 | 只看该作者
大佬手残改了data/txt主机的类型,手柄类型那里加了和WII一样的功能然后游戏不能开发了,这个运动器材通过修改存档还能删掉吗?或者这个运动器材怎么加进去,是这个运动镜头?还是啥除了这个我其他功能都有了,或者dll能去掉必要的功能条件吗,笑死了

N1S.jpg (230.93 KB, 下载次数: 0)

N1S.jpg

2.jpg (203.81 KB, 下载次数: 0)

2.jpg

3.jpg (139.01 KB, 下载次数: 0)

3.jpg
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
171#
 楼主| 发表于 2022-3-12 10:41 | 只看该作者
新仔2015 发表于 2022-3-12 01:00
大佬手残改了data/txt主机的类型,手柄类型那里加了和WII一样的功能然后游戏不能开发了,这个运动器材通过 ...

你这情况大概有3种办法:
1.存档里去掉"运动器材"限制
2.存档里把"运动器材"研究时间提前
但这两种都要改存档,比较麻烦
因为存档是这样的:

所以选第三种:
3.去除开发时的限制:
去除游戏机必需功能限制:
menu_devgame.button_start():
把下面的删除
if (component2.needFeatures[0] != -1 && !this.g_GameGameplayFeatures[component2.needFeatures[0]])
                                                {
                                                        text = string.Concat(new string[]
                                                        {
                                                                text,
                                                                component2.GetName(),
                                                                ": ",
                                                                this.gF_.GetName(component2.needFeatures[0]),
                                                                "\n"
                                                        });
                                                }
                                                if (component2.needFeatures[1] != -1 && !this.g_GameGameplayFeatures[component2.needFeatures[1]])
                                                {
                                                        text = string.Concat(new string[]
                                                        {
                                                                text,
                                                                component2.GetName(),
                                                                ": ",
                                                                this.gF_.GetName(component2.needFeatures[1]),
                                                                "\n"
                                                        });
                                                }
                                                if (component2.needFeatures[2] != -1 && !this.g_GameGameplayFeatures[component2.needFeatures[2]])
                                                {
                                                        text = string.Concat(new string[]
                                                        {
                                                                text,
                                                                component2.GetName(),
                                                                ": ",
                                                                this.gF_.GetName(component2.needFeatures[2]),
                                                                "\n"
                                                        });
                                                }


另外从上面看似乎必需的游戏功能最多只能有三个,多了不会检查

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

9

主题

411

帖子

501

积分

高级玩家

Rank: 4

贡献度
5
金元
4814
积分
501
精华
0
注册时间
2016-2-17
172#
发表于 2022-3-12 12:01 | 只看该作者
dybhkc 发表于 2022-3-12 10:41
你这情况大概有3种办法:
1.存档里去掉"运动器材"限制
2.存档里把"运动器材"研究时间提前

开发主机前有多存了档,想通过档来改下是不是加上运动镜头就可以的,但是看了下存档太乱了,还是改代码吧。谢谢大佬
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
173#
 楼主| 发表于 2022-3-12 18:17 | 只看该作者
hongyu7998 发表于 2022-2-26 12:49
以及...我知道这听起来挺找折腾,但是有办法更改AI对使用玩家引擎/在玩家主机做游戏的倾向吗?感谢 ...

突然看见了一个类publisherscript,找到了ai做游戏的相关逻辑,楼下分析
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
174#
 楼主| 发表于 2022-3-12 18:33 | 只看该作者
分析的版本是3.02,也就是更了子公司的版本
publisherScript.CreateNewGame2(bool forceContractGame)这个是ai做游戏的
约46行gameScript gameScript = this.games_.CreateNewGame(false, true);游戏new出来了
接下来是各种设置,类型,主题啥的,关注点不在这,往下
约282行,this.FindPlatformsForGameNew(gameScript);
这个 是找平台的,
进入FindPlatformsForGameNew(gameScript)
GameObject[] array = GameObject.FindGameObjectsWithTag("Platform");
遍历所有平台(包括玩家的)
开头的两个if代码块是玩家子公司相关,
往下第三个if,就是ai选平台了(子公司和非子公司都能进入)
if (this.ownPlatform)//ai有自己的平台
        
{
            
for (int j = 0; j < array.Length; j++)//遍历所有平台
            
{
               
if (array[j])
               
{
                    
platformScript component2 = array[j.GetComponent<platformScript>();//拿到单个平台
//下面这个if里是对游戏的各种要求                 
                    if (component2 && ((gS_.handy && component2.typ == 3) || (gS_.arcade && component2.typ == 4) || (!gS_.handy && !gS_.arcade && component2.typ == 0) || (!gS_.handy && !gS_.arcade && component2.typ == 1) || (!gS_.handy && !gS_.arcade && component2.typ == 2)) && component2.isUnlocked && ((gS_.retro && component2.vomMarktGenommen) || (!gS_.retro && !component2.vomMarktGenommen)) && (gS_.gameTyp == 0 || (gS_.gameTyp == 1 && component2.internet) || (gS_.gameTyp == 2 && component2.internet)) && component2.npc)//component2.npc这个要求是npc的平台
                    
{
                        
num = component2.myID;
                        
bool flag = false;
                        
if (component2.manufacturer_GE.Contains(this.name_GE))
                        
{
                           
flag = true;
                        
}//上面的flag:验证是否是Ai自己的平台
                        
if (flag)//是Ai自己的平台
                        
{
                           
gS_.gamePlatform[num2 = component2.myID;//作为游戏的平台
                           
gS_.gamePlatformScript[num2 = component2;
                           
gS_.costs_entwicklung += (long)component2.dev_costs;
                           
if (gS_.exklusiv)
                           
{
                                
return;
                           
}
                           
num2++;//下一个
                           
if (num2 >= 4)//满四个
                           
{
                                
return;
                           
}
                        
}
                    
}
               
}
            
}
        
}
上面这段就是ai从所有平台里面找适合游戏的且是自己的平台

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
175#
 楼主| 发表于 2022-3-12 18:48 | 只看该作者
//没找完四个
if ((!this.exklusive && num2 <= 3) || num2 == 0)
        
{
            
this.platformList.Clear();//这个platformList大概是可选的平台列表
            
for (int k = 0; k < array.Length; k++)//遍历所有平台
            
{
               
if (array[k])
               
{
                    
platformScript component3 = array[k.GetComponent<platformScript>();//拿到单个平台
                    
if (component3 && component3.isUnlocked && gS_.gamePlatform[0 != component3.myID && gS_.gamePlatform[1 != component3.myID && gS_.gamePlatform[2 != component3.myID && gS_.gamePlatform[3 != component3.myID && ((gS_.retro && component3.vomMarktGenommen) || (!gS_.retro && !component3.vomMarktGenommen)))//不在四个平台里的(也就是上面没找着的),及其它要求
                    
{
                        
this.platformList.Add(new publisherScript.PlatformList(component3, component3.GetMarktanteil()));//加进去,后面这个是市场份额
                    
}
               
}
            
}
            
this.platformList = (from i in this.platformList
            
orderby i.marktanteil descending
            
select i).ToList<publisherScript.PlatformList>();//按市场份额降序
            
for (int l = 0; l < this.platformList.Count; l++)//遍历 列表
            
{
               
platformScript script_ = this.platformList[l.script_;
               
if (script_ && gS_.gamePlatform[0 != script_.myID && gS_.gamePlatform[1 != script_.myID && gS_.gamePlatform[2 != script_.myID && gS_.gamePlatform[3 != script_.myID && ((gS_.handy && script_.typ == 3) || (gS_.arcade && script_.typ == 4) || (!gS_.handy && !gS_.arcade && script_.typ == 0) || (!gS_.handy && !gS_.arcade && script_.typ == 1) || (!gS_.handy && !gS_.arcade && script_.typ == 2)) && script_.isUnlocked && ((gS_.retro && script_.vomMarktGenommen) || (!gS_.retro && !script_.vomMarktGenommen)) && (gS_.gameTyp == 0 || (gS_.gameTyp == 1 && script_.internet) || (gS_.gameTyp == 2 && script_.internet)) && (script_.npc || (script_.thridPartyGames && UnityEngine.Random.Range(0, script_.price) < UnityEngine.Random.Range(0, this.platforms_.GetDurchschnittsDevKitPreis()) && (UnityEngine.Random.Range(0f, 100f + script_.GetMarktanteil()) > 60f || script_.GetMarktanteil() > 30f))))
//这一段也是各种要求,主要看后面
script_.npc ||//如果不是npc就要满足后面括号
        (
            script_.thridPartyGames &&平台接受第三方游戏
            UnityEngine.Random.Range(0, script_.price) < UnityEngine.Random.Range(0, this.platforms_.GetDurchschnittsDevKitPreis())
                0到平台价格 中随机一个数  < 0到所有平台平均价格 中随机一个数
            &&
            (
                UnityEngine.Random.Range(0f, 100f + script_.GetMarktanteil()) > 60f //0到100 + 份额>60
                || script_.GetMarktanteil() > 30f // 或份额 > 30
            )
        )
接着


                {
                    
num = script_.myID;
                    
bool flag2 = false;
                    
if (this.ownPlatform && script_.manufacturer_GE.Contains(this.name_GE))
                    
{
                        
flag2 = true;
                    
}//ai自己的平台
                    
if (UnityEngine.Random.Range(0, 100) > 50 || script_.playerConsole || script_.multiplaySlot != -1 || flag2)// 1/2概率 或玩家平台 或ai平台  也就是就1/2概率
                    
{
                        
gS_.gamePlatform[num2 = script_.myID;//作为游戏的平台
                        
gS_.gamePlatformScript[num2 = script_;
                        
gS_.costs_entwicklung += (long)script_.dev_costs;
                        
if (script_.playerConsole || script_.multiplaySlot != -1)//玩家平台
                        
{
                           
script_.SellPlayerKonsoleToNPC(this);//卖出给ai
                        
}
                        
if (gS_.exklusiv)
                        
{
                           
return;
                        
}
                        
num2++;//下一个
                        
if (num2 >= 4)
                        
{
                           
return;
                        
}
                    
}
               
}
            
}
        
}

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
176#
 楼主| 发表于 2022-3-12 18:49 | 只看该作者
又要审核...
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
177#
 楼主| 发表于 2022-3-12 18:59 | 只看该作者
本帖最后由 dybhkc 于 2022-3-12 19:06 编辑

最后总结:非玩家子公司,首先从所有平台里面循环找适合游戏的且是自己的平台
再把剩下的里面的符合条件的组成一个列表,列表按市场份额降序
再循环从列表里面找符合条件的 如果是玩家的平台要额外符合条件:
1  [0,平台价格]  <  [0,所有平台平均价格]
2  [0,100+市场份额] > 60 或 市场份额 > 30
满足上面条件后,如果是玩家平台则直接成为该游戏的平台
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
178#
 楼主| 发表于 2022-3-12 19:02 | 只看该作者
本帖最后由 dybhkc 于 2022-3-12 19:07 编辑

所以说ai做游戏选择平台并没有什么明显倾向,
硬要说的话倾向自己的平台,市场份额高的平台,倾向npc平台
回复 支持 反对

使用道具 举报

5

主题

286

帖子

1万

积分

资深玩家

Rank: 9Rank: 9Rank: 9

贡献度
2023
金元
26037
积分
10706
精华
1
注册时间
2021-1-12
179#
 楼主| 发表于 2022-3-12 19:09 | 只看该作者
如果说要提高ai对玩家平台“倾向”的话,可以把
&& (script_.npc || (script_.thridPartyGames && UnityEngine.Random.Range(0, script_.price) < UnityEngine.Random.Range(0, this.platforms_.GetDurchschnittsDevKitPreis()) && (UnityEngine.Random.Range(0f, 100f + script_.GetMarktanteil()) > 60f || script_.GetMarktanteil() > 30f)))这个删了,这样玩家就降低到和npc同样的要求了
回复 支持 反对

使用道具 举报

23

主题

480

帖子

9449

积分

匠心精神

Rank: 12Rank: 12Rank: 12

贡献度
1333
金元
41065
积分
9449
精华
1
注册时间
2017-5-22

原创MOD高级话题讨论高手原创MOD达人匠心精神梦幻意境

QQ
180#
发表于 2022-3-30 14:41 | 只看该作者
大佬怎么改子公司的股价或者是能力
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2026-3-18 12:38 , Processed in 0.054893 second(s), 24 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表