Jump to content

philippj

Members
  • Content Count

    253
  • Joined

  • Last visited

Everything posted by philippj

  1. philippj

    Loot categorizing question

    The curent system doesnt work like this. You have to configure everything within the types.xml other custom files are ignored.
  2. philippj

    How to display player count on your server

    By sending X amount of messages afterwards containing only whitespaces
  3. philippj

    How to display player count on your server

    Python is a great language tbh and dart doesnt do this out of the box you have to get a modified version of it, so the standard admin uses bec & dart in conjunction
  4. philippj

    How to display player count on your server

    The thing is functional, although there are some issue in naming variables/functions and some other stuff. @robbyj there is an open pull request
  5. philippj

    Colors on HUD

    You have to do this on the client side.
  6. philippj

    How to display player count on your server

    Not possible with BEC
  7. \db\globals.xml <var name="CleanupLifetimeDefault" type="0" value="{{ VALUE IN MINUTES }}"/>
  8. philippj

    Are MOTD's Broken?

    The MOTD are being sent regardless of player state, starting on player connect. So you have to figure out the average loading time of your players, which is after monitoring ~10k player connects on a PVP server, at around 37s. (With loading speed is meant the time spent between Player initialization and exiting the Lobby state) Then you have to calculate the best interval for your MOTDs (hint: 5s works best) and add empty dummy messages to fill the gap. If a player has faster loading times he will see some empty messages but thats how you make sure everyone is getting the messages. I implemented welcome messages by monitoring the lobby state and sending them 2 seconds after leaving it. If you have that number you can issue kicks based on extensive loading times aswell.
  9. philippj

    Scripting

    yes
  10. philippj

    Scripting

    Place this inside "CustomMission", change your safezone coordinates and you have a rudimentary safezone. It really isnt great but it works. bool IsInRadialZone(float x, float y, float center_x, float center_y, float radius) { // keep distance squared because squaring is cheaper then sqrt float distance_squared = Math.Pow(center_x-x, 2) + Math.Pow(center_y-y, 2); return (distance_squared < Math.Pow(radius, 2)); } override void OnUpdate(float timeslice) { UpdateDummyScheduler(); TickScheduler(timeslice); UpdateLogoutPlayers(); ref array<Man> players = new array<Man>; GetGame().GetPlayers( players ); float safezone_center_x = 0.0; float safezone_center_y = 0.0; float safezone_radius = 0.0; for ( int i = 0; i < players.Count(); i++ ) { PlayerBase player; Class.CastTo(player, players.Get(i)); vector pos = player.GetPosition(); if(IsInRadialZone(pos[0], pos[2], safezone_center_x, safezone_center_y, safezone_radius)) { player.SetAllowDamage( false ); } else { player.SetAllowDamage( true ); } } }
  11. philippj

    Scripting

    To follow this up: Radial zones bool IsInRadialZone(float x, float y, float center_x, float center_y, float radius) { // keep distance squared because squaring is cheaper then sqrt float distance_squared = Math.Pow(center_x-x, 2) + Math.Pow(center_y-y, 2); return (distance_squared < Math.Pow(radius, 2)); } Also GetPosition returns a vector so vector pos = player.GetPosition(); float x = pos[0]; float y = pos[1]; should do the trick
  12. philippj

    Player joins server - announcement

    No, you would have to create a custom plugin for that.
  13. philippj

    Player joins server - announcement

    DarT and RPM are basically RCON interfaces that provide a graphical interface for RCON stuff. There are other tools like CFTools (https://omegax.cftools.de) or battleWarden (https://battlewarden.net/) that are RCON based but provide more and custom features.
  14. philippj

    Scripting

    I wont provide a full code solution because i dont want to spread untested code. I have not looked into the exact result of GetPosition thus the code needs to be changed accordingly . Also you have to define your safezone coordinates. Possible solution (if the GetPosition thingy is adjusted): init.c (Add to "CustomMission" (if default) or your adaption of "MissionServer") bool IsInSafezone(float x, float y) { float min_x = 0.0, max_x = 0.0, min_y = 0.0, max_y = 0.0; // Replace this with actual coordinates if(x > min_x && x < max_x && y > min_y && y < max_y) return true; return false; } override void OnUpdate(float timeslice) { UpdateDummyScheduler(); TickScheduler(timeslice); UpdateLogoutPlayers(); ref array<Man> players = new array<Man>; GetGame().GetPlayers( players ); for ( int i = 0; i < players.Count(); i++ ) { PlayerBase player; Class.CastTo(player, players.Get(i)); float x, y, z = player.GetPosition(); // NOT WORKING if(IsInSafezone(x, y) { player.SetAllowDamage(false); } else { player.SetAllowDamage(true); } } }
  15. philippj

    Scripting

    @smasht simple safezones are possible, however without fancy texts & stuff It is possible by getting the players position, checking if the player is within your safezone and disabling/enabling their damageable state in OnTick, dunno how this will impact performance. Example player.SetAllowDamage(true/false); // Activate/deactive damage player.GetPosition(); // Player position (X,Y,[Z]) || // Checking if x, y coords in square || Replace this with dynamic version for best practice reasons bool IsInSafezone(float x, float y) { float min_x = 0.0, max_x = 0.0, min_y = 0.0, max_y = 0.0; // Replace this with actual coordinates if(x > min_x && x < max_x && y > min_y && y < max_y) return true; return false; }
  16. philippj

    Player joins server - announcement

    Easiest done via RCON tools.
  17. philippj

    players.db loadout modification

    Not possible at this time
  18. philippj

    players.db loadout modification

    The "Data" is packed binary. You cant unpack it without knowing its structure. So there is no way you can edit this with the tools/info currently available. If you want to edit the players starting loadout you can edit your init.c. Documentation on how to do this this is readily available on Reddit or here on the forums.
  19. philippj

    admin log and killstat

    If you start your server using "-adminlog" a "DayZServer_x64.ADM" file is being created in your defined profiles path which contains player connects, disconnects and kills. All log entries contain the users ingame name and their BohemiaInteractive UID (Base64(Sha256(SteamID64)))
  20. philippj

    Whitelist for the server

    External Admintools are a better solution. Check out omegax.cftools.de
  21. philippj

    Inside Search Of A Server

    There are not many populated servers right now. I recommend you check out https://www.dayzspy.com/, or https://omegax.cftools.de/serverlist for more detailed server information.
×