A full fledged backend support for blind and one-color go would be awesome, but I would be perfectly happy with a front-end fix (just changing the textures of stones and the “last played” circle appropriately; in this kind of game mode, you’re already trusting your opponent not to cheat, so I wouldn’t worry about that); so please don’t hold up the simple solution waiting for one that may take years or more.
If the people who have actually played around with these board backgrounds disagree, please defer to their judgement, but my intuition would be that anyone who was serious about making it look good would crop or resize the image themselves anyway, and a center-alignment would probably look better for the average user who uploads a picture of their black lab laying in the sun before realizing they can barely see any black stones.
Maybe a few just to show what is possible (unless the implementation would make such a small use-case not worth the effort, of course), but I feel like a separate library (such as the thread dedicated as such) where you download the image and upload it will serve just fine for most images.
That’s why I was thinking just ten thumbnails in the same space that currently holds the ten textures, but on a different tab? Or just 5 in a row under the textures?
I was thinking once users have clicked on a couple just to try, then they’ll be more motivated to come check out the library for more, or create their own.
Also would help the technically challenged and the terminally lazy.
Cross posting this one here as they suggest something you could add if you had time.
There was a suggestion about cropping images and one about being able to have different images for different board sizes (which could be the same image but different crops).
Being able to select custom images for the board is pretty damn awesome!
An improvement to this would be the ability to crop the images over the board.
Perhaps even being fine tuned to allow one to save their image position for 9 x 9, 13 x 13, & 19 x 19, respectively.
You can’t really save any images per se, you just link to the image stored elsewhere, so that said, there is nothing stopping you cropping the image with your favourite image editing software and uploading to a free image hosting site such as imgur
you will have to manually switch between each image as you open games on different board sizes however
But I wonder though would it be the case that you could just add a few if statements to the game page ui and show three URLs to past for 9x9, 13x13, 19x19.
Or maybe to Stop that being clunky adding a checkbox use for all sides and hide the other two board sizes?
Time for a diaporama on my qipan! I still hesitate if I change background every 10 moves or 20? Or can we program a detector of changing stage (fuseki,middle game,yose?
Indeed that would be awesome, but unfortunatelly will not happen anytime soon. Or to be more precise, it is super unlikely to happen in any code added by me.
To explain - being a free service we have quite a limited storage space and computing power ('cos we can’t really pay for much more). That being the case, I opted for the (otherwise sub-optimal) solution of not giving users the ability to upload images, but rather to link them from external sources. That being the case, we cannot really edit the images in any way (crop them for example), as they are not hosted on our server. There would be some theoretical work-arounds I guess, but none that I can think of would be practical enough to actually implement, sorry.
Having the option of setting custom image for different board size is super interesting and something I did not consider. I will think about that further, but unfortunately that too will not be easy For all intents and purposes any of our gobans is the “same” object and once the game info is loaded the grid and the stones only “overlay” the otherwise still identical object. It would be possible to then retroactively detect the board size and change the backround image, but my main concern now are the thumbnails in profiles or wherever else. They will probably be rapidly changing backgrounds while loading, which will probably be quite annoying, plus it would be extra clutter for the selection menu… But who knows, I’ll keep that in mind, it is a neat idea
I’ve been trying to get this to work so that I can play Blindfold Go, but it seems data and GoThemes are not defined, so OGS is just drawing the default stones… is there some simple change people are making to these (I tried three and all rely on these objects) scripts work?
I’m not sure what kind of problems you’re having, but on my end it works with plain stones theme (at least in practice):
// ==UserScript==
// @name ogs custom stones (blindfold)
// @version 0.1
// @description custom stones on OGS
// @author michiakig, S_Alexander
// @match https://online-go.com/*
// @run-at document-idle
// @namespace https://greasyfork.org/users/592542
// ==/UserScript==
(function() {
function setup() {
GoThemes.white.Plain.prototype.placeWhiteStone = function() {};
GoThemes.black.Plain.prototype.placeBlackStone = function() {};
};
if (typeof data !== "undefined" && typeof GoThemes !== "undefined") {
setup();
} else {
// set up the mutation observer
// altho this should be installed with @run-at idle, I still saw the code run prior to these globals being available, so just watch the page for updates until they are present
var observer = new MutationObserver(function (mutations, me) {
if (typeof data !== "undefined" && typeof GoThemes !== "undefined") {
setup();
me.disconnect(); // stop observing
} else {
console.log("[ogs custom stones] data or GoThemes not found, waiting...");
}
});
// start observing
observer.observe(document, {
childList: true,
subtree: true
});
}
})();
The custom board selection should be saved locally (via a cookie or something) for each browser/device that you use to access the site. I don’t think it transfers across devices, and if you routinely clear cookies/stored data (or browse in private mode), which would also require relogging in often, then I think the setting might be cleared.