Home    LittleBigPlanet 2 - 3 - Vita - Karting    LittleBigPlanet 3    [LBP3] Help!!
#1

Any good way to lock logic to certain players? (Player 1, Player 2,etc)

Archive: 17 posts


I want to be able to have different tags depending on the player. In LBPV You could have followers go after a certain player, but here we still have only Lead player or all.

I found something but it has a drawback (its more of an annoyance, explained below)

Are there any other ways I can pull this off?


What I found:

In the character section in the global stuff, capture a sackbot as a character holding the logic you want. Not all things will work such as movers or controllinators but the most important thing is tags will, so a broadcast microchip or follower looking for the matching tag should work with everything else. To get a player as that character edit a starting gong to one specific team and be that custom character. The annoying downside is they are locked as that costume, even if the bot was set to copy owner/player #. You can change costumes back when playing but they would have to do it every single time they enter the level (They even have to change back if they never changed outfits in your game and leave your level).
2014-12-03 01:46:00

Author:
JKthree
Posts: 1125


Couldn't you do something with infi range auto-enter controllinators, in separate locations, next too character swap points? I 've been thinking about the same problem, myself and thats all I can think of atm2014-12-03 02:33:00

Author:
CrankyLandlord
Posts: 20


I would be interested in this too, if anybody has an easy method. I rigged up a bit of logic that uses a randomizer, four tags and corresponding sensors to assign each player a tag, but it takes several seconds to lock up.

What my method does, is each player's randomizer chooses a tag. Then it checks to see if anybody else has the same tag and, if they do, the randomizer stays on and selects another tag. Once a player's logic has chosen a tag and doesn't detect any overlap from any other players for 1 second, it locks up and disables the randomizer.

The problem is if two players have the same tag, both will select new ones, since there's no way to favor one player over another as they're all using the same logic. With both selecting new tags, the odds are very high of at least one of them overlapping one of the other two players, forcing the cycle to continue. Essentially, it's rolling four four-sided dice until they each come up with different numbers. Fortunately, it rolls really fast (I think it runs at the game's clock frequency so that's 30 rolls a second), but it still has the potential to cause quite a delay. The nice thing is that if a single player dies, nobody else rolls for their tag, so that player just rolls until they get the one that's not taken, which takes no time at all. If all players die at the same time, however, it's back to the beginning.

If nobody knows of a better way, I'll try to describe my logic in greater detail, but I'm hoping somebody has a more elegant solution.
2014-12-03 04:57:00

Author:
Sehven
Posts: 2188


I would be interested in this too, if anybody has an easy method. I rigged up a bit of logic that uses a randomizer, four tags and corresponding sensors to assign each player a tag, but it takes several seconds to lock up.

What my method does, is each player's randomizer chooses a tag. Then it checks to see if anybody else has the same tag and, if they do, the randomizer stays on and selects another tag. Once a player's logic has chosen a tag and doesn't detect any overlap from any other players for 1 second, it locks up and disables the randomizer.

The problem is if two players have the same tag, both will select new ones, since there's no way to favor one player over another as they're all using the same logic. With both selecting new tags, the odds are very high of at least one of them overlapping one of the other two players, forcing the cycle to continue. Essentially, it's rolling four four-sided dice until they each come up with different numbers. Fortunately, it rolls really fast (I think it runs at the game's clock frequency so that's 30 rolls a second), but it still has the potential to cause quite a delay. The nice thing is that if a single player dies, nobody else rolls for their tag, so that player just rolls until they get the one that's not taken, which takes no time at all. If all players die at the same time, however, it's back to the beginning.

If nobody knows of a better way, I'll try to describe my logic in greater detail, but I'm hoping somebody has a more elegant solution.

Yes, you just need four auto enter controllinators right at the entrance obscured.

Each player will enter a random one, assign them a tag via their controllinator, then eject them out of it and delete the controllinator and drop em into your level, now tagged.
2014-12-03 06:52:00

Author:
lionhart180
Posts: 200


Hmm... Does anyone know what the teams are in the spawning gates?

And how it assigns teams?

Because if it works how I think it does, then you could possibly make each character spawn as a chosen character, or custom character, and each so that custom character could have their own tag inside them.
2014-12-03 10:10:00

Author:
Devious_Oatmeal
Posts: 1799


Hmm... Does anyone know what the teams are in the spawning gates?

That's a good question. I've meant to look at it but the state of online play so far, along with my reluctance to buy ps+ before the online gets fixed, means I haven't been able to get four players together to test it. There's a two player level in Manglewood where player 1 always spawns in the foreground and player 2 always spawns in the background. In LBP2, we would have had to use bots to acheive that, but I'm pretty sure they were using normal players there, so I'm thinking that setting the checkpoints to teams will force the players to spawn separately.

