cleverness 发表于 2011-1-5 21:18

新年献礼,让1代2代人物同台表演

本帖最后由 cleverness 于 2011-1-6 19:30 编辑

看到很多人想要把人物设置成不止4个,然后附加要求就是一代人物和二代人物同场表演.现在为了满足你们的需求,我还是分享个插件吧,也是好久前我在国外论坛乱逛时发现的.
一代二代8人同台表演.(最多8人,超过8人也行,反正就那8个人物数据,只要你能区分双胞胎三胞胎什么的)

附件里插件2个:

一个是superversus,超级对抗,作用就是开场产生BOT随着数值变化而变化,不用手动加bot了.改配置l4d_survivor_limit,不建议超过8个,超过了就没意义了.

另一个就是8人各不同的插件了,可以把另外多出的4个人替换成1代的人物,配置文件默认是完整替换,就是语音对话也替换了,是原声.然后很有趣对话会变.只要你有心看字幕和听声音叫他们的名字,呵呵.如果你想只改模型,那就改cfg配置就行.其他配置是建图开场后什么时候替换,默认15秒,你把它改0就建完图就替换了,还有一个广告设置,设置0关闭就可以了.具体看cfg文件吧.(可惜人家老外不放源码,不然我修改一下去广告,改改小BUG就更加完美了)
总之这个插件挺和谐的,正好满足你们那和谐的需求.

注意:想使用首先得有插件控件,然后要有破解人数插件,l4dtoolz或者left4downtown,不然就4个人,不过也可以修改配置使这4个人也能替换,呵呵呵!选择从旧人物开始替换就OK了.

已知bug:开作弊换人物后会出现问题.人物模型会重复.有时候头像或者名字加载不正确.

总之就当娱乐一下吧!
(小秘密:轻音k-on不是有5个人吗?你超级对抗里人物选择5,然后替换设置成从新人物开始替换,那么第五个人物肯定是中野梓,就是原本的佐伊~~~这样轻音5个人就全部出场了~~~)

更新:去广告版是使用4楼提供的源码修改的,去除了提示广告,移除了广告代码,然后汉化了cfg配置和2个警告提示.原文西班牙语,也google将就笼统汉化了下,呵呵(这里小小吐槽一下,我复制粘贴的代码,排版大括号排了我好久...>_<)去广告汉化版本现在经过我测试在我机器上无法工作,所以就撤下了,大家用原版的吧,抱歉了!

plugin.7z

cleverness 发表于 2011-1-5 21:29

不和谐啊论坛....我的那个增强语境的"形容词"居然全被强制替换成"不和谐"了...不改了,原本是什么词..这样全反了啊意思....算了算了...

fzeipeng 发表于 2011-1-5 21:46

没有不可能,只有做不到.   历来如此.以前说,l4d2不可能有什么听歌的插件. 目前不一样做出来. 自然,那是通过游戏内原本音乐.    然后本人说,听歌插件只能做到引用游戏内的数据. 不能设置为外加的音乐,比如点歌台,连接到网上音乐.这之类的说法, 或许在某年某月, 突然惊险这个高等插件也不一定.

所以没有不可能,只有做不到.   本人也常常犯的错.    自己做不到,或者觉得没可能,就没可能.    不过本人比这个好点, 就是经过一些实验,或者实质上没可能的事情,就说没可能.   那也是本人的意见,不等同全部人的意见,也不等同事实.

或许在这里说, 这样的插件,只有老外能做到, 国内玩家还没这个能力, 说不定, 过几天,国内玩家又做出一个比那个更好的插件来.   

所以说,我们有的是不懈的毅力.    所以有时候,本人也用一些话语来引诱这些玩家出来帮大家解答问题.因为有些玩家,总是想把会的东西留住,不给其他人家.   等本人说, 不存在这个插件, 自然就会冒出玩家来解答这个插件.    此乃“人之心理”   总想威风一番,或者反驳人家一番.

分享+20金元.

wjy3952 发表于 2011-1-5 22:44

本帖最后由 wjy3952 于 2011-1-5 22:55 编辑

/* Plugin Version History
* 1.0 - Public release
* 1.1 - more configuration options
* 1.2 - delay fix
* 1.3 - advert disable fix
* 1.4 - more configuration options
*/

#pragma semicolon 1
#include <sourcemod>
#include <sdktools>

