Jump to content

PK's Field Trainer Chatter - Web App In Progress


The Philotic Knight

Recommended Posts

Greetings,

As pursuant to the results of the poll shown here, I will begin work on my own version of a web-based "build planner". I will be using this thread to keep everyone abreast of the updates and changes to this planner. At this point, it's only an idea, and we'll have to see how it goes. Below are some of my intentions.

 

There will be two versions, both released at the same time and kept up together with the same update schedule:

An online web-based planner, and an offline PC application. I will not be making any mobile-specific versions, as I feel that:

  1. That's a recipe for disaster, as mobile OSes are constantly updating and changing, and
  2. I have ZERO experience in mobile development, so it'd require me to learn an entirely new set of technologies, which would drastically slow the process down.

I will attempt to create the web version in a way that is mobile-friendly. I'll work actively with users after the release of each version to tighten up that operability.

 

Why make an offline PC version at all, especially when Mids already exists? Well,

  1. I'm more familiar with desktop program application design, so it will be easier for me to make the desktop version first (which will be pretty easy for me) and then port the logic to the web version (I'm thinking a type of MVC format where I can keep the model and controller the same and the format will just change in the view), and
  2. A web-based planner (as has been seen with Sucker Punch's planner) can be "here today, gone tomorrow", so I want a version out there that will outlast my server.

Whereas Sucker Punch's is gone, Mids survives. Why? Because the code is out there. That being said - I will be releasing the source code for BOTH versions of the planner under the Creative Commons Attribution-NonCommercial-ShareAlike license, so that anyone that wants to can create their own online OR offline planner based on my code can do so (as long as I get some credit 😛).

 

The online web version and the offline PC version will be compatible with each other. Although it was suggested that I make use of the URL to allow for sharing and linking of builds, I feel that it's more efficient, easier, and more portable to make use of XML files for the purpose of input and output. XML files can be passed between devices, shared among people, be used between different applications that follow the same schema (as my online and offline planners will be doing), and most importantly for me, is super easy to code with, since I can import and export to and from XML to DataSets with a single line of code each, using the .NET Framework's built in methods. This is such a generic method that in the future, if anyone wants to, they can take the data from my planners and use that data to make something else new with it, without a whole lot of work, because it's just raw data.

 

Release will be on a "rolling" timeline. What I mean by that is that I won't go into a hidden cave somewhere and spend years developing this thing, and then finally release something all at once. Instead, this planner will start off basic, VERY basic (almost useless to most players, probably at the start), and I will slowly over time roll out new features and functionality. Do NOT expect a Mids replacement right at the start, NOT EVEN CLOSE. Hell, it might not even be as good as Mids in two years, for all I know. But hopefully, you should see constant improvement over it until it at least reaches an equivalent point, even if it doesn't surpass it someday. We'll see. Regardless, my reasoning for this is to get "something" into your hands as soon as possible. So, as soon as I'm done with a change/upgrade, I'll release it immediately. Here's my initial plan and thoughts:

  1. Start with just basic player ATs (no epic ATs), and only start with power picks by name, no descriptions, no icons, no enhancements, no numbers/data details. Pool powers should of course be available in this release. But this will be the first UGLY release. Epic pools may or may not be available at this time.
  2. Add in Epic ATs and Epic power pools for sure.
  3. Add in Enhancements by name (still no numbers/data details)
  4. Start adding in Descriptions and Icons of Powers, Enhancements, etc., still no numbers
  5. Add in numbers
  6. Add in Incarnate content (possibly one Incarnate slot at a time)

 

By having this kind of "rolling" timeline, I hope that you'll see stuff start to come out sooner, more frequently, though it won't be much to look at to start. But hopefully you'll see the gradual evolution of the programs into something good.

 

Feel free to take this thread to discuss this project, as well as what else you might want to see in a build planner. I will of course listen to all suggestions, but final discretion will be mine.

 

All that being said, as of right now, all I have to give you to start, is a name for the future programs, and an icon (that I believe @Trickshooter made for me YEARS ago):

 

image.png.45a1cbc6e7f5ca4bd96b9e27114409d2.pngPK's Field Trainer

...coming, Soonish™

 

 

Edited by The Philotic Knight
  • Like 6
  • Thanks 12
  • Sad 1
Link to comment
Share on other sites

A couple of updates:

  1. I've decided, that in order to attempt to make this tool server-neutral, I'm going to be going with a data-driven model. I'm going to ask you to point the program to your data folder (I'll provide default data along with the program based on the I25 leaks if you don't have your own folder to use), and from that folder, I'll scan for the data that I need to build the content of the planner "live". Thus, if you point it at an OuroDev i24 data folder, Sentinels won't appear. If you point it to an i25 folder, they will appear. And so on, and so on.
  2. I'm going to be asking for support from the community at various points for assistance with things that require a lot of manual labor that I don't have time for. If y'all want to assist, you can, and I'll tell you how you can (one thing I can think of off the top of my head, when I get around to making the UI "pretty", I'll basically ask for someone or some people to go through all of ParagonWiki and nab all of the power icons from their website and name them certain names so that I can link them to certain data that I acquire from the .def files). If you don't want to assist, then just know that that part of the process will just take that much longer, since I'll have to do it myself. All assistance will be given a credit in the released source code.
  • Like 1
Link to comment
Share on other sites

I have a couple of questions with regard to the updates:

1. Would it be possible (when the time comes for it to be live) to let us know which files in our local folder that it looks for? I keep a flash drive with some of my CoH data (logs and screenshots, mostly) with me and it would be nice to keep those files handy too so that I can use the app if I am away from my home machine.

2. For the power icons specficially, would it not be easier to extract these from the pigg files themselves? That's what I did when I needed to find some of the badge icons used in Homecoming that were missing from Paragon Wiki.

Link to comment
Share on other sites

  1. Yes, of course. Remember the code will be open source. 
  2. Sure, if you're aware of either a DLL or a command line tool that I can depigg files with automatically. The only depigging tools that I'm aware of require the use of a User Interface, and I'm not about to force my users to use another program's UI to extract files to make my program work. 
Edited by The Philotic Knight
  • Like 1
Link to comment
Share on other sites

Here's a link to my Google drive with the power icons used in Homecoming. This includes the original CoH data plus new stuff from homecoming. I grabbed all the enhancement icons while I was in there too. I extracted the textures using Piglet, then used a script to convert the textures to DDS files (which are included) and conversion tool to get them to PNGs (also included). These were tools I had handy from the work I did on KeyboardKitsune's badge tracker site. Someone will still need to sort through and potentially re-name files, as well as culling any that aren't applicable (there are villain powers and temp powers in there too, among others).

 

For the enhancement files, someone with some image manipulation skill (which I lack) will need to combine the different layers to make the appropriate icon. The enhancement files appear to consist of an icon image, a background, and a border, each in separate files. If you just want the standard IO icon border then it might be less time consuming to download them individually from the wiki, but if you want a different border (for instance, an attuned border) then the linked files might be the only option. Of course the wiki doesn't have some of the i25 icons like Sudden Acceleration.

 

Hopefully, for the powers at least, this will be less tedious than finding/downloading from the wiki.

 

 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

On 2/10/2020 at 3:19 PM, The Philotic Knight said:

I'll scan for the data that I need to build the content of the planner "live"

Word of warning, HC's defs are compiled in a moderately different format than pre-sunset/ouro based clients. This was a fun realization I had recently, after I spent a while working with them, and then wondered why I never noticed anything to do with Sentinels, only to discover I had been using my pre-sunset piggs and the HC file was incompatible.

 

On 2/10/2020 at 4:26 PM, The Philotic Knight said:

Sure, if you're aware of either a DLL or a command line tool that I can depigg files with automatically. The only depigging tools that I'm aware of require the use of a User Interface, and I'm not about to force my users to use another program's UI to extract files to make my program work. 

Writing a custom pigg extractor is fairly easy actually, especially if you have a good flate library handy for the compressed contents (I'd expect dealing with the dds files would be harder, although I wouldn't be surprised if .NET had native support for operating on them).

Link to comment
Share on other sites

Oh, I'm using the original score leaks from the Ourodev site. Anything that might be missing from there is easy to recreate (like the Sentinel stuff) just my looking at the pattern for the other classes and publicly provided statements. (I. E. Blaster Offense and Scrapper Defense) 

Edited by The Philotic Knight
  • Like 1
Link to comment
Share on other sites

1 hour ago, The Philotic Knight said:

Oh, I'm using the original score leaks from the Ourodev site. Anything that might be missing from there is easy to recreate (like the Sentinel stuff) just my looking at the pattern for the other classes and publicly provided statements. (I. E. Blaster Offense and Scrapper Defense) 

I heard Sentinels version of Screech from sonic attack is a bit different from other sets. It was made into a real damage power. Might come across a few anomalies like that


PPM Information Guide                Survivability Tool                  Interface DoT Procs Guide

Time Manipulation Guide             Bopper Builds                      +HP/+Regen Proc Cheat Sheet

Movement Speed: Guide              Recharge Guide                   Base Empowerment: Temp Powers


Bopper's Tools & Formulas           RubyRed's API Tool              Mids' Reborn                       

Link to comment
Share on other sites

Sure, and without the actual data from HC, anything I make will be numbers-inaccurate. That being said, I'm not starting with the numbers anyways.

 

Update - I've fixed up some issues in my data collection methods, so now I have collected ALL of the data from all of the appropriate .def files (Classes > Power Categories > PowerSets > Powers). Now, I need to process that data and consolidate it from four separate data sources into a single coherent view. Then, I can take that view and use it to drive the UI elements.

  • Like 2
Link to comment
Share on other sites

@BopperHere's a preview of some numbers. Now, it's probably not COMPLETELY accurate, and I found some irregularities in the .def files (like Savage Melee... is that a thing on HC, or still unreleased? I haven't checked, nor have I tried to make one myself) that I might have to remove manually, but here's the gist of what I've got so far:

image.png.79983884c82c8a0dfe0911e3ef5f443f.png

  • Like 1
Link to comment
Share on other sites

Nice. When I click it on my phone,it all goes black. I'll have to look at it tonight on a computer.


PPM Information Guide                Survivability Tool                  Interface DoT Procs Guide

Time Manipulation Guide             Bopper Builds                      +HP/+Regen Proc Cheat Sheet

Movement Speed: Guide              Recharge Guide                   Base Empowerment: Temp Powers


Bopper's Tools & Formulas           RubyRed's API Tool              Mids' Reborn                       

Link to comment
Share on other sites

Data, beautiful data...

 

image.thumb.png.3df76d4f9f63bbabc60fefd7c07fd446.png

 

Now it's time to tie it to a basic UI for the Alpha build, and fix up some of the bad data that's in there. Below are the next steps:

  1. Build basic UI for testing
  2. Fix Noticeably bad data
  3. Create input and output methods
  4. Release Alpha build to alpha testers for testing
  5. Perform first wave of code cleanup

Anyone want to be an Alpha tester?

  • Like 1
Link to comment
Share on other sites

On 2/10/2020 at 7:12 AM, The Philotic Knight said:

image.png.45a1cbc6e7f5ca4bd96b9e27114409d2.pngPK's Field Trainer

...coming, Soonish™

👍👍

"Homecoming is not perfect but it is still better than the alternative.. at least so far" - Unknown  (Wise words Unknown!)

Si vis pacem, para bellum

Link to comment
Share on other sites

59 minutes ago, The Philotic Knight said:

Data, beautiful data...Now it's time to tie it to a basic UI for the Alpha build, and fix up some of the bad data that's in there. Below are the next steps:

  1. Build basic UI for testing
  2. Fix Noticeably bad data
  3. Create input and output methods
  4. Release Alpha build to alpha testers for testing
  5. Perform first wave of code cleanup

May I advise doing a radically simplified basic UI for alpha build test that would be a LOT easier to manage?

 

Pick 1 archetype

Pick 1 primary

Pick 1 secondary

Enable 1 pool

Enable 1 epic pool

 

Work with that limited dataset until you get things arranged how you want them, but coding with the explicit intent to build out from there in a logical and modular fashion so that you can proof/test each bit of backend data that you're putting into it in an incremental way so that you aren't trying to integrate everything all at once from the start.  You don't need to make "good" builds with it from the beginning ... you just need to proof/test that the tools work the way you want them to.

 

Start small and manageable and then build your way out from there.

IifneyR.gif

Verbogeny is one of many pleasurettes afforded a creatific thinkerizer.

Link to comment
Share on other sites

19 hours ago, The Philotic Knight said:

Sure, and without the actual data from HC, anything I make will be numbers-inaccurate. That being said, I'm not starting with the numbers anyways.

I'm working on a solution for that.... making decent progress and will probably have something to share in a couple weeks. (But don't quote me on that, my availability to work on such things is kind of erratic...)

  • Like 1

"We're out of options, I'll have to use the jetpack," I said, strapping on the jetpack and ignoring the many non-jetpack options still left.

Having trouble deciding your next alt? Just need a cool name? Try out City Suggests

Looking for powers data? Try the Powers API

Link to comment
Share on other sites

Huh, something interesting that I found while parsing through the data, apparently things start to look kooky when it comes to the villain Epic Powers. But this data is still accurate, I swear!

 

image.thumb.png.35da2fe4ecb1b5627122feeee59a5566.png

 

That's what you get I guess when you name powersets after ATs, and then proliferate them without renaming them to be more generic! 😮

Edited by The Philotic Knight
  • Like 1
Link to comment
Share on other sites

4 hours ago, The Philotic Knight said:

while parsing through the data, apparently things start to look kooky

Oh, you don't know the half of it. To quote Winston:

winston.jpg.70df12595ac9c7d81269a9b9a8ac7181.jpg

"I have seen sh*t that'll turn you white!"

🤣

  • Haha 2

"We're out of options, I'll have to use the jetpack," I said, strapping on the jetpack and ignoring the many non-jetpack options still left.

Having trouble deciding your next alt? Just need a cool name? Try out City Suggests

Looking for powers data? Try the Powers API

Link to comment
Share on other sites

20 minutes ago, Pine said:

Have you found the Domingator epic pool power yet?

I'm after the Moo pool myself.

Link to comment
Share on other sites

  • Jimmy pinned this topic
  • Jimmy unpinned this topic
×
×
  • Create New...