June 08, 2023, 01:52:31 pm

The Gang Garrison 2 Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

NOTICE: Due to a rise in bot activity, new posters need to be approved before posting.

Join the community Discord server!

Pages: [1]

Author Topic: Mods and Plugins' category's OPs.  (Read 4797 times)

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Mods and Plugins' category's OPs.
« on: August 26, 2012, 12:29:43 pm »

MOD IDEA
Author: Danikah
Name: Delayed

Summary:
Changes Gang Garrison from a platform shooter into a turn based platform shooter.
"Record" yourself doing things then watch both yours and the other players' movements as all of your "recordings" are executed at once.

Main Features:
- The game waits till both teams have 6 players minimum.
- When that requirement is filled the game starts. No setup times and such.
- The timer shows 1:00 which continuously goes down. The player must do actions like moving and shooting in this timespan. During this timespan, players are unable to see each other (with a few exceptions). Also, there's a 5 second breather before this timespan starts, during which players cannot do actions. It's there so the player can grasp the situation he's in. This phase is called [Acting Phase].
- When that minute is elapsed, the server disallows the controls and puts back everyone to their original place.  Players are now allowed to see eachother. The server then takes the characters and does what exactly the players did in that minute. Basically, it replays the players actions, but this time, all of them at once and the players can see eachother. This phase is called [Showtime].
- After that, the cycle continues. Players are once again required to speculate and do actions without seeing the others in [Acting Phase], and then the server once again replays them their and the others' actions in the next [Showtime].
- No respawning. When a team has no players left alive, the other team wins.
- Spectators and dead players can spectate other players during their [Acting Phase] in real time, or can turn on free look to only see the [Showtime].

Class changes:

General:
Everyone sees the construction and destruction of the sentries realtime
(The sentry of course doesn't target or shoot them during [Acting Phase])

Classes are unable to see teammates and enemies unless stated otherwise

Runner:

Firebug:
You can see any enemy you have lit up before during your [Acting Phase] as long as they're alight

Rocketman:

Overweight:

Detonator:

Healer:
You can see your teammates real time in your [Acting Phase]
Über charges 45 seconds, no matter how injured the patient is
Healing them does not show up in their or others [Acting Phase]
Your actions do not change their [Acting Phase]
- If they died to afterburn or self damage in their [Acting Phase], you healing them won't change the outcome


Contructor
You get 100 nuts and bolt at the end of every [Acting Phase]
Other players can see your sentry

Infiltrator:
You can see the enemies' first 5 seconds of [Acting Phase], allowing you to plan a backstab
After a backstab, you must wait 10 seconds till you can initiate another

Rifleman:
You can see the nearest enemy's starting place
You can see any teammate's starting place between you and the nearest enemy

"Starting place" here means the place where the players will start their actions in their [Acting Phase]

Notes:
It's not fleshed out too much yet, I don't think I made myself too clear, but whatever, at least I got this written down. I can make it nicer sometime later.
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #1 on: August 26, 2012, 12:30:28 pm »

MOD IDEA
Author: bullets (obviously)
Name: Team Tag 2

Tag - Pretty obvious idea. Not very original rules, but whatever. It's intended as a fun novelty gamemode implemented in a vanilla/randomizer - compatible mod.

Players are all scouts.
People on the team that's "it" are armed with a tagging hand that functions like a Randomizer-style mêlée weapon. The player must swing the hand in mêlée range to tag an enemy. A swing takes one second to reload.
The other team is composed of civilians.

Matches are held in pairs, each one having a timelimit of 3:00 minutes. For the first half, RED is IT, vice versa for the second half. Points carry over from the first to the second half, but not between map changes. Map change occurs after the second half.

Tag games occur on top of the normal gamemodes, such as ctf/cp/koth. The attacking ("it") team cannot complete objectives. Instead, they must defend them and use them to lure civilians in to be tagged. If a civilian team completes the original objective of the map(eg. 3 flag caps) their victory takes priority over the tag victory.

Gamemodes:
Freeze Tag - Tagged players are frozen on the spot. A teammate must stand in their sprite for 1 second to thaw them. Frozen players can call out for teammates with the medic key (E), all teammates see the pointer HUD. Thawing progress is shown in a medic HUD in place of the uber bar.
2 points for each tagging, 1 point for each thaw. The attacking team wins by freezing all civilians - the team score is the time left on the clock. If some civilians are left at the end, the attackers lose.
After both rounds, if both teams won during their attack, the team with the most time left wins. If one team lost their attack, they lose the match. If both teams lost, or tied for time, stalemate.

Zombie Tag - Tagged players change color(They stay under the same team on the scoreboard, marked with the skull), and respawn in the other team's base to go after their former teammates.
2 points for each tag made by the original attackers, 1 point for each zombie tag. The attacking team wins by converting everyone to zombies - the team score is the time left on the clock. If some civilians are left at the end, the attackers lose.
After both rounds, if both teams won during their attack, the team with the most time left wins. If one team lost their attack, they lose the match. If both teams lost, or tied for time, stalemate.

Arena Tag - Tagged players must respawn next round, similar to arena in vanilla GG2.
2 points for each tag.
The attacking team wins by kiling everyone - the team score is the time left on the clock. If some civilians are left at the end, the attackers lose.
After both rounds, if both teams won during their attack, the team with the most time left wins. If one team lost their attack, they lose the match. If both teams lost, or tied for time, stalemate.

Humiliation:
The losing team is disarmed after the second round and reduced to heavy's firing speed. The winning team is armed and given "fly" capability - infinite jumping.
« Last Edit: August 26, 2012, 12:30:52 pm by Haxton Sale »
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #2 on: August 26, 2012, 12:31:59 pm »

MOD IDEA
Author: xX Mysteria Xx
Name: The Running Runners

This mod would basically start with runners on the BLU team, overweights and infilitrators on RED.

The runners would need to get to the BLU safe point to win, however, the overweights would be at the front trying to stop them from coming past their defences, and the infilitrators will be sneaking around, trying to ambush them, once the game ends, it just ends like normal, and sais who wins. To be a stalemate, the scout would have to get into the zone, and a overweight, or an infilitrators bullet to be in midair and hit him after he gets into the zone. The Runners cant use their weapon, untill they win, they can kill the people who tried to stop them. The Overweights and Infilitrators can use their weapons. There is more overweights than infilitrators, around 75% overweights, and 25% infilitrators. So if there was 12 players, 9 would be Overweights, and 3 would be infilitrators.

I dont mind any comments, like i will always say, its your opinion.

Thanks for reading :)
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #3 on: August 26, 2012, 12:32:52 pm »