Am I the only one who REALLY wishes that the player oriented logic had more choices than Lead/All?

As for the controllinator suggestion, I suppose that's a good idea if your level design allows for it. Unfortunately, the only way I can think of to keep the player from being aware of it is an unskippable intro and I utterly refuse to do those.
2014-12-03 14:09:00

Author:
Sehven
Posts: 2188


I used the team settings on entrances in the beta exactly like you said. I never figured out how to do team scoring, though.2014-12-03 14:42:00

Author:
Rogar
Posts: 2284


I used the team settings on entrances in the beta exactly like you said.

Can you elaborate on that a bit? Iirc, the team settings on the entrances were by color. If there are four entrances, each with separate colors, will each player spawn from a different one? If that's the case, and player 1 spawns from the first one, will they continue to spawn from that one after dying, assuming no other checkpoints get activated? Continuing that assumption, if I place two of each color, will player 1 alternate between the two of his color while player 2 alternates between his two colored ones and so on? I can do some limited tests on this but I only have two controllers so I can only test up to two players.

If the entrances work the way I've just described, it will solve a LOT of problems for me!
2014-12-03 22:25:00

Author:
Sehven
Posts: 2188


That's a good question. I've meant to look at it but the state of online play so far, along with my reluctance to buy ps+ before the online gets fixed, means I haven't been able to get four players together to test it. There's a two player level in Manglewood where player 1 always spawns in the foreground and player 2 always spawns in the background. In LBP2, we would have had to use bots to acheive that, but I'm pretty sure they were using normal players there, so I'm thinking that setting the checkpoints to teams will force the players to spawn separately.

Am I the only one who REALLY wishes that the player oriented logic had more choices than Lead/All?

As for the controllinator suggestion, I suppose that's a good idea if your level design allows for it. Unfortunately, the only way I can think of to keep the player from being aware of it is an unskippable intro and I utterly refuse to do those.

Just make the controllinator invisible. You can just put the system in front of the spawn gate and have it all invisible.

The animation of leaving the controllinator is almost identical to that of spawning, do it fast enough and the players won't notice anything happened.

Literally just have the logic as such:

4x controllinators stuck to their own invisible holograms, set to not visible in play mode, auto entry, disable poppit, etc.

On the "is active" switch on each controllinator, connect it to a tag, each controllinator has a distinct tag.

In your broadcast chips' logic, have 4x tag sensor, 1 for each tag, piped through a 4 gate selector, with the output the same tag. Just label the tag 1 2 3 and 4.

Then put a tag detector on the controllinator that detects that exact same tag

Connect that detector to eject the sackbot and self destruct the controllinator.

If you hover them over top of the entrance, the players will spawn and just see their character hover for like an extra 0.1 second and go back to normal, they wouldn't even notice it if they weren't looking for it.
2014-12-04 00:19:00

Author:
lionhart180
Posts: 200


I'm not sure I'm following how to do this, and I'd really like to. I'll have to walk through this later while in Create mode. A video tutorial on this would be a big hit I'm sure.

I too was really hoping they'd offer proper support for player specific logic in LBP3, especially with all the different characters now. I think a two player level (like in story, could be accomplished by the lead/other settings...maybe? I'm wondering how the 4 player level in story was done.

The team settings I also don't understand yet, but I noticed that it seemed like those gates only activated when I set the level to competitive mode. Not sure if it's limited like that, but I'm wanting to make co op levels.
2014-12-04 00:48:00

Author:
LittleBigDave
Posts: 324


Well I only have two controllers but I just did a quick test with four start points: each set to different teams; and placed them directly over a hazard. I switched into play mode and watched my two characters consistently spawn from the first two gates: player one always spawned from the first and player two always spawned from the second; so it seems to work like I had thought.

