Author Topic: [Preview] Knossos 0.5.3  (Read 23072 times)

0 Members and 1 Guest are viewing this topic.

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: [Preview] Knossos 0.5.3
It should be able to handle a Steam install if the user manually selects the correct directory. Knossos can't auto-detect that, yet, since I don't know the exact directory Steam uses. I'm guessing it's "C:\Program Files (x86)\Steam\SteamApps\common\Freespace2" but I'm not sure. As soon as someone can confirm this, I'll add it.

I added the "Install Retail" button as a workaround when I realized that I couldn't trigger that window without any available mods. Hiding it when the retail files are installed makes sense. The "reset/reinstall retail" button shouldn't be necessary because you can uninstall the FS2 TC entry instead (Knossos handles the retail files as a TC). Feel free to change this button however you wish, I haven't thought much about it when I added it.

The Video links error should be fixed now. I'll fix the active states for tabs and links tomorrow. The tabs' HTML is in html/templates/kn-page.html, just below "Start the Tab Menus". The actual tab list is in html/js/modlist.js (search for "tabs:").

I'm fine with moving the Uninstall button, I'll take care of it and the dropdown problem tomorrow. That reminds me, the details page still isn't finished. I think I still need to add a field for the banner image and implement the VIDEOS button there.

BTW, I'm wondering about the mod description field. It's currently a simple plain text field. Should I add support for BBCode or replace it with a WYSIWYG editor?

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: [Preview] Knossos 0.5.3
It should be able to handle a Steam install if the user manually selects the correct directory. Knossos can't auto-detect that, yet, since I don't know the exact directory Steam uses. I'm guessing it's "C:\Program Files (x86)\Steam\SteamApps\common\Freespace2" but I'm not sure. As soon as someone can confirm this, I'll add it.

I added the "Install Retail" button as a workaround when I realized that I couldn't trigger that window without any available mods. Hiding it when the retail files are installed makes sense. The "reset/reinstall retail" button shouldn't be necessary because you can uninstall the FS2 TC entry instead (Knossos handles the retail files as a TC). Feel free to change this button however you wish, I haven't thought much about it when I added it.

The Video links error should be fixed now. I'll fix the active states for tabs and links tomorrow. The tabs' HTML is in html/templates/kn-page.html, just below "Start the Tab Menus". The actual tab list is in html/js/modlist.js (search for "tabs:").

I'm fine with moving the Uninstall button, I'll take care of it and the dropdown problem tomorrow. That reminds me, the details page still isn't finished. I think I still need to add a field for the banner image and implement the VIDEOS button there.

BTW, I'm wondering about the mod description field. It's currently a simple plain text field. Should I add support for BBCode or replace it with a WYSIWYG editor?

Copy-pasting from my Steam FS2 install (obviously it would normally be C: )

Code: [Select]
D:\Program Files (x86)\Steam\steamapps\common\Freespace 2
So there's a space before 2, and lower-case steamapps (should be case in-sensitive, right?), but other than that, correct.

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: [Preview] Knossos 0.5.3
Double-posting to say you may be able to get a list of Steam Library locations by looking in %SteamPath%\config\config.vdf  -- you can find SteamPath in the registry,
Code: [Select]
Computer\HKEY_CURRENT_USER\Software\Valve\Steam
Link to spec for vdf format: https://developer.valvesoftware.com/wiki/KeyValues#File_Format

Where I got this info: https://www.reddit.com/r/learnprogramming/comments/1x0amf/ctrouble_finding_where_a_user_installs_steam/

Why that's useful:  Just get a list of Steam Library locations, and search them for "FreeSpace 2" to find the install location.  (You could also use the uninstall string InstallLocation from the registry, but that doesn't change if the install location gets moved in Steam, I just checked.)

InstallLocation:
Code: [Select]
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Steam App 273620
« Last Edit: July 28, 2017, 05:42:40 pm by jr2 »

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: [Preview] Knossos 0.5.3
I humbly submit this to be used as the default FS2 Retail Install portrait. And that the mod name be changed to something a little more along the lines of "Basic FS2", "Base FS2", or "Retail FS2" instead of just "FS2"



« Last Edit: July 28, 2017, 08:01:16 pm 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 mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: [Preview] Knossos 0.5.3
BTW, I'm wondering about the mod description field. It's currently a simple plain text field. Should I add support for BBCode or replace it with a WYSIWYG editor?

