Category: Uncategorized

  • Brutally Awesome Apps from Brutal Damage

    Brutally Awesome Apps from Brutal Damage

    Since beginning my foray into the world of tabletop gaming, I have consumed a great many ‘Battle Reports’. Otherwise known as recordings, either pre-recorded or streamed, of people playing said tabletop games.

    One battle report producing channel, Brutal Damage, seems to have a rather tech savvy bunch that have designed both a score-clock app and a social media generator. After learning about the app and generator, I took to poking at both and have some results to share.

    Social Media Generator

    The social media generator is rather neat. Just a few tweaks to change fonts and colors and a couple custom template images and you have some easy, branded media to pimp your streams.

    Custom template images, custom font, and handful of edits and BAM!

    In order to use the generator you will need:

    • Python 3.7.1 – I am not going to go into a Pythin tutorial here, there are plenty of others that have tread hat ground before.
    • Image Magic ( x86 or x64 ) – Just install it. The script interacts with it to manipulate the images.
    • Wand Libraries – type “pip install wand” in a command line or Powershell. This is what lets Python talk to Image Magic.
    • Click Libraries – type “pip install click” in a command line or Powershell. Their ReadMe doesn’t mention this, but I had to grab it as well.

    The generator can be found here: https://github.com/brutaldamage/graphic-builder

    Dual Attack App

    The Dual Attack app that was put out by this group is awesome. It is built rather specifically for Warmachine, though. Static time ranges. Can’t change points until Turn 2B. I don’t think it would take much tweaking to make it a tad more generic and work for many games.

    One reason they designed the app was to serve the game state data to a web page that can be rendered in a broadcast application and customized with CSS to fit your overlay. And it works rather well.

    After learning about the Dual Attack app I began playing with it and Open Broadcast Software Studio (OBS). I then remembered how bad I am at CSS. I poked around and discovered they are providing the data to the webpage via JSON. Knowing that, I knew I should be able grab that data myself. So I dusted off my Python (read Google) skill and whipped up a little script to grab the app data and dump them into text files for OBS to pull. It works rather well, even if I do say so myself. There is a momentary blanking of some of the fields in OBS due to what I imagine are read/write collisions. A better programmer might add some protection for such things, but I am not that programmer. I prompted for the IP…isn’t that enough? Here is a haphazard demo of it in action…

    My script is provided at the end of this post.

    The Dual Attack app particulars that thus:

    In closing…

    I have no idea if i will ever put any of this stuff to proper use, but was intrigued by the idea and the potential that it felt blog-worthy. So intrigued, in fact, that i cranked out a whole LargeGeek branded bat-rep setup in OBS…

    And a big thanks to Brutal Damage for sharing these tools and producing solid Bat-Reps! I plan to follow up this post with another post and maybe a video as a crash course in OBS as there are a few quality of life things that are not immediately apparent that I absorbed in researching all this.

    My Script:

    # This is a little Python script to be using in conjunction with the 'Dual Attack' score clock app.
    # It will generate separate files for each piece of data that the app tracks.
    # You can point text sources to these files in Open Broadcast Software to track game state on an overlay.
    # I am by no means an expert on any of this, so do what you will with it.
    # It seems to work well enough for me, with a momentary blanking on OBS when there are write/read collision.
    
    import urllib.request
    import urllib.error
    import json
    from time import sleep
    
    
    svrIP = input('Enter Server IP: ') # Ask user to input server IP
    server = "http://"+svrIP+":8080/data" # Build full address
    print('Currently generating Dual Attack files...\nCTRL+C to quit') # Print instructions
    
    # Main function to do all the work
    def file_gen():
        with urllib.request.urlopen(server) as url: # Look at server and dump json into jdata
            jdata = json.loads(url.read().decode())
            
            #Build individual variables for each json object
            jTurn = jdata["score"]["turn"]
            jTime1 = jdata["timer1"]
            jTime2 = jdata["timer2"]
            jCp1 = jdata["score"]["cp1"]
            jCp2 = jdata["score"]["cp2"]
            
            #Write data to each file
            wTurn = open("turn.txt","w+")
            wTurn.write(jTurn)
            
            wTime1 = open("time1.txt","w+")
            wTime1.write(jTime1)
            
            wTime2 = open("time2.txt","w+")
            wTime2.write(jTime2)
            
            wCp1 = open("CP1.txt","w+")
            wCp1.write(str(jCp1))
            
            wCp2 = open("CP2.txt","w+")
            wCp2.write(str(jCp2))
    
    #Loop to run function or exit        
    try:
        while True:
            file_gen()
            sleep(0.5) # adds a delay so you are writing and polling needlessly
    except KeyboardInterrupt:
        quit()
        
        
    
  • Growing pains

    I am poking at this thing again after another long hiatus. Some things might be broken for a while as I had to get creative to update all my back end while keeping things as intact as possible.

  • UPDATE: Repaired TriTrix Post

    I finally got around to repairing damage left by un-updated gallery plug-ins and added a few Flexi-stand centric pics as well. The post can be found HERE.

  • Long time no post

    I haven’t posted in a while due to the lack of much to post about and work being rather draining as of late. But as a sign of things to come, I am posting this from my new Nexus One. Yes, I was so intrigued by my Archos 5 that I decided to finally plunge into the controversial world of smart-phones. I am using the ATT version as they have the best coverage here and my entire family and friends uses them so minutes are irrelevant.
    The main reason for this post is to announce future posts concerning my experiences with the N1 so far and on my upcoming trip. I imagine I will put the N1 through its paces while traveling so it should make for some content.
    More to come soon.

  • Concerning the Third Dimension…

    There has been much lamenting and boo-hooing over the large electronics companies pushing 3D in their products for the coming years. I have heard complaints ranging from “those glasses make you look stupid”, to the more legitimate “it gives me headaches” and “I don’t want to buy a new TV”. I am one of the seemingly few that is actually excited about the possibility of 3D in my living room. As soon as there are a selection of 3D-HD projectors on the market I plan on adding one to my home theater. Admittedly, I am in a situation where I will not need to replace my TV, but am adding a device which I had been planning on adding anyway. The thing is though…no one said you HAVE to buy a new TV or wear those “stupid” glasses.

    Regardless of how much content might become available, whether your need glasses, what technology those glasses use, or the extra costs involved over normal 2D consumption…3D should always be (and be thought of as) a(n) luxury/bonus/option. It will never and never should be, in my opinion, the “standard” way to view media. However, just because it is not the standard, does not mean we shouldn’t peruse industry standards where 3D is concerned. In fact, the recently decided 3D-Blu-Ray standards allow for the image to default to the regular 2D image when the player or monitor is not 3D compatible, therefore it is not trying to replace 2D. 3D is just another way to view the movie. The best comparison I can muster is this: You don’t NEED an expensive 5.1 sound system to watch that DVD you just bought, but there are standards in place and technologies available for those people that desire to use them. For those that don’t want or can’t afford the the fancy 5.1 system, there is the run-of-the-mill stereo track right there on that same DVD waiting for you to play it. I make the same argument for 3D; just replace “5.1” with “3D” and replace “stereo” with “2D” and you will see where I am coming from. No body complains about 5.1 audio, so why complain about 3D.

    For those that want 3D, but can’t get over the glasses or truly get headaches from the technology, please wait for things to progress. These things take time and a degree of trial and error. We are a long way off from glasses-less 3D that is viable in the real world, so it is futile to complain about the glasses. In order for there to be enough demand for 3D for companies to progress the technology to that point, there needs to be content. For content makers to make that content, there needs to be a way for people to view it. The tech industry is going out on a limb and giving us that first way. There is already a decent wave of content on the way from 3D-Blu-Ray, Direct-TV, ESPN, Discovery, and others. I just hope the unnecessarily negative energy surrounding 3D doesn’t discourage the electronics companies from advancing the third dimension.

  • On the road to recovery. Literally.

    Well I will be on my way home after visiting friends for New Years soon. I am actually posting this from the Super 8 lobby that I am staying at. After getting back to the daily drag I should start getting some tech content up.

    I have been so excited about the coming tablet phenomenon that I could not wait and bought an Archos 5 Internet Tablet. So look for a few posts concerning it in the near future.

  • Things are finally coming together.

    After spending a while getting used to WordPress, I am finally getting things the way I want them. I will work on getting more old content up after I recover from New Years Eve/Weekend. I will also be working on getting some form of regular content up as well. Look for my “Living with the Harmony One” review soon.

    Also, I apologize for the glitchy gallery on the TriTrix post. I really need to shrink the images to make it friendlier.

  • New and Improved!

    I have decided to migrate my site to WordPress and will be migrating the old content over shortly. It got too laborious doing everything by hand and the overwhelming world of web-design and my limited devotion to learning any more has led me here.