Git Product home page Git Product logo

patchprotect's People

Contributors

azarus avatar cardermeister avatar d-kuen avatar edotm avatar mutx avatar p-kuen avatar zaknes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

patchprotect's Issues

Issue with buddy system

When removing someone from buddy list in Q menu it displays your name not theirs after you have removed them as seen in the screenshot attached.
image

[REQUEST] global disabling feature

This feature is in URS' prop protectiom and is very useful, what it does is it allows specific clients to disable parts of the protection such as use, damage, physgun, etc for everything they own indefinitely for all users. In a way buddying everyone connected for the selected features.

That strange Buff overflows

Ok, i found out, when those strange overflows happen.

To reconstruct.

  1. Start the server and join
  2. Open the menu and make some rage clicks -> you will see that there are no overflows
  3. Now press the 'save' button. It doesn't matter wihich one (antispam, pp)
  4. Now open the menu again and you will see loads of this lines...

So... After some hours I came to that point, that there must be something wrong with the save things... :P

Ah before I forget. It is not the button's fault, because if I press the cleanup button or any other one, the overflow error doesn't come up.

call field 'CanTouch' (a nil value)

Lua Error: [ERROR] addons/prop protection/lua/autorun/cppi.lua:122: attempt to call field 'CanTouch' (a nil value) 1. CPPICanPhysgun - addons/prop protection/lua/autorun/cppi.lua:122 2. updateOwnership - addons/uclip/lua/autorun/sv_uclip.lua:35 3. checkOwnership - addons/uclip/lua/autorun/sh_uclip.lua:46 4. checkVel - addons/uclip/lua/autorun/sh_uclip.lua:173 5. fn - addons/uclip/lua/autorun/sh_uclip.lua:205 6. unknown - addons/ulib/lua/ulib/shared/hook.lua:183

Lots of errors flooding my console today, only recent change has been updating the addon via SVN for the fixes of #41 and #42

Buddy list does not work

Everyone (including me) cannot add people to the buddy list, no console errors are occurring.

Tool Protection

tool gun protection doesnt seem to do anything either even after itck the tools and save

'WriteString' (string expected, got nil)

[ERROR] addons/pprotect/lua/patchprotect/server/settings.lua:269: bad argument #1 to 'WriteString' (string expected, got nil)

  1. WriteString - [C]:-1
    1. unknown - addons/pprotect/lua/patchprotect/server/settings.lua:269
    2. unknown - lua/includes/modules/concommand.lua:69

Exploit with names

  1. Wait for someone to change their name
  2. Change your name to their old name
  3. Be able to touch their props and minge

Don't use the player name as owner identifier.
Use player objects instead.
Also, NWString is deprecated.

Recode the SQL-Settings

My personal wish is, that we will change the whole sql-settings some time later. Maybe we will do that in a seperate branch.

The reason, why i want to do that is, to come away from these client-convars and just save everything in nice tables. With more uncomplicated net messages and so on...

Improvements on Damage Protection

Ok, there is a problem with the damage protection, which I will explain here:

I thought about it quite some time, but I came to no solution for this problem, so I post it in here.

Ok, first of all the code, which produces the damage protection:

function sv_PProtect.EntityDamage( ent, info )

    local Owner = ent:CPPIGetOwner()
    local Attacker = info:GetAttacker()

    if !ent:IsValid() or ent:IsPlayer() or sv_PProtect.Settings.PropProtection["use"] == false or sv_PProtect.Settings.PropProtection["damageprotection"] == false then return end
    if Owner != Attacker then info:SetDamage(0) end

end
hook.Add( "EntityTakeDamage", "EntityGetsDamage", sv_PProtect.EntityDamage )

So please think of the following situation:

1. You spawn one explosive oildrum 2. You take 3 granades or 3 rpg's 3. You throw one granade/fire one rpg round 4. Now, the oildrum should only burn but doesn't explode 5. Now wait, till the fire is gone 6. If you throw/fire a second or a third one, it doesn't burn again and also doesn't explode

