Author Topic: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)  (Read 44795 times)

0 Members and 1 Guest are viewing this topic.

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Does the version of chromium in Knossos not have webkit? I can't seem to style the scroll bar! :o

I'm dumb.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline Mongoose

  • Rikki-Tikki-Tavi
  • Global Moderator
  • 212
  • This brain for rent.
    • Minecraft
    • Steam
    • Something
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Just wanted to add my voice to the praise of mixael's mock-ups.  That looks like something straight out of Steam or GOG Galaxy in the best possibly ways, and it's super-clear how to get things downloaded and playing.  Huge :yes:

And great work ngld.  I downloaded and installed Knossos yesterday, and it displayed my existing mod installs without needing to touch anything.  Settings are now saving just fine after the latest patch too.  One very minor quibble: as of right now, the default folder creation in the Start menu's programs list has the version number tacked onto the end of the folder name.  It'd probably be better to leave it at "Knossos," so that no one accidentally thinks they still have an outdated version installed.  Looks great so far otherwise!

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
@Joshua and krevett62: Great to hear!
@mjn: Here's the new build. I've reimplemented the top UI in HTML and added the details page. The "Development" button at the top doesn't do anything, yet.
The details page is still VERY simple, it displays the mod's title and description as well as a dump of all the information Knossos has about the selected mod. A few additional fields have been implemented (tile, first_release, last_update, release_thread, videos) but all of them are empty because I haven't implemented them on Nebula.
I hope this helps while I work on the remaining changes.
Do you have anything in mind for the installation dialog or should we leave it the way it currently looks?

@Mongoose: Thanks! Having the version number as part of the start menu folder was an accident which I'll fix in the next release. I just wanted to display the version number on the welcome page but it seems that I changed more than just that.  :lol:

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Awesome! Definitely helps. :)

I had a thought about Last Played. I was thinking instead of having a separate Last Played page, that the Home page defaults to sorting by "last played". Obviously that means that Knossos will need to save this data to the json for each mod. Various other sorts would be alphabetical, last updated, last released. I should also think about how to incorporate keywords that you already have on Nebula and allow players to search based on those.

I hadn't thought about the Installation dialog. Lemme give that some though. My innitial thought is to just have that be similar to the Details page with a basic title and back button at the top. Another thought would be slightly more complex. If the player selects Install right from the Nebula page, it doesn't ask any other than "are you sure?" and installs all dependencies. Inside Nebula > Details (would be Details 2 because unique layout) would allow the player to see dependencies, notes, etc. Dunno though. Needs more thought.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
I think that touching the mod's own json file would be unnecessary here, we just need to store a list of played mods somewhere in knossos' own configuration data.  Or the last played times for any mod.  That could be merged with other mod data in memory if it helps on the code side to do so, but mod.json files should probably be left alone by knossos itself.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
My understanding so far is that the JSON files are very different from the mod.inis we're all used to. Modders shouldn't even have to make them. They upload their mod to Nebula and it handles the rest. Knossos touching the JSON files should be inconsequential because no one needs to even look at them, generally.

That said, I wouldn't really care how it's done. The JSON just seems like the most obvious place.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
I think it's more reason not to.  As knossos will periodically overwrite it with updates from nebula, storing other settings in it would be a bad idea I think.  Much easier to store that stuff in knossos' own settings location.  But yeah that's probably too much a technical discussion that doesn't really affect whether the launcher can do the sorting feature or not.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
I'm no coder, but JSON seems custom built for appending data?
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
It could possibly be done but I feel like it would be saner for the file on a machine to be a byte for byte match to the one on the server.  Much easier to do comparisons, etc.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Aha, I hadn't considered. That's a good point.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)


What can we do about changing the header design (I can provide image files) and change the border frame color to match the rest of the design? (Hex #1c1c1c, if you were wondering.)

Here's the files so far so that we don't have to keep merging HTML/CSS/JS docs. You'll need to change the image references to dynamic links for your build environment, but otherwise should be pretty easy to use. The only JS change involves changing "mod-logo" to "mod-logo-legacy". As you continue to add the new required data types, I'll be able to add mod-portrait so that it gracefully displays where needed.

EDIT: Oh, and I haven't added the filter button yet... but it wouldn't have any function anyway. Except I did add the help button, sooo... whatevs. :)
« Last Edit: February 20, 2017, 09:20:03 am by mjn.mixael »
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

  

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Thanks! I've integrated your files but I made a few changes. I hope you don't mind.


  • Most of the icons were stretched (was that intentional?), I've resized them to their original size.
  • The active tab always has a green icon.
  • If a mod's title is too long to fit the bar, it ends with an ellipsis instead of being cut off. (See FS3 in my screenshot)
  • The action buttons fade in and out on hover.
  • I've simplified the CSS a bit.
  • I still need to fix the margins for the tabs. (The tabs all had a width of 100px which lead to a bug where I could hover or click on the last e of "Explore" and instead would hit the "Development" tab. That and the changes to the tab icons messed up the tab positioning.)
