Reality DayZ Inventory Manager (C#)

Discussion in 'Server / Admin Tools and Discussions.' started by thevisad, Dec 21, 2012.

  1. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    Due to a security concern and blatant IP theft, this software will be receiving an emergency update later today. All existing owners will receive an email on the steps to claim a new license. I apologize in regards to this, but due to the act of the individual listed below, this is a mandatory update.

    http://opendayz.net/threads/net-player-movement-part-1.21267/

    Just a little something I have been working on for a bit. This is written in C# and is a stand alone application for managing the databases for any and all Bliss systems. This is deployed via a setup package and the settings are saved in the registry for the database. The software will check if there is an update when it launches and there is a check update feature built into the tool.


    If you’ve enabled scaling on your machine and the images in the application scaled funny, you may want to disable display scaling for this application. To do this, right-click the application’s shortcut and then click Properties. On the Compatibility tab, select Disable Display Scaling On High DPI Settings, and then click OK.


    How to setup your database properly
    Insert your database IP or hostname that your service provider gives you.
    Insert your username and password, for HFB the username should be the same as your database name.
    Insert your Database Port as provided.
    Click save.
    Insert your database name and click Add (add all of your databases as needed), then click save.
    Bliss and non Reality builds will get a "Not our Reality" notification.
    How to save a default Loadout
    Launch the application, select the database you want to work with.
    Select your character/loadout or fillout your inventory that you want to assign the default loadout too.
    Go to the loadout screen and select Default Loadout. This is now your servers default loadout.
    How to use the Loadout -> Survivor Inventory system
    Launch the application, select the database you want to work with.
    Select your character that you want to assign a loadout to.
    Go to the loadout screen and choose the loadout to assign.
    Click on Assign Loadout and the user will be assigned that loadout.
    How to Use the Survivor -> Loadout Inventory System
    Launch the application, select the database you want to work with.
    Go to the loadout screen and choose the loadout to modify or add a new one to the system and select this.
    Goto the inventory screen and select your character that you want update a loadout from.
    Go back to the loadout screen and click on Save Loadout.
    How to Use the Survivor Inventory System
    Launch the application, select the database you want to work with.
    Select your character from the list.
    Fill out the characters inventory and backpack as desired.
    Click the Save Inv button to save the inventory to the users survivor.
    How to use the Loadout Inventory System
    Launch the application, select the database you want to work with.
    Goto the loadout screen and either select a load out or add a new one.
    Goto the inventory screen and without selecting a character, fill out the inventory.
    Go back to the loadout screen and click on Save Loadout. The loadout is now setup in the database with the inventory you selected.
    Download HNGamers DayZ Inventory Manager here!

    System requirements
    Windows Installer 3.1
    Microsoft .Net Framework 4 Client Profile (x86 or x64)
    Database Access to the Bliss Server
    UAC Disabled OR "Run as Administrator"

    Current Features (funtional)

    New Player database screen showing all aspects of the players/survivors
    Loads all Bliss databases that are stored in the primary database
    Loading/Saving of Backpack slots.
    Loading of inventory slots with characters inventory.
    Assigning/Adding/Deleting load outs
    Adding/Deleting/Saving databases (registry)
    Import/Export/Update/Save/Restore Default Skins items (registry and local disk for backups)
    Import/Export/Update/Save/Restore Default Inventory items (registry and local disk for backups)
    Completely customizable inventory(allows custom server items to be loaded)
    Identified the space requirements in inventory for all items, blacks out inventory items based on space requirements.
    Correctly identifies the backpack spaces and reloads based on backpack size.
    Load any database and import all users in the database.
    Clickable inventory slots, making loading inventory a breeze.
    Editable inventory list for managing your own custom inventory.
    Loading the custom load outs on the server.
    Saving inventory to Player database
    Saving inventory to load out database
    Identifying if player has an alive survivor and loading that survivors ID.
    Loading inventory space based on backpack selected
    Donation screen with direct access to the Paypal site via the tool.
    Changelog in the program
    New Auto Updater to resolve issue with Registry settings
    Web updater for Skinz/Inventory system


    In Development features (semi or non functional atm)
    Adding items with multiple clicks.
    Map Locator for character world location


    Known Issues
    None?












    Video load out written to the character and to the custom load out table.

    Code:
    [["Binocular_Vector","bizon_silenced","NVGoggles","M9SD","ItemWatch","ItemCompass","ItemFlashlight","ItemMatchbox","WeaponHolder_ItemHatchet","ItemKnife","ItemToolbox","ItemFlashlightRed","ItemGPS","ItemMap","ItemEtool"],["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","ItemBandage","ItemBandage","ItemBloodbag","ItemAntibiotic","20Rnd_762x51_DMR","30Rnd_545x39_AK","ItemMorphine","HandChemGreen","ItemHeatPack","ItemEpinephrine"]]
    

    Video backback currently written to player and custom load out.

    Code:
    ["DZ_Backpack_EP1",[["ItemToolbox"],[ 1]],[["HandChemGreen","30Rnd_545x39_AK","15Rnd_W1866_Slug","HandChemBlue","FoodCanPasta","8Rnd_9x18_Makarov","ItemAntibiotic","ItemBloodbag","ItemMorphine","ItemEpinephrine","ItemHeatPack","ItemBandage","HandRoadFlare"],[ 1, 4, 3, 1, 1, 3, 1, 2, 1, 1, 1, 2, 2]]]
    
     
    Last edited: Jan 27, 2015
  2. Seven

    Seven Moderator Staff Member

    Joined:
    Dec 16, 2012
    Messages:
    277
    Likes Received:
    86
    Very nicely done. Only thing that would bother me is having to click each slot to assign a new item to it, too much back and forth.
    Maybe change the add item button to actually add an extra item, and if you click a slot it would highlight it for editing.
     
  3. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    Hmm, not a bad idea, it does get a bit tedious filling out the inventory. Especially, if you have to do it multiple times for varied people.
     
    Bilbo524 likes this.
  4. Falcon911

    Falcon911 Well-Known Member

    Joined:
    Nov 9, 2012
    Messages:
    119
    Likes Received:
    5
    Nice can't wait to implement.
     
  5. Zim

    Zim New Member

    Joined:
    Jan 2, 2013
    Messages:
    6
    Likes Received:
    0
    This looks amazing, could we get a status update?
     
  6. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    I have been really busy so I have not had a lot of time to work on this until today. I am hoping to be able to finish a lot of the functionality over the weekend. I could provide a download with the knowledge that it is very early alpha at this point and therefore has a few bugs.
     
    Bilbo524 likes this.
  7. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    Updated main post with a new image of an updated gui. The inventory gui looks the same, minus the database/loadout section. I broke out all of the inventory/database/loadout options onto a new screen. Previously this all loaded via config files, it is now saves all configs in the registry. Since this is installed via OneClick application, any modifications to the config file would be lost after update, causing all the work to have to be redone. With this change, the program updates and all configs simply go across to the new install.
     
    Bilbo524 likes this.
  8. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    • Added inventory management
    • Added Skin management
    • Added Database management
    • Corrected some issues with the tool not properly identifying space requirements
    • Added Loadout Manager to assign/unassign users from loadouts and add and delete load outs
    • Added ability to export custom lists for skins and inventory
    • Added new backpack loading system to correctly identify and load up all inventory positions
    • Corrected minor spelling issues throughout the gui
     
    FallingSheep and Bilbo524 like this.
  9. Bilbo524

    Bilbo524 Member

    Joined:
    Dec 24, 2012
    Messages:
    33
    Likes Received:
    0
    My system meets the prereqs and I have UAC disabled.

    Below is an error I get when launching this application. Any help would be appreciated.

    Code:
    ************** Exception Text **************
    System.NullReferenceException: Object reference not set to an instance of an object.
      at DayZInventoryManager.DayZInventoryManager.loadSkinz()
      at DayZInventoryManager.DayZInventoryManager.Form1_Load(Object sender, EventArgs e)
      at System.Windows.Forms.Form.OnLoad(EventArgs e)
      at System.Windows.Forms.Form.OnCreateControl()
      at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
      at System.Windows.Forms.Control.CreateControl()
      at System.Windows.Forms.Control.WmShowWindow(Message& m)
      at System.Windows.Forms.Control.WndProc(Message& m)
      at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
      at System.Windows.Forms.Form.WmShowWindow(Message& m)
      at System.Windows.Forms.Form.WndProc(Message& m)
      at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
      at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
      at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
     
     
    ************** Loaded Assemblies **************
    mscorlib
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.296 (RTMGDR.030319-2900)
        CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
    ----------------------------------------
    System
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.296 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    DayZInventoryManager
        Assembly Version: 1.0.0.0
        Win32 Version: 1.0.0.0
        CodeBase: file:///C:/Users/USERNAME/AppData/Local/Apps/2.0/5NDMWCXM.KTL/C1C99XBC.4H9/dayz..tion_a52b42dec56126e9_0001.0000_35ea6c30c733784f/DayZInventoryManager.exe
    ----------------------------------------
    System.Windows.Forms
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.278 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System.Drawing
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.282 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
     
  10. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    Run the application again and it should update. I believe I left a registry check unset during this last build.
     
    Bilbo524 likes this.
  11. Bilbo524

    Bilbo524 Member

    Joined:
    Dec 24, 2012
    Messages:
    33
    Likes Received:
    0
    Update did not help. Uninstalled and then installed fresh, no difference. Current error looks exactly the same, but is included below just in case there is a small difference I missed. (FYI, I am replacing my username with USERNAME in the error message for security reasons.)

    Code:
    ************** Exception Text **************
    System.NullReferenceException: Object reference not set to an instance of an object.
      at DayZInventoryManager.DayZInventoryManager.loadSkinz()
      at DayZInventoryManager.DayZInventoryManager.DayZInventoryManager_Load(Object sender, EventArgs e)
      at System.Windows.Forms.Form.OnLoad(EventArgs e)
      at System.Windows.Forms.Form.OnCreateControl()
      at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
      at System.Windows.Forms.Control.CreateControl()
      at System.Windows.Forms.Control.WmShowWindow(Message& m)
      at System.Windows.Forms.Control.WndProc(Message& m)
      at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
      at System.Windows.Forms.Form.WmShowWindow(Message& m)
      at System.Windows.Forms.Form.WndProc(Message& m)
      at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
      at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
      at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
     
     
    ************** Loaded Assemblies **************
    mscorlib
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.296 (RTMGDR.030319-2900)
        CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
    ----------------------------------------
    System
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.296 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    DayZInventoryManager
        Assembly Version: 1.0.0.0
        Win32 Version: 1.0.0.0
        CodeBase: file:///C:/Users/USERNAME/AppData/Local/Apps/2.0/5NDMWCXM.KTL/C1C99XBC.4H9/dayz..tion_a52b42dec56126e9_0001.0000_2e2792a75ece514f/DayZInventoryManager.exe
    ----------------------------------------
    System.Windows.Forms
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.278 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System.Drawing
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.282 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    System.Management
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Management/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Management.dll
    ----------------------------------------
     
  12. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    • Worked with Bilbo524 to identify an issue with the registry writing.
    • Fixed a small bug with the donation system not setting the proper ID for the computer.
    • Identified a potential issue in Kaspersky stopping the application from writing to the registry.
     
    Bilbo524 likes this.
  13. Bilbo524

    Bilbo524 Member

    Joined:
    Dec 24, 2012
    Messages:
    33
    Likes Received:
    0
    I have had the privilege of testing the newest builds of this tool as thevisad finishes them, and I must say once the polishing is done this will be THE tool for any inventory-related tasks as a server admin. That's not to say that it isn't great now, because it is. It's amazing that it will only get better :)

    Thanks to thevisad for all the hard work!
     
  14. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    Update 1.5

    1. Corrected issue with the inventory updater not updating the selected item properly
    2. Corrected issue with the skinz exporter not exporting the proper data
    3. Corrected mutliple visual issues with the gui forms
    4. Implemented Web updater for Skins
    5. Implemented Web updater for Inventory
    6. Added code for downloading DayZ+ and rMod inventories (ongoing development)
    7. Implemented a clear slot button to remove specific inventory items
    8. Finalized the loading and saving of the backpack inventory
    9. Major corrections to the backpack inventory loading
    10. Implemented loading the Loutout inventory into the GUI
     
    Bilbo524 and zedar like this.
  15. Phenom

    Phenom Well-Known Member

    Joined:
    Nov 22, 2012
    Messages:
    104
    Likes Received:
    16
    Nice tool, one of the most professionally looking apps I've seen written for dayz.
     
  16. BertxSmash

    BertxSmash Member

    Joined:
    Jan 15, 2013
    Messages:
    66
    Likes Received:
    5
    When I load this it says I am not Admin, and it says please elevate this application.
     
  17. Strikes

    Strikes Well-Known Member

    Joined:
    Jan 7, 2013
    Messages:
    154
    Likes Received:
    4
    I'm attempting to get this up and running today for the first time... the program updated and loaded great but it's not making any kind of 'connection' to my DB.

    I've tried some of the obvious in the Database IP: localhost/127.0.0.1 and even the actual IP of the dedicated box.

    The user/pass are correct of course and I've made sure to use the port I need (it's not the default).

    I then go to the pull down and select 'bliss' and hit the save button.

    Then I went down to the 'DayZ Databases' area and deleted 'dayz'; then typed in my DB name below and hit 'save'. It now shows up in pull-down menus but that's about as far as I can get.

    None of the "userID" fields are populating with any data.. the only feedback I get is "Cannot Connect to server. Contact administrator"
     
  18. Strikes

    Strikes Well-Known Member

    Joined:
    Jan 7, 2013
    Messages:
    154
    Likes Received:
    4
    I changed some permissions that were missing; now I get "Unable to connect to any of the database servers. Contact Administrator." Going to try a few more things...
     
  19. thevisad

    thevisad Moderator Staff Member

    Joined:
    Dec 18, 2012
    Messages:
    627
    Likes Received:
    160
    @BertxSmash - right click on the shortcut and choose run as administrator. This is mentioned in the system requirements above.
     
  20. Strikes

    Strikes Well-Known Member

    Joined:
    Jan 7, 2013
    Messages:
    154
    Likes Received:
    4
    Tried a few more things on my end... still can't get anything to show up/connect to our DB.
     

Share This Page