WebtroPie
-
WOAW so cool thanks a lot for your work :D
- Here a FRENCH gamelist to test the UTF8 :)
I record it with Notepad++ / Unix (LF) / UTF-8
- Yes for the PATH we use an other directory. It is cleanest.
ROMS : /home/pi/RetroPie/roms/nes/
MEDIA : /home/pi/RetroPie/medias/nes/box front/ -- .../logos/ -- .../videos/
If it is possible you show them it will be perfect.
I understand it is harder for the upload option, but tell me, i can make some tests for you.- GD extension for PHP is installed.
root@retropie:php5 -m | grep -i gd gd
- Here a FRENCH gamelist to test the UTF8 :)
-
@darknior thanks, I understand now and I will need to make a little mod to allow configurable additional media directories, however, one way or another your directory will have to be converted to a url to serve images, so it needs to be visible under the webtropie directory and this means that it's going to involve both adding the directory to a configuration file and creating a symbolic link under webtropie directory.
The unicode issue was a one line fix (I think I just needed to a a parameter to the json_encode command in game.php - json_encode($results, JSON_UNESCAPED_UNICODE) .. or something), ... and it shows in webtropie the same as in an editor, however I'm a bit confused that there seems to be additional characters in the xml file (copyright symbols) so I'm not sure that it's 100% how you would expect it to be, ... I'll post screenshots when I get home.
@itsnitro "how'd you get it onto the web?"... do you mean to make it available to be browsable outside of your home network?, that would involve creating an inbound rule on your router to point web traffic to your rasberry pi, sometime called a tunnel, your probably best looking that one up. It's interesting though that perhaps in the future connecting/pairing one webtropie to another could offer some interesting functionality possibilities such as easily transferring media/metadata or comparing sets etc
-
@kixut said in WebtroPie WIP (was "Web App WIP +please give it a name..."):
The unicode issue was a one line fix (I think I just needed to a a parameter to the json_encode command in game.php - json_encode($results, JSON_UNESCAPED_UNICODE) .. or something), ... and it shows in webtropie the same as in an editor, however I'm a bit confused that there seems to be additional characters in the xml file (copyright symbols) so I'm not sure that it's 100% how you would expect it to be, ... I'll post screenshots when I get home.
(copyright symbols) ? Ok show me.
-
@darknior , ah, there was something else, all working perfectly now, I will release the changes later in the week with the other updates.
-
... a little late and not with everything I had wanted to do I have pushed my current work in progress. It's mainly a restructure and updated to reflect the newish theme features added to emulation station.
IE compatibility is improve however there are still issues, the most visible is with some fonts that are flagged as not being allowed to be embedded, IE 11 and below adheres to this flag and does not load those fonts
The video below shows the IE11 font issue at the end, it's a bit poorly captured but you get the idea. It starts off showing carousel changes using Chrome under Windows and the the end shows WebtroPie on IE.
Edit: git pushed properly now
-
@kixut Thanks i have update :)
But i always have many problems ...
- It take time to load all my games ... and finally it load 5919 games / 6908 ??? Not the same number on ALL GAMES.
- I only can see 4 Menu : All Games, Favorite, Last Played, Ports
- Theme are not working fine and when i choose the last PIXEL one it crash and i can't revert back and use your interface, i don't know when you set the theme to change it in CFG.
- I don't see my covers, video or logo before the crash.
What can i do to repair.
Are some tests can help you ?Thanks a lot for your hard work :)
-
@darknior thanks for testing
- that number of games shouldn't be a problem, either for the pi to generate the list, to transfer the list or for the client to read and display the list, to eliminate a few things can you in Chrome, press F12, click on network tab, navigate to the system that is slow - how long does the game.php file take to load ?
- the numbers mean how many games are shown out of how many are in the game list. If some games are in a subdirectory then they will be hidden unless you click the folder button (which means show everything in nested directories), also if you have typed anything in the filter box then the list is limited to games that match that filter, same if you click favourite filter icon - there's more detail on this in the readme and mentioned in the video at the top of this thread. The number is also just for the current system, all games is for all systems.
- only showing collections and ports, I'm not sure about this one, ... are your game lists with your roms or in the emulation station directory ?
- I've written better error handling on setting theme now
- if the theme change fails the current theme is kept and the change is not saved to config
- if the first time current config theme can't be loaded then the system tries to load carbon theme instead
- errors are reported to console
- I've fixed the issue with pixel theme now
- sorry I haven't developed the alternate media location functionality yet, I will get on that when I get time
Edit: ... oh, hope the UTF8 chars are ok now mon amis
-
@kixut said in WebtroPie WIP:
Edit: ... oh, hope the UTF8 chars are ok now mon amis
UTF8 was perfect last time, and works fine :)
But now the problem come back, see screenshots.- the numbers mean how many games are shown out of how many are in the game list. If some games are in a subdirectory then they will be hidden unless you click the folder button (which means show everything in nested directories), also if you have typed anything in the filter box then the list is limited to games that match that filter, same if you click favourite filter icon - there's more detail on this in the readme and mentioned in the video at the top of this thread. The number is also just for the current system, all games is for all systems.
I understand perfectly what you mean, and that's why I make a mistake, I do not click anything I do not select anything and still I do not have the same total number of games on the PI and on PC.
PC Chrome
PI
I think i have understand when i answer the next question, you don't load and show systems i have add manually to my es_system.cfg and platform.cfg. Many games missing from NEC CD, Super Grafx, AMIGA 1200, AMIGA CD32, OpenBOR, CPS, MSX2+.
And like i can't see them i can't manage them too ;)- that number of games shouldn't be a problem, either for the pi to generate the list, to transfer the list or for the client to read and display the list, to eliminate a few things can you in Chrome, press F12, click on network tab, navigate to the system that is slow - how long does the game.php file take to load ?
I think it is fast enough.- only showing collections and ports, I'm not sure about this one, ... are your game lists with your roms or in the emulation station directory ?
All my games are in ROM, i think the problem come also from es_system.cfg and platform.cfg.
- I've fixed the issue with pixel theme now
Yes it works fine now :)
- errors are reported to console
Yes i see it works fine :)
I'm a little WEB DEV too, i understand a part of your work, but no many more because you using Angular JS and i never use it.
I only use PHP, JQquery and Ajax functions.- sorry I haven't developed the alternate media location functionality yet, I will get on that when I get time
- I can't see all my games list, only FAVORITES, Last Played, All Games, Ports. I don't have this problem before. Maybe it can come from the last ES DEV version with KIOSK and KID mode ? I stay in NORMAL mode to make tests.
- Like you write i always have my problem with MEDIA.
You search them on :
http://192.168.1.62/roms/url/svr/roms/pcengine/~/RetroPie/medias/pcengine/logos/Bomberman '94 (Japan).png")
But it is not the more important for the moment because i can change my path with relative PATH :)
If i change ~/RetroPie/medias/... by ../../medias/... it will works fine on Retropie, your Webtropie (not for the moment). And it will works fine too on Recallbox for friends that use it.
But there are some other :
- For players, you limit to one int number. Bad because we can have like on two exemple : 1-5 Vs or 1-2 Coop, 1-4 Alt.
Same problem on the editor, maybe you remove this restriction, because we made it for all systems.
It take us many time to write informations, but same many time to choose the game to play with children or friends ;) - Replace the md_playcount text_multiline class because it is a simple number. And it will remove the scrollbar.
- Last played is at wrong place, and it is not important on PC but you show date, and not "74 days ago"
- Same, not important but on the FAV LIST, the remove name extra info, and replace them by [SYSTEM NAME]
Tell me if you want my skin to try with it.
Sorry, i found many bugs and give you more work :( :( :(
- But it is a dream to manage games with your system, from web browser.
- And i think it can help to dev THEME because we can tray it on PC and refresh faster than on PI.
-
@darknior this is fantastic feedback, thanks, I've made a few changes
- fix for the utf8 issue
- fix for the medias directory issue
- removed (curly) [square] bracket text after games lists (I originally decided to show that data as it is a metadata editor and maybe useful to some)
- added (system) to auto game lists
- changed players input from number to text
- made description only multiline text field
For the issues regarding systems not showing, game counts being wrong - if they are still wrong after this update then maybe I need to look at your game lists and es_systems.cfg file, a tar gzip is fine ta
cd /home/pi/RetroPie/roms tar cvfz ~/roms_gamelists.tgz */gamelist.xml cd ~/.emulationstation/gamelists tar cvfz ~/es_gamelists.tgz */gamelist.xml
If there is still an issue with theme images not showing (maybe the medias fix fixed this) then yes, if you could send me a link or file for your theme then I will have a look at that too.
-
@kixut Thanks for all these improvement <3
Now my feedback and error tracking :
fix for the utf8 issue
That's ok
fix for the medias directory issue
-
Like you can see i have them when i edit a game.
You put them like background-image, it is enough to see i have an image, but it is behind the drag n drop zone :(
And i cant use any script to zoom it and see if it is a good quality image or not ?
Maybe you can make the zone smaller ant put the image at left or right ?
And in the future, just an idée, not to make now, maybe angular or PHP can give the size of the image to write it ? -
There is an z-index bug with the Title FAVORITE that is in front of the edit popup, and i can't modify the informations.
-
I don't see any image in the list. I suspect it don't try to take them ... i don't see them on the network status.
It can really help to work to see images and videos in the list. -
You let the INPUT in RED, but you found the image?
But this screenshot show us an other problem : Duplicates in a repeater are not allowed
It's cool i remove a duplicate entry in my PSX XML lol ... but other users will not understand if they not debug.
Maybe you can take the last entry to CRUSH the first ? It's the easy way, or SKIP the new duplicate entry.removed (curly) [square] bracket text after games lists (I originally decided to show that data as it is a metadata editor and maybe useful to some)
You are right, they are very important to show the game name exactly like on PI. To see and correct bad naming errors.
They only remove and replace them in MULTI system systems: FAVORITES, LAST PLAYED, ALL GAMES.
To save place to write where come from the game, if not we can't know it.added (system) to auto game lists
Not understand what you want to say ?
changed players input from number to text
Ok i see the new TEXT INPUT but now every where it only write me : 1
made description only multiline text field
Not really understand too, multiline text field is the best, what do use before ?
For the issues regarding systems not showing
Always there ... and game counts is now fall at 452 games available :( :( :(
- NO XML in my /home/pi/RetroPie/roms
- There are all there : ~/.emulationstation/gamelists
http://www.mediafire.com/file/hzmd20bmh82lmc8/es_gamelists.tgz
http://www.mediafire.com/file/p9kvgpqdq92vnys/es_systems.cfgAnd if can help the Alpha version of our theme : dark-steel--alpha.zip
-
-
@darknior sorry about that, I've made some small tweaks so that the images show better now
and if you mouse over the image in the editor it will show the image size.I will have a look at the other issues later. Thanks againEdit: Oh, and the z-index bug, you will need to refresh your cache to pick up the style sheet changes - in Chrome - F12, then Right click Refresh then choose the last option.
I've removed the track by on the game list, it allows angular to be more efficient but isn't necessary and depends on the path each game being unique.
I've also changed the game list to only strip brackets on auto collections -
I have update and now black screen :p
angular.js:14642 TypeError: Cannot set property 'auto-allgames' of undefined at onSuccess (config.service.js:54) at processQueue (angular.js:17000) at angular.js:17044 at Scope.$digest (angular.js:18182) at Scope.$apply (angular.js:18480) at done (angular.js:12501) at completeRequest (angular.js:12727) at XMLHttpRequest.requestLoaded (angular.js:12655) "Possibly unhandled rejection: {}"
-
@darknior please git pull, hard refresh as above
Edit: Regarding the game counts I set my system up with your game counts and the latest version matches all of the game counts except for PSX which contains 27 duplicates, so, WebtroPie was showing more games than EmulationStation.
I've written something which finds the duplicates and shows them on the console.Edit 2: just tried your theme, looking great! - except I see what you mean about meta positioning
0_1510528555623_DarkSteele.png -
@kixut I have read your Install script and i see now you use app/#!/ and not ROM in URL, ok it's better.
The source are Ok and i have install again.
# git pull Already up-to-date.
I have refresh like you write, but i also have a good CHROME PLUGIN to do it from years ;)
I have try on IE same result.Now i see your script in console, i have 0 games and 0 duplicate. I can see nothing. Zero menu now :(
On the PI all is working perfectly.- Config.php works fine :
{"app":{"LoadAllSystems":false,"ScanAtStartup":false,"ShowEmptySystems":false,"ShowEmptyDirectories":false,"ShowAddFields":true,"ShowGameCounts":true,"ShowThemeSelect":true,"ShowViewSelect":true,"LogSystemTotals":true,"ThemeSet":"carbon","Language":"en","DateFormat":"DD\/MM\/YYYY","ViewTransitions":"Slide","ViewStyle":""},"env":{"has_gd":1,"has_launch":1,"read_only":0},"lang":{"md_labels":{"name":"Name","rating":"Rating","releasedate":"Released","developer":"Developer","publisher":"Publisher","genre":"Genre","players":"Players","lastplayed":"Last Played","playcount":"Times Played","human_size":"Size","image":"Image","marquee":"Marquee","video":"Video","year":"Year","hidden":"Hidden","kidgame":"Kid","favorite":"Favourite","stars":"Stars","description":"Description"},"buttons":{"launch":"Launch","scrape":"Scrape","save":"Save","cancel":"Cancel","reset":"Reset","delete":"Delete","move":"Move","options":"Options","menu":"Menu","search":"Search","back":"Back","system":"system","choose":"choose","edit":"Edit","open":"Open","select":"Select"},"languages":{"en":"English (UK)","en-us":"English (US)"}},"es":{"BackgroundJoystickInput":false,"CaptionsCompatibility":true,"DrawFramerate":false,"EnableSounds":true,"MoveCarousel":true,"ParseGamelistOnly":false,"QuickSystemSelect":true,"SaveGamelistsOnExit":false,"ScrapeRatings":true,"ScreenSaverControls":true,"ScreenSaverOmxPlayer":true,"ShowHelpPrompts":true,"ShowHiddenFiles":false,"SlideshowScreenSaverCustomImageSource":false,"SlideshowScreenSaverRecurse":false,"SlideshowScreenSaverStretch":false,"SortAllSystems":false,"StretchVideoOnScreenSaver":false,"UseCustomCollectionsSystem":true,"VideoAudio":true,"VideoOmxPlayer":true,"hideQuitMenuOnKidUI":false,"MaxVRAM":"100","ScraperResizeHeight":"0","ScraperResizeWidth":"400","ScreenSaverSwapImageTimeout":"5000","ScreenSaverSwapVideoTimeout":"35000","ScreenSaverTime":"300000","AudioDevice":"PCM","CollectionSystemsAuto":"all,favorites,recent","CollectionSystemsCustom":"","GamelistViewStyle":"automatic","Local":"fr_FR.UTF-8","OMXAudioDev":"both","PowerSaverMode":"default","Scraper":"TheGamesDB","ScreenSaverBehavior":"random video","ScreenSaverGameInfo":"always","SlideshowScreenSaverBackgroundAudioFile":"\/home\/pi\/.emulationstation\/slideshow\/audio\/slideshow_bg.wav","SlideshowScreenSaverImageDir":"\/home\/pi\/.emulationstation\/slideshow\/image","SlideshowScreenSaverImageFilter":".png,.jpg","StartupSystem":"","ThemeSet":"dark-steel","TransitionStyle":"fade","UIMode":"Full","UIMode_passkey":"uuddlrlrba"},"themes":{"stretch-carbon":true,"stretch-clean-look":true,"stretch-crt":true,"stretch-cygnus":true,"stretch-material":true,"stretch-tronkyfran":true},"systems":[],"themes_list":[{"name":"famicom-mini"},{"name":"carbon"},{"name":"pixel"},{"name":"ComicBook"},{"name":"workbench"},{"name":"snes-mini"},{"name":"art-book"},{"name":"dark-steel"},{"name":"ComicBook_SE-Wheelart"},{"name":"nes-mini"},{"name":"material"},{"name":"mini-psx"}]}
-
theme.php works fine too.
-
gamelist.php
http://192.168.1.62/app/svr/gamelist.php?getlist=1&system=default
Satus 200 ok but no valid response from the PI.
HTTP/1.1 200 OK Date: Mon, 13 Nov 2017 13:55:16 GMT Server: Apache/2.4.10 (Raspbian) Content-Length: 0 Keep-Alive: timeout=5, max=95 Connection: Keep-Alive Content-Type: text/html; charset=UTF-8
Tell me what i can try to help please.
-
@darknior yes I did change the link but since the old symlink would still be there it would still work.
Thanks for the info your config is not returning any systems, which is my fault as a while ago I had commented out a little code that is still needed regarding where it looks for gamelists, sorry about that, please try a new pull.
-
@kixut said in WebtroPie WIP:
I had commented out a little code that is still needed regarding where it looks for gamelists
I have make the GIT PULL and see you update the app/svr/config.php file.
HTTP/1.1 200 OK Date: Mon, 13 Nov 2017 20:23:04 GMT Server: Apache/2.4.10 (Raspbian) Content-Length: 0 Keep-Alive: timeout=5, max=90 Connection: Keep-Alive Content-Type: text/html; charset=UTF-8
And always same, it found nothing, no gamelist ?
+ file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml") || + file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml") || + file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")
And it's good, i don't understand :(
/opt/retropie/configs/all/emulationstation/gamelists
-
@darknior Thanks for your patience, it's a challenge to debug in this situation, I've tried to replicate what you describe as best I can and noticed that it doesn't behave nicely if the roms directories do not exist but should do now, so I've pushed this and a few other minor changes.
-
@kixut said in WebtroPie WIP:
Thanks for your patience, it's a challenge to debug in this situation
It's me, i'am so sad because i can't really help you more :(
I have see all your updates, 12 files. make the force refresh and again nothing :(
And now nothing in the console. It not search gamelist with PHP, only Config n Theme.Maybe you can explain me how to debug for you ? In what file i must search to found why it not load my gamelist files.
Because now the real problem was it not load lists.angular.js:14642 TypeError: Cannot read property 'substring' of undefined at service.getGamelist (game.service.js:197) at system.view.js:101 at processQueue (angular.js:17000) at angular.js:17044 at Scope.$digest (angular.js:18182) at Scope.$apply (angular.js:18480) at done (angular.js:12501) at completeRequest (angular.js:12727) at XMLHttpRequest.requestLoaded (angular.js:12655) "Possibly unhandled rejection: {}"
Yes some systemes can be installed like SATURN but without any games, ES is not loading a system if his rom dir is empty.
-
// get either a specific gamelist for a system or all systems function getGamelist(system_name) { var promise; console.log(system_name); if (system_name.substring(0,4)=='auto' //|| //system.name.substring(0,6)=='custom' ) // get all systems {
I don't know why it append, i have console.log and it crash when the system_name is undefined
-
I see you comit a debug for console.log, it write me :
config.service.js:47 systems config.service.js:48 []auto-allgames: {name: "auto-allgames", fullname: "all", theme: "auto-allgames", has_games: true}auto-favorites: {name: "auto-favorites", fullname: "favorites", theme: "auto-favorites", has_games: true}auto-lastplayed: {name: "auto-lastplayed", fullname: "recent", theme: "auto-lastplayed", has_games: true}length: 0__proto__: Array(0) system.view.js:95 {name: "carbon", path: "svr/themes/carbon", has_gd: 1, includes: {…}, fonts: {…}, …}carousel_systems: {}carousel_systems_list: []fonts: {carbon_._art_Cabin_Bold: {…}, carbon__art_Cabin_Bold: {…}}has_gd: 1includes: {././carbon.xml: {…}, auto-allgames/../carbon.xml: {…}, auto-favorites/../carbon.xml: {…}, auto-lastplayed/../carbon.xml: {…}, custom-collections/../carbon.xml: {…}}mid_index: 0name: "carbon"path: "svr/themes/carbon"systems: {default: {…}, auto-allgames: {…}, auto-favorites: {…}, auto-lastplayed: {…}, custom-collections: {…}}__proto__: Object angular.js:14642 TypeError: Cannot read property 'substring' of undefined at service.getGamelist (game.service.js:197) at system.view.js:101 at processQueue (angular.js:17000) at angular.js:17044 at Scope.$digest (angular.js:18182) at Scope.$apply (angular.js:18480) at done (angular.js:12501) at completeRequest (angular.js:12727) at XMLHttpRequest.requestLoaded (angular.js:12655) "Possibly unhandled rejection: {}" (anonymous) @ angular.js:14642 (anonymous) @ angular.js:11102 processChecks @ angular.js:17026 $digest @ angular.js:18182 $apply @ angular.js:18480 done @ angular.js:12501 completeRequest @ angular.js:12727 requestLoaded @ angular.js:12655 XMLHttpRequest.send (async) (anonymous) @ angular.js:12701 sendReq @ angular.js:12446 serverRequest @ angular.js:12198 processQueue @ angular.js:17000 (anonymous) @ angular.js:17044 $digest @ angular.js:18182 $apply @ angular.js:18480 done @ angular.js:12501 completeRequest @ angular.js:12727 requestLoaded @ angular.js:12655 XMLHttpRequest.send (async) (anonymous) @ angular.js:12701 sendReq @ angular.js:12446 serverRequest @ angular.js:12198 processQueue @ angular.js:17000 (anonymous) @ angular.js:17044 $digest @ angular.js:18182 $apply @ angular.js:18480 bootstrapApply @ angular.js:1952 invoke @ angular.js:5040 doBootstrap @ angular.js:1950 bootstrap @ angular.js:1970 angularInit @ angular.js:1855 (anonymous) @ angular.js:33826 trigger @ angular.js:3468
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.