GoldenEye: Source Forums

  • November 14, 2024, 05:07:13 pm
  • Welcome, Guest
Advanced search  

News:

Pages: [1] 2 3   Go Down

Author Topic: Yeyinde's WIP Gamemodes  (Read 26357 times)

0 Members and 8 Guests are viewing this topic.

Yeyinde

  • Agent
  • *
  • Posts: 12
  • Reputation Power: 0
  • Yeyinde has no influence.
  • Offline Offline
Yeyinde's WIP Gamemodes
« on: June 30, 2010, 07:32:24 pm »

First off, I'd like to thank all of the developers for making on this great mod, and I'd also like to thank JcFerggy for showing me the mod a few months back.
Now with that done, I really like this game and it's support for the creation of custom game modes.  So, I'm taking some time to learn Python (which isn't hard considering I'm already fairly proficient in Ruby) so I can make a few of my own game modes for others to have fun in.  This topic is for listing my WIPs of game modes and for taking suggestions of possible improvements to them.  Fire away with your criticism cannons, because that's the best way to improve on things.

Assassination

Gameplay
This game mode involves searching for your hit/target and trying to kill him with minimal damage to everyone else.  Upon spawning, you receive a random person who you must kill to earn a point.  Killing anyone else will cause you to loose a point with one exception: If the person who you kill has you as their hit/target, you gain two points.  Use silenced weapons or slappers/knifes to earn a point bonus.  Attempting to break the flow of gameplay will result in 15 seconds of not being able to deal damage, so play correctly!

Download
Assassination  (Last updated August 3, 2010)


Klobbering Time

Gameplay
This one started as a joke I heard when playing on a server a few days back.  Somebody suggested a game mode that would only earn you points for killing with the Klobb.  As such, here is a game mode that spawns you with a Klobb and 400 spare rounds to try and earn points with.

What I can see myself doing with this game mode in the future is turning it into you only gain points with one of the weapons in the weapon set.  This special weapon would be selected randomly after interval of about 30-60 seconds, to  keep the players on their toes.  I could even add a cvar which makes the game also select a weapon which reduces your score when you kill with it.  Now to make this change possible, I'll need to figure out a way to read the available weapons in the weaponset, plus slappers/knife.

Download
Klobbering Time


Any questions, comments, suggestions, or criticisms? Anything is appreciated.
« Last Edit: August 03, 2010, 05:39:25 pm by Yeyinde »
Logged

killermonkey

  • GES Programmer
  • Retired Lead Developer
  • GE:S Fanatic
  • *
  • Posts: 5,473
  • Reputation Power: 346
  • killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!
  • Offline Offline
    • DroidMonkey Apps
Re: Yeyinde's WIP Gamemodes
« Reply #1 on: June 30, 2010, 08:02:55 pm »

first off, AWESOME!

Secondly,

the radar is meant to be all or nothing. You cannot display special radar tokens to individual players. This is an internal limitation and cannot be circumvented with Python and is by design really. The only thing I can think of is to assign each player a different color blip on the radar and tell each player the blip color that they have to assassinate. Not ideal, but it would work.
Logged

EMH Mark I

  • Earthworm Jimbo
  • Secret Agent
  • **
  • Posts: 154
  • Reputation Power: 18
  • EMH Mark I is working their way up.EMH Mark I is working their way up.EMH Mark I is working their way up.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #2 on: June 30, 2010, 09:39:25 pm »

Kool stuff, I dig your initiative.  I love these custom game modes because they add new flavor to GES, and help pique players' interest in GES again that have been playing for a long while. 

We can definitely test these out on one of the OWS servers Yeyinde.  We even got Entropy-Soldier's Turbo Mode and Hold The Briefcase game modes on rotation there which have been a joy to play so far.  :)
Logged

Yeyinde

  • Agent
  • *
  • Posts: 12
  • Reputation Power: 0
  • Yeyinde has no influence.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #3 on: July 01, 2010, 12:55:11 am »

first off, AWESOME!

Secondly,

the radar is meant to be all or nothing. You cannot display special radar tokens to individual players. This is an internal limitation and cannot be circumvented with Python and is by design really. The only thing I can think of is to assign each player a different color blip on the radar and tell each player the blip color that they have to assassinate. Not ideal, but it would work.
I'm not sure if I should curse the limitations, or cheer them on for getting the thinkers to think on creative ways to work around them.  The main thing I can see wrong about individual colours would be defining 32 of them, with the chance of them blending into the radar, or the colourblind confusing the wrong one.  Although individual tokens per player could add to some interesting additions to gameplay, like colouring the person who had dominated you red so who know who to avoid (Or sneak up with behind them with the Goldengun).


Kool stuff, I dig your initiative.  I love these custom game modes because they add new flavor to GES, and help pique players' interest in GES again that have been playing for a long while. 

We can definitely test these out on one of the OWS servers Yeyinde.  We even got Entropy-Soldier's Turbo Mode and Hold The Briefcase game modes on rotation there which have been a joy to play so far.  :)
Thank you, and thank you for considering putting the game modes on your servers.  The biggest problem with making your own game mode by yourself is the lack of proper testing that you can do.  Hopefully 4.1's bots can help a bit with that once it's out.