The reason for this is this line:

if Owner != Attacker then info:SetDamage(0) end

Explenation:

The Granade explodes, but for some reason, it seems that it doesn't make enough damage to explode the oildrum.
Only, if the drum got some damage of the fire, it explodes. But in that case (if the damge protection is enabled) the fire won't take damage to the drum, because the "Attacker"-Entity is not the owner of the Prop.
Also if you set a row of explosive drums and you shoot one with a pistol or smg, or something similar, only the attacked drum explodes. The other ones will react like the granade situation above.

So this is the problem and now the question I want to ask:

What should be do now with the damge prop protection?

I thought some time about it and came to this points:

  1. Leave it like now:
    +: Really only the owner can destroy their ent's (except of explosions like from granades or rpg's)
    -: Because this addon is not only for averi, we need to think about it, if this is good. People like to set an explosion reaction which explodes/destroys more and more things in a row
  2. Non-Player entities:
    I thought, that we could also add this:
if Owner != Attacker and Attacker:IsPlayer() then info:SetDamage(0) end

So the prop will take damage from non-player entities too.
+: More Fun for other servers, as I explained above
-: There is a risk. If some other person places a prop near to yours and explodes it, the prop from you will also explode.

  1. The attacked ent should take damage if:
    The Owner is the Owner of the Ent
    OR
    The Non-Player Entity is owned by the Owner of the Ent

    +: no negative things from above and more fun
    -: maybe too complicated code

Ok, I think I wrote now enough for this topic. Please let me know, what you think about it ;)

Possible aftermath of issue #38 troubleshooting

My console decided to start flooding the chat this evening with a bunch of wire items, here is a copy of my console chatting.

I don't get why this is still happening I reinstalled the addon entirely once #38 was fixed and today it decides to print these.

Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "gmod_wire_input"
Console: "prop_vehicle_prisoner_pod"
Console: "gmod_wire_turret"
Console: "prop_vehicle_prisoner_pod"
Console: "prop_vehicle_prisoner_pod"
Console: "prop_vehicle_prisoner_pod"
Console: "prop_vehicle_prisoner_pod"
Console: "prop_vehicle_prisoner_pod"
Console: "prop_vehicle_prisoner_pod"
Console: "prop_vehicle_prisoner_pod"
Console: "gmod_wire_turret"
Console: "gmod_wire_turret"
Console: "xmv_helicopter"

I'm not sure what caused this since it's not telling me people are spamming.
I am going to try reinstalling PatchProtect and maybe the console's comments will be helpful.

EDIT: could it possibly be part of https://github.com/Patcher56/PatchProtect/blob/master/lua/patchprotect/server/propprotection.lua#L163

RunConsoleCommand( "say", ent:GetClass() )

Thats the only reference to making chat happen I found.

EDIT 2: Yup, that did the trick.

If prop protection is disabled everyone can physgun everyone

How I found this out was I disabled the prop protection and reinstalled FPP but then noticed everyone was flinging everyone around the map! .-.

I'm going to have to uninstall it until this gets sorted out, I love the prop counter in the cleanup menu though!

Error message

[Error] addons/patchprotect <pprotect>/lua/patchprotect/client/hud.lua:134:attempt to index global 'entity owners' <anil vaue>
1.filter - addons/patchprotect <pprotect>/lua/patchprotect/client/hud.lua:134:
2. open entitymenu - lua/includes/modules/properties.lua:85
3. onscreenclick - lua/inclued//properties.lua:119
4.fn - lua/inclued//properties.lua:170
5. run-addons/ulib/lua/ulib/shared/hook.lua.183
6.unknowk- gamemodes/sandbox/gamemode/spawnmenu/contextmenu.lua:172

Improvement to 'FPP Styled' Prop Owner Display

