Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 01/02/23 in all areas

  1. 2 points
    TolH

    Simple Server -LogReader- in python

    If you are like me and love to make random Arma3 server for fun "LOCALLY". And/or making scripts and want to look for errors or whatever without opening the .rpt manually to keep track of your errors, then you can use this, made in python to stream your .rpt live on a second screen to see whats going on? Then maybe you will find an utility for it. What is this script doing ? Well it's main function is to constantly stream your server .rpt in a seperate window to keep track of anything you like. Right now i use it to see any errors and copy the errors to a file when found. It also copy "tickets" or "idea" from a function i have on the server to a file. Can be expanded to suit your need for anything you like if you know a tiny bit of python like i do. Video link: The script: Can be easily tested in VSCode, to get a cmd prompt like in the video, you will need some setting on opening a .py file. #//=======================================================// import sys, time, os, glob#, psutil #//=======================================================// # §§§ CONFIGS START HERE §§§ #//=======================================================// # # (SET YOUR OWN PATH TO SERVER .rpt FILE!) AUTO OPEN LATEST CREATED .RPT FROM SERVER, NO FILE NEED TO BE CREATED! Server_RPT_location = 'D:/SteamLibrary/steamapps/common/Arma 3/SC_0908_MAIN/*.rpt' # (SET YOUR OWN PATH TO SERVER .err FILE!) YOU HAVE TO CREATE THE FILE FIRST! Error_logs = 'D:/SteamLibrary/steamapps/common/Arma 3/SC_0908_MAIN/-=ERRORS_LOGS=-.err' # (SET YOUR OWN PATH TO SERVER .tck FILE!) YOU HAVE TO CREATE THE FILE FIRST! Tickets_logs = 'D:/SteamLibrary/steamapps/common/Arma 3/SC_0908_MAIN/-=TICKETS_LOGS=-.tck' # #//=======================================================// # §§§ CONFIGS END HERE §§§ #//=======================================================// os.system("") class ColorStyle(): RED = '\033[91m' GREEN = '\033[92m' BLUE = '\033[0;94m' YELLOW = '\033[0;93m' BLACK='\033[0;90m' PURPLE='\033[0;95m' CYAN='\033[0;96m' WHITE='\033[0;97m' RESET = '\033[0m' #//=======================================================// print (ColorStyle.YELLOW + ''' ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ | | | | | | | | | | | | | _ _____ _ _____ _ _ | | | __ \ | | / ____| (_) | | | | ___ __ _| |__) |___ __ _ __| | ___ _ __ | (___ ___ _ __ _ _ __ | |_ | | / _ \ / _` | _ // _ \/ _` |/ _` |/ _ \ '__| \___ \ / __| '__| | '_ \| __| | |___| (_) | (_| | | \ \ __/ (_| | (_| | __/ | ____) | (__| | | | |_) | |_ |______\___/ \__, |_| \_\___|\__,_|\__,_|\___|_| |_____/ \___|_| |_| .__/ \__| __/ | | | |___/ |_| |______|______|______|______|______|______|______|______|______|______|______|______| ''') #//=======================================================// array_char_sel = ['.',':'] time_cnt = 0 log_delay = 30 #wait 15 seconds so server can create .log files first before starting main loop sys.stdout.write('Loading latest Arma3_server log:') # for tick_range in range(log_delay): sys.stdout.write (array_char_sel[0]) sys.stdout.flush() time.sleep(0.5) time_cnt = time_cnt + 1 # if (time_cnt == log_delay): sys.stdout.write (array_char_sel[1]) print(ColorStyle.GREEN + "\n") # # #//=======================================================// open_Server_RPT_location = open(max(glob.glob(Server_RPT_location),key=os.path.getctime), 'r') #read latest .rpt log file from server keep_reading_loop = 1 read_speed = 0.010 #DEFAULT 0.010 #//=======================================================// # SERVER HAS BEEN STARTED AND LOGS SHOULD BE AVAILABLE, STRATING LOOP while (keep_reading_loop == 1): # Server_RPT = open_Server_RPT_location.readline() #read latest .rpt file from server open_Error_RPT_location = open(Error_logs, 'a') #append latest .err errors file from server write_Tickets_logs = open(Tickets_logs,'a') #append latest .tck tickets file from server # #if Server_RPT.isascii(): #Returns True if all characters in the string are ascii characters if Server_RPT.find(":") != -1: time.sleep(read_speed) print(Server_RPT.strip ("\n")) # if (Server_RPT.find("ERROR") != -1) or (Server_RPT.find("Error") != -1) or (Server_RPT.find("error") != -1): print(ColorStyle.RED + Server_RPT.strip ("\n") + ColorStyle.GREEN) open_Error_RPT_location.write("%s %s" % (time.strftime("%Y-%m-%d %H:%M"), Server_RPT)) # if Server_RPT.find("PLAYER CONNECTED") != -1 or Server_RPT.find("PLAYER DISCONNECTED") != -1 or Server_RPT.find("SL_Zeus") != -1: print(ColorStyle.BLUE + Server_RPT.strip ("\n") + ColorStyle.GREEN) # if Server_RPT.find("TIMSBR SUBMITBOX:") != -1: print(ColorStyle.YELLOW + Server_RPT.strip ("\n") + ColorStyle.GREEN) write_Tickets_logs.write("%s %s" % (time.strftime("%Y-%m-%d %H:%M"), Server_RPT)) # if Server_RPT.find("Class CBA_Extended_EventHandlers_base destroyed with lock count") != -1: keep_reading_loop = 0 # else: #Arma3server_Running = "arma3server_x64.exe" in (p.name() for p in psutil.process_iter()) time.sleep(0.5) #if (Arma3server_Running == False): #keep_reading_loop = 0 # #//=======================================================// open_Server_RPT_location.close() open_Error_RPT_location.close() write_Tickets_logs.close() loopEnded = input(ColorStyle.RED + ' -=============(ARMA3 SERVER IS NOT RUNNING OR CRASHED!!! Press enter to exit or restart)=============-' + ColorStyle.RESET) #//=======================================================// # TODO ADD CHOICE TO EITHER EXIT OR RESTART THE SERVER #os.startfile('D:\SteamLibrary\steamapps\common\Arma 3\SC_0908_MAIN\LogReader_Server.py')
  2. 1 point
    Airwaves Man

    Epoch 1.0.7.1 Release

    This is the official Epoch 1.0.7.1 Release. Thanks to everbody who took part on this especially helion4, Victor the Cleaner and iben. Changelog: https://github.com/EpochModTeam/DayZ-Epoch/blob/Release_1.0.7.1/CHANGE LOG 1.0.7.1.txt Client Files: https://drive.google.com/file/d/19iCJevU008g311vsxJNR0PjYmkSv36YK/view Server Files: https://drive.google.com/file/d/1jDn86sfTwcRae4NZgHK76k_CaY1jOUP2/view Password Server Files: 123456
  3. 1 point
    craftAnything for DayZ Epoch 1.0.7.1+ A script I originally wrote for TLF servers, but with their permission I am releasing to the public to celebrate getting the A2 Community Dev role in the Epoch Discord. This script allows you to add a ton of craftable items to your server. It is super modular, and takes up very little space. It is also very easy to configure. You can add as many configs as you want. TLF has come up with about 40 custom crafting configs, I have included their turret configs in the example configVariables.sqf file. Installation & Setup Download the code as a zip file here https://github.com/ZzBombardierzZ/DayZ-Epoch-CraftAnything/archive/refs/heads/main.zip Copy the craftAnything.sqf file into your mission folder, inside of a "scripts" folder. Example: "ServerRoot\mpmissions\DayZ_Epoch_11.Chernarus\scripts\craftAnything.sqf" In configVariables.sqf, find the DZE_CLICK_ACTIONS array and add the desired configs to it. See the example configVariables.sqf file for more info. Go into the newly created craftAnything.sqf file and edit the "CONFIG SECTION" to your liking. Read the comments in the file for more info. Battleye Filters If you are using Battleye on your server, you will need to update your scripts.txt file to allow the script to run. I am not going to provide a list of filters unfortunately. It is fairly easy to do yourself. You can look at OpenDayz Guide to BattlEye to learn more about BattlEye filters and use eraser1's BE_AEG to generate scripts.txt filters automatically. Credits As mentioned before, I originally wrote this script for TLF servers. I would like to thank them for allowing me to release this to the public. I would also like to thank the Epoch Discord community for their help and support and for giving me the opportunity to become a Community Developer. License There is none. But please give credit where credit is due. If you do use this script, please let me know. I would love to see what you do with it. Contact If you have any questions, comments, or concerns, please feel free to contact me on Discord at ZzBombardierzZ#5945 or in the Epoch Discord server. Changelog v1.0.0 - Initial release
  4. 1 point
    Thanks for sharing this. It's nice to see members still contributing to the community. - Cheers
  5. 1 point
    DirtySanchez

    Simple Server -LogReader- in python

    Looks good thank for the share
  6. 1 point
    To ulock map and delete "artefacts" on map in init.sqf, on buttom add this: {_x animate ["ani_door1",1];}count(nearestObjects [getMarkerPos "center", ["Land_tav_HouseBlock_D1_ex2"],18000]);
  7. 1 point
    olegator

    [RELEASE] WAI 2.2.6

  8. 1 point
    https://disk.yandex.by/d/jU-JJ8WamTrKc
  9. 1 point
    Updated for Epoch 1.0.7.1+: https://github.com/AirwavesMan/ESSV3 Old 1.0.6.2 https://github.com/ebayShopper/ESSV3
×
×
  • Create New...