Thank you both for giving these a look.  I appreciate it. :)
Logged

killermonkey

  • GES Programmer
  • Retired Lead Developer
  • GE:S Fanatic
  • *
  • Posts: 5,473
  • Reputation Power: 346
  • killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!
  • Offline Offline
    • DroidMonkey Apps
Re: Yeyinde's WIP Gamemodes
« Reply #4 on: July 01, 2010, 01:57:58 am »

Hopefully 4.1's bots can help a bit with that once it's out.

Who said 4.1 is getting bots? LOL, certainly not me!


As for the radar, adding the ability for a per-player radar color/icon is definitely possible, however you now take on the burden, as a scenario writer, to ensuring that the radar is in sync with the gameplay. That, my friend, is not worth the hassle in my opinion for this limited use. There is a whole lot of checks and balances going on behind the scenes that make the python code so easy to write. We went to extreme lengths to ensure that the python code directly relates to actions within the game and not the implementation of the actions. Implementation is C++'s job.
Logged

Yeyinde

  • Agent
  • *
  • Posts: 12
  • Reputation Power: 0
  • Yeyinde has no influence.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #5 on: July 01, 2010, 03:50:03 am »

Who said 4.1 is getting bots? LOL, certainly not me!


As for the radar, adding the ability for a per-player radar color/icon is definitely possible, however you now take on the burden, as a scenario writer, to ensuring that the radar is in sync with the gameplay. That, my friend, is not worth the hassle in my opinion for this limited use. There is a whole lot of checks and balances going on behind the scenes that make the python code so easy to write. We went to extreme lengths to ensure that the python code directly relates to actions within the game and not the implementation of the actions. Implementation is C++'s job.

My bad, I got the wrong idea in my head when saw the WIP screens in one of the blogs.

As for the per-player radar icons, I can live without them for quite a while.  I understand how difficult it can be to get two completely different languages working nicely with each other, with the different memory management schemes and namespace differences, and whatnot.  No sense working one's ass off for something that will have little use, right?

And now for something different, yet still related: Is there a Python function available to get a list of all the current round's weapons?
Logged

kraid

  • Game Artist
  • 007
  • *****
  • Posts: 1,984
  • Reputation Power: 191
  • kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!kraid is awe-inspiring!
  • Offline Offline
    • my Homepage
Re: Yeyinde's WIP Gamemodes
« Reply #6 on: July 01, 2010, 09:50:53 am »

The first game mode kinda reminds me on The Ship.
If there were more characters, you could simply display a message to each client individually. Something like: assassinate ourumov
Maybe even more difficult, if you wanna get an extra point you'll have to use a certain weapon for it.
Logged

Jeron [SharpSh00tah]

  • Level Designer
  • Retired Lead Developer
  • GE:S Fanatic
  • *
  • Posts: 3,004
  • Reputation Power: 53
  • Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.Jeron [SharpSh00tah] has an aura about them.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #7 on: July 01, 2010, 02:54:30 pm »

Yea, maybe (if it is possible) to have only one player as, say, ourumov. And you need to assassinate him. Also, the ourumov skin would rotate throughout the players; think the CS 1.6 game mode where the player needs to escape with the CT's, and the escapee alternates each round.
Logged

Complete: Ge_Runway (now under care of CC Saint); Ge_Caverns // W.I.P.:Ge_Streets; Ge_Depot; Ge_Train;

PPK

  • 007
  • ****
  • Posts: 1,177
  • Reputation Power: 26
  • PPK is on the verge of being accepted.PPK is on the verge of being accepted.PPK is on the verge of being accepted.PPK is on the verge of being accepted.PPK is on the verge of being accepted.
  • Offline Offline
    • Warrior Nation
Re: Yeyinde's WIP Gamemodes
« Reply #8 on: July 01, 2010, 06:45:34 pm »

Those modes look really nice. I like both ideas. Check your Steam invites, if you may :). I have a few things to say in behalf of WN.

They could make themed assassination missions for different maps. Say, for Cradle, it would be Trevelyan (or Bond, depending on the team), etc.
Logged

Yeyinde

  • Agent
  • *
  • Posts: 12
  • Reputation Power: 0
  • Yeyinde has no influence.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #9 on: July 02, 2010, 06:11:50 pm »

The first game mode kinda reminds me on The Ship.
If there were more characters, you could simply display a message to each client individually. Something like: assassinate ourumov
Maybe even more difficult, if you wanna get an extra point you'll have to use a certain weapon for it.
When more characters are added, I'll think about adding that to the game mode.  I'll also think about adding a point multiplier for using a silenced weapon or melee weapon to go with the assassination theme.

Yea, maybe (if it is possible) to have only one player as, say, ourumov. And you need to assassinate him. Also, the ourumov skin would rotate throughout the players; think the CS 1.6 game mode where the player needs to escape with the CT's, and the escapee alternates each round.
It is possible to force a skin on somebody and only allow him to use it (look at the LALD game mode for that), but that isn't what I'm going for in this mode.  Assassination is a free-for-all type scenario, so everyone has a different target to kill.  Forcing everyone to go after a single person just wouldn't be as fun, I think.

