Jump to content

falcon911

Members
  • Content Count

    117
  • Joined

  • Last visited

Posts posted by falcon911


  1. Just wanted to pass along some knowledge and maybe someone can fix the symlinks. But I found a old ARMA 3 script for a Windows dedicated server from  a user named tissue901

    (original link: https://forums.bohemia.net/forums/topic/202897-dedicated-windows-server-updater-steam-workshop-and-game/)

    While I got it to work with my server your mileage may vary. 

    This is a  python script to automate updating my Windows Dedicated server. I've only tested it on Python 3.6 but I think it would work for any version. Just update the directories and files section to where your stuff is located.  The "WorkshopItems.txt" file just contains the workshop item number and a human readable string which automatically gets changed to a lowercase name without spaces.  It uses a symbolic link to add the mods to the server's addons folder instead of moving it so updating works without redownloading everything. 

    Update.py

    Spoiler

    import os
    import sys
    from subprocess import Popen, PIPE, CalledProcessError, DEVNULL, STDOUT, check_call
    import glob

    DayzServerAppId = "223350"
    DayzClientAppId = "221100"

    modsDirectory = "D:\\DayzServer\\"
    keysDirectory = "D:\\DayzServer\\keys\\"
    DayzDirectory = "D:\\DayzServer\\"
    steamCMD = "D:\\SteamCMD\\steamcmd.exe"
    steamContentDirectory = "D:\\SteamCMD\\steamapps\\workshop\\content\\" + DayzClientAppId + "\\"
    steamTempScript = "D:\\SteamCMD\\tempUpdateScript.txt"
    steamAuth = "D:\\DayzServer\\Steamauth.txt"
    workshopItems = "D:\\DayzServer\\Workshopitems.txt"

    userLogin = "yoursteamid"
    userPass = "Yourpassword"

    def updateServer():
        print("Updating Server...")
        # Get the users login
        checkUserLogin()
        os.system(steamCMD + ' +login ' + userLogin + ' ' + userPass + ' +force_install_dir ' + DayzDirectory + ' "+app_update ' + DayzServerAppId + '" validate +quit')

    def checkUserLogin():
        global userLogin
        global userPass
        
        if userLogin == "":
            userLogin = input("Steam> Username: ")
        if userPass == "":
            userPass = input("Steam> Password: ")
            
    def copyKeys():
        for filename in glob.iglob(modsDirectory+'**\\*.bikey', recursive=True):
            os.system("xcopy " + filename + " " + keysDirectory + " /s /y")
            
    error = ""

    os.system('cls')

    try:
        with open(steamAuth) as f:
            for line in f:
                info = line.split(" ")
                if len(info) == 2:
                    userLogin = info[0]
                    userPass = info[1]
    except:
        pass

    while True:
        userInput = input("Main Menu \n1. Update Server\n2. Update Mods\n4. Update Keys\n4. Exit\n" + error + ">> ")

        error = ""
        
        if userInput == "1":
            updateServer()
            input("Press any key to continue...")
            os.system('cls')
            
        elif userInput == "2":
            # Get the users login
            checkUserLogin()

            # Clear the temp script
            file = open(steamTempScript, 'w')

            script = "@ShutdownOnFailedCommand 1\n"
            script += "@NoPromptForPassword 1\n"
            script += "login " + userLogin + " " + userPass + "\n"
            script += "force_install_dir " + DayzDirectory + "\n"

            mods = {}

            # Loop through each item in the workshop file
            with open(workshopItems) as f:
                for line in f:
                    modInfo = line.split(" ", 1)
                    steamWorkshopId = modInfo[0].strip()
                    modName = modInfo[1].strip()
                    modFolder = "@"+modName.replace(" ", "_").lower()

                    mods[steamWorkshopId] = {"name": modName, "folder": modFolder}
                    
                    script += 'workshop_download_item ' + DayzClientAppId + ' ' + steamWorkshopId + ' validate\n'

                    # Make a link to the downloaded content (way better than moving...)
                    symLink = modsDirectory + modFolder
                    if not os.path.exists(symLink):
                       os.system('mklink /J ' + symLink + ' '"D:\\Dayzserver\\steamapps\\workshop\\content\\221100\\" + steamWorkshopId + '\n')

                       

            script += "quit"
             
            file.write(script)
            file.close()

            # Run the script
            print("\n=====================================\nLogging into Steam...\n=====================================")
            
            with Popen(steamCMD + " +runscript " + steamTempScript, stdout=PIPE, bufsize=1, universal_newlines=True) as p:
                for line in p.stdout:
                    line = line.strip()
                    if line != "":
                        if line.find("Downloading item") != -1:
                            downloadingLine = line.split("Downloading item")
                            if downloadingLine[0]:  
                                print(downloadingLine[0])

                            try:
                                modIdLine = downloadingLine[1].strip().split(" ")
                                steamWorkshopId = modIdLine[0]
                                print("\n=====================================\nDownloading "+mods[steamWorkshopId]["name"] + " ["+str(steamWorkshopId)+"]...\n=====================================")
                            except:
                                pass
                                
                        else:
                            print(line)
            
            # Automatically copy bikeys over
            print("\n=====================================\nCopying addon keys...\n=====================================")
            copyKeys()
            
            input("\nPress any key to continue...")
            os.system('cls')
     
        elif userInput == "3":
            # Search for any bikeys and copy them into keys folder
            copyKeys()
            input("Press any key to continue...")
            os.system('cls')
        elif userInput == "4":
            sys.exit(0)
        elif userInput == "":
            os.system('cls')
        else:
            error = "[ERROR] Unknown choice. Try again\n"

     

    WorkshopItems.txt

    Spoiler

    1630943713 Cl0ud_s_Military_Gear
    1578593068 VanillaPlusPlus
    1618400392 Better Combination Lock
    1640091454 BleedTrail
    1679548482 CityNames
    1646187754 CodeLock
    1633286229 DayZPlus_Guns
    1571965849 DisableBaseDestruction
    1608798126 DisableUnmountBarbedWire
    1566911166 Mass_sManyItemOverhaul
    1665663702 MoreGuns
    1559212036 RPCFramework
    1627811046 SpookArmbands
    1590841260 Trader
    1559317235 WeaponReduxPack
     

     

    Note: If you happen to be good with Python scripting and you take a look at the original vs what I had to adjust above: You will notice that line (94 or 96 I believe) 

    os.system('mklink /J ' + symLink + ' '"D:\\Dayzserver\\steamapps\\workshop\\content\\221100\\" + steamWorkshopId + '\n')

    The symlink was not working from the original. I send a email to the dev. but have gotten no response as of yet. Maybe someone else could give it a go and correct it.  Either way match or adjust your folder structure accordingly. 


  2. On 1/2/2019 at 11:02 AM, g4borg said:

    i also hope that it is only for tent spawns, not pitched tents.

    but i am out of explanations otherwise. does not really invite to play on, if things just disappear. at least tents should not suddenly go away. unfortunately, without database, like in the past, you can't really just respawn it :(

    otherwise the "min" value is the one which is spawned definitely. so i kinda read "nominal" as the "max" amount. 

    Nope...Affects Fences, Barrels, Generators. My admins built their own bases and after about 4 days it was gone. It's REALLY hard for me to push my community to play Dayz SA at this point. I think we will head back to SCUM. 


  3. Hoping that one of the devs can chime in on this one. Not sure if you have seen about ALIVE and how it functions would be useful in your application for the Dayz hive structure currently in place. While I would think this would be a huge advantage for your modification to Dayz Stand Alone for your "Network bubble" issue you're running into with objects and the sheer amount of objects your spawning in. Unfortunately, I believe the Dev's would need to  rework the structure of the PDB for Dayz all together in order to make this function properly. 

     

    While I have no knowledge on the timelines you're placing on your team on or how your current testing structure is being played out. Just wanted to throw out some ideas and start the thinking outside the box. 

     

    Thoughts? 


  4. More information at http://www.survivaloperations.net/topic/5377-dayz-hard-corps-now-open-beta/

     

    :: what is hard corps ::

    ACE

    CBA

    DayZ

    JSRS

    Robert Hammer

    Pook Mods

    Shack Tactical Mods

    Dayz 1.8 features

    'updating occurs to keep relivent'


     

    :: how do i get hard corps ::


    Download sixupdater classic from HERE.

    Then, once installed create a new preset with this address as the repo source: Install video coming soon

     

    :: how do i find the server ::

    Filter for: HARD CORPS


    :: how do i report bugs ::


    GitHub


    :: how do i survive on hard corps ::

    You don't.


    :: check out your stats ::

    http://www.survivalo.../HardCorpstats/


  5. I had never said it hadn't been done before, in fact I said it had been done before. Also, this runs a different name with different mods. Credit can be given for your idea of ACE and DayZ, but we are not Revamping Hardcorps, but completely redoing the concept. If you feel that we are copying Hardcorps, I am sorry, but all we want to really do is continue playing something that we love.

     

    All of this will be added, the fatigue is being worked on to prevent you passing out every minute and being attacked by the horde :P

    Like I said I have no problem with what you're doing. Hell I encourage it. The more DAYZ mods that come out with ACE will only help and fuel the realism. The point was exactly what you stated. It's was done and tried and in some ways succeeded. 

     

     "whu's done it first".

     

     

    lol.. OK whu are you???  Lets see I'm going to try and dumb this down for you to understand. Why not try your excellent edjumatication skills you learned on how to type and proofread before you hand in your homework and type onto a properly indicated grammer base and you too might get praise. Hell, your school really deserve the praise now for the excellence they gave you.

     

    Also your reading skills need to work. Please read this whole topic (All of them above) out loud 6 times and then it might come to you that you made my point. 

     

    I believe the only version of ACE + DayZ you guys had running was 1.7.2. Then you guys tried to update to the new DayZ code but failed. There has been tons of suggestions for ACE + DayZ before survival operations was up, and you cannot take credit for an idea of two mods you did not make.

     

    1.7.6.1 Kar was the last version you played with/on bud. Also your right, ideas were always out there. But no one did a proof of concept on a multiplayer scale except for SO. 


  6. You know Conor, I have no problem  with what you guys are trying to do. But at least give credit where credit is due here in this topic post or within your posts.. SurvivalOperations.net first came up with the idea and provided that mod that completely reintergrated Dayz to work with ACE.

    Proof: Check out the link below in DDG's video... Tell me what website it states there. 

     

    http://www.youtube.com/watch?v=-xiB6F9c9CY

     

    Sgt Mac of Survival Operations worked his ass off on the mod and kept it going up and until this April when we lost intrest from him due to personal reasons and everyone even you guys decided to complain about how the lack of player base was running on the mod. No one stepped up to try and take the reins and if so brought it to my attention nor offer your assistance as you are here on helping revamp the HardCorp to where you all wanted it.Yes I did add a few features that I thought would help spark the interest (SARG_AI), which proved to be a overwhelming no from the community for it to be added.So I took it out and nothing else came of it. Also, please make sure that you do include that your group you run with was included in the progression of Dayz 1.7.6.1 with ACE mod when it was in development. Now you have the gall to come here and state that is of new interest?

     

    My point is while you state this is new feature of Dayz needs to be been tried..please include the survival operations DID get it running and not only on Chernarus but also Taviania. We are in the process of getting the Hard Corp up and going again with a new Mod designer who is coming up with some great ideas up to and including new style of barracks as well as features never before seen on Dayz. Also Sgt Mac is making a come back and also assisting where needed. We are hoping to get the community the client side files out soon. 

     

    http://www.survivaloperations.net/topic/4968-hard-corps-a-breath-of-life/

     

    Good luck in your endeavors, just remember who came up with this idea/proof of concept first.


  7. Updated today, but still have a few issues.

    Third person view, can't see yourself.

    Running appears to be somewhat slow.

    Joining the server after updating, started as a fresh spawn even though wasn't dead before.

    Might be in part an issue with Bliss not being updated, but Ayan is a dick and you can't tell him anything is bugged with Bliss. He has the attitude his shits fine, and he just bans people from posting on github for posting bugs. And once tohers post the same issue, he still thinks it's everyone elses fault.

    Whoaaa....Just because you can't read and follow instructions does not mean that you need to get uppity on reasons why he closes out the posts on some issues that have been asked 3 to 4 times already.Bliss is not a cookie cutter program and god forbid you have to WORK for being an admin.. You call him a dick before looking in the mirror and looking that the issue may not be with him but with you. Learn SQL or at least how ARMA 2 works before going over and posting that X is broke and you need to fix it attitude. Hell yeah I would ban you to if you came at me with that attitude too.

    Also you main issue is that .72 is not supported as of yet as Jean has pointed out...

    IRC is there for you to ask your questions. IRC: irc.thekreml.in #bliss


  8. New anti-cheat features? how about banning people who aren't hacking, not by the hundreds of cd-keys, but by the thousands. Sounds like a money maker for Bohemia Interactive, wonder if BattlEye gets kick backs for every cd-key banned. (I was banned for no reason after 6 hours of gameplay, first time playing, never received a reason, just got a Global Ban, I never downloaded any other files other than the DayZmod, Arma 2, and Arma 2: OA. Thats IT!.)

    I suggest that everyone just implement scripts to check for hacked items rather than having a program that scans more than just arma 2's memory space.

    BattlEye has been banned in all US federal institutions. Because programs like BattlEye, wow's guardian, etc.. go too far, they invade peoples privacy, whats next, does BattlEye start using your webcams?

    if BattlEye detects a virus on your system does that automatically ban you from all servers? there REALLY is no way to know. BattlEye has no details on what it detects, and what it does not, nor does it tell you what it does not scan.

    BattlEye neglects to say all of the ways one can be banned, it really seems like a dictatorship, BattlEye would seem more at home in China? no?

    Got a real simple solution for you. Uninstall. We can have the admin delete your account here so you will not be traced anymore and we will not have to put up with your crazy "Big brother is watching" attitude. Battleye did it's job on getting your lazy ass that wanted a free Cd-key to play. Now if you legally bought the two ARMA programs you can get Valve to talk to BE and get you a new key.

    You have no idea what a dictatorship means you little brat.

    • Like 1

  9. Thanks for the great map. Myself and the guys I play with are really enjoying it, amazing the amount of detail you've put into it.

    BUG REPORT: Warm weather clothes are not allowing people to access vehicles to others. Example, If I am wearing the warm clothes skin, and I get into a vehicle in any position, no one can access it after until I exit. This includes any position and the gear menu. All other skins seem to function normally. Really hope you've already found a fix for this and it will be included in your next release.

    BUG REPORT: Add onto this: Personnel in Winter Clothing cannot be bloodbagged..

×