#define PLUGIN_VERSION "1.4"

#define MODEL_BILL "models/survivors/survivor_namvet.mdl"
#define MODEL_FRANCIS "models/survivors/survivor_biker.mdl"
#define MODEL_LOUIS "models/survivors/survivor_manager.mdl"
#define MODEL_ZOEY "models/survivors/survivor_teenangst.mdl"
#define MODEL_NICK "models/survivors/survivor_gambler.mdl"
#define MODEL_COACH "models/survivors/survivor_coach.mdl"
#define MODEL_ROCHELLE "models/survivors/survivor_producer.mdl"
#define MODEL_ELLIS "models/survivors/survivor_mechanic.mdl"

#define ADVERT "\x03Mod \x04[\x038 Survivors\x04]\x03\nCambiando tu personaje..."

new Handle:cvarPluginVersion;
new Handle:cvarPluginMode;
new Handle:cvarPluginModelMode;
new Handle:cvarPluginDelay;
new Handle:cvarAdvertDelay;
new Handle:cvarPluginSafel4d1;
new Handle:cvarPluginSafeScoring;
new Handle:cvarAdvertSafeScoringDelay;
new String:currentmap;
new check;

public Plugin:myinfo =
{
name = "L4D2 8 Survivors",
author = "kwski43 aka Jacklul",
description = "Allows to set 8 survivors without cloned models.",
version = PLUGIN_VERSION,
url = "https://forums.alliedmods.net/showthread.php?t=124737"
}

public OnPluginStart()
{
decl String:s_Game;

GetGameFolderName(s_Game, sizeof(s_Game));
if (!StrEqual(s_Game, "left4dead2"))
SetFailState("Eight Survivors supports Left 4 Dead 2 only!");

cvarPluginVersion = CreateConVar("l4d2_8survivors_version", PLUGIN_VERSION, "Eight Survivors Version", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY);
cvarPluginMode = CreateConVar("l4d2_8survivors_mode", "1", "Eight Survivors Mode: 0-disable plugin, 1-new survivors first, 2-old survivors first", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY, true, 0.0, true, 2.0);
cvarPluginModelMode = CreateConVar("l4d2_8survivors_modelmode", "1", "Model change mode. 1-whole character, 2-only model", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY, true, 1.0, true, 2.0);
cvarPluginDelay = CreateConVar("l4d2_8survivors_delay", "8", "Delay from round start when plugin start changing models.", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY, true, 0.0, true, 120.0);
cvarAdvertDelay = CreateConVar("l4d2_8survivors_adsdelay", "5.0", "Advertisements after round start delay? 0-disable",FCVAR_PLUGIN, true, 0.0, true, 60.0);
cvarPluginSafel4d1 = CreateConVar("l4d2_8survivors_safel4d1", "1", "Will not give l4d1's whole character survivors on maps where bugs occur. This only affects if l4d2_8survivors_modelmode is set to 1.", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY, true, 0.0, true, 1.0);
cvarPluginSafeScoring = CreateConVar("l4d2_8survivors_safescoring", "0", "When the survivors reaches the saferoom they will get the default models. This should fix scoring bugs", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY, true, 0.0, true, 1.0);
cvarAdvertSafeScoringDelay = CreateConVar("l4d2_8survivors_safescoringdelay", "180.0", "This is just a time how long the safescoring function will be blocked as it works on any saferoomdoors\nand the starting doors would switch to default models too! recommended: 120-300",FCVAR_PLUGIN, true, 60.0, true, 300.0);


AutoExecConfig(true, "l4d2_8survivors");

HookEvent("round_start", RoundStart, EventHookMode_Post);
HookEvent("player_use", RoundEnd, EventHookMode_Post);

SetConVarString(cvarPluginVersion, PLUGIN_VERSION);
}

public OnMapStart()
{
GetCurrentMap(currentmap, 64);
PrecacheModel(MODEL_BILL, true);
PrecacheModel(MODEL_FRANCIS, true);
PrecacheModel(MODEL_LOUIS, true);
PrecacheModel(MODEL_ZOEY, true);
PrecacheModel(MODEL_NICK, true);
PrecacheModel(MODEL_COACH, true);
PrecacheModel(MODEL_ROCHELLE, true);
PrecacheModel(MODEL_ELLIS, true);

}

