PvP

Yes, it works, at least in local multiplayer. So far, I only have the standard Pellets working as Player-vs-Player weapons, and in doing so have had to replace one sprite and one AI beyond just those associated with the Pellets, but I hope to be able to improve that in a future version. Anyway, this Custom Asset Enabler-based mod pack replaces the Pellet gun with a version that does damage to players, rather than enemies, and removes all the enemies from the Factory map in order to give you a good place to test it out.

To try it, simply download and unzip the attached file, double-click on the PvP Beta 1 icon, click the "Play" button in the window that comes up, and start a multiplayer game with another person who is using the mod.

Notes:

  • Both players MUST be using this mod pack in order for PvP to work properly. If you do not, I don't think that the game will crash outright, but gameplay will be very badly screwed up. I suggest only using this mod pack after you have arranged with another player to have a PvP game- at that point, quit the game, and re-launch it by running the mod pack. You may also want to append "(PvP)" to your name, so people will know that there is something odd about your game.

  • The Pellet gun is replaced across the entire game, so don't even bother trying to play most single-player levels- your shots will pass straight through enemies.

  • Only the Pellets can hit other players, so switching to any other weapon will put you at a severe disadvantage in PvP play. I have removed all weapon pickups from the Factory level to avoid this problem.

Disclaimer: This is a beta version, use at your own risk. I suggest backing up your SketchFighter application before running this mod pack.

Edwards

Attached File(s)

This post has been edited by Edwards : 19 August 2007 - 01:58 AM

This looks like a fantastic Mod Pack Edwards! :laugh: I haven't been able to test it over the internet yet, but it certainly seems to do the biz in local play.

The behaviour of Pellets in custom maps is interesting, they only interact with other objects at the moment of spawning. What's more they inflict MASSIVE damage! I spent the morning getting impossible times on TCOC and other maps, hehe. 🙂

EDIT:

Ah, I assume the reason for Pellets being of a normal contact type when spawned is to ensure they don't contact the player who shoots them? This makes me wonder how you got the players to inflict damage to each other at all! Did you create a new contact type? Or edit an existing one?

This post has been edited by Silverwind : 19 August 2007 - 06:11 AM

Interesting. I'll have to put SF on my laptop and have a go between these two computers.

@silverwind, on Aug 19 2007, 04:04 AM, said in PvP:

Ah, I assume the reason for Pellets being of a normal contact type when spawned is to ensure they don't contact the player who shoots them?

Actually, it's an inevitable side-effect of their being a player weapon- player weapons will ALWAYS be of type Player when spawned, no matter what the sprite's default type is. I'm making them change into a different sprite, of type Enemy, at frame one. I've tried having them change into themselves at frame one, with modified defaults, but for some reason the Extra1 and Extra2 defaults are partially ignored in that situation (I think I'm running into some hard-coded behaviour).

The excessive damage is from my forgetting to reverse a test change I made to make sure I was editing the right weapon.

(EDIT) Results of the first online game, between myself and Silverwind: This is definitely not anything Lars intended to be possible, but it almost works. Players go flying insanely far when hit by bullets, even when those bullets apparently only exist on their system. Bullets fired by the other player appear in a wide variety of colors, rather than just a boring blue or red. It's nearly impossible to shoot someone without getting hit yourself, but that's to be expected. And, of course, the average lifespan is about fifteen seconds.

Unfortunately, at least on our (admittedly poor) connection, we tended to get disconnected by "network backlog" errors after a minute or two. Also, I'm pretty sure that we were getting some form of out-of-sync error on our bullets, as we kept getting hit by invisible pellets, which presumably were visible pellets on the other person's system. Once again, though, this could have been caused by out two-star connection.

Also, accidental empirical testing of what happens when a PvP person plays with a non-PvP person shows that the game doesn't crash, or even fail in any particularly spectacular fashion. Apparently each person uses the weapon the their own game thinks they have, although the PvP Pellets' submunition into an enemy-type weapon fails (at least for Player 2). This gives the person who can instantly kill enemies by ramming them a rather large unfair advantage, if they can fly well enough to use it.

Edwards

This post has been edited by Edwards : 19 August 2007 - 12:30 PM

I've yet to try it (for lack of, as some people put it, of a warm body around), but I'm already impressed.

Anyway, I'm pretty sure this is really bad for Internet play synching. I mean really really bad. You don't imagine how complicated it is.

In my professional opinion, this is made of win and awesome.

I quite agree. I've done a single player game with my brother, but that didn't work that well due to the amount of simultaneous key presses this keyboard can take... Was still a lot of fun, though. So yeah, i'm looking forward to the weekend when i can get a game going with Teh.