MOD IDEA
Author: Mauritsio
Name: Smuggling Mod

Smuggling Mod: "Best Mod Idea" entry for the Haxxy Awards 2012

Main Idea:
In Smuggling, the  :x28: must make their way to a certain point in the map. However, the  :x11: try to prevent them from doing this.
Each Smuggling map consist of 3 stages. When a  :x28: makes it to the end point, they win the round and go to the next round along with any other victorious spies. If a  :x28: is killed by a  :x11: on the way to the end point, they are wiped out for the entire match.
If a  :x28: makes it to the end point in the final stage, the  :x28: win the match. If the  :x11: manage to kill all the  :x28: before they reach the end point, all  :x11: win.

Infiltrator Info
:x28: are unable to hurt the  :x11: in any way. However, they have one 'weapon' on them: their cloak. This cloak has 12 seconds of overall usage (if you use your cloak 4 secs for the first time, you can max. use it 8 secs next time). This cloak can be restored by special power-ups. The power-up fills 6 seconds of the cloak meter. Advancing to a new round also fully restores the cloak meter. Also, when a  :x28: makes it the final end point, they get to use their revolver to pwn the :x11:.

Runner Info
:x11: use their scattergun to kill the  :x28:. That's basiclly it. However, when a scout picks up the powerup i mentioned earlier, they get to 'see' the  :x28: on their screen for 3 secs, even when they are cloaked. And when  :x11: kill all  :x28:, they get to play around, and a new match begins.

More Stuff
Maps to be used are probaply maps like Dustbowl (they have 3 stages).
That up there was obvious, but the next thing is more interesting: Achievements! There are 6  :x28: achievements and 6  :x11: achievements, and when either gets 4, they get the milestone: This earns them a special in-game item. I don't have really alot of achievment ideas right now, but i might post some here in the future.

And Finally...
This mod idea was designed completely by me. Not a single other person ever heard of this (i mean before i posted this).
I wish all the other Haxxy entires good luck!

Le Fin!
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #4 on: August 26, 2012, 12:34:00 pm »

MOD IDEA
Author: [PHS] Humble Master
Name: Drakora Mod

Drakora Mod
This is my mod idea entry for the Haxxy Awards. The mod is based on a universe that I have created and worked on expanding for quite some time now. I started work on the Mod but there is no chance of me finishing it by the deadline for the Haxxys so I'm submiting it as a mod idea instead. Below is the basic premise of the mod then the character descriptions and short bios. I have tried to spoiler as much stuff as possible to prevent a wall of text though there is a lot of stuff here.