[edit] After a bit more testing, I'm very pleased with what I've found with the checkpoints. Not only can you set them to individual players (and I'm in a standard level, not a versus one), but you can even set them to a finite amount of lives. You could set up a versus game and, with no additional logic at all, give each player five lives and once they're out of lives, they're done. Of course, they'd never go to the scoreboard in that case, but logic could be rigged up to detect the last player standing and trigger the scoreboard.

If you wanted to be a jerk, you could set it so player 2 only gets five lives while all other players get unlimited. You can do like they did in the 2x and 4x levels in story and set each player to spawn in different locations and/or as different characters. And yes, you can use this to assign each player their own logic: just place tags on each one and set the player to detect closest tag. You can place custom powerups in front of each checkpoint and each player will spawn with the same powerup each time they die.
2014-12-04 01:18:00

Author:
Sehven
Posts: 2188


Well I only have two controllers but I just did a quick test with four start points: each set to different teams; and placed them directly over a hazard. I switched into play mode and watched my two characters consistently spawn from the first two gates: player one always spawned from the first and player two always spawned from the second; so it seems to work like I had thought.

[edit] After a bit more testing, I'm very pleased with what I've found with the checkpoints. Not only can you set them to individual players (and I'm in a standard level, not a versus one), but you can even set them to a finite amount of lives. You could set up a versus game and, with no additional logic at all, give each player five lives and once they're out of lives, they're done. Of course, they'd never go to the scoreboard in that case, but logic could be rigged up to detect the last player standing and trigger the scoreboard.

If you wanted to be a jerk, you could set it so player 2 only gets five lives while all other players get unlimited. You can do like they did in the 2x and 4x levels in story and set each player to spawn in different locations and/or as different characters. And yes, you can use this to assign each player their own logic: just place tags on each one and set the player to detect closest tag. You can place custom powerups in front of each checkpoint and each player will spawn with the same powerup each time they die.

Wow, that's awesome!

Makes player specific logic so streamlined too. Just a broadcast chip, and an internal tag detector to control what type of logic you activate for the player.

Could make 4 players with different logic with only one broadcast chip. Amazing!
2014-12-04 04:25:00

Author:
lionhart180
Posts: 200


Thank goodness you tested this! 8D

No need to borrow another controller now.


I don't recall any tutorial covering this though. It's a very useful thing to know about.
2014-12-04 07:53:00

Author:
Devious_Oatmeal
Posts: 1799


I tested this briefly, and it is working great , but the thing that threw me off before is that if I set a checkpoint to "all players", then my players enter the level from that checkpoint, and not as their selected team characters. (This is having already created a couple team colored entrances with different characters.) The game still knows their team association, because if they go back to the entrances they can only enable the one for their personal team color.

If I set the checkpoint itself to team colors, and include all colors, then it works like usual co op, except that it treats the checkpoint as needing to be individually activated. So if player 1 (team 1) activates it, when player 2 (team 2) dies, he respawns at the level entrance, not the checkpoint.

However this can be overcome pretty easily with logic. I set a player sensor on the checkpoint and used that to manually turn off the prior checkpoints/entrances and turn on only the new checkpoint, and everybody respawned there. Now that I think of it, perhaps just turning off the old checkpoints manually would be enough? And/or perhaps just leaving the checkpoint set to "all players" but manually enable during play so it's initially disabled. Likewise if you have level links, I think you might need to start them out disabled and manually enable them in the level.

This really is an exciting step forward for player specific logic! Thanks all for helping clear it up for me.
2014-12-04 20:13:00

Author:
LittleBigDave
Posts: 324


If I set the checkpoint itself to team colors, and include all colors, then it works like usual co op, except that it treats the checkpoint as needing to be individually activated. So if player 1 (team 1) activates it, when player 2 (team 2) dies, he respawns at the level entrance, not the checkpoint.

Ooh, I didn't know that. That is very cool. That could be used with a race level to allow players to die and respawn at the last checkpoint they activated without allowing other players to cheat by popping themselves halfway through the race.

On the other hand, local multiplayer could run into an issue where a player never gets to spawn again due to their checkpoint being offscreen but, as you say, that can be overcome with logic.
2014-12-04 20:17:00

Author:
Sehven
Posts: 2188


And yes, you can use this to assign each player their own logic: just place tags on each one and set the player to detect closest tag.

Hmm... could you explain this a little further? Do you mean place a tag on each checkpoint? Also I guess I'm not familiar with setting players to "detect closest tag."
2014-12-05 21:16:00

Author:
MrLongJohn
Posts: 36


Hmm... could you explain this a little further? Do you mean place a tag on each checkpoint? Also I guess I'm not familiar with setting players to "detect closest tag."

Yes, place different tags on each of the four checkpoints (label them Player1, Player2, etc. or whatever you like). Place tag sensors on a broadcast chip for each tag and wire them into a selector. Set it so that if any of them are triggered, it disables the detection (I used the nodes-on-a-microchip interrupt method). Now each player should have their selector output indicating which player they are and it should be locked since they won't do any more detection checks. You can wire the selector to whatever logic you like depending on what you want the results of being a given player to be.

[edit] Oh, make sure that each tag sensor's radius is small enough to only detect the tag on the checkpoint they spawn from.
2014-12-05 22:51:00

Author:
Sehven
Posts: 2188


LBPCentral Archive Statistics
Posts: 1077139    Threads: 69970    Members: 9661    Archive-Date: 2019-01-19

Datenschutz
Aus dem Archiv wurden alle persönlichen Daten wie Name, Anschrift, Email etc. - aber auch sämtliche Inhalte wie z.B. persönliche Nachrichten - entfernt.
Die Nutzung dieser Webseite erfolgt ohne Speicherung personenbezogener Daten. Es werden keinerlei Cookies, Logs, 3rd-Party-Plugins etc. verwendet.