Member
Join Date: Jul 2007
Location: Germany, Berlin
|
11-12-2008
, 16:13
Re: Nintendo Mod v3.1 - *Need Character Ideas*
|
#136
|
Suggestions of improved plugin-code snippets - developed by "Mephisto aka Snake", a registered member of our community (already installed on our communities' Nintendo Mod-Server, runnin' very well ) with kind permission to publicate these in his name:
1. Main-Plugin NintendoMod_Mysql.sma/NintendoMod_Vault.sma/NintendoMod_nVault.sma
1.1 avoidance of abuse of ingame client-command /resetskills:
find ... (line 126)
PHP Code:
new PlayerPowerUp[MAXCHARS][33];
add after this ... (line 127)
PHP Code:
new bool:AllowReset = true;
find ... (line 169)
add after this ... (line 170)
PHP Code:
register_logevent("round_start",2,"0=World triggered","1=Round_Start")
find ... (line 213)
PHP Code:
public round_start(id)
add before (line 212 in)
PHP Code:
public round_start(id) { AllowReset = true; // Allow only in first 12 sec of a round to reset skills set_task(12.0,"ToggleAllowReset") }
public ToggleAllowReset() { AllowReset = false; }
find ... (line 1141 et seq.)
PHP Code:
public ResetSkills(id) { if(!Nintendo_Active() || !Nintendo_IsValidPlayer(id)) return PLUGIN_HANDLED;
replace with ...
PHP Code:
public ResetSkills(id) { if (!AllowReset) { Nintendo_StatusHUD(id, "You can only reset skills at the beginning of a round", 1); return PLUGIN_HANDLED; } if(!Nintendo_Active() || !Nintendo_IsValidPlayer(id)) return PLUGIN_HANDLED;
1.2 slightly increased XP-rewards for kills and headshot-kills:
find ... (line 504 et seq.)
PHP Code:
{ if(headshot) AddXP(attacker, 15); else AddXP(attacker, 10); }
replace with ...
PHP Code:
{ if(headshot) AddXP(attacker, 18); else AddXP(attacker, 12); }
1.3 additional XP-rewards for individual events (usable for assassination-maps) including slight increase of XP:
find ... (line 267 et seq.)
PHP Code:
//Individual Events if(equal(logdata1, "triggered")) { //Get the username and id out parse_loguser(logdata0, name, 31); id = get_user_index(name);
//Hostage Events if(equal(logdata2, "Rescued_A_Hostage")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 10XP for rescuing a hostage"); AddXP(id, 10); } else if(equal(logdata2, "Killed_A_Hostage")) { client_print(id, print_chat, "[Nintendo Mod] You just lost 10XP for killing a hostage"); AddXP(id, -10); } //Bomb Events else if(equal(logdata2, "Planted_The_Bomb")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 10XP for planting the bomb"); AddXP(id, 10); } else if(equal(logdata2, "Defused_The_Bomb")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 15XP for defusing the bomb"); AddXP(id, 15); } }
replace with ...
PHP Code:
//Individual Events if(equal(logdata1, "triggered")) { //Get the username and id out parse_loguser(logdata0, name, 31); id = get_user_index(name);
//Hostage Events if(equal(logdata2, "Rescued_A_Hostage")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 15XP for rescuing a hostage"); AddXP(id, 15); } else if(equal(logdata2, "Killed_A_Hostage")) { client_print(id, print_chat, "[Nintendo Mod] You just lost 10XP for killing a hostage"); AddXP(id, -10); } //Bomb Events else if(equal(logdata2, "Planted_The_Bomb")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 20XP for planting the bomb"); AddXP(id, 20); } else if(equal(logdata2, "Defused_The_Bomb")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 20XP for defusing the bomb"); AddXP(id, 20); } // VIP Events else if(equal(logdata2, "VIP_Assassinated")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 20XP for assassinating the VIP"); AddXP(id, 20); } else if(equal(logdata2, "Escaped_As_VIP")) { client_print(id, print_chat, "[Nintendo Mod] You just earned 20XP for escaping as VIP"); AddXP(id, 20); } }
1.4 additional XP-rewards for team events (usable for assassination-maps) including slight increase of XP:
find ... (line 298 et seq.)
PHP Code:
//Team Events else if(equal(logdata3,"All_Hostages_Rescued")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_CT) { client_print(player, print_chat, "[Nintendo Mod] You just earned 15XP for rescuing all the hostages"); AddXP(player, 15); } } } else if(equal(logdata3,"Target_Bombed")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_T) { client_print(player, print_chat, "[Nintendo Mod] You just earned 15XP for rescuing all the hostages"); AddXP(player, 15); } } }
replace with ...
PHP Code:
//Team Events else if(equal(logdata3,"All_Hostages_Rescued")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_CT) { client_print(player, print_chat, "[Nintendo Mod] You just earned 20XP for rescuing all the hostages"); AddXP(player, 20); } } } else if(equal(logdata3,"Hostages_Not_Rescued")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_T) { client_print(player, print_chat, "[Nintendo Mod] You just earned 20XP for preventing the rescue of the hostages"); AddXP(player, 20); } } } else if(equal(logdata3,"Target_Bombed")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_T) { client_print(player, print_chat, "[Nintendo Mod] You just earned 20XP for bombing the target"); AddXP(player, 20); } } } else if(equal(logdata3,"Target_Saved")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_CT) { client_print(player, print_chat, "[Nintendo Mod] You just earned 20XP for saving the target"); AddXP(player, 20); } } } else if(equal(logdata3,"VIP_Escaped")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_CT) { client_print(player, print_chat, "[Nintendo Mod] You just earned 20XP for the VIP could escape"); AddXP(player, 20); } } } else if(equal(logdata3,"VIP_Not_Escaped")) { new players[32], num, player; get_players(players, num); for(new i = 0; i <= num; i++) { player = players[i]; if(Nintendo_IsValidPlayer(player) && cs_get_user_team(player) == CS_TEAM_T) { client_print(player, print_chat, "[Nintendo Mod] You just earned 20XP for preventing the escape of the VIP"); AddXP(player, 20); } } }
2. Character-plugin of Donkey Kong NintendoMod_DonkeyKong.sma
2.1 Suggestion of more balanced game-play (because this char seems to bee a little bit "over-powered" due to damage of his banana-nades):
find ... (line 51)
PHP Code:
new const DONKEYKONG_BANANANADESDMG[3] = {50, 75, 100};
replace with ...
PHP Code:
new const DONKEYKONG_BANANANADESDMG[3] = {15, 40, 65};
3. Character-plugin of Koopa Troopa NintendoMod_KoopaTroopa.sma
3.1 Suggestion of more balanced game-play (under-powered char - improvement of Mindless Wandering):
find ... (line 45)
PHP Code:
new const Float:KOOPATROOPA_MINDLESSPROB[3] = {0.20, 0.30, 0.40};
replace with ...
PHP Code:
new const Float:KOOPATROOPA_MINDLESSPROB[3] = {0.25, 0.40, 0.65};
Remember, these suggestions aren't consequently necessary, but I promise all server-admins, who are running this mod, that their fans of this mod will go crazy, not least because of the broader available spectrum of maps, which are able to be played then ! ;)
Greets, also of "Mephisto aka Snake"
__________________
|
|