This mod will feature:

- 13 new, unique, classes
- beautiful hi def HUDs
- powerful abilities like teleportation, traps, growing plants and berserk mode
- stats like physical attack and defense
- cool particle effects
-NEW GAME MODE!
   And the new game mode is the Artifact game mode. Basically it is similar to a KoTH accept instead of controlling a point you must pick up and control an artifact. While holding the artifact special rules apply.
   -You cannot be healed accept by the effects of the artifact
   -Your health drains
   -You cannot move a certain distance away from the artifact's spawn point (to prevent running away from being a plausible strategy)
The artifact will also replace your attack with new ones and all artifacts offer a method to heal yourself to promote high risk-high reward game play. Below are the current artifact ideas.
The Necrok Tome
(click to show/hide)
The 3 Norns Blade
(click to show/hide)
The Everweapon of War
(click to show/hide)
And there will be more artifacts later!
   
Backstory 
Magic, while powerful, comes with a price. For you see time and space, existence, nonexistence, creation and destruction, collectively known as reality is like a tapestry weaving itself by its nature. Magic will take part of the tapestry out and put a new it in. This “discarded reality” occasionally forms its own meta-worlds, universes created out of what magic changed. If these meta-world become too big they can disrupt reality as we know it and bring about the cataclysm to end all cataclysms. Now in Drakora the final straw has landed on the camel’s back. With the release and recapture of Ragnarok the envoy of destruction, as well as the Shadow Clan releasing the powers of The Heart of Drakora on the world reality has broken and the meta-Drakora is building! The 13 heroes of Drakora; Lore the blade-master, Thatelor the paladin, Syris the ranger, Meralin the druidess, Ged the sorcerer, Fanrir the warrior, Brunos the brawler, Dathid the thief, Bastara the shadow master, Xander the Drakon, Brithalin the archmage, Eulshnack the berserker and Lahk-Mout the shaman have had their worst fears realized. Now, with reality failing the alternate versions of themselves have come forth to fight for their growing reality while the original 13  heroes bravely defend their own reality.  The fight will be long, brutal and few will come out unscathed, or even alive.


Characters
Lore
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)
   
Thatelor
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Ged   
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Fanrir
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Syris
   Game Abilities and Stat
(click to show/hide)
   Bio
(click to show/hide)

Meralin
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Bastara
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Brunos
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Dathid
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Eulshnack
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Lahk-Mout
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Brithalin
   Game ABilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Xander
   Game Abilities and Stats
(click to show/hide)
   Bio
(click to show/hide)

Well that about wraps it up! Please post your comments, compliments and criticism.
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #5 on: August 26, 2012, 12:35:36 pm »

MOD IDEA
Author: BassMakesPaste
Name: Grappling Hooks

For every class. Especially heavy.

Not that stupid "pull you from point a to point b" one. I'm talkin' straight up hard core massively bionic grappling hooks. Ones that arc in a curve that can be adjusted to the player's liking. Ones that preserve momentum as you soar effortlessly with minimal air control because air control is for wimps.

Like this one that I just happened to have sitting, gathering dust in the far reaches of my computer.


This isn't in an actual mod because it would require a complete overhaul of every bit of collision and/or movement code in the game. And it would require a million rebalances. And it's completely impractical outside of the realm of novelty.
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #6 on: August 26, 2012, 12:36:46 pm »

MOD IDEA
Author: Dr.Starky
Name: SPUM

Stupid Power-Up Mod!

It’s a Gang Garrison 2 mod about stupid random power-ups!

Every time you score a point, you have a chance obtaining a random power-up.
  • Your power-up will appear as a sprite attached to your character's hip. This sprite is visible to both teams.
  • You won't have a chance to get another power-up untill you use up the one you have.

Use your power up by pressing Q.
  • All power-ups can only be used used once.
  • There is no way to discard your power-up besides using.

The longer you hang on to your power-up, the higher chance it has of backfiring. Don't dilly-dally!
  • Power-ups start out with a 0% chance of backfiring. The chance of backfiring will increase by 15% for every 10 seconds you hold it, capping out at 90%.
  • If you hold the power-ups for a full minute and a half, it will be used automatically with a 100% chance backfiring.
  • Different items backfire in different ways, but using an item that backfires will always hurt or inconvenience you in some fashion. You'd usually be safer wasting a good item then using a malfunctioning one.

Thrown Items
All thrown items travel in an arc. They all backfire by not affecting the target and instead bouncing off the first thing they hit and becoming enemy projectiles; they travel backwards up the arc you threw them at double speed.