I think some sort of basic BBCode or WYSIWYG would be nice. As it is, the Description field doesn't even respect line breaks.

Other than that, the only things that seem to be missing from the Details page mockup (which you can override, btw) is the Release Date and Last Updated to the right of the Videos/Forum buttons. (For unreleased mods, it should say something like "unreleased" or something. Last Updated could be the mod creation date, perhaps.)

I also envisioned a place that listed mod team members since Nebula supported that at one point.

Lastly, could it be made so that the Development tab uses a duplicate of the mod-node class (probably dev-mod-node) so that I can change it's appearance for the development tab only? If you want to take care of the duplication (because it looks like it needs to be done in the js files), I can take care of the actual cosmetics of the job.
« Last Edit: July 28, 2017, 11:15:01 pm 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 m!m

  • 211
Re: [Preview] Knossos 0.5.3
BTW, I'm wondering about the mod description field. It's currently a simple plain text field. Should I add support for BBCode or replace it with a WYSIWYG editor?
How about using Markdown for the description text? It it simple to use and pretty widely supported. There is even a Qt example for implementing a Markdown editor using WebEngine.

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: [Preview] Knossos 0.5.3
@jr2: Thanks for the detailed info! I'll implement that.

@mjn: The image is great! Knossos now uses it along with the name "Retail FS2". I thought that name fit best with the image.
I've added html/templates/kn-dev-mod.html as the duplicate of kn-mod.html. The "Release Date" and "Last Updated" fields are still unfinished because I want to use a proper date picker and I haven't gotten around to including one.

I'll make a new tab for the mod team members. It will also serve as a way to give other users access to modify the mod.
I've also merged your PR, it helped a lot! However, I think we should change the text colour to make it easier to read.

@m!m and mjn: What do you think about this editor (you can switch to english in the upper right)?
I originally wanted to use BBCode because most modders will be familiar with that unlike Markdown.

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: [Preview] Knossos 0.5.3
I had a look at my GOG.com FS2, and you may be able to get fix on GOG FS2 installations using the following registry key:

Code: [Select]
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\GameUX\Games\{B14DCE92-4D55-4BBA-984D-1CCB4D48DA36}
Key name

Code: [Select]
ConfigApplicationPath
I'm not sure where GOG stores its install paths (I checked Program Files (x86)\GOG.com\ and didn't find anything).


EDIT: OK, found it, it's in

Code: [Select]
%ProgramData%\GOG.com\Galaxy\storage\index.db
 - not sure what the file storage spec is, but you can read FS2's install path in plain text.

EDIT2: The above is probably more reliable as the user might have changed the install location, but you can also find the normal GOG Library location in plain text from

Code: [Select]
%ProgramData%\GOG.com\Galaxy\config.json
EDIT3: of course that all relies on having Galaxy installed instead of using the stand-alone installer.  The registry key I initially pointed out would be better in that case then?  I dunno what's best, neither, both, or one then the other.  If you need more tests / searches done, let me know and I can help.
« Last Edit: July 29, 2017, 05:25:03 pm by jr2 »

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: [Preview] Knossos 0.5.3
@mjn: The image is great! Knossos now uses it along with the name "Retail FS2". I thought that name fit best with the image.
I've added html/templates/kn-dev-mod.html as the duplicate of kn-mod.html. The "Release Date" and "Last Updated" fields are still unfinished because I want to use a proper date picker and I haven't gotten around to including one.

I'll make a new tab for the mod team members. It will also serve as a way to give other users access to modify the mod.
:yes:

Quote
I've also merged your PR, it helped a lot! However, I think we should change the text colour to make it easier to read.
Which text are you talking about? It's either button or the Dev tab intro text. For the Dev tab, I went back and forth a lot on the text color. I could still go either way, but I chose a milder color because I wanted it to be more a part of the background rather than the focus of the view. But yeah, it could go full white if you think that's better.

Quote
@m!m and mjn: What do you think about this editor (you can switch to english in the upper right)?
I originally wanted to use BBCode because most modders will be familiar with that unlike Markdown.

My 2 cents is use something more common. Both of these would need to be learned by modders, which isn't a big deal. But what's the gain for using Markdown or Mavon instead of BBCode or even just (filtered) HTML that everyone already knows?
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: [Preview] Knossos 0.5.3
@jr2: Once again, thanks for the detailed research! I'm going to guess that the index.db is a SQLite database.