What do you think? You can download the files from GitHub and copy the html folder into your existing installation to take a look.

I've managed to remove the border but changing the titlebar will require more (and platform-specific) work. I might work on that once the more important stuff is done.

BTW, why did you use "content" on spans? I didn't know that would work (and it doesn't in other browsers) because it's against the CSS spec. According to the spec you're only allowed to use that on ::before and ::after pseudo-elements.

It could possibly be done but I feel like it would be saner for the file on a machine to be a byte for byte match to the one on the server.  Much easier to do comparisons, etc.
Actually... The mod.json files are generated on every installation or update. There are several reasons for that: The mod.json list contains a list of installed packages which needs to be updated whenever the user installs or removes a package (i.e. MV_Advanced). Most of the contents of the mod.json file are copied from the list of available mods (which the client already has during installation).
For comparisons I use the version numbers. The Nebula server enforces that once a version has been published, it can't be changed, only deleted. Any change requires a new (higher) version number.
That said, I'm already storing stuff like the mod settings in Knossos' configuration because mod.json files should only contain mod-specific information not player configuration. I'll probably do the same with the "Last played" data.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Thanks! I've integrated your files but I made a few changes. I hope you don't mind.
I definitely don't mind. :)

Quote
I've managed to remove the border but changing the titlebar will require more (and platform-specific) work. I might work on that once the more important stuff is done.
Awesome. I'm gonna add a border with the CSS.

Quote
BTW, why did you use "content" on spans? I didn't know that would work (and it doesn't in other browsers) because it's against the CSS spec. According to the spec you're only allowed to use that on ::before and ::after pseudo-elements.
Because I'm not a real web developer. I'm just good enough to use things like Drupal and fix them up as needed... and I'm really good at Google searches!  :lol:
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Hmm, I actually can't get my Exposed-HTML version to work with these files. (Loads up the UI with no mods, and crashes on exit.) Did you change anything else that might cause that? Any chance you could send me a new version of the Exposed HTML version?
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Did you copy anything besides the html folder? Anyway, here's you new build. It still has the border because I didn't update the Python code.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Thanks. Not sure what the deal was.. I was pretty sure I only copied the HTML files, but it probably was my own error.

Also, what do you think of changing the default window size to more of a landscape size? I'm thinking a default view that shows 6 mods across x 2 mods down.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Sounds good to me.  :yes:

 

Offline deathspeed

  • 29
  • i can't think of a good avatar
    • Steam
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
I step away from a topic for a few days, and when i return I see GOG Galaxy-quality mockups and test builds!  Keep up the great work!!
Maybe someday God will give you a little pink toaster of your own.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Added the Debug menu and Filter icon, both with semi working roll-out lists onclick.



Had to add a couple javascript functions for those rollouts, except I couldn't get them to close the rollout on mouseleave/out properly. Had to use onclick. However the filter rollout doesn't even obey that. So I dunno, perhaps you can fix that up.
Additionally, I couldn't get the debug rollout to work for any mod except the first mod. I'm hoping you can help on that part. :)

Files

Quote
EDIT: Notes for me.. things I want to think about and/or add.

News stuff
mjn.mixael, that is incredible work on the UI.  I finally got to look at it on my desktop instead of my phone.  It does exactly what I've been suggesting with keeping the words to a minimum, and the experience as intuitive as possible.  I am only really not sure about the news scroller, it seems dated compared to the rest of the design.  I would suggest a News tab on the main screen for general news, and possibly under the Mod details, another News button/tab for news specific to that mod, or just the ability to scroll down below the details for mod-specific news.  But all in all, yeah, wow.  I'm just not sure we have the bandwidth to keep up with how many more installs it will get when it becomes this easy to get into!

NGLD asked about the update stuff

I think there needs to be a small header/title just about the first mod row in the scrollable area. "Here's a list of your installed Freespace Open Games" (Games because this should support TCs as well as mods.) "Here's a list of all the Freespace Open Games you can install."
« Last Edit: February 21, 2017, 02:01:11 am by mjn.mixael »
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)
Attempting to upload a mod to Nebula is resulting in a 500 error.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.