(click to show/hide)

Other Items

(click to show/hide)
*Name ripped off from somewhere.

--
The goal of this mod is to spice up your typical game with a little chaos.

I'd like to know if you think the idea is presented clearly and if it sounds like something you would play.
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #7 on: August 26, 2012, 12:37:43 pm »

PLUGIN
Author: Lorgan
Name: Caturday

This is what you get when you want to enter something to the haxxies when you're very lazy....

Description for the oldfags: When you win this plugin creates the same effects you got when you typed 'lol' in the vinmod console.
Discription for the newbies: Winning is awesome now!
and yes asked and got permission from vindicator

just extract the files (Caterday.gml and a Resources folder) and dump them in your plugins folder.

Version: any
Conflicts: none known

DOWNLOAD
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #8 on: August 26, 2012, 12:38:51 pm »

PLUGIN
Author: Gardicolo
Name: Map Voting!

This plugin allows your players to vote on their next map.

I was disappointed that if you wanted to host a party server with hundreds of maps, for instance, players which only like a few maps on the server would have to either wait through a slog of unfun maps or leave the server, lacking any form of recourse. I also disliked how if you wanted to add variety to your server you would have to sacrifice stability of play, where players wouldn't be able to get particularly good at any individual map while being forced to play every other map. I'm hoping this plugin helps reduce or solve both of the above issues.

How to host this Plugin on your server:

First, add the map, map_voting, to your server, this is where the voting will take place. Make sure the map is named "map_voting" in your maps folder, or the plugin won't work.



Next, add map_voting to the start of your map rotation. Add at least three other uniquely named maps to your rotation, and continue adding any other maps that you'd want to play. Stop once you're satisfied.

Then, simply load up your server, you're done.

How the map will play:

Once map_voting loads, players will be notified of the two maps they can vote on, and that they are also allowed to vote on an unnamed third random map. They exit the spawn area and head to the box representing the map they want to play. All map choices are equidistant, encouraging voting based on majority preference rather than distance. The area is grief proofed, with bullet walls preventing combat along with health boxes to reinforce the point, so that players can focus on the voting.

The game server handles the capturing, so that any players on one team can capture their own team's colored point and can capture together. As players stand in the area they want, votes accumulate towards that map, which are periodically displayed for the players on the server. Once one map has generated the necessary number of votes, players are taken to the map they voted for.

Once that map is complete, you will be taken back to map_voting, with a new set of random maps chosen, ready to vote again.

The plugin's fairly stable, however, it may act strangely with multi round maps and modes. It also may skip some nonessential initial message prompts during a server reload if you disconnect during a vote. If you run into any glitches, please post or message me.

Version: 2.4.3 and later but requires testing after each update because of the large amount of modifications in the code
Conflicts: Arena, and (to a lesser degree) Multi-round CP

Now updated so that players are immortal when voting.
Code: [Select]
//Tiscooler's map voting system
//Vanilla compatible

//Place map_voting as the first map in server, and two maps will be randomly selected from elsewhere in the ini
//To be voted on by players. If they don't like either map, a random option in the middle is availible.


global.randomMap1="";
global.randomMap2="";
global.randomMap3="";
global.timeTillPrompt=60;
global.prompted=0;

//if not on map_voting, roll if 0.
global.rolled=0;