@mjn: I was talking about the intro text and the help text that I added to the input fields.
I want to avoid filtered HTML because that can become a headache and/or a security risk. I'd rather use BBCode or Markdown. Markdown is more modern and easier to learn than BBCode. That doesn't matter too much, however, since most modders will already know BBCode from the forum anyway (which is why I suggested it).

Maybe I should implement both and leave the decision up to the mod author? Implementing that isn't too hard since there are JS libraries available for both of them.

 

Offline m!m

  • 211
Re: [Preview] Knossos 0.5.3
My 2 cents is use something more common. Both of these would need to be learned by modders, which isn't a big deal. But what's the gain for using Markdown or Mavon instead of BBCode or even just (filtered) HTML that everyone already knows?
My reason for suggesting Markdown is that it is used pretty widely so it should be well supported by Python and HTML/JavaScript. It's simple enough to learn while also being powerful enough to create nice description texts.
There are a lot of existing WYSIWYG editors for Markdown out there so modders wouldn't even need to bother with the specifics of how Markdown works and Knossos wouldn't have to implement the entire editor.

IMO, filtered HTML is not a good choice in any case because it basically needs a full HTML renderer to be well supported. This is obviously not a problem for Knossos but it's something that should be considered for ensuring better compatibility in the future. Also, filtering HTML is pretty easy to get wrong so we might run into issues with HTML injections if it's not done properly.

BBCode apparently has decent support by Python but I'm not sure how well it's supported by JavaScript (I don't know where the HTML rendering would happen so I'm listing both options here).

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: [Preview] Knossos 0.5.3
Ah, well in the case of there being an WYSIWYG editor, then the particular language doesn't matter.
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 m!m

  • 211
Re: [Preview] Knossos 0.5.3
Just to clarify, I'm not sure if there will be a WYSIWYG since I'm not the one who writes the code for that. However, at least for Markdown it would make sense since there are a lot of existing editors that should be pretty easy to integrate.

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: [Preview] Knossos 0.5.3
@jr2: Once again, thanks for the detailed research! I'm going to guess that the index.db is a SQLite database.

Looks like you're right, I opened it up successfully here: http://inloop.github.io/sqlite-viewer/  (site says it doesn't upload, just uses JavaScript HTML5 FileReader)

Don't remember how to SQLite, but you'd want the Table
Code: [Select]
Products then the
Code: [Select]
localpath of productId
Code: [Select]
5

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: [Preview] Knossos 0.5.3
@jr2: Once again, thanks for the detailed research! I'm going to guess that the index.db is a SQLite database.

Looks like you're right, I opened it up successfully here: http://inloop.github.io/sqlite-viewer/  (site says it doesn't upload, just uses JavaScript HTML5 FileReader)

Don't remember how to SQLite, but you'd want the Table
Code: [Select]
Products then the
Code: [Select]
localpath of productId
Code: [Select]
5

If it helps, I'd also be more than happy to PM you a download link to my index.db

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: [Preview] Knossos 0.5.3
OK, for the GOG standalone installer, looks like you can find the path in
Code: [Select]
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\GOG.com\GOGFREESPACE2under the key
Code: [Select]
PATH
Checked with an old 2012 standalone installer, uninstalled, verified entry was gone, and tried with the latest standalone (v2.0.0.8) - both make the above entry upon install.
« Last Edit: July 31, 2017, 11:42:23 am by jr2 »

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: [Preview] Knossos 0.5.3
How goes the interface progress?  The Babylon Project is now being overhauled to work with 3.8+ without warnings or game-breaking bugs, and could theoretically be the first total conversion ready for public distribution via Knossos (FotG is very likely ready to test distribution via closed beta via Knossos, if it ever supports mod access controls).  That or Diaspora but TBP has a _lot_ more content available.  And now that 3.8 is released, it will hopefully be the only build we need to worry about supporting in Knossos.
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 m!m

  • 211
Re: [Preview] Knossos 0.5.3
Also, the nightly/release script recently had an addition that allows it to generate a configuration file for the "old" installer. It should be pretty easy to adapt this code so that it also generates a manifest file compatible with Knossos so that new releases and nightly builds are automatically available as soon as they are released.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: [Preview] Knossos 0.5.3
I've kept my eye on the github and ngld hasn't updated in almost a month.
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: [Preview] Knossos 0.5.3
I guess we were just waiting on completed integration of your interface work then?
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