I have noticed in the FPP UI for showing who is the owner of an item it does not appear to be fully centered, if you point me to the line that tells where to put the text on the screen coordinate wise I will toy with how many pixels up it needs to go. From estimating though I would say move it up 2-5 pixels or move the background 2-5 pixels lower.

I'm not great with scripting, I only took a java class and know little about lua so hopefully text goes by the xy coordinate system xD

Change the tool antispam

It would be very good if we could change the tool antispam like this:

At the moment you choose which tools should be antispam-blocked.
I thought it would be better if you choose the tools which should NOT be blocked and PatchProtect should detect the tools where it spams a prop. These props should be blocked automatically.

attempt to call method 'Nick' (a nil value)

[ERROR] addons/prop protection/lua/patchprotect/client/panel.lua:294: attempt to call method 'Nick' (a nil value)

  1. unknown - addons/prop protection/lua/patchprotect/client/panel.lua:294
    1. foreach - [C]:-1
    2. pprotect_write_cleanup_menu - addons/prop protection/lua/patchprotect/client/panel.lua:293
      1. func - addons/prop protection/lua/patchprotect/client/panel.lua:388
      2. unknown - lua/includes/modules/net.lua:30

func_door and various map entities not protected

As you can see below anyone can physgun map entities such and func_door, with FPP you can look at the item and add it to the blacklist of things you can physgun or use a toolgun on. This is necessary for my server to have something to protect certain items we choose.

image

Toolgun on map

allow tool gun on map unticked and saved doesnt seem to do anything same with no prop protection for admins

Please implement CPPI

The purpose of CPPI is to make other mods able to talk to your prop protection.
http://facepunch.com/showthread.php?t=488410

The most popular mods like DarkRP and wiremod use this interface. This way these mods don't know to which prop protection they're talking, but they can know which players can touch which props.

E.g. DarkRP wants to know if you can pick up a prop when you pocket it.

Cleanup bug

when you clean someones props that has more than one it works but when you go back to the q menu it says he has props spawned even though he doesnt

Adding an automatic Tool-Thinker

A feature where PatchProtect watch you, how you use the tools and so it recognises which addons does spawn props and which not.. so the number of tools in the tool-block frame should sink.

Prop Block

Users don't know what prop block is.

We should explain this better.

Prop Protection Appears to be Broken

Also part of the dd1b5f3 patch I think. Everyone can physgun all props and it is chaos. I am deleting the addon and redownloading it now. If that is the cause I will close this issue report.

Buddy Menu

The buddy menu should be very simple and effective.
The options are:

  • Buddy table where you can see which players are your buddies
  • Buddy checkboxes where you can tick who you want to be your buddy

There also should be these options:

  • Buddy for five minutes,
  • Buddy until my disconnect
  • Buddy until his disconnect
  • Buddy until Server restart
  • Buddy for unlimited time

Low Performance by getting Owner

As you know, netmessages need their time to get to the server or back to the client.
For that, the inormation, which gives a Player the alloweness to pick something up or whatever, takes too long and it is quite annoying if you want to do somthing quickly..

Maybe we have to think about a faster structure of getting permission information.

Person got kicked with this error

[Error] addons/patchprotect <pprotect>/lua/patchprotect/client/hud.lua:65: tried to use a null entity!
get name -[C]:-1
fn -addons/patchprotect <pprotect>/lua/patchprotect/client/hud.lua:65:
unknown -addon/ulib/lua/ulib/shared/hook.lua:183

attempt to call field 'CanToolProtection' (a nil value)

Lua Error: [ERROR] addons/prop protection/lua/patchprotect/server/antispam.lua:182: attempt to call field 'CanToolProtection' (a nil value) 1. fn - addons/prop protection/lua/patchprotect/server/antispam.lua:182 2. Call - addons/ulib/lua/ulib/shared/hook.lua:183 3. unknown - gamemodes/sandbox/entities/weapons/gmod_tool/shared.lua:250

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.