public Action:Advert(Handle:timer)
{
PrintToChatAll(ADVERT);
}

public RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
if(GetConVarFloat(cvarAdvertDelay) > 0)
{
CreateTimer(GetConVarFloat(cvarAdvertDelay), Advert);
}
if(GetConVarInt(cvarPluginModelMode) == 1)
{
CreateTimer(GetConVarFloat(cvarPluginDelay), ChangeModelsMode1);
}
if(GetConVarInt(cvarPluginModelMode) == 2)
{
CreateTimer(GetConVarFloat(cvarPluginDelay), ChangeModelsMode2);
}
if(GetConVarInt(cvarPluginSafeScoring) == 1)
{
CreateTimer(GetConVarFloat(cvarAdvertSafeScoringDelay), CheckT);
}
}

public Action:CheckT(Handle:timer)
{
check=1;
}

public Action:ChangeModelsMode1(Handle:timer)
{
if(GetConVarInt(cvarPluginSafel4d1) && StrEqual(currentmap, "c6m1_riverbank") == true || StrEqual(currentmap, "c6m3_port") == true)
{
PrintToChatAll("\x04[\x038 Survivors\x04]\x01 lugin 8 supervivientes desactivado por problemas en esta fase\x04!");
}
else
{
new model=0;
for (new client = 1; client <= MaxClients; client++)
{
if (IsClientInGame(client) && GetClientTeam(client)==2)
{
if(GetConVarInt(cvarPluginMode)==1)
{
//code from http://forums.alliedmods.net/showthread.php?p=969651, now modified to cool'd it
switch(model)
{
case 0: // Nick
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 0, 1, true);
SetEntityModel(client, "models/survivors/survivor_gambler.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Nick\x04!");
}
case 1: // Rochelle
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 1, 1, true);
SetEntityModel(client, "models/survivors/survivor_producer.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Rochelle\x04!");
}
case 2: // Coach
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 2, 1, true);
SetEntityModel(client, "models/survivors/survivor_coach.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Coach\x04!");
}
case 3: // Ellis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 3, 1, true);
SetEntityModel(client, "models/survivors/survivor_mechanic.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Ellis\x04!");
}
case 4: // Zoey
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 5, 1, true);
SetEntityModel(client, "models/survivors/survivor_teenangst.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Zoey\x04!");
}
case 5: // Francis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 6, 1, true);
SetEntityModel(client, "models/survivors/survivor_biker.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Francis\x04!");
}
case 6: // Louis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 7, 1, true);
SetEntityModel(client, "models/survivors/survivor_manager.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Louis\x04!");
}
case 7: // Bill
{
SetEntityModel(client, "models/survivors/survivor_namvet.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Bill\x04!");
}


}
model=model+1;
}
else if(GetConVarInt(cvarPluginMode)==2)
{
//code from http://forums.alliedmods.net/showthread.php?p=969651, now modified to cool'd it
switch(model)
{
case 0: // Zoey
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 5, 1, true);
SetEntityModel(client, "models/survivors/survivor_teenangst.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Zoey\x04!");
}
case 1: // Francis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 6, 1, true);
SetEntityModel(client, "models/survivors/survivor_biker.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Francis\x04!");
}
case 2: // Louis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 7, 1, true);
SetEntityModel(client, "models/survivors/survivor_manager.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Louis\x04!");
}
case 3: // Bill
{
SetEntityModel(client, "models/survivors/survivor_namvet.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Bill\x04!");
}
case 4: // Nick
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 0, 1, true);
SetEntityModel(client, "models/survivors/survivor_gambler.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Nick\x04!");
}
case 5: // Rochelle
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 1, 1, true);
SetEntityModel(client, "models/survivors/survivor_producer.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Rochelle\x04!");
}
case 6: // Coach
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 2, 1, true);
SetEntityModel(client, "models/survivors/survivor_coach.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Coach\x04!");
}
case 7: // Ellis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 3, 1, true);
SetEntityModel(client, "models/survivors/survivor_mechanic.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Ellis\x04!");
}
}
model=model+1;
}
}
}
}
}