//don't run the plugin if map_voting isn't in the map rotation. Added redundancy below.
if ds_list_find_index(global.map_rotation,"map_voting") != -1
{
//unless the map map_voting is on the server somewhere, don't run the rest of the plugin startup
if ds_list_find_index(global.map_rotation,"map_voting") != -1
{
//On the game startup, pick three random maps to potentially go to. We'll do this again later.

object_event_add(SplashController,ev_create,0,'
//You need at least four maps or we will not attempt to find maps.
if ds_list_size(global.map_rotation) >= 4
{
//Roll a random map from 0 to the number of maps.
//If the map chosen isnt map_voting, itll be a chosen map.
//If the map is at the max of the list size, its one number too high, go back to zero to reroll.
//Otherwise, test the next map on the list or loop to the list start

var i;
var j;
i = irandom(ds_list_size(global.map_rotation)-1);
j = string(ds_list_find_value(global.map_rotation,i));

if i < (0)
{i=0;}

do
{
if j!=("map_voting") && j!="0" {global.randomMap1 = j;}
else {
//if we miss, shoot again.
i = irandom(ds_list_size(global.map_rotation));
j = string(ds_list_find_value(global.map_rotation,i));
if i > (ds_list_size(global.map_rotation)-1)
{i=0;}
}
}
until (global.randomMap1!="")

//cycle 2, this is the random map to avoid the other two
i = irandom(ds_list_size(global.map_rotation)-1);
j = string(ds_list_find_value(global.map_rotation,i));

if i < (0)
{i=0;}

do
{
if j!=("map_voting") && j!=global.randomMap1 && j!="0" {global.randomMap2 = j;}
else {
//if we miss, shoot again.
i = irandom(ds_list_size(global.map_rotation));
j = string(ds_list_find_value(global.map_rotation,i));
if i > (ds_list_size(global.map_rotation)-1)
{i=0;}
}
}
until (global.randomMap2!="")

//cycle 3
i = irandom(ds_list_size(global.map_rotation)-1);
j = string(ds_list_find_value(global.map_rotation,i));

if i < (0)
{i=0;}

do
{
if j!=("map_voting") && j!=global.randomMap1 && j!=global.randomMap2 && j!="0"{global.randomMap3 = j;}
else {
//if we miss, shoot again.
i = irandom(ds_list_size(global.map_rotation));
j = string(ds_list_find_value(global.map_rotation,i));
if i > (ds_list_size(global.map_rotation)-1)
{i=0;}
}
}
until (global.randomMap3!="")
}
else
{
//You do not have four maps, do not run the plugin.
//if (global.isHost = true)
//{
//show_message("You need at least 3 maps besides map_voting in your rotation for the plugin to work");
//game_end();
//}
}
');
}

//change code of Control point so that if the map is map_voting, all points are unlocked, capturable
//and capturing a point causes a victory.

object_event_clear(ControlPoint,ev_step, 0)
object_event_add(ControlPoint, ev_step, 0, '

//if on map voting, change captime so people can vote.
if global.currentMap = "map_voting" && capTime !=1800
{capTime=1800
}


alpha += fade;
if(alpha >= 1) {
    fade = -0.05;
} else if(alpha <= 0) {
    fade = 0.05;
}

var arenaRoundEnd;
arenaRoundEnd = false;
if(mode == 2) {
    if(ArenaHUD.endCount!=0) arenaRoundEnd=true;
} else if (mode == 4) { 
    if (DKothHUD.cpUnlock>0)
        locked = true;

//bruteforce because the below code wont lock the two edge cases without causing errors in other modes
    else {
        if (cp == 1) { if (global.cp[2].team == TEAM_RED) locked = true else locked = false; }
        if (cp == 2) { if (global.cp[1].team == TEAM_BLUE) locked = true else locked = false; }
    }
} else if (mode != 3)
{
    // Locking is done externally in Arena mode and KotH

//If we are voting on maps, then all points are to be unlocked.
    if (global.currentMap != "map_voting")
{
if(team == TEAM_BLUE) {
        if(cp > 1) {
            if(global.cp[cp-1].team != TEAM_RED) locked = true;
            else locked = false;
        }
    } else if(team == TEAM_RED) {
        if(cp < global.totalControlPoints) {
            if(global.cp[cp+1].team != TEAM_BLUE) locked = true;
            else locked = false;
        }
    }
   
if(mode==1 && team == TEAM_RED) locked = true;
}

else if(global.currentMap = "map_voting")
{
locked = false;
}
}


//autolock if the round is over, regardless of game mode
if (arenaRoundEnd || global.mapchanging) locked = true;

if(locked) {
    capping = 0;
    exit;
}

var randomRedCapper, randomBlueCapper, redCappers, blueCappers, myselfOnPoint, soundx, soundy;
var oldRedPresence, oldBluePresence;

oldRedPresence = redPresence;
oldBluePresence = bluePresence;
redPresence = 0;
bluePresence = 0;
redCappers = 0;
blueCappers = 0;
myselfOnPoint = false;
cappers = 0;

if(not arenaRoundEnd) {
    // At the end of an arena round players on the CP are no longer counted
    with(Character) {
        if(cappingPoint==other.id) {
            if(player == global.myself) {
                myselfOnPoint = true;
            }
            if global.currentMap != "map_voting"
{
if(player.team == TEAM_RED) {
if(ubered) {
other.redPresence = max(1, other.redPresence);
} else {
other.redPresence = max(2, other.redPresence);
redCappers += capStrength;
}
randomRedCapper = id;
} else {
if(ubered) {
other.bluePresence = max(1, other.bluePresence);
} else {
other.bluePresence = max(2, other.bluePresence);
blueCappers += capStrength;
}
randomBlueCapper = id;
}
            }
else
{
//If we are playing map voting, you can cap your own teams point. Makes the mode work.
//Uber related info removed so you can capture with a constant uber status, preventing stabs.
if other.id = global.cp[1]
{

other.bluePresence = max(2, other.bluePresence);
blueCappers += capStrength;

randomBlueCapper = id;
}
if other.id = global.cp[2]
{


other.redPresence = max(2, other.redPresence);
redCappers += capStrength;

randomRedCapper = id;
}
if other.id = global.cp[3]
{

other.redPresence = max(2, other.redPresence);
redCappers += capStrength;

randomRedCapper = id;
}
}
        }
    }
}

// If the player stands on the point all the point sounds should be centered for him.
if(myselfOnPoint) {
    soundx = global.myself.object.x;
    soundy = global.myself.object.y;
} else {
    soundx = x;
    soundy = y;
}

if(redPresence>0 and bluePresence>0) {
    // Both teams have some players on the point...
    if(not (oldRedPresence>0 and oldBluePresence>0)) {
        // ...and the defense happened this step, with the cap meter more than half full
      if(bluePresence>0 and oldBluePresence==0 and team==TEAM_BLUE) {
            var isMe;
            isMe = randomBlueCapper.player == global.myself;
            recordEventInLog(2,TEAM_BLUE, randomBlueCapper.player.name, isMe);
            playsound(soundx, soundy, CPDefendedSnd);
        }
        if(redPresence>0 and oldRedPresence==0 and team==TEAM_RED) {
            var isMe;
            isMe = randomRedCapper.player == global.myself;
            recordEventInLog(2,TEAM_RED, randomRedCapper.player.name, isMe);
            playsound(soundx, soundy, CPDefendedSnd);
        }
    }
} else if(redPresence==0 and bluePresence==0) {
    // Nobody on the point, slowly revert the capture
    if(capping>0) capping=max(capping-1, 0);
} else {
    // Some team has players on an undefended point.
    var teamOnPoint, teamOnPointPresence;
    if(redPresence>0) {
        teamOnPoint = TEAM_RED;
        teamOnPointPresence = redPresence;
        teamOnPointOldPresence = oldRedPresence;
        teamOnPointCappers = redCappers;
    } else {
        teamOnPoint = TEAM_BLUE;
        teamOnPointPresence = bluePresence;
        teamOnPointOldPresence = oldBluePresence;
        teamOnPointCappers = blueCappers;
    }
   
    if(teamOnPointPresence==1) {
        // Only an ubercharged player on the point
        // He cant cap, but he will prevent the point from reverting if his team
        // has partially capped it already
        if(teamOnPoint != cappingTeam) {
            capping=max(capping-1, 0);
        }
    } else {
        // One team has cap-able players on an undefended point...


        if(cappingTeam != -1 and teamOnPoint != cappingTeam) {
            // ...but the other team has the point partially captured already, so
            // they have to revert first.
            capping=max(capping - (1+teamOnPointCappers*0.5), 0);
        }
else if(teamOnPoint != team) {
            // ...and the point is not partially capped by the enemy team, and we dont own it already.
            // So lets cap!
if(teamOnPointOldPresence<2 or cappingTeam!=teamOnPoint or (oldRedPresence>0 and oldBluePresence>0)) {
// Play the cap start sound if the team just entered the point,
// OR we just finished reverting the capture from the other team,
// OR the point was defended last step.
playsound(soundx, soundy, CPBeginCapSnd);
}
cappingTeam = teamOnPoint;
cappers = teamOnPointCappers;
if(cappers<=2) {
capping += cappers;
} else {
capping += cappers/2+1
}
        }
}
}

if(capping <= 0) {
    capping = 0;
    cappingTeam = -1;
} else if global.isHost {
    if floor(capping) == floor(capTime - capTime/4) || floor(capping) == floor(capTime/4) || floor(capping) == floor(capTime/10){
        GameServer.syncTimer = 1;
    } else if capping >= capTime {
        pointCapture(cp);
        if instance_exists(ControlPointHUD) {
            if ControlPointHUD.mode == 1 ControlPointHUD.timer+=9000;
        }
        GameServer.syncTimer = 1;
    }
}

//since CPs are not perfectly in sync,the client might be ahead of the server, so stall it
else if floor(capping) == floor(capTime - capTime/4)-10 || floor(capping) == floor(capTime/4)-10 || floor(capping) == floor(capTime/10)-10{
    capping -= 10;
}
');

object_event_add(ControlPointHUD, ev_step, ev_step_end, '
if(global.currentMap = "map_voting") && global.isHost = true
{
//No HP loss possible, stab issue solved. Yay.
with(Character)
{
if ubered=0 {ubered=1}
}

//if no one has won yet, send messages to players about current events.
if global.winners = -1 {global.timeTillPrompt-=1;}
if global.timeTillPrompt<=0
{
//tell the players about what is going on.
if global.prompted=0
{
global.prompted=1
global.timeTillPrompt=120
//chr 39 because exclamation points screw up the plugin when added.
ServerMessageString("Stand in map one" + chr(39) + "s box to vote for " + global.randomMap1,global.eventBuffer);
with NoticeO instance_destroy();
notice = instance_create(0, 0, NoticeO);
notice.notice = NOTICE_CUSTOM;
notice.message = "Stand in map one" + chr(39) + "s box to vote for " + global.randomMap1;
}
else if global.prompted=1
{
global.prompted=2
global.timeTillPrompt=120
ServerMessageString("Stand in map two" + chr(39) + "s box to vote for " + global.randomMap3,global.eventBuffer);
with NoticeO instance_destroy();
notice = instance_create(0, 0, NoticeO);
notice.notice = NOTICE_CUSTOM;
notice.message = "Stand in map two" + chr(39) + "s box to vote for " + global.randomMap3;
}
else if global.prompted=2
{
global.prompted=3
global.timeTillPrompt=400
ServerMessageString("Alternatively, jump into the center box to vote for another, random map.",global.eventBuffer);
with NoticeO instance_destroy();
notice = instance_create(0, 0, NoticeO);
notice.notice = NOTICE_CUSTOM;
notice.message = "Alternatively, jump into the center box to vote for another, random map.";
}
else if global.prompted>=3
{
global.timeTillPrompt=400
ServerMessageString("Votes for " + global.randomMap1 + ": " + string(global.cp[1].capping) + "/1800, " + global.randomMap3 + ": " + string(global.cp[3].capping) + "/1800, random: " + string(global.cp[2].capping) + "/1800",global.eventBuffer);
with NoticeO instance_destroy();
notice = instance_create(0, 0, NoticeO);
notice.notice = NOTICE_CUSTOM;
notice.message = "Votes for " + global.randomMap1 + ": " + string(global.cp[1].capping) + "/1800, " + global.randomMap3 + ": " + string(global.cp[3].capping) + "/1800, Random: " + string(global.cp[2].capping) + "/1800";
}
}
}
');

object_event_add(GameServer, ev_step, ev_step_end, '
//Now, we check to see if a point on map_voting has been capped. If one has been capped, end the match, set next map to be that map number.
if(global.currentMap = "map_voting") && global.isHost = true
{
if global.cp[1].team == TEAM_BLUE
{
global.winners = TEAM_BLUE;
//Reset prompt timer.
global.timeTillPrompt = 60;
global.prompted=0;
//have to set it when equal to one, otherwise next map will be overwritten.
if GameServer.impendingMapChange=1
{global.nextMap = global.randomMap1;}
}
if global.cp[2].team == TEAM_RED
{
global.winners = TEAM_RED;
global.timeTillPrompt = 60;
global.prompted=0;
if GameServer.impendingMapChange=1
{global.nextMap = global.randomMap2;}
//global.currentMapArea = ((ds_list_find_index(global.map_rotation,global.randomMap2))-1);
}
if global.cp[3].team == TEAM_RED
{
global.winners = TEAM_RED;
global.timeTillPrompt = 60;
global.prompted=0;
if GameServer.impendingMapChange=1
{global.nextMap = global.randomMap3;}
//global.currentMapArea = ((ds_list_find_index(global.map_rotation,global.randomMap3))-1);
}
if global.cp[2].team = -1 && ControlPointHUD.timer=0
{
global.winners = TEAM_SPECTATOR;
global.timeTillPrompt = 60;
global.prompted=0;
if GameServer.impendingMapChange=1
{global.nextMap = global.randomMap2;}
}

global.rolled=0
}
else
{
//if we are playing ADCP and the map is not over, stay. Otherwise, back to map_voting.
if global.currentMap != "map_voting" && GameServer.impendingMapChange=1
{
if(global.winners == TEAM_RED and global.currentMapArea < global.totalMapAreas)
{
global.nextMap = global.currentMap;
global.currentMapArea += 1;
}
else
{
global.nextMap = "map_voting";
}
}

//roll for new random maps.
if global.currentMap != "map_voting" && global.isHost = true && global.rolled = 0
{
global.rolled = 1;
{
global.randomMap1="";
global.randomMap2="";
global.randomMap3="";

//unless the map map_voting is on the server somewhere, do not run the rest of the plugin.
if ds_list_find_index(global.map_rotation,"map_voting") != -1
{
//On the game startup, pick three random maps to potentially go to. We will do this again later.

//You need at least four maps or we will not attempt to find maps.
if ds_list_size(global.map_rotation) >= 4
{
//Roll a random map from 0 to the number of maps.
//If the map chosen isnt map_voting, itll be a chosen map.
//If the map is at the max of the list size, its one number too high, go back to zero to reroll.
//Otherwise, test the next map on the list or loop to the list start

var i;
var j;
i = irandom(ds_list_size(global.map_rotation)-1);
j = string(ds_list_find_value(global.map_rotation,i));

if i < (0)
{i=0;}

do
{
if j!=("map_voting") && j!="0" {global.randomMap1 = j;}
else {
//if we miss, shoot again.
i = irandom(ds_list_size(global.map_rotation));
j = string(ds_list_find_value(global.map_rotation,i));
if i > (ds_list_size(global.map_rotation)-1)
{i=0;}
}
}
until (global.randomMap1!="")

//cycle 2, this is the random map to avoid the other two
i = irandom(ds_list_size(global.map_rotation)-1);
j = string(ds_list_find_value(global.map_rotation,i));

if i < (0)
{i=0;}

do
{
if j!=("map_voting") && j!=global.randomMap1 && j!="0" {global.randomMap2 = j;}
else {
//if we miss, shoot again.
i = irandom(ds_list_size(global.map_rotation));
j = string(ds_list_find_value(global.map_rotation,i));
if i > (ds_list_size(global.map_rotation)-1)
{i=0;}
}
}
until (global.randomMap2!="")

//cycle 3
i = irandom(ds_list_size(global.map_rotation)-1);
j = string(ds_list_find_value(global.map_rotation,i));

if i < (0)
{i=0;}

do
{
if j!=("map_voting") && j!=global.randomMap1 && j!=global.randomMap2 && j!="0"{global.randomMap3 = j;}
else {
//if we miss, shoot again.
i = irandom(ds_list_size(global.map_rotation));
j = string(ds_list_find_value(global.map_rotation,i));
if i > (ds_list_size(global.map_rotation)-1)
{i=0;}
}
}
until (global.randomMap3!="")
}
}
}
}
}
');
}
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #9 on: August 26, 2012, 12:41:52 pm »

MOD
Author: Derp(duck) [LORD]
Name: Ninja Zombies - GG2

NINJA ZOMBIES - GG2
Based on the Ninja Zombies gamemode from Halo 2, Ninja Zombies pits the red team survivors against zombies from the blue team, but these zombies move fast and jump high, do lots of damage, and can cloak but at the cost of speed, jump height and damage. The whole new map, zmb_fortassault, is an arena like map with lots of places to defend from, stick together to keep your team alive, because when a zombie kills them, they become a zombie, try to survive for five minutes at a time, if there are still any survivors left, they win, once everyone is a zombie, the zombies win.
This is not finished, but it will do.

Download: https://www.dropbox.com/s/sb2hgzgc3cpg0d3/Ninja%20Zombies%20-%20GG2.zip?m
Also, if anyone would we willing to draw some sprites for me, PM me, because my current zombie sprite sucks.
« Last Edit: August 26, 2012, 12:50:39 pm by Haxton Sale »
Logged
THIS POST GOT SIGNED BY

Haxton Sale

  • The only true
  • Moderator
  • *****
  • Karma: 18
  • Offline Offline
  • Posts: 3541
  • HAXTON SAAAAAAAAAAALE!
Re: Mods and Plugins' category's OPs.
« Reply #10 on: August 26, 2012, 12:42:44 pm »

MOD
Author: Dusty
Name: Momentum Garrison 2 - Surpass the Impossible and all that jazz.

You want air control?
Too bad.
You want de-limited velocity?
Good.
You want Zip-lines that defy physics?
Awesome.

https://dl.dropbox.com/u/9120262/MG2.exe

Work in progress mod, which changes some of the physics behind GG2.
This mod likely won't stop with the momentum, as if you recognize the sprites (probably not) you might also realize I have bigger plans for it.

Currently only the red scout has been remade to utilize the new animation layout, so other classes will have issues.

Also:
W to exit a zipline while in motion
W to get up out of a roll
A scout's double jump allows him to go the other direction.

You roll if you hit the ground moving fast enough vertically and horizontally, jump off of the zipline before you start heading up if you want to try it.

I'm tired for now, but we'll see what happens with this.
Logged
THIS POST GOT SIGNED BY
Pages: [1]
 

Page created in 0.049 seconds with 36 queries.