Those modes look really nice. I like both ideas. Check your Steam invites, if you may :). I have a few things to say in behalf of WN.

They could make themed assassination missions for different maps. Say, for Cradle, it would be Trevelyan (or Bond, depending on the team), etc.
Thank you for the invite.  As for themed/team assassination, this mode is meant for a free-for-all play so that probably won't work all to well.  But I appreciate the though and idea. :)

Anyhow, last night the game modes had their first proper test on an OWS server.  Both games ran fairly well, with just few bugs to work out in Assassination.  Klobbering Time was quite a success, judging from from the players' responses to it.

Things that needed to be worked out of Assassination are: Spectators being selected as targets, HUD messages being in the corner, and the radar not wanting to work at all(Though this might have been a server-side thing).  I've got these issues fixed for the new testing release, and I've added something else: If at any time your target dies, be it a suicide or from another player, a new target will be chosen for you.  This should add some more flow to the game, and make it a bit more fun.

The new Assassination version can be downloaded HERE, or on the first post.
Logged

Yeyinde

  • Agent
  • *
  • Posts: 12
  • Reputation Power: 0
  • Yeyinde has no influence.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #10 on: July 08, 2010, 06:39:50 pm »

Alright, it's time for an update on the Assassination game mode!  I've been doing some playing around, and I think I've found a nice work around the radar issue.  I'll let this image summarize it up:

(Click on the image for the full resolution)

As you can see, the target string now shows what character they are and their distance from you in metres.  Other changes include the introduction of the ass_silencedbonus and ass_meleebonus cvars, which multiply the points you can gain (or lose!) with silenced or slapper/knife kills.  They are defaulted to 2 and 3, respectfully.

There are still a few bugs to work out, like properly selecting a new target if the one you have suddenly disconnects.  A little hard to get that working when all you have for testing is your brother's computer while he's out working, however.  I'd appreciate any help on getting these last few things fixed up.
Logged

PPK

  • 007
  • ****
  • Posts: 1,177
  • Reputation Power: 26
  • PPK is on the verge of being accepted.PPK is on the verge of being accepted.PPK is on the verge of being accepted.PPK is on the verge of being accepted.PPK is on the verge of being accepted.
  • Offline Offline
    • Warrior Nation
Re: Yeyinde's WIP Gamemodes
« Reply #11 on: July 08, 2010, 09:35:24 pm »

I like how that is turning out. I'd lend you a hand but I'm swamped with Uni work at the moment. If I'm available to help, I'll let you know. I also like the prefixes you chose.
« Last Edit: July 09, 2010, 08:49:05 am by PPK »
Logged

killermonkey

  • GES Programmer
  • Retired Lead Developer
  • GE:S Fanatic
  • *
  • Posts: 5,473
  • Reputation Power: 346
  • killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!
  • Offline Offline
    • DroidMonkey Apps
Re: Yeyinde's WIP Gamemodes
« Reply #12 on: July 08, 2010, 10:01:41 pm »

be careful with network bandwidth. Sending messages to 32 players every think cycle will bring the server to its knees...

If you haven't already, I suggest adding a timeout to do distance updates every 200 ms or slower.
« Last Edit: July 08, 2010, 10:09:25 pm by killermonkey »
Logged

Yeyinde

  • Agent
  • *
  • Posts: 12
  • Reputation Power: 0
  • Yeyinde has no influence.
  • Offline Offline
Re: Yeyinde's WIP Gamemodes
« Reply #13 on: July 09, 2010, 02:59:24 am »

I like how that is turning out. I'd lend you a hand but I'm swamped with Uni work at the moment. If I'm available to help, I'm let you know. I also like the prefixes you chose.
Thank you!  Any help is appreciated, even if it's not right at the moment. :)  And the `ass' prefix just seemed logical at the time, so it stuck.

be careful with network bandwidth. Sending messages to 32 players every think cycle will bring the server to its knees...

If you haven't already, I suggest adding a timeout to do distance updates every 200 ms or slower.
Hmm, yes.  That is quite a true fact to bring up.  The available zip'ed code just updates the hud text if the distance between the two changes, however I'll be adding that timeout check to call the updating function to the next release to help ease up on the bandwidth a bit more.
Logged

killermonkey

  • GES Programmer
  • Retired Lead Developer
  • GE:S Fanatic
  • *
  • Posts: 5,473
  • Reputation Power: 346
  • killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!killermonkey is awe-inspiring!
  • Offline Offline
    • DroidMonkey Apps
Re: Yeyinde's WIP Gamemodes
« Reply #14 on: July 09, 2010, 03:46:58 am »

well the optimal solution would be to combine timeouts with rolling updates and change checks. Basically you batch update the players. Players 1-5 go in the first 50 ms, players 6-10 in the next 100ms, players 11-15 in the next 150ms, etc. etc.

That would spread the network load out evenly if you were sending multiple messages and update progress bars and doing radar changes. Since you are just doing a message update a simple timeout "burst" update will work fine. The backend to the GEUtil.HudMessage function is rather optimized already.
Logged
Pages: [1] 2 3   Go Up