public Action:ChangeModelsMode2(Handle:timer)
{
new model=0;
for (new client = 1; client <= MaxClients; client++)
{
if (IsClientInGame(client) && GetClientTeam(client)==2)
{
if(GetConVarInt(cvarPluginMode)==1)
{
//code from http://forums.alliedmods.net/showthread.php?p=969651, now modified to cool'd it
switch(model)
{
case 0: // Nick
{
SetEntityModel(client, "models/survivors/survivor_gambler.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Nick\x04!");
}
case 1: // Rochelle
{
SetEntityModel(client, "models/survivors/survivor_producer.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03\n\\x05[ \x01Tu Skin es el de \x03Rochelle\x04!");
}
case 2: // Coach
{
SetEntityModel(client, "models/survivors/survivor_coach.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Coach\x04!");
}
case 3: // Ellis
{
SetEntityModel(client, "models/survivors/survivor_mechanic.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Ellis\x04!");
}
case 4: // Zoey
{
SetEntityModel(client, "models/survivors/survivor_teenangst.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Zoey\x04!");
}
case 5: // Francis
{
SetEntityModel(client, "models/survivors/survivor_biker.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Francis\x04!");
}
case 6: // Louis
{
SetEntityModel(client, "models/survivors/survivor_manager.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Louis\x04!");
}
case 7: // Bill
{
SetEntityModel(client, "models/survivors/survivor_namvet.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Bill\x04!");
}

}
model=model+1;
}
else if(GetConVarInt(cvarPluginMode)==2)
{
//code from http://forums.alliedmods.net/showthread.php?p=969651, now modified to cool'd it
switch(model)
{
case 0: // Zoey
{
SetEntityModel(client, "models/survivors/survivor_teenangst.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Zoey\x04!");
}
case 1: // Francis
{
SetEntityModel(client, "models/survivors/survivor_biker.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Francis\x04!");
}
case 2: // Louis
{
SetEntityModel(client, "models/survivors/survivor_manager.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Louis\x04!");
}
case 3: // Bill
{
SetEntityModel(client, "models/survivors/survivor_namvet.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Tu Skin es el de \x03Bill\x04!");
}
case 4: // Nick
{
SetEntityModel(client, "models/survivors/survivor_gambler.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Nick\x04!");
}
case 5: // Rochelle
{
SetEntityModel(client, "models/survivors/survivor_producer.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Rochelle\x04!");
}
case 6: // Coach
{
SetEntityModel(client, "models/survivors/survivor_coach.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Coach\x04!");
}
case 7: // Ellis
{
SetEntityModel(client, "models/survivors/survivor_mechanic.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Ellis\x04!");
}
}
model=model+1;
}
}
}
}

public Action:RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
if(check==1)
{
new Entity = GetEventInt(event, "targetid");
if(IsValidEntity(Entity))
{
new String:entname;
if(GetEdictClassname(Entity, entname, sizeof(entname)))
{
/* Saferoom door */
if(StrEqual(entname, "prop_door_rotating_checkpoint"))
{
if(GetConVarInt(cvarPluginSafeScoring) == 1)
{
PrintToChatAll("\x04[\x038 Survivors\x04]\x01 Reseteando personajes debido a problemas de Score\x04!");
new model=0;
for (new client = 1; client <= MaxClients; client++)
{
if (IsClientInGame(client) && GetClientTeam(client)==2)
{
if(GetConVarInt(cvarPluginModelMode) == 1)
{
if(model >= 4)
{
model=0;
}
switch(model)
{
case 0: // Nick
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 0, 1, true);
SetEntityModel(client, "models/survivors/survivor_gambler.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Nick\x04!");
}
case 1: // Rochelle
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 1, 1, true);
SetEntityModel(client, "models/survivors/survivor_producer.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Rochelle\x04!");
}
case 2: // Coach
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 2, 1, true);
SetEntityModel(client, "models/survivors/survivor_coach.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Coach\x04!");
}
case 3: // Ellis
{
SetEntData(client, FindSendPropInfo("CTerrorPlayer", "m_survivorCharacter"), 3, 1, true);
SetEntityModel(client, "models/survivors/survivor_mechanic.mdl");
PrintToChat(client, "\x04[\x038 Survivors\x04]\x03 \x01Estas jugando como \x03Ellis\x04!");
}
}
model=model+1;
}
}
}
}
}
}
}
check=0;
}
}

wjy3952 发表于 2011-1-5 22:45

这是在我这里找到的代码,分享给大家了!

wjy3952 发表于 2011-1-5 22:49

