nineworlds / xstreamer Goto Github PK
View Code? Open in Web Editor NEWXStreamer X-Wing Squad and Imperial Assault Army Helper for Twitch and YouTube Streamers
License: MIT License
XStreamer X-Wing Squad and Imperial Assault Army Helper for Twitch and YouTube Streamers
License: MIT License
Target Platform is needed to help automate the builds.
X-Wing Data project maintains the card and pilots images as well as upgrade cards. Ideally we would retrieve these from a web site instead of bundling these in, but since there may not be an active internet connection the cards probably should be included.
This should work the way the Imperial Assault selection works, selecting a particular item in the list load the card image in the viewer.
The MacOS app is currently being built wrong by the IDE when exporting. The only way to address this correctly is to build the app from the command line using Tycho.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=468131
This will need to be fixed for a 0.4.0 version before release. Which means the command line build needs to work from beginning to end.
Need the ability to display an overlay that has the dice results rolled on attack and defense.
First row should display the hits, crits, focus, and misses.
Second row should display evad, focus, and blanks.
Templates should produce the results in html using the vasal image files.
Output filename: diceresults.html
Template filename: diceResults.ftl
This is a two part request from Gold Squadron.
Add a menu option that will open a web browser to a donate page.
Let's push the design of HTML a bit more.
See latest Team Covenant videos for the image information included for squads.
If there are no upgrades on a ship, it will cause a crash when generating the squad list.
There is additional information that may be of use to template designers in regards to individual ships. Need to expose the data via a variable called allships.
Need to create the final packaged version of the package, and all supporting jars that go with it.
Need to update the X-Wing Data files to the latest versions to bring in the new info for Scurge and Tie Aggressor previews.
A very basic syntax higlighting text editor would be useful for helping to create and edit the Templates.
For OutRyder Cup and the Epic Round it will display a two column listing.
This should be able to be done by a Wrapper element like the following:
<div class='wrap'> <div class = "blocks">div 1</div> <div class = "blocks">div 2</div> <div class = "blocks">div 3</div> <div class = "blocks">div 4</div> </div>
The CSS for this would look similar to the following to force a 2 column by 2 row listing at 900 pixels wide.
.blocks { display: inline-block; border: solid 1px red; width: 400px; } .wrap{ width:900px; }
This should give enough space to display most Epic lists.
Usage can be to display this in a separate scene or as an optional overlay on the existing screen while dials are being set.
Make use of the X-Wing Miniatures true type fonts from the XHud project. Create a XHUD/Team Covenant style template that uses these fonts.
Darkside Productions would like a custom template for their stream.
Need to get back to Philip to get exact information.
Allow for outputing player names or assigning them in the app
More information here:
http://muelder.blogspot.com/2015/08/building-eclipse-plugins-with-maven.html
This feature is to track the needs of tracking critical damage.
Add a simple web browser that leverages the platforms native browser. This will be used to allow accessing of web resources such as Chats, Online Squad builders, and other resources the streamer may need access to.
Add in a text field where some multiline text can be entered to display a News ticker style moving text view.
As part of the migration to Eclipse RCP application framework, re-place the Quartz jobs scheduler with the built in Jobs API that comes with eclipse.
When a file is finished generating, allow the app to generate a notification.
https://krishnanmohan.wordpress.com/2012/10/06/scheduled-notifications-in-eclipse-rcp-applications/
Viewer count would be nice to have for live streaming functionality.
https://developers.google.com/youtube/v3/docs/videos#liveStreamingDetails.concurrentViewers
The program expects that player 1 and player 2 json files are available. If not, then the program hangs and the user can't star the program.
Allow the program to continue loading and not crash. Include sample player1.json and player2.json files to help prevent this in the future.
Display initial pilot squad points in the app. Currently only the pilot squad points are displayed, not the total squad points. Just need to update the label.
When clicking a entry in the TreeView for Pilots, the width will change. There is probably an API setting I'm missing telling it not to expand beyond the current width.
To help my own sanity in working with Java UI frameworks, I'm experimenting with having the app be built using the Eclipse RCP application framework.
Benefits are:
Disadvanateges:
Alternatives:
Due to the fact that the Web Browser support in OBS doesn't support, reloading HTML files if they change (the Linux browser plugin does support it). There needs to be a way to serve up these files.
So one option is to have files loaded locally and server up via url from XStreamer itself.
Another option, may be to document how to Setup Apache or IIS so that they can serve the files locally and have OBS Studio load them. Note that this will require refreshing the files periodically through a meta data refresh page and not caching the results.
If you are on Mac or Windows the OBS Browser source doesn't automatically reload the files when they are updated. In order to address this, some javascript is needed to force the page to reload at a specific interval.
Need to bring down and refresh the xwing-data files for Wave X.
Basic information for the streamer so that he knows current view count, and other stats.
Pressing the export button will export the image and then an Image Viewer source in OBS can be used to display it.
This should export out as PNG
In some cases it may be more memory efficient to generate the Squad Lists as PNG images from the existing HTML files after they have been rendered. The following code can be used as a starting point.
http://stackoverflow.com/questions/14795707/export-full-scrolled-composite-to-image
Note that their may need to be some configuration options set for this to make it work well.
Integrate with Challonge API. Need to research what we can do here. Maybe import and display brackets?
This will allow for better control of what plugins get included as part of the build.
Also, will allow for the creation of update sites, to be used to allow upgrades to occur more seamlessly.
Stele TV creates squad lists as basic text files. A sample of the output:
(skill) Ship Name - Points
Upgrades
Upgrades
Shields (*) Hull (H)
The template should generate out a text file that displays this information. There should be one for both Left aligned and right aligned versions. It also needs an option Unique Pilot Identifier to track particular ships that are the same skill and ship type.
To make having to make changes to both the obsbrowser specific templates and non-obsbrowser templates less painful, should refactor to import common functions and include common HTML markup.
Getting not a Valid file, on Mac OSX when selecting from the grid template.
/Users/dionmorales/Desktop/New X streamer/squads/html/epic_squads.ftl
Because of the templates can come in multiple files it is difficult to know which template file is to be used.
Eclipse provides a framework that can be leveraged, the TemplatesPreferencePage.
The simple description for this template can be described in a xml file:
<templates>
<template name="%Templates.xmldeclaration.name"
description="%Templates.xmldeclaration.desc"
id="org.eclipse.wst.xml.ui.internal.templates.xmldeclaration"
filename="template.ftl"
format="text|html"
type="squad|dice"
path="template/squad/html/blah"
enabled="true"/>
</templates>
Store this in the templates plugin and the perferences should be read from here.
There will need to be a way for the user to select this template either via a Dialog that or a drop down list box. Templates will need to be loaded when the app starts up.
Users should be able to add their own templates to the list either through the UI or via editing the template.xml file directly.
There are times when an active Internet connection may not exist. There needs to be a simple way to enter in a squad. Most of the information that is needed is in the Ships, Pilots, and Upgrades json files.
Yet Another Squad Builder outputs it's data into a text box on the screen instead of downloading a file. To help enable easier input into the tool. Each player tab should have an optional Multiline text input field that the data can be pasted into.
There should be an import button, and the squad data should be updated and as if the Import Wizard had been used.
The eclipse Job Scheduler is slowly causing the count down clock to loose time. So probably need to switch to using the java.util.Timer and then scheduling the write job.
http://bioportal.weizmann.ac.il/course/prog2/tutorial/essential/threads/timer.html
Basically, update the on screen timer, schedule a Job to write the data to the timer.txt file. The timer task is written such that it is guaranteed to kick off every second.
Adding Imperial Assault overlay support.
There is a little bit of a pause while everything loads up, add a simple splash screen so that people know that the application is in the process of loading.
When a ship gets down to 0 shields and 0 hull... the destroyed flag should be set and available in the model for the templates to use.
This requires the following issue on Cryodex to be implemented.
https://github.com/Killerardvark/CryodexSource/issues/37
It would be nice to be able to either fetch data from Cryodex via a REST api, or display a served up HTML file.
GoldSquadron Podcast has requested a custom template.
Need to work with Dione for specifics.
Hi. I think I contacted you in a different project thread. I am working on a similar project and was wondering if you wanted to compare notes. My version is a c++ program using the gd library to render images. The images are then placed in your OBS scene and OBS refreshes them whenever they change. As for a UI for it... well, I'm not that far yet!
I didn't know about the x-wing data project(s) on here so I rolled my own called libxwing. It has a sqlite DB at its core.
I don't have my project posted anywhere yet but I intend to put it on github when it is a little further along (under a BSD-type license).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.