Jump to content

Forums Announcement

Read-Only Mode for Announcements & Changelogs

Dear Survivors, we'd like to inform you that this forum will transition to read-only mode. From now on, it will serve exclusively as a platform for official announcements and changelogs.

For all community discussions, debates, and engagement, we encourage you to join us on our social media platforms: Discord, Twitter/X, Facebook.

Thank you for being a valued part of our community. We look forward to connecting with you on our other channels!

Stay safe out there,
Your DayZ Team

Aussie Cleetus

Members
  • Content Count

    138
  • Joined

  • Last visited

Everything posted by Aussie Cleetus

  1. Aussie Cleetus

    !!! [CE][Hive] :: DB is not responding too long.

    they are using SQL... just not MySQL, it's SQLite, a local light-weight counterpart. This error is generally cause either by something else trying to access the file (ie. using a bad method going around these forums to "hive" multiple servers together), or possibly a terribly slow hard drive?
  2. Aussie Cleetus

    How to display player count on your server

    in the override of the init, would you not want to call super.OnInit()?
  3. Aussie Cleetus

    two servers

    John, right now, there is not a supported or viable method of producing a Hive at the moment. The method that you are being recommended, is wildly outrageous and a terrible risk for one server or the other not working properly.
  4. Aussie Cleetus

    two servers

    You really should stop suggesting people do this, it causes errors in the database.
  5. Aussie Cleetus

    Team assignment based on GUID.

    // New Additional method to accompany my addItem method // Usage: AddPlayerClothes(player, "HelmetName", "GlassesName", "MaskName", "ShirtName", "VestName", "BeltName", "PantsName", "BootsName", "BackPackName", itemBs, itemEnt); // To not send an item to the player, make the string empty: "" (make sure to keep both quotes) void AddPlayerClothes(Playerbase _player=null, string _helmet="", string _glasses="", string _mask="", string _shirt="", string _vest="", string _belt="", string _pants="", string _boots="", string _backpack="", ItemBase _itemBs=null, EntityAI _itemEnt=null) { if (player != null && itemBs != null && itemEnt != null) { if (_helmet != "") { addItem(_itemEnt, _itemBs, _player, _helmet, 1, 0, -1); } if (_glasses != "") { addItem(_itemEnt, _itemBs, _player, _glasses, 1, 0, -1); } if (_mask != "") { addItem(_itemEnt, _itemBs, _player, _mask, 1, 0, -1); } if (_shirt != "") { addItem(_itemEnt, _itemBs, _player, _shirt, 1, 0, -1); } if (_vest != "") { addItem(_itemEnt, _itemBs, _player, _vest, 1, 0, -1); } if (_belt != "") { addItem(_itemEnt, _itemBs, _player, _belt, 1, 0, -1); } if (_pants != "") { addItem(_itemEnt, _itemBs, _player, _pants, 1, 0, -1); } if (_boots != "") { addItem(_itemEnt, _itemBs, _player, _boots, 1, 0, -1); } if (_backpack != "") { addItem(_itemEnt, _itemBs, _player, _backpack, 1, 0, -1); } } } void addItem(EntityAI itemEnt=null, ItemBase itemBs=null, PlayerBase player=null, string item_name="", int count=0, int stackSize=0, int invSlot=-1) { if (player != null && itemBs != null && itemEnt != null && item_name != "") { for (int i = 0; i < count; i++) { itemEnt = player.GetInventory().CreateInInventory(item_name); itemBs = ItemBase.Cast(itemEnt); if (stackSize > 0) { itemBs.SetQuantity(stackSize); } if (invSlot >= 0 || invSlot <= 9) { player.SetQuickBarEntityShortcut(itemEnt, invSlot, true); } } } } This may help some people. I've tried to add some defaults for fields and some basic fool-proofing.
  6. Aussie Cleetus

    Team assignment based on GUID.

    yes, the XXXXXXXX is the steam64id to be completely honest, I doubt Bohemia put in multiple allowed case choices per option. If there is a common loadout, I would wrap that loadout in a method and then call the method for each of the players' steam64id case.
  7. Aussie Cleetus

    Team assignment based on GUID.

    class CustomMission: MissionServer { override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName) { Entity playerEnt; playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player Class.CastTo(m_player, playerEnt); GetGame().SelectPlayer(identity, m_player); return m_player; } void CustomMission() { } override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { EntityAI primary; EntityAI itemEnt; EntityAI gun; ItemBase itemBs; EntityAI optic_attach; switch(player.GetIdentity().GetPlainId()) { // Admin 1 Loadout case "XXXXXXXX": player.RemoveAllItems(); addItem(itemEnt, itemBs, player, "TTsKOJacket_Camo", 1, 0, -1); addItem(itemEnt, itemBs, player, "TTSKOPants", 1, 0, -1); addItem(itemEnt, itemBs, player, "JungleBoots_Green", 1, 0, -1); addItem(itemEnt, itemBs, player, "BallisticHelmet_Green", 1, 0, -1); addItem(itemEnt, itemBs, player, "ThinFramesGlasses", 1, 0, -1); addItem(itemEnt, itemBs, player, "SmershVestBackpack", 1, 0, -1); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, -1); addItem(itemEnt, itemBs, player, "TacticalGloves_Green", 1, 0, -1); addItem(itemEnt, itemBs, player, "TortillaBag", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 10, 0, -1); addItem(itemEnt, itemBs, player, "CombatKnife", 1, 0, -1); addItem(itemEnt, itemBs, player, "Rag", 3, 6, -1); addItem(itemEnt, itemBs, player, "Pot", 1, 2000, -1); addItem(itemEnt, itemBs, player, "BloodTestKit", 1, 0, -1); addItem(itemEnt, itemBs, player, "FirefighterAxe_Green", 1, 0, 0); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Green", 1, 1, 2); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Green", 1, 1, 3); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Green", 1, 1, 4); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Green", 1, 1, -1); addItem(itemEnt, itemBs, player, "Ammo_762x39", 1, 1, -1); addItem(itemEnt, itemBs, player, "KobraOptic", 1, 0, -1); addItem(itemEnt, itemBs, player, "Battery9V", 2, 0, -1); addItem(itemEnt, itemBs, player, "Matchbox", 1, 0, -1); primary = akmClass(player, itemBs, gun, itemEnt, optic_attach); itemBs = ItemBase.Cast(primary); player.SetQuickBarEntityShortcut(primary, 1, true); break; // Admin 2 Loadout case "XXXXXXXX": player.RemoveAllItems(); addItem(itemEnt, itemBs, player, "USMCJacket_Woodland", 1, 0, -1); addItem(itemEnt, itemBs, player, "USMCPants_Woodland", 1, 0, -1); addItem(itemEnt, itemBs, player, "JungleBoots_Green", 1, 0, -1); addItem(itemEnt, itemBs, player, "CowboyHat_green", 1, 0, -1); addItem(itemEnt, itemBs, player, "DesignerGlasses", 1, 0, -1); addItem(itemEnt, itemBs, player, "SmershVestBackpack", 1, 0, -1); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, -1); addItem(itemEnt, itemBs, player, "TacticalGloves_Green", 1, 0, -1); addItem(itemEnt, itemBs, player, "AssaultBag_Ttsko", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 10, 0, -1); addItem(itemEnt, itemBs, player, "CombatKnife", 1, 0, -1); addItem(itemEnt, itemBs, player, "Rag", 3, 6, -1); addItem(itemEnt, itemBs, player, "Pot", 1, 2000, -1); addItem(itemEnt, itemBs, player, "BloodTestKit", 1, 0, -1); addItem(itemEnt, itemBs, player, "FirefighterAxe_Green", 1, 0, 1); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, 2); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, 3); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, 4); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, 5); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, 6); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, 7); addItem(itemEnt, itemBs, player, "Mag_AKM_30Rnd", 1, 1, -1); addItem(itemEnt, itemBs, player, "Ammo_762x39", 1, 1, -1); addItem(itemEnt, itemBs, player, "KobraOptic", 1, 0, -1); addItem(itemEnt, itemBs, player, "Battery9V", 1, 0, -1); addItem(itemEnt, itemBs, player, "Matchbox", 1, 0, -1); primary = akmClass(player, itemBs, gun, itemEnt, optic_attach); itemBs = ItemBase.Cast(primary); player.SetQuickBarEntityShortcut(primary, 0, true); break; // Admin 3 Loadout case "XXXXXXXX": player.RemoveAllItems(); addItem(itemEnt, itemBs, player, "M65Jacket_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "CargoPants_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "JungleBoots_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "BallisticHelmet_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "DesignerGlasses", 1, 0, -1); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, -1); addItem(itemEnt, itemBs, player, "HighCapacityVest_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "TacticalGloves_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "AliceBag_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 10, 0, -1); addItem(itemEnt, itemBs, player, "CombatKnife", 1, 0, -1); addItem(itemEnt, itemBs, player, "Rag", 3, 6, -1); addItem(itemEnt, itemBs, player, "Pot", 1, 2000, -1); addItem(itemEnt, itemBs, player, "BloodTestKit", 1, 0, -1); addItem(itemEnt, itemBs, player, "FirefighterAxe", 1, 0, 1); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Black", 1, 1, 2); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Black", 1, 1, 3); addItem(itemEnt, itemBs, player, "Mag_AKM_Drum75Rnd_Black", 1, 1, 4); addItem(itemEnt, itemBs, player, "Ammo_762x39", 1, 1, -1); addItem(itemEnt, itemBs, player, "KobraOptic", 1, 0, -1); addItem(itemEnt, itemBs, player, "Battery9V", 1, 0, -1); addItem(itemEnt, itemBs, player, "Matchbox", 1, 0, -1); primary = akmClass(player, itemBs, gun, itemEnt, optic_attach); itemBs = ItemBase.Cast(primary); player.SetQuickBarEntityShortcut(primary, 0, true); break; // Admin 4 Loadout case "XXXXXXXX": addItem(itemEnt, itemBs, player, "SmershBag", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 2, 0, -1); addItem(itemEnt, itemBs, player, "StoneKnife", 1, 0, 1); addItem(itemEnt, itemBs, player, "Rag", 1, 6, 2); addItem(itemEnt, itemBs, player, "WoodAxe", 1, 0, 0); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, 0); break; // Admin 5 Loadout case "XXXXXXXX": player.RemoveAllItems(); addItem(itemEnt, itemBs, player, "TacticalShirt_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "CargoPants_Green", 1, 0, -1); addItem(itemEnt, itemBs, player, "CombatBoots_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "BaseballCap_CMMG_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "DesignerGlasses", 1, 0, -1); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, -1); addItem(itemEnt, itemBs, player, "SmershVestBackpack", 1, 0, -1); addItem(itemEnt, itemBs, player, "HuntingBag", 1, 0, -1); addItem(itemEnt, itemBs, player, "TacticalGloves_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 10, 0, -1); addItem(itemEnt, itemBs, player, "CombatKnife", 1, 0, -1); addItem(itemEnt, itemBs, player, "Rag", 1, 6, -1); addItem(itemEnt, itemBs, player, "FirefighterAxe_Green", 1, 0, 0); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, -1); addItem(itemEnt, itemBs, player, "Compass", 1, 0, -1); addItem(itemEnt, itemBs, player, "OrienteeringCompass", 1, 0, -1); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 2); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 3); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 4); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 5); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 6); primary = usgClass(player, itemBs, gun, itemEnt, optic_attach); itemBs = ItemBase.Cast(primary); player.SetQuickBarEntityShortcut(primary, 1, true); break; // Admin 6 Loadout case "XXXXXXXX": player.RemoveAllItems(); addItem(itemEnt, itemBs, player, "LeatherJacket_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "LeatherPants_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "HikingBoots_Brown", 1, 0, -1); addItem(itemEnt, itemBs, player, "LeatherStorageVest_Black", 1, 0, -1); addItem(itemEnt, itemBs, player, "Armband_Blue", 1, 0, -1); addItem(itemEnt, itemBs, player, "CowboyHat_darkBrown", 1, 0, -1); addItem(itemEnt, itemBs, player, "WorkingGloves_Brown", 1, 0, -1); addItem(itemEnt, itemBs, player, "FurImprovisedBag", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 2, 0, -1); addItem(itemEnt, itemBs, player, "StoneKnife", 1, 0, 1); addItem(itemEnt, itemBs, player, "Rag", 1, 6, 2); addItem(itemEnt, itemBs, player, "WoodAxe", 1, 0, 0); addItem(itemEnt, itemBs, player, "Compass", 1, 0, -1); addItem(itemEnt, itemBs, player, "OrienteeringCompass", 1, 0, -1); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 2); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 3); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 4); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 5); addItem(itemEnt, itemBs, player, "Mag_UMP_25Rnd", 1, 1, 6); primary = usgClass(player, itemBs, gun, itemEnt, optic_attach); itemBs = ItemBase.Cast(primary); player.SetQuickBarEntityShortcut(primary, 1, true); break; // Default Player Loadout default: addItem(itemEnt, itemBs, player, "SmershBag", 1, 0, -1); addItem(itemEnt, itemBs, player, "Pear", 2, 0, -1); addItem(itemEnt, itemBs, player, "StoneKnife", 1, 0, 1); addItem(itemEnt, itemBs, player, "Rag", 1, 6, 2); addItem(itemEnt, itemBs, player, "WoodAxe", 1, 0, 0); break; } } void addItem(EntityAI itemEnt, ItemBase itemBs, PlayerBase player, string item_name, int count, int stackSize, int invSlot) { for (int i = 0; i < count; i++) { itemEnt = player.GetInventory().CreateInInventory(item_name); itemBs = ItemBase.Cast(itemEnt); if (stackSize > 0) { itemBs.SetQuantity(stackSize); } if (invSlot >= 0 || invSlot <= 9) { player.SetQuickBarEntityShortcut(itemEnt, invSlot, true); } } } EntityAI akmClass(PlayerBase player, ItemBase itemBs, EntityAI gun, EntityAI itemEnt, EntityAI optic_attach) { gun = player.GetHumanInventory().CreateInHands("AKM"); gun.GetInventory().CreateAttachment("AK_WoodHndgrd"); gun.GetInventory().CreateAttachment("AK_Woodbttstck"); gun.GetInventory().CreateAttachment("AK_Suppressor"); optic_attach = gun.GetInventory().CreateAttachment("PSO1Optic"); optic_attach.GetInventory().CreateAttachment("Battery9V"); itemBs = ItemBase.Cast(gun); return gun; } EntityAI m4a1Class(PlayerBase player, ItemBase itemBs, EntityAI gun, EntityAI itemEnt, EntityAI optic_attach) { gun = player.GetHumanInventory().CreateInHands("M4A1_Green"); gun.GetInventory().CreateAttachment("M4_PlasticHndgrd"); gun.GetInventory().CreateAttachment("M4_OEBttstck"); gun.GetInventory().CreateAttachment("M4_Suppressor"); optic_attach = gun.GetInventory().CreateAttachment("ACOGOptic"); itemBs = ItemBase.Cast(gun); return gun; } EntityAI usgClass(PlayerBase player, ItemBase itemBs, EntityAI gun, EntityAI itemEnt, EntityAI optic_attach) { gun = player.GetHumanInventory().CreateInHands("UMP45"); gun.GetInventory().CreateAttachment("PistolSuppressor"); optic_attach = gun.GetInventory().CreateAttachment("M68Optic"); optic_attach.GetInventory().CreateAttachment("Battery9V"); itemBs = ItemBase.Cast(gun); return gun; } } void main() { Hive ce = CreateHive(); if ( ce ) ce.InitOffline(); Weather weather = g_Game.GetWeather(); weather.GetOvercast().SetLimits(0, 0); weather.GetRain().SetLimits(0, 0); weather.GetFog().SetLimits(0, 0); weather.GetOvercast().SetForecastChangeLimits(0, 0); weather.GetRain().SetForecastChangeLimits(0, 0); weather.GetFog().SetForecastChangeLimits(0, 0); weather.GetOvercast().SetForecastTimeLimits(0, 0); weather.GetRain().SetForecastTimeLimits(0, 0); weather.GetFog().SetForecastTimeLimits(0, 0); weather.GetOvercast().Set(0, 0, 0); weather.GetRain().Set(0, 0, 0); weather.GetFog().Set(0, 0, 0); weather.SetWindMaximumSpeed(15); weather.SetWindFunctionParams(0.1, 0.3, 50); } Mission CreateCustomMission(string path) { return new CustomMission(); } Added bonus in here is my (until now) unreleased AddItem Function to make it easier to add items to players. Allows choosing: number of stacks number of items per stack hotkey assignment for item (requires adding a single item instance for each hotkey desired - see how Magazines are added in the Admin Loadouts)
  8. Aussie Cleetus

    Team assignment based on GUID.

    You're not emptying the person of gear before trying to add clothes. That alone will cause problems. When I get to my computer, I'll post an example of how I do custom loadouts for players based on their steam64id.
  9. Aussie Cleetus

    Team assignment based on GUID.

    I personally use it for personalized spawn loadouts for Admins (including their identifying armband). This way if someone is on the coast and they are out West, they can take a quick trip to the coast to deal with the situation. As a PvE server, I find that it's important for admins to be able to quickly and relatively painlessly do so.
  10. Aussie Cleetus

    VIP SLOTS

    If you use BEC, there is config options for setting anyone in the Admins.xml file as priority to be able to login. All you would need to do is set them into that file and change the config. It might not allow all slots to be used when the VIPs are not around, but it guarantees they can get on.
  11. Aussie Cleetus

    Team assignment based on GUID.

    if you try to use "name", the player has to set their name using Launch Parameters in Steam to the right things. Switch(player.GetIdentity().GetName()){ case "Redteam": //this player's name is "Redteam" so assign them to red team break; case "Blueteam": //this player's name is "Blueteam" so assign them to blue team break; default: //this player's name is not set in Steam Launch Parameters, we should probably assign a random team to them break; }
  12. Aussie Cleetus

    DayZSC Config Tool

    yeah I can confirm, links are dead.
  13. Aussie Cleetus

    How to know BattlEye GUID from .ADM

    unfortunately the ADM file no longer records the BE GUID, it is a different hash of the Steam64id. I'm not entirely sure where that formatted hash comes from (or if it is easily converted backward), but it is the same one the you get with player.GetIdentity().GetId().
  14. Aussie Cleetus

    Team assignment based on GUID.

    Switch(player.GetIdentity().GetPlainId()){ case "user1steam64id": // -- insert your group assignment break; case "user2steam64id": // -- insert your group assignment break; }
  15. Aussie Cleetus

    Team assignment based on GUID.

    It's easier to use their Steam64 id. https://guid2steamid.com/ to get their Steam64 from their GUID (to get player steam64 from dart/etc). player.GetIdentity().GetPlainId() player.GetIdentity().GetId() is NOT their BE GUID, it's different hash completely
  16. Aussie Cleetus

    Player joins server - announcement

    The messages are kinda long, but not much can be done about that right now.
  17. Aussie Cleetus

    Private Shard Shared Database

    You'll find bigger problems after a while. To others, I suggest avoid this method. There are viable solutions out there but most forums are shutting down threads because BI specifically said not to try sharding.
  18. Aussie Cleetus

    Dayz map mod

    There are rotation functions too. Because not all houses face the same way
  19. Aussie Cleetus

    Is it possibly to make more Classes?

    Psuedo code means copy/paste won't work. Try providing your offending code and I can try to fix it
  20. Aussie Cleetus

    Private Shard Shared Database

    This will not work. SQLite files are locked by default to the program accessing them when the server is running. The 2nd server will fail to connect to the players db properly and will likely get all sorts of errors. This is not a viable solution.
  21. Aussie Cleetus

    ADVICE AND GUIDANCE - POST TIPS HERE!

    I hope not. I don't like the idea of 3rd party launchers. I never really have. Workshop, that's promising however.
  22. Aussie Cleetus

    Server ADM File information

    Comparing logs from 0.62 to 0.63, there has been a LOT of information taken out of the ADM files. 0.62 provided information on each hit on a player and the weapon as well as damage dealt and the kill. 0.63 sometimes might, if it's feeling generous inform you of maybe 1 in 5 kills. I'd like to see a return of useful information in the ADM files please. It really isn't much to add.
  23. Aussie Cleetus

    Player joins server - announcement

    // add in RCon.cs under //if (Settings.Default.refreshOnJoin && message.EndsWith("disconnected") && !_form.pendingPlayers)" //{ // Thread thread = new Thread(new ThreadStart(_form.thread_Player)); // thread.IsBackground = true; // thread.Start(); //} <- Line 696 if (Settings.Default.announcePlayers) { string PlayerConnectOrDisconnectMessage = String.Join(" ", message.Split(' ').Skip(2)); if (PlayerConnectOrDisconnectMessage.EndsWith(" disconnected")) { _client.SendCommand(BattlEyeCommand.Say, "-1 " + PlayerConnectOrDisconnectMessage); } else if (PlayerConnectOrDisconnectMessage.EndsWith(" connected")) { string PlayerConnectedString; PlayerConnectedString = System.Text.RegularExpressions.Regex.Replace(PlayerConnectOrDisconnectMessage, @"\(.*\)", ""); // Remove extra spaces. PlayerConnectedString = System.Text.RegularExpressions.Regex.Replace(PlayerConnectedString, @"\s+", " "); _client.SendCommand(BattlEyeCommand.Say, "-1 " + PlayerConnectedString); } } // insert into GUIsettings.cs // //add under line: tooltip.SetToolTip(connectOnStartup.... tooltip.SetToolTip(announcePlayers, "If checked, DaRT will send an announcement in global chat for login and logout of each player."); //add under line: connectOnStartup.Checked = .... announcePlayers.Checked = Settings.Default.announcePlayers; //add under line: Settings.Default.connectOnStartup = .... Settings.Default.announcePlayers = announcePlayers.Checked; // THIS IS NOT SUPPOSED TO BE DONE, BUT IT WOULDN'T WORK UNLESS I manually added this to Settings.Designer.cs //added under lines: //[global::System.Configuration.UserScopedSettingAttribute()] //[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] //[global::System.Configuration.DefaultSettingValueAttribute("True")] //public bool showUnknownChat { // get { // return ((bool)(this["showUnknownChat"])); // } // set { // this["showUnknownChat"] = value; // } //} [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Configuration.DefaultSettingValueAttribute("True")] public bool announcePlayers { get { return ((bool)(this["announcePlayers"])); } set { this["announcePlayers"] = value; } } This is what I've modified. Only other thing is the [Design] for GUIsettings.cs to add the new tab and the checkbox named "announcePlayers". Added this just in case anyone was wondering exactly what I did.
  24. Aussie Cleetus

    Player joins server - announcement

    I have modified the code from: https://github.com/DomiStyle/DaRT and added a new option to DaRT to announce player connected/disconnected via /say -1. You will find a new tab called "Announcers" in Settings. There is currently a single checkbox with the option to announce player login/logout. I can separate these to their own checkboxes if it is needed. I prefer to have both as a single option to toggle. DaRT with Login Feed Announcer I make no claim to the creation of DaRT. All credit goes to the respective developers and contributors of it where due.
  25. Aussie Cleetus

    ADVICE AND GUIDANCE - POST TIPS HERE!

    That doesn't work. Tested it up to 5000 Tonnes. Changing it on the server itself, is pointless, because the client calculates it's own weight, and if there is any form of communication spike, it defaults to the client's calculations. Max stamina still reduces, no matter what you change on the server side
×