[bounty] 100$ for anyone that can fix my map <3

The bounty bit

50$ for finding a way, on a dedicated server, without any players (just bots), reliably reproduce the three bugs in the description.
50$ for actually finding a way to fix the map. This implies the first bounty being met, since the bugs are apparantly random and can’t keep getting tested live on a full server.

If you feel the money is not good enough, please contact me as well. I have no clue if this is an insultingly low amount of money. If you feel you need more money though, I will have to save up for it, and someone else may nab the job first. This is not meant as a threat, just good communication. If the bounty level is raised at any point, I will contact all the people who have contacted me in turn. No funny business, and you will get some personal info on me so you know I am a Pretty Cool Guy™.

Oh, and, of course anyone helping out at all will get a spot in the to-be-hideously-huge thanks wall :).

Description of problem

The map is available at http://ttt.gfe.nu/skys.zip

I have a map, ttt_skyscruuper, that I have posted about before on this forum.
Its broken in a way that can’t be reliably triggered. I have done my best with debugging it for two weeks, and the map has been… my baby. Worked on it for wayyyy too long, and its the first map that I have ever released.

Something is up with the map, presumably something related to physics. The following happens in the map, that i think is probably interconnected:

  • There is a 1/20-ish chance that when a lot of players are on, that bodies get uninteractable. You can’t id them, you can’t pick them up with the magneto stick, they don’t react to other physics objects
  • Sometimes when people are stabbed, a specific part of the map, from one angle, has a ‘knife rain’, where one or several knives are falling in a loop
  • Sometimes, in a specific part of the map, a body falls towards the ground, the splat sound effect plays, it teleports up again and keeps falling.

Contact information

Poke me at skype (magnusjjj), email (magnusjjj@gmail.com) or steam (zhe_tuxie).
Please don’t use steam for permanent communication though, since the notifications are shiiiiiite.

Plz no ban I love you

PS. Admins, please don’t kill me for posting another thread <3. I figured a new thread would be fine for the bounty part since its in a better format. I love you all. .DS

In my 10 years of experience mapping with Source, I have never seen anything like this. My only conclusion is that your map is haunted. I would recommend hiring a priest that can perform an exorcism.

OooooOOoo spooky halloween map~

That actually made me feel a lot better. Thanks for the laugh <3.

Sounds more like a LUA related program to me, have you tested the map on a completely stock TTT server at all?

I tested it on my (mostly) stock TTT server for a bit, and I never ran into any of the described issues.

[editline]1st November 2016[/editline]

Finally experienced the knife bug.
Seems to be caused by the teleporter under the whole map. It can happen when a player dies with the knife equipped and it [del]lands in the teleporter.[/del] See later posts.

The bugs with the unid’able bodies only happen when there are a lot of other players (not bots, cant reproduce it with bots at all) on the server. There are lua errors when you try to id them, but looking at the code its pretty much the first line of the lua code (and, in the standard vanilla code), where the code is trying to grab the player associated with the body and fails miserably, because it seems like it gets a null back from the function that tries to get the ragdoll you are pointing at.

I’ve been able to get un-id’able bodies by dropping them into the teleport, it has to do with the server not informing players about teleport events.

But it also happens to non-dropped teleport players. Thats the main issue.
It happens on normal floors, in normal situations. The body spawns, hits the floor, becomes non-interactable and some of the players can’t see it, the other players cant interact with it in any way (grabbing with magneto stick, iding it, nothing)

[del]I still think it probably has something to do with the teleporter brush[/del] It’s a trigger_multiple that does some whacky stuff with point_teleport.

For the knife bug, unless there’s a good reason for having it the way you do, I’d recommend turning the trigger_multiple into a trigger_teleport and have it target an info_target, then have it set up against a filter to only teleport bodies and physics props.

[editline]1st November 2016[/editline]

Here’s demonstrating I can reproduce the knife bug:

[editline]1st November 2016[/editline]

Yeah, I’m pretty sure most of these bugs are created by how you’re doing teleportation.

[editline]1st November 2016[/editline]

By removing the point_teleports in the room, and changing that setup to use a trigger_teleport, I’ve fixed the knife issue.

The body issue I’ve been able to reproduce:
[media]https://www.youtube.com/watch?v=adLem7bPQOo[/media]

Is somewhat just something you’ll have to deal with in Source with ragdoll teleportation AFAIK; you can get around it by either hiding the teleport, doing some further trickery, deleting the ragdolls instead teleporting, or putting the teleport destination in the same PVS as the teleport brush.

[editline]1st November 2016[/editline]

[media]https://www.youtube.com/watch?v=8qyTtIb3OmM

ragtoll ‘toss’ reproduction, basically what I think is happening here is the trigger_hurt is calculating the damage on a separate tick, and it’s causing a delayed !activator response. the point_teleport also conserves momentum, so the ragdoll doesn’t lose momentum on teleport.

To reproduce this quickly, remove the trigger_multiple and instead have everything hit the trigger_hurt for teleportation, this is also a way to reproduce the knife bug even quicker.

Fix is the same as the rest, use trigger_teleport instead of the !activator method you’re currently using.

Update: With glitchvid’s massive help and support, this is now closed. The solution was to replace all of the point_teleport’s with trigger_teleport. Go figure <3.

My love for that person is just <3 right now.