当然这些代码也是在网上找到的。之前一直没用,看作者这么一说我也得加上去用用。
另外我传不了附件,所以直接发代码了。不需要的玩家直接下楼主的插件集合就行哈!

fzeipeng 发表于 2011-1-5 22:52

需要的玩家,肯定会知道怎么用的, 不会用的话,就算上传附件也没用了.

就这样吧,本人出去了.

cleverness 发表于 2011-1-6 01:28

回版主大人,帖子已经重新编辑了,删掉了不和谐的内容,呵呵~~~感谢4楼提供的源码,我改下去广告,等会发上来~

chenjie500 发表于 2011-1-6 02:08

楼主,没用啊,我刚试了,其他7个人是真正的人,声音什么都是完美的,但是就是没有比尔,比尔只是一个模型而已。
诶!反正到今为止没找到一个能选上真正比尔的插件!

cleverness 发表于 2011-1-6 02:52

回复 10# chenjie500

源代码里bill的跟其他人比就少了一段代码,可能把这个代码修复应该行了.但是也有可能游戏本身就没这个代码,所以原作者可能没加,或者故意的.....(因为最后bill牺牲了嘛~~~~呵呵)

总之BUG修复这个不是一时半会的,原版游戏bug,V设也不怎么修复....

fzeipeng 发表于 2011-1-6 04:23

其他地图如果无法使用比尔的话,就或许有点问题.如果是DLC1不能使用比尔的话,是正常.   要是能使用,就是虚假成分.   

如果其他地图有问题再说, 大家也去测试下.

chenjie500 发表于 2011-1-6 05:20

我测试过了,郊区,没用,比尔只是一个模型,没实体

cleverness 发表于 2011-1-6 12:38

本帖最后由 cleverness 于 2011-1-14 12:11 编辑

总之就当娱乐用好了这个插件,帖子也说明了纯属娱乐的,何必那么计较呢?游戏不支持bill也没办法啊.
大半夜分享个插件,然后看到有源码了,给你们汉化修改去广告,搞到凌晨3点多才睡,早知道不发了........累死.....

fzeipeng 发表于 2011-1-6 16:41

无需生气,也不要觉得失望.觉得好的玩家,多的是.   

自然,对于无法出现的东西,自然是无法出现,这是游戏的设置,插件也是引用游戏的数据, 不能超越数据去设置, 要超越数据去设置,那只能变成自娱自乐, 因为人家没有这个数据.   

换句话来说,让DLC1出现比尔,可能吗? 可以, 做到的,最多为自己看到,别人看不到.因为已经超越数据去设置, 为【外置】

发插件,发视频的玩家,都是一样的心理, 想要自己的东西,受人家夸奖.    自然,很多都是无私奉献.

本人个人觉得这个插件好,很不错, 楼主辛苦了.    或许人家觉得,被版主夸一夸,什么都值得了.本人只是说实话, 好就好.    不要理会其他玩家说什么.   因为无论什么时候,好坏都会有,就以前本人的一句举例, 就是让大家投票,比如: 白痴的投票,    就算是这样的投票,也有人选: 是,我是白痴.   所以永远没有100%.   

有时候大家的感谢,都收到心里面.心照则已.

cleverness 发表于 2011-1-6 19:26

本帖最后由 cleverness 于 2011-1-14 12:12 编辑

没生气,误会了你们.
对了,我自己修改的这个版本在我机器上测试了无法工作,所以还是撤下吧,可能要工作的话广告还得留着...
原本改好之后编译了下没有错误,以为正常了,抱歉,大家还是下载原本的好了,广告就那么几句反正.

fzeipeng 发表于 2011-1-6 19:30

随便吧.由您决定.广告的话, 只要是原始的,就留着,或者让玩家自己修改.

Casser 发表于 2011-1-6 20:45

顶了,大哥

chenjie500 发表于 2011-1-7 01:34

啊呀,楼主,你别生气啊,我不是那个意思,你发东西当然好了,纯顶你
我只是觉得选不了比尔感到可惜,不是你想的那个意思,呵呵!

fzeipeng 发表于 2011-1-7 01:37

心照则可

fzeipeng 发表于 2011-1-5 22:47

只有修改插件或者是插件作者才看得懂.其他玩家可能不知道是什么东西,如果不说的话.
页: [1]
查看完整版本: 新年献礼,让1代2代人物同台表演